UNPKG

@0xged/hardhat-deploy

Version:

Hardhat Plugin For Replicable Deployments And Tests

910 lines (909 loc) 203 kB
{ "contractName": "DiamondLoupeFacet", "sourceName": "solc_0.8/diamond/facets/DiamondLoupeFacetWithoutSupportsInterface.sol", "abi": [ { "inputs": [ { "internalType": "bytes4", "name": "_functionSelector", "type": "bytes4" } ], "name": "facetAddress", "outputs": [ { "internalType": "address", "name": "facetAddress_", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "facetAddresses", "outputs": [ { "internalType": "address[]", "name": "facetAddresses_", "type": "address[]" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_facet", "type": "address" } ], "name": "facetFunctionSelectors", "outputs": [ { "internalType": "bytes4[]", "name": "facetFunctionSelectors_", "type": "bytes4[]" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "facets", "outputs": [ { "components": [ { "internalType": "address", "name": "facetAddress", "type": "address" }, { "internalType": "bytes4[]", "name": "functionSelectors", "type": "bytes4[]" } ], "internalType": "struct IDiamondLoupe.Facet[]", "name": "facets_", "type": "tuple[]" } ], "stateMutability": "view", "type": "function" } ], "bytecode": "0x608060405234801561001057600080fd5b506107c3806100206000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c806352ef6b2c146100515780637a0ed6271461006f578063adfca15e14610084578063cdffacc6146100a4575b600080fd5b610059610140565b60405161006691906104de565b60405180910390f35b6100776101d2565b6040516100669190610595565b61009761009236600461063d565b6103de565b604051610066919061067a565b61011b6100b236600461068d565b7fffffffff000000000000000000000000000000000000000000000000000000001660009081527fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131c602052604090205473ffffffffffffffffffffffffffffffffffffffff1690565b60405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610066565b606060007fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131c600281018054604080516020808402820181019092528281529394508301828280156101c757602002820191906000526020600020905b815473ffffffffffffffffffffffffffffffffffffffff16815260019091019060200180831161019c575b505050505091505090565b7fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131e546060907fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131c908067ffffffffffffffff811115610232576102326106cf565b60405190808252806020026020018201604052801561027857816020015b6040805180820190915260008152606060208201528152602001906001900390816102505790505b50925060005b818110156103d857600083600201828154811061029d5761029d6106fe565b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050808583815181106102dd576102dd6106fe565b60209081029190910181015173ffffffffffffffffffffffffffffffffffffffff928316905290821660009081526001860182526040908190208054825181850281018501909352808352919290919083018282801561039e57602002820191906000526020600020906000905b82829054906101000a900460e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168152602001906004019060208260030104928301926001038202915080841161034b5790505b50505050508583815181106103b5576103b56106fe565b6020026020010151602001819052505080806103d09061072d565b91505061027e565b50505090565b73ffffffffffffffffffffffffffffffffffffffff811660009081527fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131d602090815260409182902080548351818402810184019094528084526060937fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131c93909291908301828280156104d157602002820191906000526020600020906000905b82829054906101000a900460e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168152602001906004019060208260030104928301926001038202915080841161047e5790505b5050505050915050919050565b6020808252825182820181905260009190848201906040850190845b8181101561052c57835173ffffffffffffffffffffffffffffffffffffffff16835292840192918401916001016104fa565b50909695505050505050565b600081518084526020808501945080840160005b8381101561058a5781517fffffffff00000000000000000000000000000000000000000000000000000000168752958201959082019060010161054c565b509495945050505050565b60006020808301818452808551808352604092508286019150828160051b87010184880160005b8381101561062f578883037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc00185528151805173ffffffffffffffffffffffffffffffffffffffff16845287015187840187905261061c87850182610538565b95880195935050908601906001016105bc565b509098975050505050505050565b60006020828403121561064f57600080fd5b813573ffffffffffffffffffffffffffffffffffffffff8116811461067357600080fd5b9392505050565b6020815260006106736020830184610538565b60006020828403121561069f57600080fd5b81357fffffffff000000000000000000000000000000000000000000000000000000008116811461067357600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415610786577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b506001019056fea264697066735822122009a0b1e95bc23d03aa5ae9ffc73caad9fd5a4030c241b8c7bef4e55fdb078cbb64736f6c634300080a0033", "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061004c5760003560e01c806352ef6b2c146100515780637a0ed6271461006f578063adfca15e14610084578063cdffacc6146100a4575b600080fd5b610059610140565b60405161006691906104de565b60405180910390f35b6100776101d2565b6040516100669190610595565b61009761009236600461063d565b6103de565b604051610066919061067a565b61011b6100b236600461068d565b7fffffffff000000000000000000000000000000000000000000000000000000001660009081527fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131c602052604090205473ffffffffffffffffffffffffffffffffffffffff1690565b60405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610066565b606060007fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131c600281018054604080516020808402820181019092528281529394508301828280156101c757602002820191906000526020600020905b815473ffffffffffffffffffffffffffffffffffffffff16815260019091019060200180831161019c575b505050505091505090565b7fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131e546060907fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131c908067ffffffffffffffff811115610232576102326106cf565b60405190808252806020026020018201604052801561027857816020015b6040805180820190915260008152606060208201528152602001906001900390816102505790505b50925060005b818110156103d857600083600201828154811061029d5761029d6106fe565b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050808583815181106102dd576102dd6106fe565b60209081029190910181015173ffffffffffffffffffffffffffffffffffffffff928316905290821660009081526001860182526040908190208054825181850281018501909352808352919290919083018282801561039e57602002820191906000526020600020906000905b82829054906101000a900460e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168152602001906004019060208260030104928301926001038202915080841161034b5790505b50505050508583815181106103b5576103b56106fe565b6020026020010151602001819052505080806103d09061072d565b91505061027e565b50505090565b73ffffffffffffffffffffffffffffffffffffffff811660009081527fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131d602090815260409182902080548351818402810184019094528084526060937fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131c93909291908301828280156104d157602002820191906000526020600020906000905b82829054906101000a900460e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168152602001906004019060208260030104928301926001038202915080841161047e5790505b5050505050915050919050565b6020808252825182820181905260009190848201906040850190845b8181101561052c57835173ffffffffffffffffffffffffffffffffffffffff16835292840192918401916001016104fa565b50909695505050505050565b600081518084526020808501945080840160005b8381101561058a5781517fffffffff00000000000000000000000000000000000000000000000000000000168752958201959082019060010161054c565b509495945050505050565b60006020808301818452808551808352604092508286019150828160051b87010184880160005b8381101561062f578883037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc00185528151805173ffffffffffffffffffffffffffffffffffffffff16845287015187840187905261061c87850182610538565b95880195935050908601906001016105bc565b509098975050505050505050565b60006020828403121561064f57600080fd5b813573ffffffffffffffffffffffffffffffffffffffff8116811461067357600080fd5b9392505050565b6020815260006106736020830184610538565b60006020828403121561069f57600080fd5b81357fffffffff000000000000000000000000000000000000000000000000000000008116811461067357600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415610786577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b506001019056fea264697066735822122009a0b1e95bc23d03aa5ae9ffc73caad9fd5a4030c241b8c7bef4e55fdb078cbb64736f6c634300080a0033", "linkReferences": {}, "deployedLinkReferences": {}, "devdoc": { "kind": "dev", "methods": { "facetAddress(bytes4)": { "details": "If facet is not found return address(0).", "params": { "_functionSelector": "The function selector." }, "returns": { "facetAddress_": "The facet address." } }, "facetAddresses()": { "returns": { "facetAddresses_": "facetAddresses_" } }, "facetFunctionSelectors(address)": { "params": { "_facet": "The facet address." }, "returns": { "facetFunctionSelectors_": "facetFunctionSelectors_" } }, "facets()": { "returns": { "facets_": "Facet" } } }, "version": 1 }, "evm": { "bytecode": { "functionDebugData": {}, "generatedSources": [], "linkReferences": {}, "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x7C3 DUP1 PUSH2 0x20 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 0x52EF6B2C EQ PUSH2 0x51 JUMPI DUP1 PUSH4 0x7A0ED627 EQ PUSH2 0x6F JUMPI DUP1 PUSH4 0xADFCA15E EQ PUSH2 0x84 JUMPI DUP1 PUSH4 0xCDFFACC6 EQ PUSH2 0xA4 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x59 PUSH2 0x140 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x66 SWAP2 SWAP1 PUSH2 0x4DE JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x77 PUSH2 0x1D2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x66 SWAP2 SWAP1 PUSH2 0x595 JUMP JUMPDEST PUSH2 0x97 PUSH2 0x92 CALLDATASIZE PUSH1 0x4 PUSH2 0x63D JUMP JUMPDEST PUSH2 0x3DE JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x66 SWAP2 SWAP1 PUSH2 0x67A JUMP JUMPDEST PUSH2 0x11B PUSH2 0xB2 CALLDATASIZE PUSH1 0x4 PUSH2 0x68D JUMP JUMPDEST PUSH32 0xFFFFFFFF00000000000000000000000000000000000000000000000000000000 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH32 0xC8FCAD8DB84D3CC18B4C41D551EA0EE66DD599CDE068D998E57D5E09332C131C PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 SLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD PUSH2 0x66 JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 PUSH32 0xC8FCAD8DB84D3CC18B4C41D551EA0EE66DD599CDE068D998E57D5E09332C131C PUSH1 0x2 DUP2 ADD DUP1 SLOAD PUSH1 0x40 DUP1 MLOAD PUSH1 0x20 DUP1 DUP5 MUL DUP3 ADD DUP2 ADD SWAP1 SWAP3 MSTORE DUP3 DUP2 MSTORE SWAP4 SWAP5 POP DUP4 ADD DUP3 DUP3 DUP1 ISZERO PUSH2 0x1C7 JUMPI PUSH1 0x20 MUL DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x1 SWAP1 SWAP2 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x19C JUMPI JUMPDEST POP POP POP POP POP SWAP2 POP POP SWAP1 JUMP JUMPDEST PUSH32 0xC8FCAD8DB84D3CC18B4C41D551EA0EE66DD599CDE068D998E57D5E09332C131E SLOAD PUSH1 0x60 SWAP1 PUSH32 0xC8FCAD8DB84D3CC18B4C41D551EA0EE66DD599CDE068D998E57D5E09332C131C SWAP1 DUP1 PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x232 JUMPI PUSH2 0x232 PUSH2 0x6CF JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x278 JUMPI DUP2 PUSH1 0x20 ADD JUMPDEST PUSH1 0x40 DUP1 MLOAD DUP1 DUP3 ADD SWAP1 SWAP2 MSTORE PUSH1 0x0 DUP2 MSTORE PUSH1 0x60 PUSH1 0x20 DUP3 ADD MSTORE DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0x250 JUMPI SWAP1 POP JUMPDEST POP SWAP3 POP PUSH1 0x0 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x3D8 JUMPI PUSH1 0x0 DUP4 PUSH1 0x2 ADD DUP3 DUP2 SLOAD DUP2 LT PUSH2 0x29D JUMPI PUSH2 0x29D PUSH2 0x6FE JUMP JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP DUP1 DUP6 DUP4 DUP2 MLOAD DUP2 LT PUSH2 0x2DD JUMPI PUSH2 0x2DD PUSH2 0x6FE JUMP JUMPDEST PUSH1 0x20 SWAP1 DUP2 MUL SWAP2 SWAP1 SWAP2 ADD DUP2 ADD MLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP3 DUP4 AND SWAP1 MSTORE SWAP1 DUP3 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x1 DUP7 ADD DUP3 MSTORE PUSH1 0x40 SWAP1 DUP2 SWAP1 KECCAK256 DUP1 SLOAD DUP3 MLOAD DUP2 DUP6 MUL DUP2 ADD DUP6 ADD SWAP1 SWAP4 MSTORE DUP1 DUP4 MSTORE SWAP2 SWAP3 SWAP1 SWAP2 SWAP1 DUP4 ADD DUP3 DUP3 DUP1 ISZERO PUSH2 0x39E JUMPI PUSH1 0x20 MUL DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0x0 SWAP1 JUMPDEST DUP3 DUP3 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xE0 SHL PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x4 ADD SWAP1 PUSH1 0x20 DUP3 PUSH1 0x3 ADD DIV SWAP3 DUP4 ADD SWAP3 PUSH1 0x1 SUB DUP3 MUL SWAP2 POP DUP1 DUP5 GT PUSH2 0x34B JUMPI SWAP1 POP JUMPDEST POP POP POP POP POP DUP6 DUP4 DUP2 MLOAD DUP2 LT PUSH2 0x3B5 JUMPI PUSH2 0x3B5 PUSH2 0x6FE JUMP JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x20 ADD DUP2 SWAP1 MSTORE POP POP DUP1 DUP1 PUSH2 0x3D0 SWAP1 PUSH2 0x72D JUMP JUMPDEST SWAP2 POP POP PUSH2 0x27E JUMP JUMPDEST POP POP POP SWAP1 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH32 0xC8FCAD8DB84D3CC18B4C41D551EA0EE66DD599CDE068D998E57D5E09332C131D PUSH1 0x20 SWAP1 DUP2 MSTORE PUSH1 0x40 SWAP2 DUP3 SWAP1 KECCAK256 DUP1 SLOAD DUP4 MLOAD DUP2 DUP5 MUL DUP2 ADD DUP5 ADD SWAP1 SWAP5 MSTORE DUP1 DUP5 MSTORE PUSH1 0x60 SWAP4 PUSH32 0xC8FCAD8DB84D3CC18B4C41D551EA0EE66DD599CDE068D998E57D5E09332C131C SWAP4 SWAP1 SWAP3 SWAP2 SWAP1 DUP4 ADD DUP3 DUP3 DUP1 ISZERO PUSH2 0x4D1 JUMPI PUSH1 0x20 MUL DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0x0 SWAP1 JUMPDEST DUP3 DUP3 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xE0 SHL PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x4 ADD SWAP1 PUSH1 0x20 DUP3 PUSH1 0x3 ADD DIV SWAP3 DUP4 ADD SWAP3 PUSH1 0x1 SUB DUP3 MUL SWAP2 POP DUP1 DUP5 GT PUSH2 0x47E JUMPI SWAP1 POP JUMPDEST POP POP POP POP POP SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE DUP3 MLOAD DUP3 DUP3 ADD DUP2 SWAP1 MSTORE PUSH1 0x0 SWAP2 SWAP1 DUP5 DUP3 ADD SWAP1 PUSH1 0x40 DUP6 ADD SWAP1 DUP5 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x52C JUMPI DUP4 MLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 MSTORE SWAP3 DUP5 ADD SWAP3 SWAP2 DUP5 ADD SWAP2 PUSH1 0x1 ADD PUSH2 0x4FA JUMP JUMPDEST POP SWAP1 SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD DUP1 DUP5 MSTORE PUSH1 0x20 DUP1 DUP6 ADD SWAP5 POP DUP1 DUP5 ADD PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x58A JUMPI DUP2 MLOAD PUSH32 0xFFFFFFFF00000000000000000000000000000000000000000000000000000000 AND DUP8 MSTORE SWAP6 DUP3 ADD SWAP6 SWAP1 DUP3 ADD SWAP1 PUSH1 0x1 ADD PUSH2 0x54C JUMP JUMPDEST POP SWAP5 SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP1 DUP4 ADD DUP2 DUP5 MSTORE DUP1 DUP6 MLOAD DUP1 DUP4 MSTORE PUSH1 0x40 SWAP3 POP DUP3 DUP7 ADD SWAP2 POP DUP3 DUP2 PUSH1 0x5 SHL DUP8 ADD ADD DUP5 DUP9 ADD PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x62F JUMPI DUP9 DUP4 SUB PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC0 ADD DUP6 MSTORE DUP2 MLOAD DUP1 MLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP5 MSTORE DUP8 ADD MLOAD DUP8 DUP5 ADD DUP8 SWAP1 MSTORE PUSH2 0x61C DUP8 DUP6 ADD DUP3 PUSH2 0x538 JUMP JUMPDEST SWAP6 DUP9 ADD SWAP6 SWAP4 POP POP SWAP1 DUP7 ADD SWAP1 PUSH1 0x1 ADD PUSH2 0x5BC JUMP JUMPDEST POP SWAP1 SWAP9 SWAP8 POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x64F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 CALLDATALOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP2 AND DUP2 EQ PUSH2 0x673 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x20 DUP2 MSTORE PUSH1 0x0 PUSH2 0x673 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x538 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x69F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 CALLDATALOAD PUSH32 0xFFFFFFFF00000000000000000000000000000000000000000000000000000000 DUP2 AND DUP2 EQ PUSH2 0x673 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x32 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 EQ ISZERO PUSH2 0x786 JUMPI PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST POP PUSH1 0x1 ADD SWAP1 JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 MULMOD LOG0 0xB1 0xE9 JUMPDEST 0xC2 RETURNDATASIZE SUB 0xAA GAS 0xE9 SELFDESTRUCT 0xC7 EXTCODECOPY 0xAA 0xD9 REVERT GAS BLOCKHASH ADDRESS 0xC2 COINBASE 0xB8 0xC7 0xBE DELEGATECALL 0xE5 0x5F 0xDB SMOD DUP13 0xBB PUSH5 0x736F6C6343 STOP ADDMOD EXP STOP CALLER ", "sourceMap": "481:2215:4:-:0;;;;;;;;;;;;;;;;;;;" }, "deployedBytecode": { "functionDebugData": { "@diamondStorage_809": { "entryPoint": null, "id": 809, "parameterSlots": 0, "returnSlots": 1 }, "@facetAddress_519": { "entryPoint": null, "id": 519, "parameterSlots": 1, "returnSlots": 1 }, "@facetAddresses_492": { "entryPoint": 320, "id": 492, "parameterSlots": 0, "returnSlots": 1 }, "@facetFunctionSelectors_469": { "entryPoint": 990, "id": 469, "parameterSlots": 1, "returnSlots": 1 }, "@facets_441": { "entryPoint": 466, "id": 441, "parameterSlots": 0, "returnSlots": 1 }, "abi_decode_tuple_t_address": { "entryPoint": 1597, "id": null, "parameterSlots": 2, "returnSlots": 1 }, "abi_decode_tuple_t_bytes4": { "entryPoint": 1677, "id": null, "parameterSlots": 2, "returnSlots": 1 }, "abi_encode_array_bytes4_dyn": { "entryPoint": 1336, "id": null, "parameterSlots": 2, "returnSlots": 1 }, "abi_encode_tuple_t_address__to_t_address__fromStack_reversed": { "entryPoint": null, "id": null, "parameterSlots": 2, "returnSlots": 1 }, "abi_encode_tuple_t_array$_t_address_$dyn_memory_ptr__to_t_array$_t_address_$dyn_memory_ptr__fromStack_reversed": { "entryPoint": 1246, "id": null, "parameterSlots": 2, "returnSlots": 1 }, "abi_encode_tuple_t_array$_t_bytes4_$dyn_memory_ptr__to_t_array$_t_bytes4_$dyn_memory_ptr__fromStack_reversed": { "entryPoint": 1658, "id": null, "parameterSlots": 2, "returnSlots": 1 }, "abi_encode_tuple_t_array$_t_struct$_Facet_$690_memory_ptr_$dyn_memory_ptr__to_t_array$_t_struct$_Facet_$690_memory_ptr_$dyn_memory_ptr__fromStack_reversed": { "entryPoint": 1429, "id": null, "parameterSlots": 2, "returnSlots": 1 }, "increment_t_uint256": { "entryPoint": 1837, "id": null, "parameterSlots": 1, "returnSlots": 1 }, "panic_error_0x32": { "entryPoint": 1790, "id": null, "parameterSlots": 0, "returnSlots": 0 }, "panic_error_0x41": { "entryPoint": 1743, "id": null, "parameterSlots": 0, "returnSlots": 0 } }, "generatedSources": [ { "ast": { "nodeType": "YulBlock", "src": "0:4230:12", "statements": [ { "nodeType": "YulBlock", "src": "6:3:12", "statements": [] }, { "body": { "nodeType": "YulBlock", "src": "165:530:12", "statements": [ { "nodeType": "YulVariableDeclaration", "src": "175:12:12", "value": { "kind": "number", "nodeType": "YulLiteral", "src": "185:2:12", "type": "", "value": "32" }, "variables": [ { "name": "_1", "nodeType": "YulTypedName", "src": "179:2:12", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", "src": "196:32:12", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", "src": "214:9:12" }, { "name": "_1", "nodeType": "YulIdentifier", "src": "225:2:12" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", "src": "210:3:12" }, "nodeType": "YulFunctionCall", "src": "210:18:12" }, "variables": [ { "name": "tail_1", "nodeType": "YulTypedName", "src": "200:6:12", "type": "" } ] }, { "expression": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", "src": "244:9:12" }, { "name": "_1", "nodeType": "YulIdentifier", "src": "255:2:12" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", "src": "237:6:12" }, "nodeType": "YulFunctionCall", "src": "237:21:12" }, "nodeType": "YulExpressionStatement", "src": "237:21:12" }, { "nodeType": "YulVariableDeclaration", "src": "267:17:12", "value": { "name": "tail_1", "nodeType": "YulIdentifier", "src": "278:6:12" }, "variables": [ { "name": "pos", "nodeType": "YulTypedName", "src": "271:3:12", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", "src": "293:27:12", "value": { "arguments": [ { "name": "value0", "nodeType": "YulIdentifier", "src": "313:6:12" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", "src": "307:5:12" }, "nodeType": "YulFunctionCall", "src": "307:13:12" }, "variables": [ { "name": "length", "nodeType": "YulTypedName", "src": "297:6:12", "type": "" } ] }, { "expression": { "arguments": [ { "name": "tail_1", "nodeType": "YulIdentifier", "src": "336:6:12" }, { "name": "length", "nodeType": "YulIdentifier", "src": "344:6:12" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", "src": "329:6:12" }, "nodeType": "YulFunctionCall", "src": "329:22:12" }, "nodeType": "YulExpressionStatement", "src": "329:22:12" }, { "nodeType": "YulAssignment", "src": "360:25:12", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", "src": "371:9:12" }, { "kind": "number", "nodeType": "YulLiteral", "src": "382:2:12", "type": "", "value": "64" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", "src": "367:3:12" }, "nodeType": "YulFunctionCall", "src": "367:18:12" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", "src": "360:3:12" } ] }, { "nodeType": "YulVariableDeclaration", "src": "394:29:12", "value": { "arguments": [ { "name": "value0", "nodeType": "YulIdentifier", "src": "412:6:12" }, { "name": "_1", "nodeType": "YulIdentifier", "src": "420:2:12" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", "src": "408:3:12" }, "nodeType": "YulFunctionCall", "src": "408:15:12" }, "variables": [ { "name": "srcPtr", "nodeType": "YulTypedName", "src": "398:6:12", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", "src": "432:10:12", "value": { "kind": "number", "nodeType": "YulLiteral", "src": "441:1:12", "type": "", "value": "0" }, "variables": [ { "name": "i", "nodeType": "YulTypedName", "src": "436:1:12", "type": "" } ] }, { "body": { "nodeType": "YulBlock", "src": "500:169:12", "statements": [ { "expression": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", "src": "521:3:12" }, { "arguments": [ { "arguments": [ { "name": "srcPtr", "nodeType": "YulIdentifier", "src": "536:6:12" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", "src": "530:5:12" }, "nodeType": "YulFunctionCall", "src": "530:13:12" }, { "kind": "number", "nodeType": "YulLiteral", "src": "545:42:12", "type": "", "value": "0xffffffffffffffffffffffffffffffffffffffff" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", "src": "526:3:12" }, "nodeType": "YulFunctionCall", "src": "526:62:12" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", "src": "514:6:12" }, "nodeType": "YulFunctionCall", "src": "514:75:12" }, "nodeType": "YulExpressionStatement", "src": "514:75:12" }, { "nodeType": "YulAssignment", "src": "602:19:12", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", "src": "613:3:12" }, { "name": "_1", "nodeType": "YulIdentifier", "src": "618:2:12" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", "src": "609:3:12" }, "nodeType": "YulFunctionCall", "src": "609:12:12" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", "src": "602:3:12" } ] }, { "nodeType": "YulAssignment", "src": "634:25:12", "value": { "arguments": [ { "name": "srcPtr", "nodeType": "YulIdentifier", "src": "648:6:12" }, { "name": "_1", "nodeType": "YulIdentifier", "src": "656:2:12" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", "src": "644:3:12" }, "nodeType": "YulFunctionCall", "src": "644:15:12" }, "variableNames": [ { "name": "srcPtr", "nodeType": "YulIdentifier", "src": "634:6:12" } ] } ] }, "condition": { "arguments": [ { "name": "i", "nodeType": "YulIdentifier", "src": "462:1:12" }, { "name": "length", "nodeType": "YulIdentifier", "src": "465:6:12" } ], "functionName": { "name": "lt", "nodeType": "YulIdentifier", "src": "459:2:12" }, "nodeType": "YulFunctionCall", "src": "459:13:12" }, "nodeType": "YulForLoop", "post": { "nodeType": "YulBlock", "src": "473:18:12", "statements": [ { "nodeType": "YulAssignment", "src": "475:14:12", "value": { "arguments": [ { "name": "i", "nodeType": "YulIdentifier", "src": "484:1:12" }, { "kind": "number", "nodeType": "YulLiteral", "src": "487:1:12", "type": "", "value": "1" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", "src": "480:3:12" }, "nodeType": "YulFunctionCall", "src": "480:9:12" }, "variableNames": [ { "name": "i", "nodeType": "YulIdentifier", "src": "475:1:12" } ] } ] }, "pre": { "nodeType": "YulBlock", "src": "455:3:12", "statements": [] }, "src": "451:218:12" }, { "nodeType": "YulAssignment", "src": "678:11:12", "value": { "name": "pos", "nodeType": "YulIdentifier", "src": "686:3:12" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", "src": "678:4:12" } ] } ] }, "name": "abi_encode_tuple_t_array$_t_address_$dyn_memory_ptr__to_t_array$_t_address_$dyn_memory_ptr__fromStack_reversed", "nodeType": "YulFunctionDefinition", "parameters": [ { "name": "headStart", "nodeType": "YulTypedName", "src": "134:9:12", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", "src": "145:6:12", "type": "" } ], "returnVariables": [ { "name": "tail", "nodeType": "YulTypedName", "src": "156:4:12", "type": "" } ], "src": "14:681:12" }, { "body": { "nodeType": "YulBlock", "src": "760:447:12", "statements": [ { "nodeType": "YulVariableDeclaration", "src": "770:26:12", "value": { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", "src": "790:5:12" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", "src": "784:5:12" }, "nodeType": "YulFunctionCall", "src": "784:12:12" }, "variables": [ { "name": "length", "nodeType": "YulTypedName", "src": "774:6:12", "type": "" } ] }, { "expression": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", "src": "812:3:12" }, { "name": "length", "nodeType": "YulIdentifier", "src": "817:6:12" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", "src": "805:6:12" }, "nodeType": "YulFunctionCall", "src": "805:19:12" }, "nodeType": "YulExpressionStatement", "src": "805:19:12" }, { "nodeType": "YulVariableDeclaration", "src": "833:14:12", "value": { "kind": "number", "nodeType": "YulLiteral", "src": "843:4:12", "type": "", "value": "0x20" }, "variables": [ { "name": "_1", "nodeType": "YulTypedName", "src": "837:2:12", "type": "" } ] }, { "nodeType": "YulAssignment", "src": "856:19:12", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", "src": "867:3:12" }, { "name": "_1", "nodeType": "YulIdentifier", "src": "872:2:12" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", "src": "863:3:12" }, "nodeType": "YulFunctionCall", "src": "863:12:12" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", "src": "856:3:12" } ] }, { "nodeType": "YulVariableDeclaration", "src": "884:28:12", "value": { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", "src": "902:5:12" }, { "name": "_1", "nodeType": "YulIdentifier", "src": "909:2:12" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", "src": "898:3:12" }, "nodeType": "YulFunctionCall", "src": "898:14:12" }, "variables": [ { "name": "srcPtr", "nodeType": "YulTypedName", "src": "888:6:12", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", "src": "921:10:12", "value": { "kind": "number", "nodeType": "YulLiteral", "src": "930:1:12", "type": "", "value": "0" }, "variables": [ { "name": "i", "nodeType": "YulTypedName", "src": "925:1:12", "type": "" } ] }, { "body": { "nodeType": "YulBlock", "src": "989:193:12", "statements": [ { "expression": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", "src": "1010:3:12" }, { "arguments": [ { "arguments": [ { "name": "srcPtr", "nodeType": "YulIdentifier", "src": "1025:6:12" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", "src": "1019:5:12" }, "nodeType": "YulFunctionCall", "src": "1019:13:12" }, { "kind": "number", "nodeType": "YulLiteral", "src": "1034:66:12", "type": "", "value": "0xffffffff00000000000000000000000000000000000000000000000000000000" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier",