[ { "inputs": [], "name": "ALREADY_INITIALIZED", "type": "error" }, { "inputs": [], "name": "ARRAY_LENGTH_MISMATCH", "type": "error" }, { "inputs": [], "name": "ONLY_OWNER", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "_target", "type": "address" }, { "internalType": "bytes", "name": "_cd", "type": "bytes" }, { "internalType": "uint256", "name": "_value", "type": "uint256" } ], "name": "forwardCall", "outputs": [ { "internalType": "bool", "name": "success", "type": "bool" }, { "internalType": "bytes", "name": "data", "type": "bytes" } ], "stateMutability": "payable", "type": "function" }, { "inputs": [ { "internalType": "address[]", "name": "_targets", "type": "address[]" }, { "internalType": "bytes[]", "name": "_calldatas", "type": "bytes[]" }, { "internalType": "uint256[]", "name": "_values", "type": "uint256[]" } ], "name": "forwardCallBatch", "outputs": [ { "internalType": "bool", "name": "success", "type": "bool" }, { "internalType": "bytes", "name": "data", "type": "bytes" } ], "stateMutability": "payable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_owner", "type": "address" }, { "internalType": "address", "name": "_receiver", "type": "address" } ], "name": "initialize", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" }, { "internalType": "address", "name": "", "type": "address" }, { "internalType": "uint256[]", "name": "ids", "type": "uint256[]" }, { "internalType": "uint256[]", "name": "values", "type": "uint256[]" }, { "internalType": "bytes", "name": "", "type": "bytes" } ], "name": "onERC1155BatchReceived", "outputs": [ { "internalType": "bytes4", "name": "", "type": "bytes4" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" }, { "internalType": "address", "name": "", "type": "address" }, { "internalType": "uint256", "name": "id", "type": "uint256" }, { "internalType": "uint256", "name": "value", "type": "uint256" }, { "internalType": "bytes", "name": "", "type": "bytes" } ], "name": "onERC1155Received", "outputs": [ { "internalType": "bytes4", "name": "", "type": "bytes4" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" }, { "internalType": "address", "name": "", "type": "address" }, { "internalType": "uint256", "name": "tokenId", "type": "uint256" }, { "internalType": "bytes", "name": "", "type": "bytes" } ], "name": "onERC721Received", "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": "pure", "type": "function" }, { "stateMutability": "payable", "type": "receive" } ]
608080604052346015576108bc908161001b8239f35b600080fdfe608060409080825260049081361015610076575b50361561001f57600080fd5b600080808060018060a01b036001541634905af161003b6106d5565b501561004357005b6020606492519162461bcd60e51b8352820152600e60248201526d11985a5b1959081d1bc81cd95b9960921b6044820152fd5b600090813560e01c90816301ffc9a71461052957508063150b7a021461047b578063485cc955146104095780638363da7214610383578063bc197c811461024c578063c0951d6b146101bc5763f23a6e6103610013579190346101b45760a03660031901126101b4576100e761057d565b506100f0610598565b5060843567ffffffffffffffff81116101b85761011090369083016105ae565b505060015482519184916001600160a01b03169061012d84610693565b828452333b156101b45761017685519485938493637921219560e11b8552309085015260248401526044356044840152606435606484015260a0608484015260a483019061060d565b038183335af180156101a85760209350610199575b505163f23a6e6160e01b8152f35b6101a290610669565b3861018b565b505051903d90823e3d90fd5b8280fd5b8380fd5b5082906060366003190112610249576101d361057d565b60243567ffffffffffffffff81116101b4576101f290369086016105ae565b83549091906001600160a01b031633036102395784955081849551928392833781018481520391604435905af161023561022a6106d5565b92519283928361064d565b0390f35b845163d238ed5960e01b81528690fd5b80fd5b509190346101b4578260031960a03682011261037f5761026a61057d565b50610273610598565b5067ffffffffffffffff926044358481116101b85761029590369083016105dc565b94909260643582811161037b576102af90369085016105dc565b92608435908111610377576102c790369086016105ae565b505060018060a01b0360015416948851916102e183610693565b878352333b156103735761034194610322610332938c519b8c9a8b9a631759616b60e11b8c5230908c015260248b015260a060448b015260a48a0191610862565b9185888403016064890152610862565b9184830301608485015261060d565b038183335af180156101a85760209350610364575b505163bc197c8160e01b8152f35b61036d90610669565b38610356565b8780fd5b8680fd5b8580fd5b5080fd5b50919060603660031901126101b45767ffffffffffffffff8135818111610405576103b190369084016105dc565b9490926024358381116101b4576103cb90369083016105dc565b9390926044359182116102495750916103f06102359794926103f896943691016105dc565b949093610720565b929091519283928361064d565b8480fd5b50823461037f578060031936011261037f5761042361057d565b61042b610598565b83546001600160a01b03939192909184831661046c5750839495506bffffffffffffffffffffffff60a01b9485911691161784551690600154161760015580f35b5163439a74c960e01b81528690fd5b509190346101b45760803660031901126101b45761049761057d565b506104a0610598565b5060643567ffffffffffffffff81116101b8576104c090369083016105ae565b50506001546001600160a01b0316333b156101b857825191632142170760e11b8352309083015260248201526044356044820152828160648183335af180156101a8576020935061051a575b5051630a85bd0160e11b8152f35b61052390610669565b3861050c565b905082346101b45760203660031901126101b4573563ffffffff60e01b81168091036101b45760209250630271189760e51b811490811561056c575b5015158152f35b6380ac58cd60e01b14905083610565565b600435906001600160a01b038216820361059357565b600080fd5b602435906001600160a01b038216820361059357565b9181601f840112156105935782359167ffffffffffffffff8311610593576020838186019501011161059357565b9181601f840112156105935782359167ffffffffffffffff8311610593576020808501948460051b01011161059357565b919082519283825260005b848110610639575050826000602080949584010152601f8019910116010190565b602081830181015184830182015201610618565b604090610666939215158152816020820152019061060d565b90565b67ffffffffffffffff811161067d57604052565b634e487b7160e01b600052604160045260246000fd5b6020810190811067ffffffffffffffff82111761067d57604052565b91908110156106bf5760051b0190565b634e487b7160e01b600052603260045260246000fd5b3d1561071b5767ffffffffffffffff903d82811161067d5760405192601f8201601f19908116603f011684019081118482101761067d5760405282523d6000602084013e565b606090565b600080549097919691956001600160a01b0394939091851633036108505780158015610846575b801561083c575b61082a57885b818110610779575050505050505090506001916040519061077482610693565b815290565b61078481838b6106af565b358681168103610826576107998286866106af565b35908883101561081257908b918360051b880135601e19893603018112156101b857880180359067ffffffffffffffff821161040557602001928136038413610405578493826040519384928337810185815203925af16107f86106d5565b90156108075750600101610754565b985050505050505050565b634e487b7160e01b8c52603260045260248cfd5b8a80fd5b604051634456f5e960e11b8152600490fd5b508281141561074e565b5085811415610747565b60405163d238ed5960e01b8152600490fd5b81835290916001600160fb1b0383116105935760209260051b80928483013701019056fea26469706673582212204f838d20e1bbad67690b51ed13b9571818dbf746a98d165a54ddb3f4c3d0857d64736f6c63430008190033