@arbitrum/sdk
Version:
Typescript library client-side interactions with Arbitrum
633 lines (632 loc) • 34.4 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.L1ERC20Gateway__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: "_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: "cloneableProxyHash",
outputs: [
{
internalType: "bytes32",
name: "",
type: "bytes32",
},
],
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: "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: "_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: "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: "_l2Counterpart",
type: "address",
},
{
internalType: "address",
name: "_router",
type: "address",
},
{
internalType: "address",
name: "_inbox",
type: "address",
},
{
internalType: "bytes32",
name: "_cloneableProxyHash",
type: "bytes32",
},
{
internalType: "address",
name: "_l2BeaconProxyFactory",
type: "address",
},
],
name: "initialize",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [],
name: "l2BeaconProxyFactory",
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: "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: [],
name: "router",
outputs: [
{
internalType: "address",
name: "",
type: "address",
},
],
stateMutability: "view",
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 = "0x608060405234801561001057600080fd5b5061241c806100206000396000f3fe6080604052600436106100e95760003560e01c8063a01893bf11610085578063a01893bf1461021e578063a0c76a961461023e578063a7e28d481461025e578063bcf2e6eb1461027e578063bd5f3e7d146102ad578063d2ce7d65146102cd578063f68a9082146102e0578063f887ea401461030e578063fb0e722b1461032e57600080fd5b806301ffc9a7146100ee578063020a6058146101235780632db09c1c146101515780632e567b361461017e5780634fb1a07b1461019357806370fc045f146101b357806393e59dc1146101d357806395fcea78146101f357806397881f8d14610208575b600080fd5b3480156100fa57600080fd5b5061010e610109366004611965565b61034e565b60405190151581526020015b60405180910390f35b34801561012f57600080fd5b5061014361013e3660046119a4565b610385565b60405190815260200161011a565b34801561015d57600080fd5b50600054610171906001600160a01b031681565b60405161011a91906119d4565b61019161018c366004611a29565b6103ca565b005b6101a66101a1366004611aad565b610415565b60405161011a9190611b94565b3480156101bf57600080fd5b50600554610171906001600160a01b031681565b3480156101df57600080fd5b50600654610171906001600160a01b031681565b3480156101ff57600080fd5b50610191610460565b34801561021457600080fd5b5061014360045481565b34801561022a57600080fd5b50610191610239366004611ba7565b6104d8565b34801561024a57600080fd5b506101a6610259366004611cd2565b6105a2565b34801561026a57600080fd5b50610171610279366004611d50565b610665565b34801561028a57600080fd5b5061029e610299366004611d6d565b610696565b60405161011a93929190611d86565b3480156102b957600080fd5b506101916102c8366004611dbb565b61074f565b6101a66102db366004611e59565b6109af565b3480156102ec57600080fd5b506103006102fb366004611ecb565b6109cd565b60405161011a929190611f23565b34801561031a57600080fd5b50600154610171906001600160a01b031681565b34801561033a57600080fd5b50600254610171906001600160a01b031681565b60006001600160e01b03198216634fb1a07b60e01b148061037f57506301ffc9a760e01b6001600160e01b03198316145b92915050565b600082826040516020016103ac9291909182526001600160a01b0316602082015260400190565b60405160208183030381529060405280519060200120905092915050565b6002600754036103f55760405162461bcd60e51b81526004016103ec90611f47565b60405180910390fd5b6002600755610408868686868686610abd565b5050600160075550505050565b60606002600754036104395760405162461bcd60e51b81526004016103ec90611f47565b600260075561044e8989898989898989610c25565b60016007559998505050505050505050565b600061048a7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b9050336001600160a01b038216146104d55760405162461bcd60e51b815260206004820152600e60248201526d2727aa2fa32927a6afa0a226a4a760911b60448201526064016103ec565b50565b6104e3858585610e8a565b816105245760405162461bcd60e51b81526020600482015260116024820152700929cac82989288bea0a49eb0b29082a69607b1b60448201526064016103ec565b6001600160a01b03811661056b5760405162461bcd60e51b815260206004820152600e60248201526d24a72b20a624a22fa122a0a1a7a760911b60448201526064016103ec565b600491909155600580546001600160a01b039092166001600160a01b03199283161790556006805490911690555050600160075550565b606060006105b7876306fdde0360e01b610f3d565b6105c8886395d89b4160e01b610f3d565b6105d98963313ce56760e01b610f3d565b6040516020016105eb93929190611f7e565b60408051601f19818403018152919052905063172b3d9b60e11b878787876106138689610fce565b604051602401610627959493929190611fb7565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915291505095945050505050565b60008061067183610ffa565b60045460055491925061068f918391906001600160a01b031661105f565b9392505050565b6003602052600090815260409020805460018201805460ff8316936101009093046001600160a01b03169291906106cc90611ff2565b80601f01602080910402602001604051908101604052809291908181526020018280546106f890611ff2565b80156107455780601f1061071a57610100808354040283529160200191610745565b820191906000526020600020905b81548152906001019060200180831161072857829003601f168201915b5050505050905083565b600061076b8888604051806020016040528060008152506109cd565b509050336001600160a01b038216146107bc5760405162461bcd60e51b81526020600482015260136024820152722727aa2fa2ac2822a1aa22a22fa9a2a72222a960691b60448201526064016103ec565b83156107fc5760405162461bcd60e51b815260206004820152600f60248201526e1393d7d110551057d0531313d5d151608a1b60448201526064016103ec565b61083e88888888888080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061108992505050565b811561094b576001600160a01b0386163b61088d5760405162461bcd60e51b815260206004820152600f60248201526e1513d7d393d517d0d3d395149050d5608a1b60448201526064016103ec565b604051630592e20760e41b81526000906001600160a01b0388169063592e2070906108c29085908d9089908990600401612055565b6020604051808303816000875af11580156108e1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610905919061207d565b9050806109495760405162461bcd60e51b81526020600482015260126024820152711514905394d1915497d213d3d2d7d190525360721b60448201526064016103ec565b505b87866001600160a01b0316826001600160a01b03167f56735ccb9dc7d2222ce4177fc3aea44c33882e2a2c73e0fb1c6b93c9c13a04d48888888860008b8b90501160405161099d95949392919061209f565b60405180910390a45050505050505050565b60606109c18888898989898989610415565b98975050505050505050565b6000606060006109dd8686610385565b600081815260036020526040902080549192509060ff1615610aac578060000160019054906101000a90046001600160a01b031681600101808054610a2190611ff2565b80601f0160208091040260200160405190810160405280929190818152602001828054610a4d90611ff2565b8015610a9a5780601f10610a6f57610100808354040283529160200191610a9a565b820191906000526020600020905b815481529060010190602001808311610a7d57829003601f168201915b50505050509050935093505050610ab5565b85859350935050505b935093915050565b6002546001600160a01b03166000610ad48261111b565b9050336001600160a01b03821614610b205760405162461bcd60e51b815260206004820152600f60248201526e4e4f545f46524f4d5f42524944474560881b60448201526064016103ec565b6000610b2b8361117f565b6000549091506001600160a01b03808316911614610b865760405162461bcd60e51b81526020600482015260186024820152774f4e4c595f434f554e544552504152545f4741544557415960401b60448201526064016103ec565b600080610b938787611296565b915091508051600014610bb157506040805160208101909152600081525b610bbc828a836109cd565b509850610bca8b8a8a6112b1565b81896001600160a01b03168b6001600160a01b03167f891afe029c75c4f8c5855fc3480598bc5a53739344f6ae575bdb7ea2a79f56b38e8c604051610c109291906120db565b60405180910390a45050505050505050505050565b6001546060906001600160a01b03163314610c745760405162461bcd60e51b815260206004820152600f60248201526e2727aa2fa32927a6afa927aaaa22a960891b60448201526064016103ec565b6000806060600080610c94336001546001600160a01b0391821691161490565b15610cad57610ca388886112ca565b9095509250610cea565b33945087878080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295505050505b610cf3836112e6565b815191955091935090915015610d415760405162461bcd60e51b8152602060048201526013602482015272115615149057d110551057d11254d050931151606a1b60448201526064016103ec565b6001600160a01b038e163b610d8a5760405162461bcd60e51b815260206004820152600f60248201526e130c57d393d517d0d3d395149050d5608a1b60448201526064016103ec565b6000610d958f610665565b90506001600160a01b038116610ddf5760405162461bcd60e51b815260206004820152600f60248201526e1393d7d30c97d513d2d15397d4d155608a1b60448201526064016103ec565b610dea8f878e61130c565b9b50610df98f878f8f886105a2565b9650610e0b8e878e8e8e88888e611419565b9450505050818a6001600160a01b0316846001600160a01b03167fb8910b9960c443aac3240b98585384e3a6f109fbf6969e264c3f183d69aba7e18f8d604051610e569291906120db565b60405180910390a4604080516020810184905201604051602081830303815290604052935050505098975050505050505050565b610e948383611437565b6001600160a01b038216610ed75760405162461bcd60e51b815260206004820152600a6024820152692120a22fa927aaaa22a960b11b60448201526064016103ec565b6001600160a01b038116610f195760405162461bcd60e51b81526020600482015260096024820152680848288be929c849eb60bb1b60448201526064016103ec565b600280546001600160a01b0319166001600160a01b03929092169190911790555050565b60408051600481526024810182526020810180516001600160e01b03166001600160e01b0319851617905290516060916000916001600160a01b03861691610f84916120f4565b600060405180830381855afa9150503d8060008114610fbf576040519150601f19603f3d011682016040523d82523d6000602084013e610fc4565b606091505b5095945050505050565b60608282604051602001610fe3929190612110565b604051602081830303815290604052905092915050565b600080546040516001600160a01b039091169061101b9084906020016119d4565b604051602081830303815290604052805190602001206040516020016110429291906120db565b604051602081830303815290604052805190602001209050919050565b6000604051836040820152846020820152828152600b8101905060ff815360559020949350505050565b60006110958585610385565b6040805160608101825260018082526001600160a01b038781166020808501918252848601898152600088815260039092529590208451815492516001600160a81b0319909316901515610100600160a81b03191617610100929093169190910291909117815592519394509092908201906111119082612183565b5050505050505050565b6000816001600160a01b031663e78cea926040518163ffffffff1660e01b8152600401602060405180830381865afa15801561115b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061037f9190612242565b60008061118b8361111b565b6001600160a01b031663ab5d89436040518163ffffffff1660e01b8152600401602060405180830381865afa1580156111c8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111ec9190612242565b90506000816001600160a01b03166380648b026040518163ffffffff1660e01b8152600401602060405180830381865afa15801561122e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112529190612242565b90506001600160a01b03811661068f5760405162461bcd60e51b81526020600482015260096024820152682727afa9a2a72222a960b91b60448201526064016103ec565b600060606112a68385018561225f565b909590945092505050565b6112c56001600160a01b03841683836114f9565b505050565b600060606112da838501856122a5565b915091505b9250929050565b6000606060008380602001905181019061130091906122de565b90959094509092509050565b600080846001600160a01b03166370a08231306040518263ffffffff1660e01b815260040161133b91906119d4565b602060405180830381865afa158015611358573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061137c9190612360565b90506113936001600160a01b03861685308661154f565b6040516370a0823160e01b81526000906001600160a01b038716906370a08231906113c29030906004016119d4565b602060405180830381865afa1580156113df573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114039190612360565b905061140f8282612379565b9695505050505050565b600061142a8989898989898861158d565b9998505050505050505050565b6001600160a01b0382166114835760405162461bcd60e51b81526020600482015260136024820152721253959053125117d0d3d55395115494105495606a1b60448201526064016103ec565b6000546001600160a01b0316156114cb5760405162461bcd60e51b815260206004820152600c60248201526b1053149150511657d253925560a21b60448201526064016103ec565b600080546001600160a01b039384166001600160a01b03199182161790915560018054929093169116179055565b6112c58363a9059cbb60e01b84846040516024016115189291906120db565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092179091526115e2565b6040516001600160a01b03808516602483015283166044820152606481018290526115879085906323b872dd60e01b90608401611518565b50505050565b60006109c1600260009054906101000a90046001600160a01b031660008054906101000a90046001600160a01b03168a8a34600060405180606001604052808b81526020018d81526020018c815250896116b4565b6000611637826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166116d49092919063ffffffff16565b8051909150156112c55780806020019051810190611655919061207d565b6112c55760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b60648201526084016103ec565b600061142a89898989898989600001518a602001518b604001518b6116eb565b60606116e3848460008561175d565b949350505050565b6000806117008c8c8c8c8c8c8c8c8c8c611838565b9050808b6001600160a01b03168a6001600160a01b03167fc1d1490cf25c3b40d600dfb27c7680340ed1ab901b7e8f3551280968a3b372b0866040516117469190611b94565b60405180910390a49b9a5050505050505050505050565b6060824710156117be5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b60648201526084016103ec565b600080866001600160a01b031685876040516117da91906120f4565b60006040518083038185875af1925050503d8060008114611817576040519150601f19603f3d011682016040523d82523d6000602084013e61181c565b606091505b509150915061182d878383876118c7565b979650505050505050565b60008a6001600160a01b031663679b6ded888c89898e8e8b8b8b6040518a63ffffffff1660e01b815260040161187598979695949392919061239a565b60206040518083038185885af1158015611893573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906118b89190612360565b9b9a5050505050505050505050565b6060831561193657825160000361192f576001600160a01b0385163b61192f5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016103ec565b50816116e3565b6116e3838381511561194b5781518083602001fd5b8060405162461bcd60e51b81526004016103ec9190611b94565b60006020828403121561197757600080fd5b81356001600160e01b03198116811461068f57600080fd5b6001600160a01b03811681146104d557600080fd5b600080604083850312156119b757600080fd5b8235915060208301356119c98161198f565b809150509250929050565b6001600160a01b0391909116815260200190565b60008083601f8401126119fa57600080fd5b5081356001600160401b03811115611a1157600080fd5b6020830191508360208285010111156112df57600080fd5b60008060008060008060a08789031215611a4257600080fd5b8635611a4d8161198f565b95506020870135611a5d8161198f565b94506040870135611a6d8161198f565b93506060870135925060808701356001600160401b03811115611a8f57600080fd5b611a9b89828a016119e8565b979a9699509497509295939492505050565b60008060008060008060008060e0898b031215611ac957600080fd5b8835611ad48161198f565b97506020890135611ae48161198f565b96506040890135611af48161198f565b9550606089013594506080890135935060a0890135925060c08901356001600160401b03811115611b2457600080fd5b611b308b828c016119e8565b999c989b5096995094979396929594505050565b60005b83811015611b5f578181015183820152602001611b47565b50506000910152565b60008151808452611b80816020860160208601611b44565b601f01601f19169290920160200192915050565b60208152600061068f6020830184611b68565b600080600080600060a08688031215611bbf57600080fd5b8535611bca8161198f565b94506020860135611bda8161198f565b93506040860135611bea8161198f565b9250606086013591506080860135611c018161198f565b809150509295509295909350565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715611c4d57611c4d611c0f565b604052919050565b60006001600160401b03821115611c6e57611c6e611c0f565b50601f01601f191660200190565b600082601f830112611c8d57600080fd5b8135611ca0611c9b82611c55565b611c25565b818152846020838601011115611cb557600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a08688031215611cea57600080fd5b8535611cf58161198f565b94506020860135611d058161198f565b93506040860135611d158161198f565b92506060860135915060808601356001600160401b03811115611d3757600080fd5b611d4388828901611c7c565b9150509295509295909350565b600060208284031215611d6257600080fd5b813561068f8161198f565b600060208284031215611d7f57600080fd5b5035919050565b83151581526001600160a01b0383166020820152606060408201819052600090611db290830184611b68565b95945050505050565b600080600080600080600060a0888a031215611dd657600080fd5b873596506020880135611de88161198f565b95506040880135611df88161198f565b945060608801356001600160401b0380821115611e1457600080fd5b611e208b838c016119e8565b909650945060808a0135915080821115611e3957600080fd5b50611e468a828b016119e8565b989b979a50959850939692959293505050565b600080600080600080600060c0888a031215611e7457600080fd5b8735611e7f8161198f565b96506020880135611e8f8161198f565b955060408801359450606088013593506080880135925060a08801356001600160401b03811115611ebf57600080fd5b611e468a828b016119e8565b600080600060608486031215611ee057600080fd5b833592506020840135611ef28161198f565b915060408401356001600160401b03811115611f0d57600080fd5b611f1986828701611c7c565b9150509250925092565b6001600160a01b03831681526040602082018190526000906116e390830184611b68565b6020808252601f908201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604082015260600190565b606081526000611f916060830186611b68565b8281036020840152611fa38186611b68565b9050828103604084015261140f8185611b68565b6001600160a01b0386811682528581166020830152841660408201526060810183905260a06080820181905260009061182d90830184611b68565b600181811c9082168061200657607f821691505b60208210810361202657634e487b7160e01b600052602260045260246000fd5b50919050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b60018060a01b038516815283602082015260606040820152600061140f60608301848661202c565b60006020828403121561208f57600080fd5b8151801515811461068f57600080fd5b6060815260006120b360608301878961202c565b82810360208401526120c681868861202c565b91505082151560408301529695505050505050565b6001600160a01b03929092168252602082015260400190565b60008251612106818460208701611b44565b9190910192915050565b6040815260006121236040830185611b68565b8281036020840152611db28185611b68565b601f8211156112c557600081815260208120601f850160051c8101602086101561215c5750805b601f850160051c820191505b8181101561217b57828155600101612168565b505050505050565b81516001600160401b0381111561219c5761219c611c0f565b6121b0816121aa8454611ff2565b84612135565b602080601f8311600181146121e557600084156121cd5750858301515b600019600386901b1c1916600185901b17855561217b565b600085815260208120601f198616915b82811015612214578886015182559484019460019091019084016121f5565b50858210156122325787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60006020828403121561225457600080fd5b815161068f8161198f565b6000806040838503121561227257600080fd5b8235915060208301356001600160401b0381111561228f57600080fd5b61229b85828601611c7c565b9150509250929050565b600080604083850312156122b857600080fd5b82356122c38161198f565b915060208301356001600160401b0381111561228f57600080fd5b600080604083850312156122f157600080fd5b8251915060208301516001600160401b0381111561230e57600080fd5b8301601f8101851361231f57600080fd5b805161232d611c9b82611c55565b81815286602083850101111561234257600080fd5b612353826020830160208601611b44565b8093505050509250929050565b60006020828403121561237257600080fd5b5051919050565b8181038181111561037f57634e487b7160e01b600052601160045260246000fd5b600061010060018060a01b03808c1684528a602085015289604085015280891660608501528088166080850152508560a08401528460c08401528060e08401526118b881840185611b6856fea26469706673582212201ce9bfce2615681f911aa91a4b5f866c6e839409c6b6746b36c983fdd4c35ec064736f6c63430008100033";
const isSuperArgs = (xs) => xs.length > 1;
class L1ERC20Gateway__factory extends ethers_1.ContractFactory {
constructor(...args) {
if (isSuperArgs(args)) {
super(...args);
}
else {
super(_abi, _bytecode, args[0]);
}
this.contractName = "L1ERC20Gateway";
}
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.L1ERC20Gateway__factory = L1ERC20Gateway__factory;
L1ERC20Gateway__factory.bytecode = _bytecode;
L1ERC20Gateway__factory.abi = _abi;