@arbitrum/sdk
Version:
Typescript library client-side interactions with Arbitrum
905 lines (904 loc) • 46.3 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.L1OrbitReverseCustomGateway__factory = void 0;
/* Autogenerated file. Do not edit manually. */
/* tslint:disable */
/* eslint-disable */
const ethers_1 = require("ethers");
const _abi = [
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: "address",
name: "l1Token",
type: "address",
},
{
indexed: true,
internalType: "address",
name: "_from",
type: "address",
},
{
indexed: true,
internalType: "address",
name: "_to",
type: "address",
},
{
indexed: true,
internalType: "uint256",
name: "_sequenceNumber",
type: "uint256",
},
{
indexed: false,
internalType: "uint256",
name: "_amount",
type: "uint256",
},
],
name: "DepositInitiated",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: true,
internalType: "address",
name: "l1Address",
type: "address",
},
{
indexed: true,
internalType: "address",
name: "l2Address",
type: "address",
},
],
name: "TokenSet",
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: "_seqNum",
type: "uint256",
},
{
indexed: false,
internalType: "bytes",
name: "_data",
type: "bytes",
},
],
name: "TxToL2",
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: "exitNum",
type: "uint256",
},
{
indexed: false,
internalType: "bytes",
name: "newData",
type: "bytes",
},
{
indexed: false,
internalType: "bytes",
name: "data",
type: "bytes",
},
{
indexed: false,
internalType: "bool",
name: "madeExternalCall",
type: "bool",
},
],
name: "WithdrawRedirected",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: "address",
name: "l1Token",
type: "address",
},
{
indexed: true,
internalType: "address",
name: "_from",
type: "address",
},
{
indexed: true,
internalType: "address",
name: "_to",
type: "address",
},
{
indexed: true,
internalType: "uint256",
name: "_exitNum",
type: "uint256",
},
{
indexed: false,
internalType: "uint256",
name: "_amount",
type: "uint256",
},
],
name: "WithdrawalFinalized",
type: "event",
},
{
inputs: [
{
internalType: "address",
name: "l1ERC20",
type: "address",
},
],
name: "calculateL2TokenAddress",
outputs: [
{
internalType: "address",
name: "",
type: "address",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "counterpartGateway",
outputs: [
{
internalType: "address",
name: "",
type: "address",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "uint256",
name: "_exitNum",
type: "uint256",
},
{
internalType: "address",
name: "_initialDestination",
type: "address",
},
],
name: "encodeWithdrawal",
outputs: [
{
internalType: "bytes32",
name: "",
type: "bytes32",
},
],
stateMutability: "pure",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "_token",
type: "address",
},
{
internalType: "address",
name: "_from",
type: "address",
},
{
internalType: "address",
name: "_to",
type: "address",
},
{
internalType: "uint256",
name: "_amount",
type: "uint256",
},
{
internalType: "bytes",
name: "_data",
type: "bytes",
},
],
name: "finalizeInboundTransfer",
outputs: [],
stateMutability: "payable",
type: "function",
},
{
inputs: [
{
internalType: "address[]",
name: "",
type: "address[]",
},
{
internalType: "address[]",
name: "",
type: "address[]",
},
{
internalType: "uint256",
name: "",
type: "uint256",
},
{
internalType: "uint256",
name: "",
type: "uint256",
},
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
name: "forceRegisterTokenToL2",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
stateMutability: "payable",
type: "function",
},
{
inputs: [
{
internalType: "address[]",
name: "_l1Addresses",
type: "address[]",
},
{
internalType: "address[]",
name: "_l2Addresses",
type: "address[]",
},
{
internalType: "uint256",
name: "_maxGas",
type: "uint256",
},
{
internalType: "uint256",
name: "_gasPriceBid",
type: "uint256",
},
{
internalType: "uint256",
name: "_maxSubmissionCost",
type: "uint256",
},
{
internalType: "uint256",
name: "_feeAmount",
type: "uint256",
},
],
name: "forceRegisterTokenToL2",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "uint256",
name: "_exitNum",
type: "uint256",
},
{
internalType: "address",
name: "_initialDestination",
type: "address",
},
{
internalType: "bytes",
name: "_initialData",
type: "bytes",
},
],
name: "getExternalCall",
outputs: [
{
internalType: "address",
name: "target",
type: "address",
},
{
internalType: "bytes",
name: "data",
type: "bytes",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "_l1Token",
type: "address",
},
{
internalType: "address",
name: "_from",
type: "address",
},
{
internalType: "address",
name: "_to",
type: "address",
},
{
internalType: "uint256",
name: "_amount",
type: "uint256",
},
{
internalType: "bytes",
name: "_data",
type: "bytes",
},
],
name: "getOutboundCalldata",
outputs: [
{
internalType: "bytes",
name: "outboundCalldata",
type: "bytes",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "inbox",
outputs: [
{
internalType: "address",
name: "",
type: "address",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "_l1Counterpart",
type: "address",
},
{
internalType: "address",
name: "_l1Router",
type: "address",
},
{
internalType: "address",
name: "_inbox",
type: "address",
},
{
internalType: "address",
name: "_owner",
type: "address",
},
],
name: "initialize",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "",
type: "address",
},
],
name: "l1ToL2Token",
outputs: [
{
internalType: "address",
name: "",
type: "address",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "_l1Token",
type: "address",
},
{
internalType: "address",
name: "_to",
type: "address",
},
{
internalType: "uint256",
name: "_amount",
type: "uint256",
},
{
internalType: "uint256",
name: "_maxGas",
type: "uint256",
},
{
internalType: "uint256",
name: "_gasPriceBid",
type: "uint256",
},
{
internalType: "bytes",
name: "_data",
type: "bytes",
},
],
name: "outboundTransfer",
outputs: [
{
internalType: "bytes",
name: "res",
type: "bytes",
},
],
stateMutability: "payable",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "_l1Token",
type: "address",
},
{
internalType: "address",
name: "_refundTo",
type: "address",
},
{
internalType: "address",
name: "_to",
type: "address",
},
{
internalType: "uint256",
name: "_amount",
type: "uint256",
},
{
internalType: "uint256",
name: "_maxGas",
type: "uint256",
},
{
internalType: "uint256",
name: "_gasPriceBid",
type: "uint256",
},
{
internalType: "bytes",
name: "_data",
type: "bytes",
},
],
name: "outboundTransferCustomRefund",
outputs: [
{
internalType: "bytes",
name: "res",
type: "bytes",
},
],
stateMutability: "payable",
type: "function",
},
{
inputs: [],
name: "owner",
outputs: [
{
internalType: "address",
name: "",
type: "address",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "postUpgradeInit",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "bytes32",
name: "",
type: "bytes32",
},
],
name: "redirectedExits",
outputs: [
{
internalType: "bool",
name: "isExit",
type: "bool",
},
{
internalType: "address",
name: "_newTo",
type: "address",
},
{
internalType: "bytes",
name: "_newData",
type: "bytes",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "_l2Address",
type: "address",
},
{
internalType: "uint256",
name: "_maxGas",
type: "uint256",
},
{
internalType: "uint256",
name: "_gasPriceBid",
type: "uint256",
},
{
internalType: "uint256",
name: "_maxSubmissionCost",
type: "uint256",
},
{
internalType: "address",
name: "_creditBackAddress",
type: "address",
},
{
internalType: "uint256",
name: "_feeAmount",
type: "uint256",
},
],
name: "registerTokenToL2",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "_l2Address",
type: "address",
},
{
internalType: "uint256",
name: "_maxGas",
type: "uint256",
},
{
internalType: "uint256",
name: "_gasPriceBid",
type: "uint256",
},
{
internalType: "uint256",
name: "_maxSubmissionCost",
type: "uint256",
},
{
internalType: "uint256",
name: "_feeAmount",
type: "uint256",
},
],
name: "registerTokenToL2",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "",
type: "address",
},
{
internalType: "uint256",
name: "",
type: "uint256",
},
{
internalType: "uint256",
name: "",
type: "uint256",
},
{
internalType: "uint256",
name: "",
type: "uint256",
},
{
internalType: "address",
name: "",
type: "address",
},
],
name: "registerTokenToL2",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
stateMutability: "payable",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "",
type: "address",
},
{
internalType: "uint256",
name: "",
type: "uint256",
},
{
internalType: "uint256",
name: "",
type: "uint256",
},
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
name: "registerTokenToL2",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
stateMutability: "payable",
type: "function",
},
{
inputs: [],
name: "router",
outputs: [
{
internalType: "address",
name: "",
type: "address",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "newOwner",
type: "address",
},
],
name: "setOwner",
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: "_exitNum",
type: "uint256",
},
{
internalType: "address",
name: "_initialDestination",
type: "address",
},
{
internalType: "address",
name: "_newDestination",
type: "address",
},
{
internalType: "bytes",
name: "_newData",
type: "bytes",
},
{
internalType: "bytes",
name: "_data",
type: "bytes",
},
],
name: "transferExitAndCall",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [],
name: "whitelist",
outputs: [
{
internalType: "address",
name: "",
type: "address",
},
],
stateMutability: "view",
type: "function",
},
];
const _bytecode = "0x608060405234801561001057600080fd5b50612e0c806100206000396000f3fe6080604052600436106101565760003560e01c806393e59dc1116100c1578063ca346d4a1161007a578063ca346d4a146103f1578063d2ce7d6514610404578063f26bdead14610417578063f68a908214610425578063f887ea4014610453578063f8c8765e14610473578063fb0e722b1461049357600080fd5b806393e59dc11461031457806395fcea7814610334578063a0c76a9614610349578063a7e28d4814610369578063bcf2e6eb146103a2578063bd5f3e7d146103d157600080fd5b806337daacad1161011357806337daacad1461023e5780633e8ee3df1461025e5780634fb1a07b1461027e57806385f255971461029e5780638a2dc014146102be5780638da5cb5b146102f457600080fd5b806301ffc9a71461015b578063020a60581461019057806313af4035146101be5780631d3a689f146101e05780632db09c1c146101f35780632e567b361461022b575b600080fd5b34801561016757600080fd5b5061017b610176366004611f87565b6104b3565b60405190151581526020015b60405180910390f35b34801561019c57600080fd5b506101b06101ab366004611fc6565b6104ea565b604051908152602001610187565b3480156101ca57600080fd5b506101de6101d9366004611ff6565b61052f565b005b6101b06101ee366004612057565b6105ca565b3480156101ff57600080fd5b50600054610213906001600160a01b031681565b6040516001600160a01b039091168152602001610187565b6101de61023936600461211e565b61060f565b34801561024a57600080fd5b506101b06102593660046121a2565b610651565b34801561026a57600080fd5b506101b0610279366004612200565b61066c565b61029161028c366004612244565b610686565b604051610187919061232b565b3480156102aa57600080fd5b506101b06102b936600461233e565b6106d1565b3480156102ca57600080fd5b506102136102d9366004611ff6565b6004602052600090815260409020546001600160a01b031681565b34801561030057600080fd5b50600554610213906001600160a01b031681565b34801561032057600080fd5b50600654610213906001600160a01b031681565b34801561034057600080fd5b506101de61071b565b34801561035557600080fd5b5061029161036436600461248f565b610793565b34801561037557600080fd5b50610213610384366004611ff6565b6001600160a01b039081166000908152600460205260409020541690565b3480156103ae57600080fd5b506103c26103bd36600461250d565b61080d565b60405161018793929190612526565b3480156103dd57600080fd5b506101de6103ec36600461255b565b6108c6565b6101b06103ff3660046125f9565b610b26565b61029161041236600461264f565b610b40565b6101b06103ff3660046126c1565b34801561043157600080fd5b506104456104403660046126fc565b610b5e565b604051610187929190612754565b34801561045f57600080fd5b50600154610213906001600160a01b031681565b34801561047f57600080fd5b506101de61048e366004612778565b610c4e565b34801561049f57600080fd5b50600254610213906001600160a01b031681565b60006001600160e01b03198216634fb1a07b60e01b14806104e457506301ffc9a760e01b6001600160e01b03198316145b92915050565b600082826040516020016105119291909182526001600160a01b0316602082015260400190565b60405160208183030381529060405280519060200120905092915050565b6005546001600160a01b031633146105625760405162461bcd60e51b8152600401610559906127d4565b60405180910390fd5b6001600160a01b0381166105a85760405162461bcd60e51b815260206004820152600d60248201526c24a72b20a624a22fa7aba722a960991b6044820152606401610559565b600580546001600160a01b0319166001600160a01b0392909216919091179055565b6005546000906001600160a01b031633146105f75760405162461bcd60e51b8152600401610559906127d4565b60405162461bcd60e51b8152600401610559906127f8565b6002600754036106315760405162461bcd60e51b815260040161055990612828565b6002600755610644868686868686610c8a565b5050600160075550505050565b6000610661878787878787610df2565b979650505050505050565b600061067c868686863387610651565b9695505050505050565b60606002600754036106aa5760405162461bcd60e51b815260040161055990612828565b60026007556106bf89898989898989896110ea565b60016007559998505050505050505050565b6005546000906001600160a01b031633146106fe5760405162461bcd60e51b8152600401610559906127d4565b61070e898989898989898961133f565b9998505050505050505050565b60006107457fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b9050336001600160a01b038216146107905760405162461bcd60e51b815260206004820152600e60248201526d2727aa2fa32927a6afa0a226a4a760911b6044820152606401610559565b50565b60408051602081019091526000815260609063172b3d9b60e11b878787876107bb868961152b565b6040516024016107cf95949392919061285f565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915291505095945050505050565b6003602052600090815260409020805460018201805460ff8316936101009093046001600160a01b03169291906108439061289a565b80601f016020809104026020016040519081016040528092919081815260200182805461086f9061289a565b80156108bc5780601f10610891576101008083540402835291602001916108bc565b820191906000526020600020905b81548152906001019060200180831161089f57829003601f168201915b5050505050905083565b60006108e2888860405180602001604052806000815250610b5e565b509050336001600160a01b038216146109335760405162461bcd60e51b81526020600482015260136024820152722727aa2fa2ac2822a1aa22a22fa9a2a72222a960691b6044820152606401610559565b83156109735760405162461bcd60e51b815260206004820152600f60248201526e1393d7d110551057d0531313d5d151608a1b6044820152606401610559565b6109b588888888888080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061155792505050565b8115610ac2576001600160a01b0386163b610a045760405162461bcd60e51b815260206004820152600f60248201526e1513d7d393d517d0d3d395149050d5608a1b6044820152606401610559565b604051630592e20760e41b81526000906001600160a01b0388169063592e207090610a399085908d90899089906004016128fd565b6020604051808303816000875af1158015610a58573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a7c9190612925565b905080610ac05760405162461bcd60e51b81526020600482015260126024820152711514905394d1915497d213d3d2d7d190525360721b6044820152606401610559565b505b87866001600160a01b0316826001600160a01b03167f56735ccb9dc7d2222ce4177fc3aea44c33882e2a2c73e0fb1c6b93c9c13a04d48888888860008b8b905011604051610b14959493929190612947565b60405180910390a45050505050505050565b600060405162461bcd60e51b8152600401610559906127f8565b6060610b528888898989898989610686565b98975050505050505050565b600060606000610b6e86866104ea565b600081815260036020526040902080549192509060ff1615610c3d578060000160019054906101000a90046001600160a01b031681600101808054610bb29061289a565b80601f0160208091040260200160405190810160405280929190818152602001828054610bde9061289a565b8015610c2b5780601f10610c0057610100808354040283529160200191610c2b565b820191906000526020600020905b815481529060010190602001808311610c0e57829003601f168201915b50505050509050935093505050610c46565b85859350935050505b935093915050565b610c598484846115e9565b600580546001600160a01b039092166001600160a01b03199283161790556006805490911690555050600160075550565b6002546001600160a01b03166000610ca18261169c565b9050336001600160a01b03821614610ced5760405162461bcd60e51b815260206004820152600f60248201526e4e4f545f46524f4d5f42524944474560881b6044820152606401610559565b6000610cf883611700565b6000549091506001600160a01b03808316911614610d535760405162461bcd60e51b81526020600482015260186024820152774f4e4c595f434f554e544552504152545f4741544557415960401b6044820152606401610559565b600080610d60878761181e565b915091508051600014610d7e57506040805160208101909152600081525b610d89828a83610b5e565b509850610d978b8a8a611839565b81896001600160a01b03168b6001600160a01b03167f891afe029c75c4f8c5855fc3480598bc5a53739344f6ae575bdb7ea2a79f56b38e8c604051610ddd929190612983565b60405180910390a45050505050505050505050565b600060b160ff16336001600160a01b0316638e5f5ad16040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e37573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e5b919061299c565b60ff1614610e9d5760405162461bcd60e51b815260206004820152600f60248201526e1393d517d0549097d1539050931151608a1b6044820152606401610559565b336000908152600460205260409020546001600160a01b03168015610f1d57876001600160a01b0316816001600160a01b031614610f1d5760405162461bcd60e51b815260206004820152601b60248201527f4e4f5f5550444154455f544f5f444946464552454e545f4144445200000000006044820152606401610559565b5033600090815260046020908152604080832080546001600160a01b0319166001600160a01b038c161790558051600180825281830190925291828101908036833750506040805160018082528183019092529293506000929150602080830190803683370190505090503382600081518110610f9c57610f9c6129bf565b60200260200101906001600160a01b031690816001600160a01b0316815250508881600081518110610fd057610fd06129bf565b60200260200101906001600160a01b031690816001600160a01b03168152505080600081518110611003576110036129bf565b60200260200101516001600160a01b031682600081518110611027576110276129bf565b60200260200101516001600160a01b03167f0dd664a155dd89526bb019e22b00291bb7ca9d07ba3ec4a1a76b410da9797ceb60405160405180910390a3600063d4f5532f60e01b8383604051602401611081929190612a19565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152600254600080549293506110dc926001600160a01b03928316921690899089908c8f8f8961189e565b9a9950505050505050505050565b60606110f5336118b2565b6111335760405162461bcd60e51b815260206004820152600f60248201526e2727aa2fa32927a6afa927aaaa22a960891b6044820152606401610559565b6000806060600080611144336118b2565b1561115d5761115388886118c6565b909550925061119a565b33945087878080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295505050505b6111a3836118e2565b8151919550919350909150156111f15760405162461bcd60e51b8152602060048201526013602482015272115615149057d110551057d11254d050931151606a1b6044820152606401610559565b6001600160a01b038e163b61123a5760405162461bcd60e51b815260206004820152600f60248201526e130c57d393d517d0d3d395149050d5608a1b6044820152606401610559565b6001600160a01b038e811660009081526004602052604090205416806112945760405162461bcd60e51b815260206004820152600f60248201526e1393d7d30c97d513d2d15397d4d155608a1b6044820152606401610559565b61129f8f878e611909565b9b506112ae8f878f8f88610793565b96506112c08e878e8e8e88888e611974565b9450505050818a6001600160a01b0316846001600160a01b03167fb8910b9960c443aac3240b98585384e3a6f109fbf6969e264c3f183d69aba7e18f8d60405161130b929190612983565b60405180910390a4604080516020810184905201604051602081830303815290604052935050505098975050505050505050565b60008786146113825760405162461bcd60e51b815260206004820152600f60248201526e494e56414c49445f4c454e4754485360881b6044820152606401610559565b60005b888110156114ae5787878281811061139f5761139f6129bf565b90506020020160208101906113b49190611ff6565b600460008c8c858181106113ca576113ca6129bf565b90506020020160208101906113df9190611ff6565b6001600160a01b039081168252602082019290925260400160002080546001600160a01b03191692909116919091179055878782818110611422576114226129bf565b90506020020160208101906114379190611ff6565b6001600160a01b03168a8a83818110611452576114526129bf565b90506020020160208101906114679190611ff6565b6001600160a01b03167f0dd664a155dd89526bb019e22b00291bb7ca9d07ba3ec4a1a76b410da9797ceb60405160405180910390a3806114a681612a54565b915050611385565b50600063d4f5532f60e01b8a8a8a8a6040516024016114d09493929190612aab565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152600254600080549293506110dc926001600160a01b0392831692169033908790898c8c8961189e565b60608282604051602001611540929190612ad2565b604051602081830303815290604052905092915050565b600061156385856104ea565b6040805160608101825260018082526001600160a01b038781166020808501918252848601898152600088815260039092529590208451815492516001600160a81b0319909316901515610100600160a81b03191617610100929093169190910291909117815592519394509092908201906115df9082612b45565b5050505050505050565b6115f383836119c9565b6001600160a01b0382166116365760405162461bcd60e51b815260206004820152600a6024820152692120a22fa927aaaa22a960b11b6044820152606401610559565b6001600160a01b0381166116785760405162461bcd60e51b81526020600482015260096024820152680848288be929c849eb60bb1b6044820152606401610559565b600280546001600160a01b0319166001600160a01b03929092169190911790555050565b6000816001600160a01b031663e78cea926040518163ffffffff1660e01b8152600401602060405180830381865afa1580156116dc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104e49190612c04565b60008061170c8361169c565b6001600160a01b031663ab5d89436040518163ffffffff1660e01b8152600401602060405180830381865afa158015611749573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061176d9190612c04565b90506000816001600160a01b03166380648b026040518163ffffffff1660e01b8152600401602060405180830381865afa1580156117af573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117d39190612c04565b90506001600160a01b0381166118175760405162461bcd60e51b81526020600482015260096024820152682727afa9a2a72222a960b91b6044820152606401610559565b9392505050565b6000606061182e83850185612c21565b909590945092505050565b6040516346154c9f60e11b81526001600160a01b03841690638c2a993e906118679085908590600401612983565b600060405180830381600087803b15801561188157600080fd5b505af1158015611895573d6000803e3d6000fd5b50505050505050565b60006110dc8a8a8a8b8b8b8b8b8b8b611a8b565b6001546001600160a01b0391821691161490565b600060606118d683850185612c67565b915091505b9250929050565b600060606000838060200190518101906118fc9190612ca0565b9196909550909350915050565b6040516374f4f54760e01b81526000906001600160a01b038516906374f4f5479061193a9086908690600401612983565b600060405180830381600087803b15801561195457600080fd5b505af1158015611968573d6000803e3d6000fd5b50939695505050505050565b600061070e600260009054906101000a90046001600160a01b031660008054906101000a90046001600160a01b03168b8b87600060405180606001604052808c81526020018e81526020018d81525089611afd565b6001600160a01b038216611a155760405162461bcd60e51b81526020600482015260136024820152721253959053125117d0d3d55395115494105495606a1b6044820152606401610559565b6000546001600160a01b031615611a5d5760405162461bcd60e51b815260206004820152600c60248201526b1053149150511657d253925560a21b6044820152606401610559565b600080546001600160a01b039384166001600160a01b03199182161790915560018054929093169116179055565b600080611aa08c8c8c8c8c8c8c8c8c8c611b1d565b9050808b6001600160a01b03168a6001600160a01b03167fc1d1490cf25c3b40d600dfb27c7680340ed1ab901b7e8f3551280968a3b372b086604051611ae6919061232b565b60405180910390a49b9a5050505050505050505050565b600061070e89898989898989600001518a602001518b604001518b611a8b565b600080611b298c61169c565b6001600160a01b031663e1758bd86040518163ffffffff1660e01b8152600401602060405180830381865afa158015611b66573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b8a9190612c04565b6040516370a0823160e01b81526001600160a01b038e811660048301529192506000918316906370a0823190602401602060405180830381865afa158015611bd6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bfa9190612d2b565b905088811015611c40576000611c0f336118b2565b611c195733611c1b565b8a5b9050611c3e818f611c2c858e612d44565b6001600160a01b038716929190611cd0565b505b50508a6001600160a01b031663549e84268b88888d8d8a8a8f8b6040518a63ffffffff1660e01b8152600401611c7e99989796959493929190612d57565b6020604051808303816000875af1158015611c9d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cc19190612d2b565b9b9a5050505050505050505050565b604080516001600160a01b0385811660248301528416604482015260648082018490528251808303909101815260849091019091526020810180516001600160e01b03166323b872dd60e01b179052611d2a908590611d30565b50505050565b6000611d85826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b0316611e079092919063ffffffff16565b805190915015611e025780806020019051810190611da39190612925565b611e025760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401610559565b505050565b6060611e168484600085611e1e565b949350505050565b606082471015611e7f5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b6064820152608401610559565b600080866001600160a01b03168587604051611e9b9190612dba565b60006040518083038185875af1925050503d8060008114611ed8576040519150601f19603f3d011682016040523d82523d6000602084013e611edd565b606091505b50915091506106618783838760608315611f58578251600003611f51576001600160a01b0385163b611f515760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610559565b5081611e16565b611e168383815115611f6d5781518083602001fd5b8060405162461bcd60e51b8152600401610559919061232b565b600060208284031215611f9957600080fd5b81356001600160e01b03198116811461181757600080fd5b6001600160a01b038116811461079057600080fd5b60008060408385031215611fd957600080fd5b823591506020830135611feb81611fb1565b809150509250929050565b60006020828403121561200857600080fd5b813561181781611fb1565b60008083601f84011261202557600080fd5b5081356001600160401b0381111561203c57600080fd5b6020830191508360208260051b85010111156118db57600080fd5b600080600080600080600060a0888a03121561207257600080fd5b87356001600160401b038082111561208957600080fd5b6120958b838c01612013565b909950975060208a01359150808211156120ae57600080fd5b506120bb8a828b01612013565b989b979a50986040810135976060820135975060809091013595509350505050565b60008083601f8401126120ef57600080fd5b5081356001600160401b0381111561210657600080fd5b6020830191508360208285010111156118db57600080fd5b60008060008060008060a0878903121561213757600080fd5b863561214281611fb1565b9550602087013561215281611fb1565b9450604087013561216281611fb1565b93506060870135925060808701356001600160401b0381111561218457600080fd5b61219089828a016120dd565b979a9699509497509295939492505050565b60008060008060008060c087890312156121bb57600080fd5b86356121c681611fb1565b955060208701359450604087013593506060870135925060808701356121eb81611fb1565b8092505060a087013590509295509295509295565b600080600080600060a0868803121561221857600080fd5b853561222381611fb1565b97602087013597506040870135966060810135965060800135945092505050565b60008060008060008060008060e0898b03121561226057600080fd5b883561226b81611fb1565b9750602089013561227b81611fb1565b9650604089013561228b81611fb1565b9550606089013594506080890135935060a0890135925060c08901356001600160401b038111156122bb57600080fd5b6122c78b828c016120dd565b999c989b5096995094979396929594505050565b60005b838110156122f65781810151838201526020016122de565b50506000910152565b600081518084526123178160208601602086016122db565b601f01601f19169290920160200192915050565b60208152600061181760208301846122ff565b60008060008060008060008060c0898b03121561235a57600080fd5b88356001600160401b038082111561237157600080fd5b61237d8c838d01612013565b909a50985060208b013591508082111561239657600080fd5b506123a38b828c01612013565b999c989b5099604081013598606082013598506080820135975060a09091013595509350505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561240a5761240a6123cc565b604052919050565b60006001600160401b0382111561242b5761242b6123cc565b50601f01601f191660200190565b600082601f83011261244a57600080fd5b813561245d61245882612412565b6123e2565b81815284602083860101111561247257600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a086880312156124a757600080fd5b85356124b281611fb1565b945060208601356124c281611fb1565b935060408601356124d281611fb1565b92506060860135915060808601356001600160401b038111156124f457600080fd5b61250088828901612439565b9150509295509295909350565b60006020828403121561251f57600080fd5b5035919050565b83151581526001600160a01b0383166020820152606060408201819052600090612552908301846122ff565b95945050505050565b600080600080600080600060a0888a03121561257657600080fd5b87359650602088013561258881611fb1565b9550604088013561259881611fb1565b945060608801356001600160401b03808211156125b457600080fd5b6125c08b838c016120dd565b909650945060808a01359150808211156125d957600080fd5b506125e68a828b016120dd565b989b979a50959850939692959293505050565b600080600080600060a0868803121561261157600080fd5b853561261c81611fb1565b9450602086013593506040860135925060608601359150608086013561264181611fb1565b809150509295509295909350565b600080600080600080600060c0888a03121561266a57600080fd5b873561267581611fb1565b9650602088013561268581611fb1565b955060408801359450606088013593506080880135925060a08801356001600160401b038111156126b557600080fd5b6125e68a828b016120dd565b600080600080608085870312156126d757600080fd5b84356126e281611fb1565b966020860135965060408601359560600135945092505050565b60008060006060848603121561271157600080fd5b83359250602084013561272381611fb1565b915060408401356001600160401b0381111561273e57600080fd5b61274a86828701612439565b9150509250925092565b6001600160a01b0383168152604060208201819052600090611e16908301846122ff565b6000806000806080858703121561278e57600080fd5b843561279981611fb1565b935060208501356127a981611fb1565b925060408501356127b981611fb1565b915060608501356127c981611fb1565b939692955090935050565b6020808252600a908201526927a7262cafa7aba722a960b11b604082015260600190565b6020808252601690820152751393d517d4d5541413d495115117d25397d3d490925560521b604082015260600190565b6020808252601f908201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604082015260600190565b6001600160a01b0386811682528581166020830152841660408201526060810183905260a060808201819052600090610661908301846122ff565b600181811c908216806128ae57607f821691505b6020821081036128ce57634e487b7160e01b600052602260045260246000fd5b50919050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b60018060a01b038516815283602082015260606040820152600061067c6060830184866128d4565b60006020828403121561293757600080fd5b8151801515811461181757600080fd5b60608152600061295b6060830187896128d4565b828103602084015261296e8186886128d4565b91505082151560408301529695505050505050565b6001600160a01b03929092168252602082015260400190565b6000602082840312156129ae57600080fd5b815160ff8116811461181757600080fd5b634e487b7160e01b600052603260045260246000fd5b600081518084526020808501945080840160005b83811015612a0e5781516001600160a01b0316875295820195908201906001016129e9565b509495945050505050565b604081526000612a2c60408301856129d5565b828103602084015261255281856129d5565b634e487b7160e01b600052601160045260246000fd5b600060018201612a6657612a66612a3e565b5060010190565b8183526000602080850194508260005b85811015612a0e578135612a9081611fb1565b6001600160a01b031687529582019590820190600101612a7d565b604081526000612abf604083018688612a6d565b8281036020840152610661818587612a6d565b604081526000612ae560408301856122ff565b828103602084015261255281856122ff565b601f821115611e0257600081815260208120601f850160051c81016020861015612b1e5750805b601f850160051c820191505b81811015612b3d57828155600101612b2a565b505050505050565b81516001600160401b03811115612b5e57612b5e6123cc565b612b7281612b6c845461289a565b84612af7565b602080601f831160018114612ba75760008415612b8f5750858301515b600019600386901b1c1916600185901b178555612b3d565b600085815260208120601f198616915b82811015612bd657888601518255948401946001909101908401612bb7565b5085821015612bf45787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600060208284031215612c1657600080fd5b815161181781611fb1565b60008060408385031215612c3457600080fd5b8235915060208301356001600160401b03811115612c5157600080fd5b612c5d85828601612439565b9150509250929050565b60008060408385031215612c7a57600080fd5b8235612c8581611fb1565b915060208301356001600160401b03811115612c5157600080fd5b600080600060608486031215612cb557600080fd5b8351925060208401516001600160401b03811115612cd257600080fd5b8401601f81018613612ce357600080fd5b8051612cf161245882612412565b818152876020838501011115612d0657600080fd5b612d178260208301602086016122db565b809450505050604084015190509250925092565b600060208284031215612d3d57600080fd5b5051919050565b818103818111156104e4576104e4612a3e565b600061012060018060a01b03808d1684528b60208501528a6040850152808a1660608501528089166080850152508660a08401528560c08401528460e084015280610100840152612daa818401856122ff565b9c9b505050505050505050505050565b60008251612dcc8184602087016122db565b919091019291505056fea264697066735822122014dff2ef93303b5f13063c57e28d10abef956973d2706487c111b75a2037afc464736f6c63430008100033";
const isSuperArgs = (xs) => xs.length > 1;
class L1OrbitReverseCustomGateway__factory extends ethers_1.ContractFactory {
constructor(...args) {
if (isSuperArgs(args)) {
super(...args);
}
else {
super(_abi, _bytecode, args[0]);
}
this.contractName = "L1OrbitReverseCustomGateway";
}
deploy(overrides) {
return super.deploy(overrides || {});
}
getDeployTransaction(overrides) {
return super.getDeployTransaction(overrides || {});
}
attach(address) {
return super.attach(address);
}
connect(signer) {
return super.connect(signer);
}
static createInterface() {
return new ethers_1.utils.Interface(_abi);
}
static connect(address, signerOrProvider) {
return new ethers_1.Contract(address, _abi, signerOrProvider);
}
}
exports.L1OrbitReverseCustomGateway__factory = L1OrbitReverseCustomGateway__factory;
L1OrbitReverseCustomGateway__factory.bytecode = _bytecode;
L1OrbitReverseCustomGateway__factory.abi = _abi;