github.com/ethereum-optimism/optimism@v1.7.2/packages/contracts-ts/src/constants.ts (about)

     1  /* eslint-disable */
     2  
     3  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
     4  // AddressManager
     5  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
     6  
     7  /**
     8   * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0xdE1FCfB0851916CA5101820A69b13a4E276bd81F)
     9   * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0xa6f73589243a6A7a9023b1Fa0651b1d89c177111)
    10   */
    11  export const addressManagerABI = [
    12    {
    13      type: 'event',
    14      anonymous: false,
    15      inputs: [
    16        { name: '_name', internalType: 'string', type: 'string', indexed: true },
    17        {
    18          name: '_newAddress',
    19          internalType: 'address',
    20          type: 'address',
    21          indexed: false,
    22        },
    23        {
    24          name: '_oldAddress',
    25          internalType: 'address',
    26          type: 'address',
    27          indexed: false,
    28        },
    29      ],
    30      name: 'AddressSet',
    31    },
    32    {
    33      type: 'event',
    34      anonymous: false,
    35      inputs: [
    36        {
    37          name: 'previousOwner',
    38          internalType: 'address',
    39          type: 'address',
    40          indexed: true,
    41        },
    42        {
    43          name: 'newOwner',
    44          internalType: 'address',
    45          type: 'address',
    46          indexed: true,
    47        },
    48      ],
    49      name: 'OwnershipTransferred',
    50    },
    51    {
    52      stateMutability: 'view',
    53      type: 'function',
    54      inputs: [{ name: '_name', internalType: 'string', type: 'string' }],
    55      name: 'getAddress',
    56      outputs: [{ name: '', internalType: 'address', type: 'address' }],
    57    },
    58    {
    59      stateMutability: 'view',
    60      type: 'function',
    61      inputs: [],
    62      name: 'owner',
    63      outputs: [{ name: '', internalType: 'address', type: 'address' }],
    64    },
    65    {
    66      stateMutability: 'nonpayable',
    67      type: 'function',
    68      inputs: [],
    69      name: 'renounceOwnership',
    70      outputs: [],
    71    },
    72    {
    73      stateMutability: 'nonpayable',
    74      type: 'function',
    75      inputs: [
    76        { name: '_name', internalType: 'string', type: 'string' },
    77        { name: '_address', internalType: 'address', type: 'address' },
    78      ],
    79      name: 'setAddress',
    80      outputs: [],
    81    },
    82    {
    83      stateMutability: 'nonpayable',
    84      type: 'function',
    85      inputs: [{ name: 'newOwner', internalType: 'address', type: 'address' }],
    86      name: 'transferOwnership',
    87      outputs: [],
    88    },
    89  ] as const
    90  
    91  /**
    92   * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0xdE1FCfB0851916CA5101820A69b13a4E276bd81F)
    93   * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0xa6f73589243a6A7a9023b1Fa0651b1d89c177111)
    94   */
    95  export const addressManagerAddress = {
    96    1: '0xdE1FCfB0851916CA5101820A69b13a4E276bd81F',
    97    5: '0xa6f73589243a6A7a9023b1Fa0651b1d89c177111',
    98  } as const
    99  
   100  /**
   101   * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0xdE1FCfB0851916CA5101820A69b13a4E276bd81F)
   102   * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0xa6f73589243a6A7a9023b1Fa0651b1d89c177111)
   103   */
   104  export const addressManagerConfig = {
   105    address: addressManagerAddress,
   106    abi: addressManagerABI,
   107  } as const
   108  
   109  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
   110  // AssetReceiver
   111  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
   112  
   113  /**
   114   * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x15DdA60616Ffca20371ED1659dBB78E888f65556)
   115   * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x15DdA60616Ffca20371ED1659dBB78E888f65556)
   116   */
   117  export const assetReceiverABI = [
   118    {
   119      stateMutability: 'nonpayable',
   120      type: 'constructor',
   121      inputs: [{ name: '_owner', internalType: 'address', type: 'address' }],
   122    },
   123    {
   124      type: 'event',
   125      anonymous: false,
   126      inputs: [
   127        { name: 'user', internalType: 'address', type: 'address', indexed: true },
   128        {
   129          name: 'newOwner',
   130          internalType: 'address',
   131          type: 'address',
   132          indexed: true,
   133        },
   134      ],
   135      name: 'OwnerUpdated',
   136    },
   137    {
   138      type: 'event',
   139      anonymous: false,
   140      inputs: [
   141        { name: 'from', internalType: 'address', type: 'address', indexed: true },
   142        {
   143          name: 'amount',
   144          internalType: 'uint256',
   145          type: 'uint256',
   146          indexed: false,
   147        },
   148      ],
   149      name: 'ReceivedETH',
   150    },
   151    {
   152      type: 'event',
   153      anonymous: false,
   154      inputs: [
   155        {
   156          name: 'withdrawer',
   157          internalType: 'address',
   158          type: 'address',
   159          indexed: true,
   160        },
   161        {
   162          name: 'recipient',
   163          internalType: 'address',
   164          type: 'address',
   165          indexed: true,
   166        },
   167        {
   168          name: 'asset',
   169          internalType: 'address',
   170          type: 'address',
   171          indexed: true,
   172        },
   173        {
   174          name: 'amount',
   175          internalType: 'uint256',
   176          type: 'uint256',
   177          indexed: false,
   178        },
   179      ],
   180      name: 'WithdrewERC20',
   181    },
   182    {
   183      type: 'event',
   184      anonymous: false,
   185      inputs: [
   186        {
   187          name: 'withdrawer',
   188          internalType: 'address',
   189          type: 'address',
   190          indexed: true,
   191        },
   192        {
   193          name: 'recipient',
   194          internalType: 'address',
   195          type: 'address',
   196          indexed: true,
   197        },
   198        {
   199          name: 'asset',
   200          internalType: 'address',
   201          type: 'address',
   202          indexed: true,
   203        },
   204        { name: 'id', internalType: 'uint256', type: 'uint256', indexed: false },
   205      ],
   206      name: 'WithdrewERC721',
   207    },
   208    {
   209      type: 'event',
   210      anonymous: false,
   211      inputs: [
   212        {
   213          name: 'withdrawer',
   214          internalType: 'address',
   215          type: 'address',
   216          indexed: true,
   217        },
   218        {
   219          name: 'recipient',
   220          internalType: 'address',
   221          type: 'address',
   222          indexed: true,
   223        },
   224        {
   225          name: 'amount',
   226          internalType: 'uint256',
   227          type: 'uint256',
   228          indexed: false,
   229        },
   230      ],
   231      name: 'WithdrewETH',
   232    },
   233    {
   234      stateMutability: 'payable',
   235      type: 'function',
   236      inputs: [
   237        { name: '_target', internalType: 'address', type: 'address' },
   238        { name: '_data', internalType: 'bytes', type: 'bytes' },
   239        { name: '_gas', internalType: 'uint256', type: 'uint256' },
   240        { name: '_value', internalType: 'uint256', type: 'uint256' },
   241      ],
   242      name: 'CALL',
   243      outputs: [
   244        { name: '', internalType: 'bool', type: 'bool' },
   245        { name: '', internalType: 'bytes', type: 'bytes' },
   246      ],
   247    },
   248    {
   249      stateMutability: 'payable',
   250      type: 'function',
   251      inputs: [
   252        { name: '_target', internalType: 'address', type: 'address' },
   253        { name: '_data', internalType: 'bytes', type: 'bytes' },
   254        { name: '_gas', internalType: 'uint256', type: 'uint256' },
   255      ],
   256      name: 'DELEGATECALL',
   257      outputs: [
   258        { name: '', internalType: 'bool', type: 'bool' },
   259        { name: '', internalType: 'bytes', type: 'bytes' },
   260      ],
   261    },
   262    {
   263      stateMutability: 'view',
   264      type: 'function',
   265      inputs: [],
   266      name: 'owner',
   267      outputs: [{ name: '', internalType: 'address', type: 'address' }],
   268    },
   269    {
   270      stateMutability: 'nonpayable',
   271      type: 'function',
   272      inputs: [{ name: 'newOwner', internalType: 'address', type: 'address' }],
   273      name: 'setOwner',
   274      outputs: [],
   275    },
   276    {
   277      stateMutability: 'nonpayable',
   278      type: 'function',
   279      inputs: [
   280        { name: '_asset', internalType: 'contract ERC20', type: 'address' },
   281        { name: '_to', internalType: 'address', type: 'address' },
   282        { name: '_amount', internalType: 'uint256', type: 'uint256' },
   283      ],
   284      name: 'withdrawERC20',
   285      outputs: [],
   286    },
   287    {
   288      stateMutability: 'nonpayable',
   289      type: 'function',
   290      inputs: [
   291        { name: '_asset', internalType: 'contract ERC20', type: 'address' },
   292        { name: '_to', internalType: 'address', type: 'address' },
   293      ],
   294      name: 'withdrawERC20',
   295      outputs: [],
   296    },
   297    {
   298      stateMutability: 'nonpayable',
   299      type: 'function',
   300      inputs: [
   301        { name: '_asset', internalType: 'contract ERC721', type: 'address' },
   302        { name: '_to', internalType: 'address', type: 'address' },
   303        { name: '_id', internalType: 'uint256', type: 'uint256' },
   304      ],
   305      name: 'withdrawERC721',
   306      outputs: [],
   307    },
   308    {
   309      stateMutability: 'nonpayable',
   310      type: 'function',
   311      inputs: [
   312        { name: '_to', internalType: 'address payable', type: 'address' },
   313        { name: '_amount', internalType: 'uint256', type: 'uint256' },
   314      ],
   315      name: 'withdrawETH',
   316      outputs: [],
   317    },
   318    {
   319      stateMutability: 'nonpayable',
   320      type: 'function',
   321      inputs: [{ name: '_to', internalType: 'address payable', type: 'address' }],
   322      name: 'withdrawETH',
   323      outputs: [],
   324    },
   325    { stateMutability: 'payable', type: 'receive' },
   326  ] as const
   327  
   328  /**
   329   * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x15DdA60616Ffca20371ED1659dBB78E888f65556)
   330   * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x15DdA60616Ffca20371ED1659dBB78E888f65556)
   331   */
   332  export const assetReceiverAddress = {
   333    1: '0x15DdA60616Ffca20371ED1659dBB78E888f65556',
   334    10: '0x15DdA60616Ffca20371ED1659dBB78E888f65556',
   335  } as const
   336  
   337  /**
   338   * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x15DdA60616Ffca20371ED1659dBB78E888f65556)
   339   * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x15DdA60616Ffca20371ED1659dBB78E888f65556)
   340   */
   341  export const assetReceiverConfig = {
   342    address: assetReceiverAddress,
   343    abi: assetReceiverABI,
   344  } as const
   345  
   346  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
   347  // AttestationStation
   348  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
   349  
   350  /**
   351   * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0xEE36eaaD94d1Cc1d0eccaDb55C38bFfB6Be06C77)
   352   * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0xEE36eaaD94d1Cc1d0eccaDb55C38bFfB6Be06C77)
   353   */
   354  export const attestationStationABI = [
   355    { stateMutability: 'nonpayable', type: 'constructor', inputs: [] },
   356    {
   357      type: 'event',
   358      anonymous: false,
   359      inputs: [
   360        {
   361          name: 'creator',
   362          internalType: 'address',
   363          type: 'address',
   364          indexed: true,
   365        },
   366        {
   367          name: 'about',
   368          internalType: 'address',
   369          type: 'address',
   370          indexed: true,
   371        },
   372        { name: 'key', internalType: 'bytes32', type: 'bytes32', indexed: true },
   373        { name: 'val', internalType: 'bytes', type: 'bytes', indexed: false },
   374      ],
   375      name: 'AttestationCreated',
   376    },
   377    {
   378      stateMutability: 'nonpayable',
   379      type: 'function',
   380      inputs: [
   381        {
   382          name: '_attestations',
   383          internalType: 'struct AttestationStation.AttestationData[]',
   384          type: 'tuple[]',
   385          components: [
   386            { name: 'about', internalType: 'address', type: 'address' },
   387            { name: 'key', internalType: 'bytes32', type: 'bytes32' },
   388            { name: 'val', internalType: 'bytes', type: 'bytes' },
   389          ],
   390        },
   391      ],
   392      name: 'attest',
   393      outputs: [],
   394    },
   395    {
   396      stateMutability: 'nonpayable',
   397      type: 'function',
   398      inputs: [
   399        { name: '_about', internalType: 'address', type: 'address' },
   400        { name: '_key', internalType: 'bytes32', type: 'bytes32' },
   401        { name: '_val', internalType: 'bytes', type: 'bytes' },
   402      ],
   403      name: 'attest',
   404      outputs: [],
   405    },
   406    {
   407      stateMutability: 'view',
   408      type: 'function',
   409      inputs: [
   410        { name: '', internalType: 'address', type: 'address' },
   411        { name: '', internalType: 'address', type: 'address' },
   412        { name: '', internalType: 'bytes32', type: 'bytes32' },
   413      ],
   414      name: 'attestations',
   415      outputs: [{ name: '', internalType: 'bytes', type: 'bytes' }],
   416    },
   417    {
   418      stateMutability: 'view',
   419      type: 'function',
   420      inputs: [],
   421      name: 'version',
   422      outputs: [{ name: '', internalType: 'string', type: 'string' }],
   423    },
   424  ] as const
   425  
   426  /**
   427   * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0xEE36eaaD94d1Cc1d0eccaDb55C38bFfB6Be06C77)
   428   * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0xEE36eaaD94d1Cc1d0eccaDb55C38bFfB6Be06C77)
   429   */
   430  export const attestationStationAddress = {
   431    10: '0xEE36eaaD94d1Cc1d0eccaDb55C38bFfB6Be06C77',
   432    420: '0xEE36eaaD94d1Cc1d0eccaDb55C38bFfB6Be06C77',
   433  } as const
   434  
   435  /**
   436   * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0xEE36eaaD94d1Cc1d0eccaDb55C38bFfB6Be06C77)
   437   * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0xEE36eaaD94d1Cc1d0eccaDb55C38bFfB6Be06C77)
   438   */
   439  export const attestationStationConfig = {
   440    address: attestationStationAddress,
   441    abi: attestationStationABI,
   442  } as const
   443  
   444  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
   445  // BaseFeeVault
   446  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
   447  
   448  /**
   449   * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000019)
   450   */
   451  export const baseFeeVaultABI = [
   452    {
   453      stateMutability: 'nonpayable',
   454      type: 'constructor',
   455      inputs: [{ name: '_recipient', internalType: 'address', type: 'address' }],
   456    },
   457    {
   458      type: 'event',
   459      anonymous: false,
   460      inputs: [
   461        {
   462          name: 'value',
   463          internalType: 'uint256',
   464          type: 'uint256',
   465          indexed: false,
   466        },
   467        { name: 'to', internalType: 'address', type: 'address', indexed: false },
   468        {
   469          name: 'from',
   470          internalType: 'address',
   471          type: 'address',
   472          indexed: false,
   473        },
   474      ],
   475      name: 'Withdrawal',
   476    },
   477    {
   478      stateMutability: 'view',
   479      type: 'function',
   480      inputs: [],
   481      name: 'MIN_WITHDRAWAL_AMOUNT',
   482      outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
   483    },
   484    {
   485      stateMutability: 'view',
   486      type: 'function',
   487      inputs: [],
   488      name: 'RECIPIENT',
   489      outputs: [{ name: '', internalType: 'address', type: 'address' }],
   490    },
   491    {
   492      stateMutability: 'view',
   493      type: 'function',
   494      inputs: [],
   495      name: 'totalProcessed',
   496      outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
   497    },
   498    {
   499      stateMutability: 'view',
   500      type: 'function',
   501      inputs: [],
   502      name: 'version',
   503      outputs: [{ name: '', internalType: 'string', type: 'string' }],
   504    },
   505    {
   506      stateMutability: 'nonpayable',
   507      type: 'function',
   508      inputs: [],
   509      name: 'withdraw',
   510      outputs: [],
   511    },
   512    { stateMutability: 'payable', type: 'receive' },
   513  ] as const
   514  
   515  /**
   516   * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000019)
   517   */
   518  export const baseFeeVaultAddress = {
   519    420: '0x4200000000000000000000000000000000000019',
   520  } as const
   521  
   522  /**
   523   * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000019)
   524   */
   525  export const baseFeeVaultConfig = {
   526    address: baseFeeVaultAddress,
   527    abi: baseFeeVaultABI,
   528  } as const
   529  
   530  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
   531  // CheckBalanceHigh
   532  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
   533  
   534  /**
   535   * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x7eC64a8a591bFf829ff6C8be76074D540ACb813F)
   536   * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x7eC64a8a591bFf829ff6C8be76074D540ACb813F)
   537   * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x5d7103853f12109A7d27F118e54BbC654ad847E9)
   538   */
   539  export const checkBalanceHighABI = [
   540    {
   541      type: 'event',
   542      anonymous: false,
   543      inputs: [
   544        {
   545          name: 'params',
   546          internalType: 'struct CheckBalanceHigh.Params',
   547          type: 'tuple',
   548          components: [
   549            { name: 'target', internalType: 'address', type: 'address' },
   550            { name: 'threshold', internalType: 'uint256', type: 'uint256' },
   551          ],
   552          indexed: false,
   553        },
   554      ],
   555      name: '_EventToExposeStructInABI__Params',
   556    },
   557    {
   558      stateMutability: 'view',
   559      type: 'function',
   560      inputs: [{ name: '_params', internalType: 'bytes', type: 'bytes' }],
   561      name: 'check',
   562      outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
   563    },
   564  ] as const
   565  
   566  /**
   567   * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x7eC64a8a591bFf829ff6C8be76074D540ACb813F)
   568   * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x7eC64a8a591bFf829ff6C8be76074D540ACb813F)
   569   * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x5d7103853f12109A7d27F118e54BbC654ad847E9)
   570   */
   571  export const checkBalanceHighAddress = {
   572    1: '0x7eC64a8a591bFf829ff6C8be76074D540ACb813F',
   573    5: '0x7eC64a8a591bFf829ff6C8be76074D540ACb813F',
   574    420: '0x5d7103853f12109A7d27F118e54BbC654ad847E9',
   575  } as const
   576  
   577  /**
   578   * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x7eC64a8a591bFf829ff6C8be76074D540ACb813F)
   579   * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x7eC64a8a591bFf829ff6C8be76074D540ACb813F)
   580   * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x5d7103853f12109A7d27F118e54BbC654ad847E9)
   581   */
   582  export const checkBalanceHighConfig = {
   583    address: checkBalanceHighAddress,
   584    abi: checkBalanceHighABI,
   585  } as const
   586  
   587  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
   588  // CheckBalanceLow
   589  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
   590  
   591  /**
   592   * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x381a4eFC2A2C914eA1889722bB4B44Fa6BD5b640)
   593   * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x381a4eFC2A2C914eA1889722bB4B44Fa6BD5b640)
   594   * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x7Ce13D154FAEE5C8B3E6b19d4Add16f21d884474)
   595   */
   596  export const checkBalanceLowABI = [
   597    {
   598      type: 'event',
   599      anonymous: false,
   600      inputs: [
   601        {
   602          name: 'params',
   603          internalType: 'struct CheckBalanceLow.Params',
   604          type: 'tuple',
   605          components: [
   606            { name: 'target', internalType: 'address', type: 'address' },
   607            { name: 'threshold', internalType: 'uint256', type: 'uint256' },
   608          ],
   609          indexed: false,
   610        },
   611      ],
   612      name: '_EventToExposeStructInABI__Params',
   613    },
   614    {
   615      stateMutability: 'view',
   616      type: 'function',
   617      inputs: [{ name: '_params', internalType: 'bytes', type: 'bytes' }],
   618      name: 'check',
   619      outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
   620    },
   621  ] as const
   622  
   623  /**
   624   * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x381a4eFC2A2C914eA1889722bB4B44Fa6BD5b640)
   625   * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x381a4eFC2A2C914eA1889722bB4B44Fa6BD5b640)
   626   * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x7Ce13D154FAEE5C8B3E6b19d4Add16f21d884474)
   627   */
   628  export const checkBalanceLowAddress = {
   629    1: '0x381a4eFC2A2C914eA1889722bB4B44Fa6BD5b640',
   630    5: '0x381a4eFC2A2C914eA1889722bB4B44Fa6BD5b640',
   631    420: '0x7Ce13D154FAEE5C8B3E6b19d4Add16f21d884474',
   632  } as const
   633  
   634  /**
   635   * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x381a4eFC2A2C914eA1889722bB4B44Fa6BD5b640)
   636   * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x381a4eFC2A2C914eA1889722bB4B44Fa6BD5b640)
   637   * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x7Ce13D154FAEE5C8B3E6b19d4Add16f21d884474)
   638   */
   639  export const checkBalanceLowConfig = {
   640    address: checkBalanceLowAddress,
   641    abi: checkBalanceLowABI,
   642  } as const
   643  
   644  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
   645  // CheckGelatoLow
   646  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
   647  
   648  /**
   649   * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x4f7CFc43f6D262a085F3b946cAC69E7a8E39BBAa)
   650   * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x4f7CFc43f6D262a085F3b946cAC69E7a8E39BBAa)
   651   * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0xF9c8a4Cb4021f57F9f6d69799cA9BefF64524862)
   652   */
   653  export const checkGelatoLowABI = [
   654    {
   655      type: 'event',
   656      anonymous: false,
   657      inputs: [
   658        {
   659          name: 'params',
   660          internalType: 'struct CheckGelatoLow.Params',
   661          type: 'tuple',
   662          components: [
   663            { name: 'treasury', internalType: 'address', type: 'address' },
   664            { name: 'threshold', internalType: 'uint256', type: 'uint256' },
   665            { name: 'recipient', internalType: 'address', type: 'address' },
   666          ],
   667          indexed: false,
   668        },
   669      ],
   670      name: '_EventToExposeStructInABI__Params',
   671    },
   672    {
   673      stateMutability: 'view',
   674      type: 'function',
   675      inputs: [{ name: '_params', internalType: 'bytes', type: 'bytes' }],
   676      name: 'check',
   677      outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
   678    },
   679  ] as const
   680  
   681  /**
   682   * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x4f7CFc43f6D262a085F3b946cAC69E7a8E39BBAa)
   683   * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x4f7CFc43f6D262a085F3b946cAC69E7a8E39BBAa)
   684   * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0xF9c8a4Cb4021f57F9f6d69799cA9BefF64524862)
   685   */
   686  export const checkGelatoLowAddress = {
   687    1: '0x4f7CFc43f6D262a085F3b946cAC69E7a8E39BBAa',
   688    5: '0x4f7CFc43f6D262a085F3b946cAC69E7a8E39BBAa',
   689    420: '0xF9c8a4Cb4021f57F9f6d69799cA9BefF64524862',
   690  } as const
   691  
   692  /**
   693   * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x4f7CFc43f6D262a085F3b946cAC69E7a8E39BBAa)
   694   * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x4f7CFc43f6D262a085F3b946cAC69E7a8E39BBAa)
   695   * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0xF9c8a4Cb4021f57F9f6d69799cA9BefF64524862)
   696   */
   697  export const checkGelatoLowConfig = {
   698    address: checkGelatoLowAddress,
   699    abi: checkGelatoLowABI,
   700  } as const
   701  
   702  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
   703  // CheckTrue
   704  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
   705  
   706  /**
   707   * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x5c741a38cb11424711231777D71689C458eE835D)
   708   * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x5c741a38cb11424711231777D71689C458eE835D)
   709   * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x47443D0C184e022F19BD1578F5bca6B8a9F58E32)
   710   */
   711  export const checkTrueABI = [
   712    {
   713      stateMutability: 'pure',
   714      type: 'function',
   715      inputs: [{ name: '', internalType: 'bytes', type: 'bytes' }],
   716      name: 'check',
   717      outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
   718    },
   719  ] as const
   720  
   721  /**
   722   * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x5c741a38cb11424711231777D71689C458eE835D)
   723   * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x5c741a38cb11424711231777D71689C458eE835D)
   724   * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x47443D0C184e022F19BD1578F5bca6B8a9F58E32)
   725   */
   726  export const checkTrueAddress = {
   727    1: '0x5c741a38cb11424711231777D71689C458eE835D',
   728    5: '0x5c741a38cb11424711231777D71689C458eE835D',
   729    420: '0x47443D0C184e022F19BD1578F5bca6B8a9F58E32',
   730  } as const
   731  
   732  /**
   733   * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x5c741a38cb11424711231777D71689C458eE835D)
   734   * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x5c741a38cb11424711231777D71689C458eE835D)
   735   * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x47443D0C184e022F19BD1578F5bca6B8a9F58E32)
   736   */
   737  export const checkTrueConfig = {
   738    address: checkTrueAddress,
   739    abi: checkTrueABI,
   740  } as const
   741  
   742  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
   743  // Drippie
   744  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
   745  
   746  /**
   747   * [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x44b3A2a040057eBafC601A78647e805fd58B1f50)
   748   */
   749  export const drippieABI = [
   750    {
   751      stateMutability: 'nonpayable',
   752      type: 'constructor',
   753      inputs: [{ name: '_owner', internalType: 'address', type: 'address' }],
   754    },
   755    {
   756      type: 'event',
   757      anonymous: false,
   758      inputs: [
   759        {
   760          name: 'nameref',
   761          internalType: 'string',
   762          type: 'string',
   763          indexed: true,
   764        },
   765        { name: 'name', internalType: 'string', type: 'string', indexed: false },
   766        {
   767          name: 'config',
   768          internalType: 'struct Drippie.DripConfig',
   769          type: 'tuple',
   770          components: [
   771            { name: 'reentrant', internalType: 'bool', type: 'bool' },
   772            { name: 'interval', internalType: 'uint256', type: 'uint256' },
   773            {
   774              name: 'dripcheck',
   775              internalType: 'contract IDripCheck',
   776              type: 'address',
   777            },
   778            { name: 'checkparams', internalType: 'bytes', type: 'bytes' },
   779            {
   780              name: 'actions',
   781              internalType: 'struct Drippie.DripAction[]',
   782              type: 'tuple[]',
   783              components: [
   784                {
   785                  name: 'target',
   786                  internalType: 'address payable',
   787                  type: 'address',
   788                },
   789                { name: 'data', internalType: 'bytes', type: 'bytes' },
   790                { name: 'value', internalType: 'uint256', type: 'uint256' },
   791              ],
   792            },
   793          ],
   794          indexed: false,
   795        },
   796      ],
   797      name: 'DripCreated',
   798    },
   799    {
   800      type: 'event',
   801      anonymous: false,
   802      inputs: [
   803        {
   804          name: 'nameref',
   805          internalType: 'string',
   806          type: 'string',
   807          indexed: true,
   808        },
   809        { name: 'name', internalType: 'string', type: 'string', indexed: false },
   810        {
   811          name: 'executor',
   812          internalType: 'address',
   813          type: 'address',
   814          indexed: false,
   815        },
   816        {
   817          name: 'timestamp',
   818          internalType: 'uint256',
   819          type: 'uint256',
   820          indexed: false,
   821        },
   822      ],
   823      name: 'DripExecuted',
   824    },
   825    {
   826      type: 'event',
   827      anonymous: false,
   828      inputs: [
   829        {
   830          name: 'nameref',
   831          internalType: 'string',
   832          type: 'string',
   833          indexed: true,
   834        },
   835        { name: 'name', internalType: 'string', type: 'string', indexed: false },
   836        {
   837          name: 'status',
   838          internalType: 'enum Drippie.DripStatus',
   839          type: 'uint8',
   840          indexed: false,
   841        },
   842      ],
   843      name: 'DripStatusUpdated',
   844    },
   845    {
   846      type: 'event',
   847      anonymous: false,
   848      inputs: [
   849        { name: 'user', internalType: 'address', type: 'address', indexed: true },
   850        {
   851          name: 'newOwner',
   852          internalType: 'address',
   853          type: 'address',
   854          indexed: true,
   855        },
   856      ],
   857      name: 'OwnerUpdated',
   858    },
   859    {
   860      type: 'event',
   861      anonymous: false,
   862      inputs: [
   863        { name: 'from', internalType: 'address', type: 'address', indexed: true },
   864        {
   865          name: 'amount',
   866          internalType: 'uint256',
   867          type: 'uint256',
   868          indexed: false,
   869        },
   870      ],
   871      name: 'ReceivedETH',
   872    },
   873    {
   874      type: 'event',
   875      anonymous: false,
   876      inputs: [
   877        {
   878          name: 'withdrawer',
   879          internalType: 'address',
   880          type: 'address',
   881          indexed: true,
   882        },
   883        {
   884          name: 'recipient',
   885          internalType: 'address',
   886          type: 'address',
   887          indexed: true,
   888        },
   889        {
   890          name: 'asset',
   891          internalType: 'address',
   892          type: 'address',
   893          indexed: true,
   894        },
   895        {
   896          name: 'amount',
   897          internalType: 'uint256',
   898          type: 'uint256',
   899          indexed: false,
   900        },
   901      ],
   902      name: 'WithdrewERC20',
   903    },
   904    {
   905      type: 'event',
   906      anonymous: false,
   907      inputs: [
   908        {
   909          name: 'withdrawer',
   910          internalType: 'address',
   911          type: 'address',
   912          indexed: true,
   913        },
   914        {
   915          name: 'recipient',
   916          internalType: 'address',
   917          type: 'address',
   918          indexed: true,
   919        },
   920        {
   921          name: 'asset',
   922          internalType: 'address',
   923          type: 'address',
   924          indexed: true,
   925        },
   926        { name: 'id', internalType: 'uint256', type: 'uint256', indexed: false },
   927      ],
   928      name: 'WithdrewERC721',
   929    },
   930    {
   931      type: 'event',
   932      anonymous: false,
   933      inputs: [
   934        {
   935          name: 'withdrawer',
   936          internalType: 'address',
   937          type: 'address',
   938          indexed: true,
   939        },
   940        {
   941          name: 'recipient',
   942          internalType: 'address',
   943          type: 'address',
   944          indexed: true,
   945        },
   946        {
   947          name: 'amount',
   948          internalType: 'uint256',
   949          type: 'uint256',
   950          indexed: false,
   951        },
   952      ],
   953      name: 'WithdrewETH',
   954    },
   955    {
   956      stateMutability: 'payable',
   957      type: 'function',
   958      inputs: [
   959        { name: '_target', internalType: 'address', type: 'address' },
   960        { name: '_data', internalType: 'bytes', type: 'bytes' },
   961        { name: '_value', internalType: 'uint256', type: 'uint256' },
   962      ],
   963      name: 'CALL',
   964      outputs: [
   965        { name: '', internalType: 'bool', type: 'bool' },
   966        { name: '', internalType: 'bytes', type: 'bytes' },
   967      ],
   968    },
   969    {
   970      stateMutability: 'payable',
   971      type: 'function',
   972      inputs: [
   973        { name: '_target', internalType: 'address', type: 'address' },
   974        { name: '_data', internalType: 'bytes', type: 'bytes' },
   975      ],
   976      name: 'DELEGATECALL',
   977      outputs: [
   978        { name: '', internalType: 'bool', type: 'bool' },
   979        { name: '', internalType: 'bytes', type: 'bytes' },
   980      ],
   981    },
   982    {
   983      stateMutability: 'nonpayable',
   984      type: 'function',
   985      inputs: [
   986        { name: '_name', internalType: 'string', type: 'string' },
   987        {
   988          name: '_config',
   989          internalType: 'struct Drippie.DripConfig',
   990          type: 'tuple',
   991          components: [
   992            { name: 'reentrant', internalType: 'bool', type: 'bool' },
   993            { name: 'interval', internalType: 'uint256', type: 'uint256' },
   994            {
   995              name: 'dripcheck',
   996              internalType: 'contract IDripCheck',
   997              type: 'address',
   998            },
   999            { name: 'checkparams', internalType: 'bytes', type: 'bytes' },
  1000            {
  1001              name: 'actions',
  1002              internalType: 'struct Drippie.DripAction[]',
  1003              type: 'tuple[]',
  1004              components: [
  1005                {
  1006                  name: 'target',
  1007                  internalType: 'address payable',
  1008                  type: 'address',
  1009                },
  1010                { name: 'data', internalType: 'bytes', type: 'bytes' },
  1011                { name: 'value', internalType: 'uint256', type: 'uint256' },
  1012              ],
  1013            },
  1014          ],
  1015        },
  1016      ],
  1017      name: 'create',
  1018      outputs: [],
  1019    },
  1020    {
  1021      stateMutability: 'nonpayable',
  1022      type: 'function',
  1023      inputs: [{ name: '_name', internalType: 'string', type: 'string' }],
  1024      name: 'drip',
  1025      outputs: [],
  1026    },
  1027    {
  1028      stateMutability: 'view',
  1029      type: 'function',
  1030      inputs: [{ name: '', internalType: 'string', type: 'string' }],
  1031      name: 'drips',
  1032      outputs: [
  1033        {
  1034          name: 'status',
  1035          internalType: 'enum Drippie.DripStatus',
  1036          type: 'uint8',
  1037        },
  1038        {
  1039          name: 'config',
  1040          internalType: 'struct Drippie.DripConfig',
  1041          type: 'tuple',
  1042          components: [
  1043            { name: 'reentrant', internalType: 'bool', type: 'bool' },
  1044            { name: 'interval', internalType: 'uint256', type: 'uint256' },
  1045            {
  1046              name: 'dripcheck',
  1047              internalType: 'contract IDripCheck',
  1048              type: 'address',
  1049            },
  1050            { name: 'checkparams', internalType: 'bytes', type: 'bytes' },
  1051            {
  1052              name: 'actions',
  1053              internalType: 'struct Drippie.DripAction[]',
  1054              type: 'tuple[]',
  1055              components: [
  1056                {
  1057                  name: 'target',
  1058                  internalType: 'address payable',
  1059                  type: 'address',
  1060                },
  1061                { name: 'data', internalType: 'bytes', type: 'bytes' },
  1062                { name: 'value', internalType: 'uint256', type: 'uint256' },
  1063              ],
  1064            },
  1065          ],
  1066        },
  1067        { name: 'last', internalType: 'uint256', type: 'uint256' },
  1068        { name: 'count', internalType: 'uint256', type: 'uint256' },
  1069      ],
  1070    },
  1071    {
  1072      stateMutability: 'view',
  1073      type: 'function',
  1074      inputs: [{ name: '_name', internalType: 'string', type: 'string' }],
  1075      name: 'executable',
  1076      outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
  1077    },
  1078    {
  1079      stateMutability: 'view',
  1080      type: 'function',
  1081      inputs: [],
  1082      name: 'owner',
  1083      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  1084    },
  1085    {
  1086      stateMutability: 'nonpayable',
  1087      type: 'function',
  1088      inputs: [{ name: 'newOwner', internalType: 'address', type: 'address' }],
  1089      name: 'setOwner',
  1090      outputs: [],
  1091    },
  1092    {
  1093      stateMutability: 'nonpayable',
  1094      type: 'function',
  1095      inputs: [
  1096        { name: '_name', internalType: 'string', type: 'string' },
  1097        {
  1098          name: '_status',
  1099          internalType: 'enum Drippie.DripStatus',
  1100          type: 'uint8',
  1101        },
  1102      ],
  1103      name: 'status',
  1104      outputs: [],
  1105    },
  1106    {
  1107      stateMutability: 'nonpayable',
  1108      type: 'function',
  1109      inputs: [
  1110        { name: '_asset', internalType: 'contract ERC20', type: 'address' },
  1111        { name: '_to', internalType: 'address', type: 'address' },
  1112        { name: '_amount', internalType: 'uint256', type: 'uint256' },
  1113      ],
  1114      name: 'withdrawERC20',
  1115      outputs: [],
  1116    },
  1117    {
  1118      stateMutability: 'nonpayable',
  1119      type: 'function',
  1120      inputs: [
  1121        { name: '_asset', internalType: 'contract ERC20', type: 'address' },
  1122        { name: '_to', internalType: 'address', type: 'address' },
  1123      ],
  1124      name: 'withdrawERC20',
  1125      outputs: [],
  1126    },
  1127    {
  1128      stateMutability: 'nonpayable',
  1129      type: 'function',
  1130      inputs: [
  1131        { name: '_asset', internalType: 'contract ERC721', type: 'address' },
  1132        { name: '_to', internalType: 'address', type: 'address' },
  1133        { name: '_id', internalType: 'uint256', type: 'uint256' },
  1134      ],
  1135      name: 'withdrawERC721',
  1136      outputs: [],
  1137    },
  1138    {
  1139      stateMutability: 'nonpayable',
  1140      type: 'function',
  1141      inputs: [
  1142        { name: '_to', internalType: 'address payable', type: 'address' },
  1143        { name: '_amount', internalType: 'uint256', type: 'uint256' },
  1144      ],
  1145      name: 'withdrawETH',
  1146      outputs: [],
  1147    },
  1148    {
  1149      stateMutability: 'nonpayable',
  1150      type: 'function',
  1151      inputs: [{ name: '_to', internalType: 'address payable', type: 'address' }],
  1152      name: 'withdrawETH',
  1153      outputs: [],
  1154    },
  1155    { stateMutability: 'payable', type: 'receive' },
  1156  ] as const
  1157  
  1158  /**
  1159   * [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x44b3A2a040057eBafC601A78647e805fd58B1f50)
  1160   */
  1161  export const drippieAddress = {
  1162    1: '0x44b3A2a040057eBafC601A78647e805fd58B1f50',
  1163  } as const
  1164  
  1165  /**
  1166   * [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x44b3A2a040057eBafC601A78647e805fd58B1f50)
  1167   */
  1168  export const drippieConfig = {
  1169    address: drippieAddress,
  1170    abi: drippieABI,
  1171  } as const
  1172  
  1173  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  1174  // Drippie_goerli
  1175  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  1176  
  1177  /**
  1178   * [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x44b3A2a040057eBafC601A78647e805fd58B1f50)
  1179   */
  1180  export const drippieGoerliABI = [
  1181    {
  1182      stateMutability: 'nonpayable',
  1183      type: 'constructor',
  1184      inputs: [{ name: '_owner', internalType: 'address', type: 'address' }],
  1185    },
  1186    {
  1187      type: 'event',
  1188      anonymous: false,
  1189      inputs: [
  1190        {
  1191          name: 'nameref',
  1192          internalType: 'string',
  1193          type: 'string',
  1194          indexed: true,
  1195        },
  1196        { name: 'name', internalType: 'string', type: 'string', indexed: false },
  1197        {
  1198          name: 'config',
  1199          internalType: 'struct Drippie.DripConfig',
  1200          type: 'tuple',
  1201          components: [
  1202            { name: 'reentrant', internalType: 'bool', type: 'bool' },
  1203            { name: 'interval', internalType: 'uint256', type: 'uint256' },
  1204            {
  1205              name: 'dripcheck',
  1206              internalType: 'contract IDripCheck',
  1207              type: 'address',
  1208            },
  1209            { name: 'checkparams', internalType: 'bytes', type: 'bytes' },
  1210            {
  1211              name: 'actions',
  1212              internalType: 'struct Drippie.DripAction[]',
  1213              type: 'tuple[]',
  1214              components: [
  1215                {
  1216                  name: 'target',
  1217                  internalType: 'address payable',
  1218                  type: 'address',
  1219                },
  1220                { name: 'data', internalType: 'bytes', type: 'bytes' },
  1221                { name: 'value', internalType: 'uint256', type: 'uint256' },
  1222              ],
  1223            },
  1224          ],
  1225          indexed: false,
  1226        },
  1227      ],
  1228      name: 'DripCreated',
  1229    },
  1230    {
  1231      type: 'event',
  1232      anonymous: false,
  1233      inputs: [
  1234        {
  1235          name: 'nameref',
  1236          internalType: 'string',
  1237          type: 'string',
  1238          indexed: true,
  1239        },
  1240        { name: 'name', internalType: 'string', type: 'string', indexed: false },
  1241        {
  1242          name: 'executor',
  1243          internalType: 'address',
  1244          type: 'address',
  1245          indexed: false,
  1246        },
  1247        {
  1248          name: 'timestamp',
  1249          internalType: 'uint256',
  1250          type: 'uint256',
  1251          indexed: false,
  1252        },
  1253      ],
  1254      name: 'DripExecuted',
  1255    },
  1256    {
  1257      type: 'event',
  1258      anonymous: false,
  1259      inputs: [
  1260        {
  1261          name: 'nameref',
  1262          internalType: 'string',
  1263          type: 'string',
  1264          indexed: true,
  1265        },
  1266        { name: 'name', internalType: 'string', type: 'string', indexed: false },
  1267        {
  1268          name: 'status',
  1269          internalType: 'enum Drippie.DripStatus',
  1270          type: 'uint8',
  1271          indexed: false,
  1272        },
  1273      ],
  1274      name: 'DripStatusUpdated',
  1275    },
  1276    {
  1277      type: 'event',
  1278      anonymous: false,
  1279      inputs: [
  1280        { name: 'user', internalType: 'address', type: 'address', indexed: true },
  1281        {
  1282          name: 'newOwner',
  1283          internalType: 'address',
  1284          type: 'address',
  1285          indexed: true,
  1286        },
  1287      ],
  1288      name: 'OwnerUpdated',
  1289    },
  1290    {
  1291      type: 'event',
  1292      anonymous: false,
  1293      inputs: [
  1294        { name: 'from', internalType: 'address', type: 'address', indexed: true },
  1295        {
  1296          name: 'amount',
  1297          internalType: 'uint256',
  1298          type: 'uint256',
  1299          indexed: false,
  1300        },
  1301      ],
  1302      name: 'ReceivedETH',
  1303    },
  1304    {
  1305      type: 'event',
  1306      anonymous: false,
  1307      inputs: [
  1308        {
  1309          name: 'withdrawer',
  1310          internalType: 'address',
  1311          type: 'address',
  1312          indexed: true,
  1313        },
  1314        {
  1315          name: 'recipient',
  1316          internalType: 'address',
  1317          type: 'address',
  1318          indexed: true,
  1319        },
  1320        {
  1321          name: 'asset',
  1322          internalType: 'address',
  1323          type: 'address',
  1324          indexed: true,
  1325        },
  1326        {
  1327          name: 'amount',
  1328          internalType: 'uint256',
  1329          type: 'uint256',
  1330          indexed: false,
  1331        },
  1332      ],
  1333      name: 'WithdrewERC20',
  1334    },
  1335    {
  1336      type: 'event',
  1337      anonymous: false,
  1338      inputs: [
  1339        {
  1340          name: 'withdrawer',
  1341          internalType: 'address',
  1342          type: 'address',
  1343          indexed: true,
  1344        },
  1345        {
  1346          name: 'recipient',
  1347          internalType: 'address',
  1348          type: 'address',
  1349          indexed: true,
  1350        },
  1351        {
  1352          name: 'asset',
  1353          internalType: 'address',
  1354          type: 'address',
  1355          indexed: true,
  1356        },
  1357        { name: 'id', internalType: 'uint256', type: 'uint256', indexed: false },
  1358      ],
  1359      name: 'WithdrewERC721',
  1360    },
  1361    {
  1362      type: 'event',
  1363      anonymous: false,
  1364      inputs: [
  1365        {
  1366          name: 'withdrawer',
  1367          internalType: 'address',
  1368          type: 'address',
  1369          indexed: true,
  1370        },
  1371        {
  1372          name: 'recipient',
  1373          internalType: 'address',
  1374          type: 'address',
  1375          indexed: true,
  1376        },
  1377        {
  1378          name: 'amount',
  1379          internalType: 'uint256',
  1380          type: 'uint256',
  1381          indexed: false,
  1382        },
  1383      ],
  1384      name: 'WithdrewETH',
  1385    },
  1386    {
  1387      stateMutability: 'payable',
  1388      type: 'function',
  1389      inputs: [
  1390        { name: '_target', internalType: 'address', type: 'address' },
  1391        { name: '_data', internalType: 'bytes', type: 'bytes' },
  1392        { name: '_value', internalType: 'uint256', type: 'uint256' },
  1393      ],
  1394      name: 'CALL',
  1395      outputs: [
  1396        { name: '', internalType: 'bool', type: 'bool' },
  1397        { name: '', internalType: 'bytes', type: 'bytes' },
  1398      ],
  1399    },
  1400    {
  1401      stateMutability: 'payable',
  1402      type: 'function',
  1403      inputs: [
  1404        { name: '_target', internalType: 'address', type: 'address' },
  1405        { name: '_data', internalType: 'bytes', type: 'bytes' },
  1406      ],
  1407      name: 'DELEGATECALL',
  1408      outputs: [
  1409        { name: '', internalType: 'bool', type: 'bool' },
  1410        { name: '', internalType: 'bytes', type: 'bytes' },
  1411      ],
  1412    },
  1413    {
  1414      stateMutability: 'nonpayable',
  1415      type: 'function',
  1416      inputs: [
  1417        { name: '_name', internalType: 'string', type: 'string' },
  1418        {
  1419          name: '_config',
  1420          internalType: 'struct Drippie.DripConfig',
  1421          type: 'tuple',
  1422          components: [
  1423            { name: 'reentrant', internalType: 'bool', type: 'bool' },
  1424            { name: 'interval', internalType: 'uint256', type: 'uint256' },
  1425            {
  1426              name: 'dripcheck',
  1427              internalType: 'contract IDripCheck',
  1428              type: 'address',
  1429            },
  1430            { name: 'checkparams', internalType: 'bytes', type: 'bytes' },
  1431            {
  1432              name: 'actions',
  1433              internalType: 'struct Drippie.DripAction[]',
  1434              type: 'tuple[]',
  1435              components: [
  1436                {
  1437                  name: 'target',
  1438                  internalType: 'address payable',
  1439                  type: 'address',
  1440                },
  1441                { name: 'data', internalType: 'bytes', type: 'bytes' },
  1442                { name: 'value', internalType: 'uint256', type: 'uint256' },
  1443              ],
  1444            },
  1445          ],
  1446        },
  1447      ],
  1448      name: 'create',
  1449      outputs: [],
  1450    },
  1451    {
  1452      stateMutability: 'nonpayable',
  1453      type: 'function',
  1454      inputs: [{ name: '_name', internalType: 'string', type: 'string' }],
  1455      name: 'drip',
  1456      outputs: [],
  1457    },
  1458    {
  1459      stateMutability: 'view',
  1460      type: 'function',
  1461      inputs: [{ name: '', internalType: 'string', type: 'string' }],
  1462      name: 'drips',
  1463      outputs: [
  1464        {
  1465          name: 'status',
  1466          internalType: 'enum Drippie.DripStatus',
  1467          type: 'uint8',
  1468        },
  1469        {
  1470          name: 'config',
  1471          internalType: 'struct Drippie.DripConfig',
  1472          type: 'tuple',
  1473          components: [
  1474            { name: 'reentrant', internalType: 'bool', type: 'bool' },
  1475            { name: 'interval', internalType: 'uint256', type: 'uint256' },
  1476            {
  1477              name: 'dripcheck',
  1478              internalType: 'contract IDripCheck',
  1479              type: 'address',
  1480            },
  1481            { name: 'checkparams', internalType: 'bytes', type: 'bytes' },
  1482            {
  1483              name: 'actions',
  1484              internalType: 'struct Drippie.DripAction[]',
  1485              type: 'tuple[]',
  1486              components: [
  1487                {
  1488                  name: 'target',
  1489                  internalType: 'address payable',
  1490                  type: 'address',
  1491                },
  1492                { name: 'data', internalType: 'bytes', type: 'bytes' },
  1493                { name: 'value', internalType: 'uint256', type: 'uint256' },
  1494              ],
  1495            },
  1496          ],
  1497        },
  1498        { name: 'last', internalType: 'uint256', type: 'uint256' },
  1499        { name: 'count', internalType: 'uint256', type: 'uint256' },
  1500      ],
  1501    },
  1502    {
  1503      stateMutability: 'view',
  1504      type: 'function',
  1505      inputs: [{ name: '_name', internalType: 'string', type: 'string' }],
  1506      name: 'executable',
  1507      outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
  1508    },
  1509    {
  1510      stateMutability: 'view',
  1511      type: 'function',
  1512      inputs: [],
  1513      name: 'owner',
  1514      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  1515    },
  1516    {
  1517      stateMutability: 'nonpayable',
  1518      type: 'function',
  1519      inputs: [{ name: 'newOwner', internalType: 'address', type: 'address' }],
  1520      name: 'setOwner',
  1521      outputs: [],
  1522    },
  1523    {
  1524      stateMutability: 'nonpayable',
  1525      type: 'function',
  1526      inputs: [
  1527        { name: '_name', internalType: 'string', type: 'string' },
  1528        {
  1529          name: '_status',
  1530          internalType: 'enum Drippie.DripStatus',
  1531          type: 'uint8',
  1532        },
  1533      ],
  1534      name: 'status',
  1535      outputs: [],
  1536    },
  1537    {
  1538      stateMutability: 'nonpayable',
  1539      type: 'function',
  1540      inputs: [
  1541        { name: '_asset', internalType: 'contract ERC20', type: 'address' },
  1542        { name: '_to', internalType: 'address', type: 'address' },
  1543        { name: '_amount', internalType: 'uint256', type: 'uint256' },
  1544      ],
  1545      name: 'withdrawERC20',
  1546      outputs: [],
  1547    },
  1548    {
  1549      stateMutability: 'nonpayable',
  1550      type: 'function',
  1551      inputs: [
  1552        { name: '_asset', internalType: 'contract ERC20', type: 'address' },
  1553        { name: '_to', internalType: 'address', type: 'address' },
  1554      ],
  1555      name: 'withdrawERC20',
  1556      outputs: [],
  1557    },
  1558    {
  1559      stateMutability: 'nonpayable',
  1560      type: 'function',
  1561      inputs: [
  1562        { name: '_asset', internalType: 'contract ERC721', type: 'address' },
  1563        { name: '_to', internalType: 'address', type: 'address' },
  1564        { name: '_id', internalType: 'uint256', type: 'uint256' },
  1565      ],
  1566      name: 'withdrawERC721',
  1567      outputs: [],
  1568    },
  1569    {
  1570      stateMutability: 'nonpayable',
  1571      type: 'function',
  1572      inputs: [
  1573        { name: '_to', internalType: 'address payable', type: 'address' },
  1574        { name: '_amount', internalType: 'uint256', type: 'uint256' },
  1575      ],
  1576      name: 'withdrawETH',
  1577      outputs: [],
  1578    },
  1579    {
  1580      stateMutability: 'nonpayable',
  1581      type: 'function',
  1582      inputs: [{ name: '_to', internalType: 'address payable', type: 'address' }],
  1583      name: 'withdrawETH',
  1584      outputs: [],
  1585    },
  1586    { stateMutability: 'payable', type: 'receive' },
  1587  ] as const
  1588  
  1589  /**
  1590   * [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x44b3A2a040057eBafC601A78647e805fd58B1f50)
  1591   */
  1592  export const drippieGoerliAddress = {
  1593    5: '0x44b3A2a040057eBafC601A78647e805fd58B1f50',
  1594  } as const
  1595  
  1596  /**
  1597   * [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x44b3A2a040057eBafC601A78647e805fd58B1f50)
  1598   */
  1599  export const drippieGoerliConfig = {
  1600    address: drippieGoerliAddress,
  1601    abi: drippieGoerliABI,
  1602  } as const
  1603  
  1604  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  1605  // Drippie_optimism-goerli
  1606  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  1607  
  1608  /**
  1609   * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x8D8d533C16D23847EB04EEB0925be8900Dd3af86)
  1610   */
  1611  export const drippieOptimismGoerliABI = [
  1612    {
  1613      stateMutability: 'nonpayable',
  1614      type: 'constructor',
  1615      inputs: [{ name: '_owner', internalType: 'address', type: 'address' }],
  1616    },
  1617    {
  1618      type: 'event',
  1619      anonymous: false,
  1620      inputs: [
  1621        {
  1622          name: 'nameref',
  1623          internalType: 'string',
  1624          type: 'string',
  1625          indexed: true,
  1626        },
  1627        { name: 'name', internalType: 'string', type: 'string', indexed: false },
  1628        {
  1629          name: 'config',
  1630          internalType: 'struct Drippie.DripConfig',
  1631          type: 'tuple',
  1632          components: [
  1633            { name: 'interval', internalType: 'uint256', type: 'uint256' },
  1634            {
  1635              name: 'dripcheck',
  1636              internalType: 'contract IDripCheck',
  1637              type: 'address',
  1638            },
  1639            { name: 'checkparams', internalType: 'bytes', type: 'bytes' },
  1640            {
  1641              name: 'actions',
  1642              internalType: 'struct Drippie.DripAction[]',
  1643              type: 'tuple[]',
  1644              components: [
  1645                {
  1646                  name: 'target',
  1647                  internalType: 'address payable',
  1648                  type: 'address',
  1649                },
  1650                { name: 'data', internalType: 'bytes', type: 'bytes' },
  1651                { name: 'value', internalType: 'uint256', type: 'uint256' },
  1652              ],
  1653            },
  1654          ],
  1655          indexed: false,
  1656        },
  1657      ],
  1658      name: 'DripCreated',
  1659    },
  1660    {
  1661      type: 'event',
  1662      anonymous: false,
  1663      inputs: [
  1664        {
  1665          name: 'nameref',
  1666          internalType: 'string',
  1667          type: 'string',
  1668          indexed: true,
  1669        },
  1670        { name: 'name', internalType: 'string', type: 'string', indexed: false },
  1671        {
  1672          name: 'executor',
  1673          internalType: 'address',
  1674          type: 'address',
  1675          indexed: false,
  1676        },
  1677        {
  1678          name: 'timestamp',
  1679          internalType: 'uint256',
  1680          type: 'uint256',
  1681          indexed: false,
  1682        },
  1683      ],
  1684      name: 'DripExecuted',
  1685    },
  1686    {
  1687      type: 'event',
  1688      anonymous: false,
  1689      inputs: [
  1690        {
  1691          name: 'nameref',
  1692          internalType: 'string',
  1693          type: 'string',
  1694          indexed: true,
  1695        },
  1696        { name: 'name', internalType: 'string', type: 'string', indexed: false },
  1697        {
  1698          name: 'status',
  1699          internalType: 'enum Drippie.DripStatus',
  1700          type: 'uint8',
  1701          indexed: false,
  1702        },
  1703      ],
  1704      name: 'DripStatusUpdated',
  1705    },
  1706    {
  1707      type: 'event',
  1708      anonymous: false,
  1709      inputs: [
  1710        { name: 'user', internalType: 'address', type: 'address', indexed: true },
  1711        {
  1712          name: 'newOwner',
  1713          internalType: 'address',
  1714          type: 'address',
  1715          indexed: true,
  1716        },
  1717      ],
  1718      name: 'OwnerUpdated',
  1719    },
  1720    {
  1721      type: 'event',
  1722      anonymous: false,
  1723      inputs: [
  1724        { name: 'from', internalType: 'address', type: 'address', indexed: true },
  1725        {
  1726          name: 'amount',
  1727          internalType: 'uint256',
  1728          type: 'uint256',
  1729          indexed: false,
  1730        },
  1731      ],
  1732      name: 'ReceivedETH',
  1733    },
  1734    {
  1735      type: 'event',
  1736      anonymous: false,
  1737      inputs: [
  1738        {
  1739          name: 'withdrawer',
  1740          internalType: 'address',
  1741          type: 'address',
  1742          indexed: true,
  1743        },
  1744        {
  1745          name: 'recipient',
  1746          internalType: 'address',
  1747          type: 'address',
  1748          indexed: true,
  1749        },
  1750        {
  1751          name: 'asset',
  1752          internalType: 'address',
  1753          type: 'address',
  1754          indexed: true,
  1755        },
  1756        {
  1757          name: 'amount',
  1758          internalType: 'uint256',
  1759          type: 'uint256',
  1760          indexed: false,
  1761        },
  1762      ],
  1763      name: 'WithdrewERC20',
  1764    },
  1765    {
  1766      type: 'event',
  1767      anonymous: false,
  1768      inputs: [
  1769        {
  1770          name: 'withdrawer',
  1771          internalType: 'address',
  1772          type: 'address',
  1773          indexed: true,
  1774        },
  1775        {
  1776          name: 'recipient',
  1777          internalType: 'address',
  1778          type: 'address',
  1779          indexed: true,
  1780        },
  1781        {
  1782          name: 'asset',
  1783          internalType: 'address',
  1784          type: 'address',
  1785          indexed: true,
  1786        },
  1787        { name: 'id', internalType: 'uint256', type: 'uint256', indexed: false },
  1788      ],
  1789      name: 'WithdrewERC721',
  1790    },
  1791    {
  1792      type: 'event',
  1793      anonymous: false,
  1794      inputs: [
  1795        {
  1796          name: 'withdrawer',
  1797          internalType: 'address',
  1798          type: 'address',
  1799          indexed: true,
  1800        },
  1801        {
  1802          name: 'recipient',
  1803          internalType: 'address',
  1804          type: 'address',
  1805          indexed: true,
  1806        },
  1807        {
  1808          name: 'amount',
  1809          internalType: 'uint256',
  1810          type: 'uint256',
  1811          indexed: false,
  1812        },
  1813      ],
  1814      name: 'WithdrewETH',
  1815    },
  1816    {
  1817      stateMutability: 'payable',
  1818      type: 'function',
  1819      inputs: [
  1820        { name: '_target', internalType: 'address', type: 'address' },
  1821        { name: '_data', internalType: 'bytes', type: 'bytes' },
  1822        { name: '_gas', internalType: 'uint256', type: 'uint256' },
  1823        { name: '_value', internalType: 'uint256', type: 'uint256' },
  1824      ],
  1825      name: 'CALL',
  1826      outputs: [
  1827        { name: '', internalType: 'bool', type: 'bool' },
  1828        { name: '', internalType: 'bytes', type: 'bytes' },
  1829      ],
  1830    },
  1831    {
  1832      stateMutability: 'payable',
  1833      type: 'function',
  1834      inputs: [
  1835        { name: '_target', internalType: 'address', type: 'address' },
  1836        { name: '_data', internalType: 'bytes', type: 'bytes' },
  1837        { name: '_gas', internalType: 'uint256', type: 'uint256' },
  1838      ],
  1839      name: 'DELEGATECALL',
  1840      outputs: [
  1841        { name: '', internalType: 'bool', type: 'bool' },
  1842        { name: '', internalType: 'bytes', type: 'bytes' },
  1843      ],
  1844    },
  1845    {
  1846      stateMutability: 'nonpayable',
  1847      type: 'function',
  1848      inputs: [
  1849        { name: '_name', internalType: 'string', type: 'string' },
  1850        {
  1851          name: '_config',
  1852          internalType: 'struct Drippie.DripConfig',
  1853          type: 'tuple',
  1854          components: [
  1855            { name: 'interval', internalType: 'uint256', type: 'uint256' },
  1856            {
  1857              name: 'dripcheck',
  1858              internalType: 'contract IDripCheck',
  1859              type: 'address',
  1860            },
  1861            { name: 'checkparams', internalType: 'bytes', type: 'bytes' },
  1862            {
  1863              name: 'actions',
  1864              internalType: 'struct Drippie.DripAction[]',
  1865              type: 'tuple[]',
  1866              components: [
  1867                {
  1868                  name: 'target',
  1869                  internalType: 'address payable',
  1870                  type: 'address',
  1871                },
  1872                { name: 'data', internalType: 'bytes', type: 'bytes' },
  1873                { name: 'value', internalType: 'uint256', type: 'uint256' },
  1874              ],
  1875            },
  1876          ],
  1877        },
  1878      ],
  1879      name: 'create',
  1880      outputs: [],
  1881    },
  1882    {
  1883      stateMutability: 'nonpayable',
  1884      type: 'function',
  1885      inputs: [{ name: '_name', internalType: 'string', type: 'string' }],
  1886      name: 'drip',
  1887      outputs: [],
  1888    },
  1889    {
  1890      stateMutability: 'view',
  1891      type: 'function',
  1892      inputs: [{ name: '', internalType: 'string', type: 'string' }],
  1893      name: 'drips',
  1894      outputs: [
  1895        {
  1896          name: 'status',
  1897          internalType: 'enum Drippie.DripStatus',
  1898          type: 'uint8',
  1899        },
  1900        {
  1901          name: 'config',
  1902          internalType: 'struct Drippie.DripConfig',
  1903          type: 'tuple',
  1904          components: [
  1905            { name: 'interval', internalType: 'uint256', type: 'uint256' },
  1906            {
  1907              name: 'dripcheck',
  1908              internalType: 'contract IDripCheck',
  1909              type: 'address',
  1910            },
  1911            { name: 'checkparams', internalType: 'bytes', type: 'bytes' },
  1912            {
  1913              name: 'actions',
  1914              internalType: 'struct Drippie.DripAction[]',
  1915              type: 'tuple[]',
  1916              components: [
  1917                {
  1918                  name: 'target',
  1919                  internalType: 'address payable',
  1920                  type: 'address',
  1921                },
  1922                { name: 'data', internalType: 'bytes', type: 'bytes' },
  1923                { name: 'value', internalType: 'uint256', type: 'uint256' },
  1924              ],
  1925            },
  1926          ],
  1927        },
  1928        { name: 'last', internalType: 'uint256', type: 'uint256' },
  1929        { name: 'count', internalType: 'uint256', type: 'uint256' },
  1930      ],
  1931    },
  1932    {
  1933      stateMutability: 'view',
  1934      type: 'function',
  1935      inputs: [{ name: '_name', internalType: 'string', type: 'string' }],
  1936      name: 'executable',
  1937      outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
  1938    },
  1939    {
  1940      stateMutability: 'view',
  1941      type: 'function',
  1942      inputs: [],
  1943      name: 'owner',
  1944      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  1945    },
  1946    {
  1947      stateMutability: 'nonpayable',
  1948      type: 'function',
  1949      inputs: [{ name: 'newOwner', internalType: 'address', type: 'address' }],
  1950      name: 'setOwner',
  1951      outputs: [],
  1952    },
  1953    {
  1954      stateMutability: 'nonpayable',
  1955      type: 'function',
  1956      inputs: [
  1957        { name: '_name', internalType: 'string', type: 'string' },
  1958        {
  1959          name: '_status',
  1960          internalType: 'enum Drippie.DripStatus',
  1961          type: 'uint8',
  1962        },
  1963      ],
  1964      name: 'status',
  1965      outputs: [],
  1966    },
  1967    {
  1968      stateMutability: 'nonpayable',
  1969      type: 'function',
  1970      inputs: [
  1971        { name: '_asset', internalType: 'contract ERC20', type: 'address' },
  1972        { name: '_to', internalType: 'address', type: 'address' },
  1973        { name: '_amount', internalType: 'uint256', type: 'uint256' },
  1974      ],
  1975      name: 'withdrawERC20',
  1976      outputs: [],
  1977    },
  1978    {
  1979      stateMutability: 'nonpayable',
  1980      type: 'function',
  1981      inputs: [
  1982        { name: '_asset', internalType: 'contract ERC20', type: 'address' },
  1983        { name: '_to', internalType: 'address', type: 'address' },
  1984      ],
  1985      name: 'withdrawERC20',
  1986      outputs: [],
  1987    },
  1988    {
  1989      stateMutability: 'nonpayable',
  1990      type: 'function',
  1991      inputs: [
  1992        { name: '_asset', internalType: 'contract ERC721', type: 'address' },
  1993        { name: '_to', internalType: 'address', type: 'address' },
  1994        { name: '_id', internalType: 'uint256', type: 'uint256' },
  1995      ],
  1996      name: 'withdrawERC721',
  1997      outputs: [],
  1998    },
  1999    {
  2000      stateMutability: 'nonpayable',
  2001      type: 'function',
  2002      inputs: [
  2003        { name: '_to', internalType: 'address payable', type: 'address' },
  2004        { name: '_amount', internalType: 'uint256', type: 'uint256' },
  2005      ],
  2006      name: 'withdrawETH',
  2007      outputs: [],
  2008    },
  2009    {
  2010      stateMutability: 'nonpayable',
  2011      type: 'function',
  2012      inputs: [{ name: '_to', internalType: 'address payable', type: 'address' }],
  2013      name: 'withdrawETH',
  2014      outputs: [],
  2015    },
  2016    { stateMutability: 'payable', type: 'receive' },
  2017  ] as const
  2018  
  2019  /**
  2020   * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x8D8d533C16D23847EB04EEB0925be8900Dd3af86)
  2021   */
  2022  export const drippieOptimismGoerliAddress = {
  2023    420: '0x8D8d533C16D23847EB04EEB0925be8900Dd3af86',
  2024  } as const
  2025  
  2026  /**
  2027   * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x8D8d533C16D23847EB04EEB0925be8900Dd3af86)
  2028   */
  2029  export const drippieOptimismGoerliConfig = {
  2030    address: drippieOptimismGoerliAddress,
  2031    abi: drippieOptimismGoerliABI,
  2032  } as const
  2033  
  2034  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  2035  // EAS
  2036  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  2037  
  2038  /**
  2039   * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x4E0275Ea5a89e7a3c1B58411379D1a0eDdc5b088)
  2040   * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x5A633F1cc84B03F7588486CF2F386c102061E6e1)
  2041   */
  2042  export const easABI = [
  2043    { stateMutability: 'nonpayable', type: 'constructor', inputs: [] },
  2044    { type: 'error', inputs: [], name: 'AccessDenied' },
  2045    { type: 'error', inputs: [], name: 'AlreadyRevoked' },
  2046    { type: 'error', inputs: [], name: 'AlreadyRevokedOffchain' },
  2047    { type: 'error', inputs: [], name: 'AlreadyTimestamped' },
  2048    { type: 'error', inputs: [], name: 'InsufficientValue' },
  2049    { type: 'error', inputs: [], name: 'InvalidAttestation' },
  2050    { type: 'error', inputs: [], name: 'InvalidAttestations' },
  2051    { type: 'error', inputs: [], name: 'InvalidExpirationTime' },
  2052    { type: 'error', inputs: [], name: 'InvalidLength' },
  2053    { type: 'error', inputs: [], name: 'InvalidOffset' },
  2054    { type: 'error', inputs: [], name: 'InvalidRegistry' },
  2055    { type: 'error', inputs: [], name: 'InvalidRevocation' },
  2056    { type: 'error', inputs: [], name: 'InvalidRevocations' },
  2057    { type: 'error', inputs: [], name: 'InvalidSchema' },
  2058    { type: 'error', inputs: [], name: 'InvalidSignature' },
  2059    { type: 'error', inputs: [], name: 'InvalidVerifier' },
  2060    { type: 'error', inputs: [], name: 'Irrevocable' },
  2061    { type: 'error', inputs: [], name: 'NotFound' },
  2062    { type: 'error', inputs: [], name: 'NotPayable' },
  2063    { type: 'error', inputs: [], name: 'WrongSchema' },
  2064    {
  2065      type: 'event',
  2066      anonymous: false,
  2067      inputs: [
  2068        {
  2069          name: 'recipient',
  2070          internalType: 'address',
  2071          type: 'address',
  2072          indexed: true,
  2073        },
  2074        {
  2075          name: 'attester',
  2076          internalType: 'address',
  2077          type: 'address',
  2078          indexed: true,
  2079        },
  2080        { name: 'uid', internalType: 'bytes32', type: 'bytes32', indexed: false },
  2081        {
  2082          name: 'schema',
  2083          internalType: 'bytes32',
  2084          type: 'bytes32',
  2085          indexed: true,
  2086        },
  2087      ],
  2088      name: 'Attested',
  2089    },
  2090    {
  2091      type: 'event',
  2092      anonymous: false,
  2093      inputs: [
  2094        {
  2095          name: 'recipient',
  2096          internalType: 'address',
  2097          type: 'address',
  2098          indexed: true,
  2099        },
  2100        {
  2101          name: 'attester',
  2102          internalType: 'address',
  2103          type: 'address',
  2104          indexed: true,
  2105        },
  2106        { name: 'uid', internalType: 'bytes32', type: 'bytes32', indexed: false },
  2107        {
  2108          name: 'schema',
  2109          internalType: 'bytes32',
  2110          type: 'bytes32',
  2111          indexed: true,
  2112        },
  2113      ],
  2114      name: 'Revoked',
  2115    },
  2116    {
  2117      type: 'event',
  2118      anonymous: false,
  2119      inputs: [
  2120        {
  2121          name: 'revoker',
  2122          internalType: 'address',
  2123          type: 'address',
  2124          indexed: true,
  2125        },
  2126        { name: 'data', internalType: 'bytes32', type: 'bytes32', indexed: true },
  2127        {
  2128          name: 'timestamp',
  2129          internalType: 'uint64',
  2130          type: 'uint64',
  2131          indexed: true,
  2132        },
  2133      ],
  2134      name: 'RevokedOffchain',
  2135    },
  2136    {
  2137      type: 'event',
  2138      anonymous: false,
  2139      inputs: [
  2140        { name: 'data', internalType: 'bytes32', type: 'bytes32', indexed: true },
  2141        {
  2142          name: 'timestamp',
  2143          internalType: 'uint64',
  2144          type: 'uint64',
  2145          indexed: true,
  2146        },
  2147      ],
  2148      name: 'Timestamped',
  2149    },
  2150    {
  2151      stateMutability: 'payable',
  2152      type: 'function',
  2153      inputs: [
  2154        {
  2155          name: 'request',
  2156          internalType: 'struct AttestationRequest',
  2157          type: 'tuple',
  2158          components: [
  2159            { name: 'schema', internalType: 'bytes32', type: 'bytes32' },
  2160            {
  2161              name: 'data',
  2162              internalType: 'struct AttestationRequestData',
  2163              type: 'tuple',
  2164              components: [
  2165                { name: 'recipient', internalType: 'address', type: 'address' },
  2166                {
  2167                  name: 'expirationTime',
  2168                  internalType: 'uint64',
  2169                  type: 'uint64',
  2170                },
  2171                { name: 'revocable', internalType: 'bool', type: 'bool' },
  2172                { name: 'refUID', internalType: 'bytes32', type: 'bytes32' },
  2173                { name: 'data', internalType: 'bytes', type: 'bytes' },
  2174                { name: 'value', internalType: 'uint256', type: 'uint256' },
  2175              ],
  2176            },
  2177          ],
  2178        },
  2179      ],
  2180      name: 'attest',
  2181      outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
  2182    },
  2183    {
  2184      stateMutability: 'payable',
  2185      type: 'function',
  2186      inputs: [
  2187        {
  2188          name: 'delegatedRequest',
  2189          internalType: 'struct DelegatedAttestationRequest',
  2190          type: 'tuple',
  2191          components: [
  2192            { name: 'schema', internalType: 'bytes32', type: 'bytes32' },
  2193            {
  2194              name: 'data',
  2195              internalType: 'struct AttestationRequestData',
  2196              type: 'tuple',
  2197              components: [
  2198                { name: 'recipient', internalType: 'address', type: 'address' },
  2199                {
  2200                  name: 'expirationTime',
  2201                  internalType: 'uint64',
  2202                  type: 'uint64',
  2203                },
  2204                { name: 'revocable', internalType: 'bool', type: 'bool' },
  2205                { name: 'refUID', internalType: 'bytes32', type: 'bytes32' },
  2206                { name: 'data', internalType: 'bytes', type: 'bytes' },
  2207                { name: 'value', internalType: 'uint256', type: 'uint256' },
  2208              ],
  2209            },
  2210            {
  2211              name: 'signature',
  2212              internalType: 'struct EIP712Signature',
  2213              type: 'tuple',
  2214              components: [
  2215                { name: 'v', internalType: 'uint8', type: 'uint8' },
  2216                { name: 'r', internalType: 'bytes32', type: 'bytes32' },
  2217                { name: 's', internalType: 'bytes32', type: 'bytes32' },
  2218              ],
  2219            },
  2220            { name: 'attester', internalType: 'address', type: 'address' },
  2221          ],
  2222        },
  2223      ],
  2224      name: 'attestByDelegation',
  2225      outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
  2226    },
  2227    {
  2228      stateMutability: 'pure',
  2229      type: 'function',
  2230      inputs: [],
  2231      name: 'getAttestTypeHash',
  2232      outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
  2233    },
  2234    {
  2235      stateMutability: 'view',
  2236      type: 'function',
  2237      inputs: [{ name: 'uid', internalType: 'bytes32', type: 'bytes32' }],
  2238      name: 'getAttestation',
  2239      outputs: [
  2240        {
  2241          name: '',
  2242          internalType: 'struct Attestation',
  2243          type: 'tuple',
  2244          components: [
  2245            { name: 'uid', internalType: 'bytes32', type: 'bytes32' },
  2246            { name: 'schema', internalType: 'bytes32', type: 'bytes32' },
  2247            { name: 'time', internalType: 'uint64', type: 'uint64' },
  2248            { name: 'expirationTime', internalType: 'uint64', type: 'uint64' },
  2249            { name: 'revocationTime', internalType: 'uint64', type: 'uint64' },
  2250            { name: 'refUID', internalType: 'bytes32', type: 'bytes32' },
  2251            { name: 'recipient', internalType: 'address', type: 'address' },
  2252            { name: 'attester', internalType: 'address', type: 'address' },
  2253            { name: 'revocable', internalType: 'bool', type: 'bool' },
  2254            { name: 'data', internalType: 'bytes', type: 'bytes' },
  2255          ],
  2256        },
  2257      ],
  2258    },
  2259    {
  2260      stateMutability: 'view',
  2261      type: 'function',
  2262      inputs: [],
  2263      name: 'getDomainSeparator',
  2264      outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
  2265    },
  2266    {
  2267      stateMutability: 'view',
  2268      type: 'function',
  2269      inputs: [],
  2270      name: 'getName',
  2271      outputs: [{ name: '', internalType: 'string', type: 'string' }],
  2272    },
  2273    {
  2274      stateMutability: 'view',
  2275      type: 'function',
  2276      inputs: [{ name: 'account', internalType: 'address', type: 'address' }],
  2277      name: 'getNonce',
  2278      outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
  2279    },
  2280    {
  2281      stateMutability: 'view',
  2282      type: 'function',
  2283      inputs: [
  2284        { name: 'revoker', internalType: 'address', type: 'address' },
  2285        { name: 'data', internalType: 'bytes32', type: 'bytes32' },
  2286      ],
  2287      name: 'getRevokeOffchain',
  2288      outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }],
  2289    },
  2290    {
  2291      stateMutability: 'pure',
  2292      type: 'function',
  2293      inputs: [],
  2294      name: 'getRevokeTypeHash',
  2295      outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
  2296    },
  2297    {
  2298      stateMutability: 'pure',
  2299      type: 'function',
  2300      inputs: [],
  2301      name: 'getSchemaRegistry',
  2302      outputs: [
  2303        { name: '', internalType: 'contract ISchemaRegistry', type: 'address' },
  2304      ],
  2305    },
  2306    {
  2307      stateMutability: 'view',
  2308      type: 'function',
  2309      inputs: [{ name: 'data', internalType: 'bytes32', type: 'bytes32' }],
  2310      name: 'getTimestamp',
  2311      outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }],
  2312    },
  2313    {
  2314      stateMutability: 'view',
  2315      type: 'function',
  2316      inputs: [{ name: 'uid', internalType: 'bytes32', type: 'bytes32' }],
  2317      name: 'isAttestationValid',
  2318      outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
  2319    },
  2320    {
  2321      stateMutability: 'payable',
  2322      type: 'function',
  2323      inputs: [
  2324        {
  2325          name: 'multiRequests',
  2326          internalType: 'struct MultiAttestationRequest[]',
  2327          type: 'tuple[]',
  2328          components: [
  2329            { name: 'schema', internalType: 'bytes32', type: 'bytes32' },
  2330            {
  2331              name: 'data',
  2332              internalType: 'struct AttestationRequestData[]',
  2333              type: 'tuple[]',
  2334              components: [
  2335                { name: 'recipient', internalType: 'address', type: 'address' },
  2336                {
  2337                  name: 'expirationTime',
  2338                  internalType: 'uint64',
  2339                  type: 'uint64',
  2340                },
  2341                { name: 'revocable', internalType: 'bool', type: 'bool' },
  2342                { name: 'refUID', internalType: 'bytes32', type: 'bytes32' },
  2343                { name: 'data', internalType: 'bytes', type: 'bytes' },
  2344                { name: 'value', internalType: 'uint256', type: 'uint256' },
  2345              ],
  2346            },
  2347          ],
  2348        },
  2349      ],
  2350      name: 'multiAttest',
  2351      outputs: [{ name: '', internalType: 'bytes32[]', type: 'bytes32[]' }],
  2352    },
  2353    {
  2354      stateMutability: 'payable',
  2355      type: 'function',
  2356      inputs: [
  2357        {
  2358          name: 'multiDelegatedRequests',
  2359          internalType: 'struct MultiDelegatedAttestationRequest[]',
  2360          type: 'tuple[]',
  2361          components: [
  2362            { name: 'schema', internalType: 'bytes32', type: 'bytes32' },
  2363            {
  2364              name: 'data',
  2365              internalType: 'struct AttestationRequestData[]',
  2366              type: 'tuple[]',
  2367              components: [
  2368                { name: 'recipient', internalType: 'address', type: 'address' },
  2369                {
  2370                  name: 'expirationTime',
  2371                  internalType: 'uint64',
  2372                  type: 'uint64',
  2373                },
  2374                { name: 'revocable', internalType: 'bool', type: 'bool' },
  2375                { name: 'refUID', internalType: 'bytes32', type: 'bytes32' },
  2376                { name: 'data', internalType: 'bytes', type: 'bytes' },
  2377                { name: 'value', internalType: 'uint256', type: 'uint256' },
  2378              ],
  2379            },
  2380            {
  2381              name: 'signatures',
  2382              internalType: 'struct EIP712Signature[]',
  2383              type: 'tuple[]',
  2384              components: [
  2385                { name: 'v', internalType: 'uint8', type: 'uint8' },
  2386                { name: 'r', internalType: 'bytes32', type: 'bytes32' },
  2387                { name: 's', internalType: 'bytes32', type: 'bytes32' },
  2388              ],
  2389            },
  2390            { name: 'attester', internalType: 'address', type: 'address' },
  2391          ],
  2392        },
  2393      ],
  2394      name: 'multiAttestByDelegation',
  2395      outputs: [{ name: '', internalType: 'bytes32[]', type: 'bytes32[]' }],
  2396    },
  2397    {
  2398      stateMutability: 'payable',
  2399      type: 'function',
  2400      inputs: [
  2401        {
  2402          name: 'multiRequests',
  2403          internalType: 'struct MultiRevocationRequest[]',
  2404          type: 'tuple[]',
  2405          components: [
  2406            { name: 'schema', internalType: 'bytes32', type: 'bytes32' },
  2407            {
  2408              name: 'data',
  2409              internalType: 'struct RevocationRequestData[]',
  2410              type: 'tuple[]',
  2411              components: [
  2412                { name: 'uid', internalType: 'bytes32', type: 'bytes32' },
  2413                { name: 'value', internalType: 'uint256', type: 'uint256' },
  2414              ],
  2415            },
  2416          ],
  2417        },
  2418      ],
  2419      name: 'multiRevoke',
  2420      outputs: [],
  2421    },
  2422    {
  2423      stateMutability: 'payable',
  2424      type: 'function',
  2425      inputs: [
  2426        {
  2427          name: 'multiDelegatedRequests',
  2428          internalType: 'struct MultiDelegatedRevocationRequest[]',
  2429          type: 'tuple[]',
  2430          components: [
  2431            { name: 'schema', internalType: 'bytes32', type: 'bytes32' },
  2432            {
  2433              name: 'data',
  2434              internalType: 'struct RevocationRequestData[]',
  2435              type: 'tuple[]',
  2436              components: [
  2437                { name: 'uid', internalType: 'bytes32', type: 'bytes32' },
  2438                { name: 'value', internalType: 'uint256', type: 'uint256' },
  2439              ],
  2440            },
  2441            {
  2442              name: 'signatures',
  2443              internalType: 'struct EIP712Signature[]',
  2444              type: 'tuple[]',
  2445              components: [
  2446                { name: 'v', internalType: 'uint8', type: 'uint8' },
  2447                { name: 'r', internalType: 'bytes32', type: 'bytes32' },
  2448                { name: 's', internalType: 'bytes32', type: 'bytes32' },
  2449              ],
  2450            },
  2451            { name: 'revoker', internalType: 'address', type: 'address' },
  2452          ],
  2453        },
  2454      ],
  2455      name: 'multiRevokeByDelegation',
  2456      outputs: [],
  2457    },
  2458    {
  2459      stateMutability: 'nonpayable',
  2460      type: 'function',
  2461      inputs: [{ name: 'data', internalType: 'bytes32[]', type: 'bytes32[]' }],
  2462      name: 'multiRevokeOffchain',
  2463      outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }],
  2464    },
  2465    {
  2466      stateMutability: 'nonpayable',
  2467      type: 'function',
  2468      inputs: [{ name: 'data', internalType: 'bytes32[]', type: 'bytes32[]' }],
  2469      name: 'multiTimestamp',
  2470      outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }],
  2471    },
  2472    {
  2473      stateMutability: 'payable',
  2474      type: 'function',
  2475      inputs: [
  2476        {
  2477          name: 'request',
  2478          internalType: 'struct RevocationRequest',
  2479          type: 'tuple',
  2480          components: [
  2481            { name: 'schema', internalType: 'bytes32', type: 'bytes32' },
  2482            {
  2483              name: 'data',
  2484              internalType: 'struct RevocationRequestData',
  2485              type: 'tuple',
  2486              components: [
  2487                { name: 'uid', internalType: 'bytes32', type: 'bytes32' },
  2488                { name: 'value', internalType: 'uint256', type: 'uint256' },
  2489              ],
  2490            },
  2491          ],
  2492        },
  2493      ],
  2494      name: 'revoke',
  2495      outputs: [],
  2496    },
  2497    {
  2498      stateMutability: 'payable',
  2499      type: 'function',
  2500      inputs: [
  2501        {
  2502          name: 'delegatedRequest',
  2503          internalType: 'struct DelegatedRevocationRequest',
  2504          type: 'tuple',
  2505          components: [
  2506            { name: 'schema', internalType: 'bytes32', type: 'bytes32' },
  2507            {
  2508              name: 'data',
  2509              internalType: 'struct RevocationRequestData',
  2510              type: 'tuple',
  2511              components: [
  2512                { name: 'uid', internalType: 'bytes32', type: 'bytes32' },
  2513                { name: 'value', internalType: 'uint256', type: 'uint256' },
  2514              ],
  2515            },
  2516            {
  2517              name: 'signature',
  2518              internalType: 'struct EIP712Signature',
  2519              type: 'tuple',
  2520              components: [
  2521                { name: 'v', internalType: 'uint8', type: 'uint8' },
  2522                { name: 'r', internalType: 'bytes32', type: 'bytes32' },
  2523                { name: 's', internalType: 'bytes32', type: 'bytes32' },
  2524              ],
  2525            },
  2526            { name: 'revoker', internalType: 'address', type: 'address' },
  2527          ],
  2528        },
  2529      ],
  2530      name: 'revokeByDelegation',
  2531      outputs: [],
  2532    },
  2533    {
  2534      stateMutability: 'nonpayable',
  2535      type: 'function',
  2536      inputs: [{ name: 'data', internalType: 'bytes32', type: 'bytes32' }],
  2537      name: 'revokeOffchain',
  2538      outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }],
  2539    },
  2540    {
  2541      stateMutability: 'nonpayable',
  2542      type: 'function',
  2543      inputs: [{ name: 'data', internalType: 'bytes32', type: 'bytes32' }],
  2544      name: 'timestamp',
  2545      outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }],
  2546    },
  2547    {
  2548      stateMutability: 'view',
  2549      type: 'function',
  2550      inputs: [],
  2551      name: 'version',
  2552      outputs: [{ name: '', internalType: 'string', type: 'string' }],
  2553    },
  2554  ] as const
  2555  
  2556  /**
  2557   * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x4E0275Ea5a89e7a3c1B58411379D1a0eDdc5b088)
  2558   * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x5A633F1cc84B03F7588486CF2F386c102061E6e1)
  2559   */
  2560  export const easAddress = {
  2561    10: '0x4E0275Ea5a89e7a3c1B58411379D1a0eDdc5b088',
  2562    420: '0x5A633F1cc84B03F7588486CF2F386c102061E6e1',
  2563  } as const
  2564  
  2565  /**
  2566   * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x4E0275Ea5a89e7a3c1B58411379D1a0eDdc5b088)
  2567   * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x5A633F1cc84B03F7588486CF2F386c102061E6e1)
  2568   */
  2569  export const easConfig = { address: easAddress, abi: easABI } as const
  2570  
  2571  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  2572  // GasPriceOracle
  2573  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  2574  
  2575  /**
  2576   * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x420000000000000000000000000000000000000F)
  2577   */
  2578  export const gasPriceOracleABI = [
  2579    { stateMutability: 'nonpayable', type: 'constructor', inputs: [] },
  2580    {
  2581      stateMutability: 'view',
  2582      type: 'function',
  2583      inputs: [],
  2584      name: 'DECIMALS',
  2585      outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
  2586    },
  2587    {
  2588      stateMutability: 'view',
  2589      type: 'function',
  2590      inputs: [],
  2591      name: 'baseFee',
  2592      outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
  2593    },
  2594    {
  2595      stateMutability: 'pure',
  2596      type: 'function',
  2597      inputs: [],
  2598      name: 'decimals',
  2599      outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
  2600    },
  2601    {
  2602      stateMutability: 'view',
  2603      type: 'function',
  2604      inputs: [],
  2605      name: 'gasPrice',
  2606      outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
  2607    },
  2608    {
  2609      stateMutability: 'view',
  2610      type: 'function',
  2611      inputs: [{ name: '_data', internalType: 'bytes', type: 'bytes' }],
  2612      name: 'getL1Fee',
  2613      outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
  2614    },
  2615    {
  2616      stateMutability: 'view',
  2617      type: 'function',
  2618      inputs: [{ name: '_data', internalType: 'bytes', type: 'bytes' }],
  2619      name: 'getL1GasUsed',
  2620      outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
  2621    },
  2622    {
  2623      stateMutability: 'view',
  2624      type: 'function',
  2625      inputs: [],
  2626      name: 'l1BaseFee',
  2627      outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
  2628    },
  2629    {
  2630      stateMutability: 'view',
  2631      type: 'function',
  2632      inputs: [],
  2633      name: 'overhead',
  2634      outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
  2635    },
  2636    {
  2637      stateMutability: 'view',
  2638      type: 'function',
  2639      inputs: [],
  2640      name: 'scalar',
  2641      outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
  2642    },
  2643    {
  2644      stateMutability: 'view',
  2645      type: 'function',
  2646      inputs: [],
  2647      name: 'version',
  2648      outputs: [{ name: '', internalType: 'string', type: 'string' }],
  2649    },
  2650  ] as const
  2651  
  2652  /**
  2653   * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x420000000000000000000000000000000000000F)
  2654   */
  2655  export const gasPriceOracleAddress = {
  2656    420: '0x420000000000000000000000000000000000000F',
  2657  } as const
  2658  
  2659  /**
  2660   * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x420000000000000000000000000000000000000F)
  2661   */
  2662  export const gasPriceOracleConfig = {
  2663    address: gasPriceOracleAddress,
  2664    abi: gasPriceOracleABI,
  2665  } as const
  2666  
  2667  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  2668  // L1Block
  2669  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  2670  
  2671  /**
  2672   * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000015)
  2673   */
  2674  export const l1BlockABI = [
  2675    { stateMutability: 'nonpayable', type: 'constructor', inputs: [] },
  2676    {
  2677      stateMutability: 'view',
  2678      type: 'function',
  2679      inputs: [],
  2680      name: 'DEPOSITOR_ACCOUNT',
  2681      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  2682    },
  2683    {
  2684      stateMutability: 'view',
  2685      type: 'function',
  2686      inputs: [],
  2687      name: 'basefee',
  2688      outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
  2689    },
  2690    {
  2691      stateMutability: 'view',
  2692      type: 'function',
  2693      inputs: [],
  2694      name: 'batcherHash',
  2695      outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
  2696    },
  2697    {
  2698      stateMutability: 'view',
  2699      type: 'function',
  2700      inputs: [],
  2701      name: 'hash',
  2702      outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
  2703    },
  2704    {
  2705      stateMutability: 'view',
  2706      type: 'function',
  2707      inputs: [],
  2708      name: 'l1FeeOverhead',
  2709      outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
  2710    },
  2711    {
  2712      stateMutability: 'view',
  2713      type: 'function',
  2714      inputs: [],
  2715      name: 'l1FeeScalar',
  2716      outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
  2717    },
  2718    {
  2719      stateMutability: 'view',
  2720      type: 'function',
  2721      inputs: [],
  2722      name: 'number',
  2723      outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }],
  2724    },
  2725    {
  2726      stateMutability: 'view',
  2727      type: 'function',
  2728      inputs: [],
  2729      name: 'sequenceNumber',
  2730      outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }],
  2731    },
  2732    {
  2733      stateMutability: 'nonpayable',
  2734      type: 'function',
  2735      inputs: [
  2736        { name: '_number', internalType: 'uint64', type: 'uint64' },
  2737        { name: '_timestamp', internalType: 'uint64', type: 'uint64' },
  2738        { name: '_basefee', internalType: 'uint256', type: 'uint256' },
  2739        { name: '_hash', internalType: 'bytes32', type: 'bytes32' },
  2740        { name: '_sequenceNumber', internalType: 'uint64', type: 'uint64' },
  2741        { name: '_batcherHash', internalType: 'bytes32', type: 'bytes32' },
  2742        { name: '_l1FeeOverhead', internalType: 'uint256', type: 'uint256' },
  2743        { name: '_l1FeeScalar', internalType: 'uint256', type: 'uint256' },
  2744      ],
  2745      name: 'setL1BlockValues',
  2746      outputs: [],
  2747    },
  2748    {
  2749      stateMutability: 'view',
  2750      type: 'function',
  2751      inputs: [],
  2752      name: 'timestamp',
  2753      outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }],
  2754    },
  2755    {
  2756      stateMutability: 'view',
  2757      type: 'function',
  2758      inputs: [],
  2759      name: 'version',
  2760      outputs: [{ name: '', internalType: 'string', type: 'string' }],
  2761    },
  2762  ] as const
  2763  
  2764  /**
  2765   * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000015)
  2766   */
  2767  export const l1BlockAddress = {
  2768    420: '0x4200000000000000000000000000000000000015',
  2769  } as const
  2770  
  2771  /**
  2772   * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000015)
  2773   */
  2774  export const l1BlockConfig = {
  2775    address: l1BlockAddress,
  2776    abi: l1BlockABI,
  2777  } as const
  2778  
  2779  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  2780  // L1CrossDomainMessenger
  2781  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  2782  
  2783  /**
  2784   * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x25ace71c97B33Cc4729CF772ae268934F7ab5fA1)
  2785   * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x5086d1eEF304eb5284A0f6720f79403b4e9bE294)
  2786   */
  2787  export const l1CrossDomainMessengerABI = [
  2788    { stateMutability: 'nonpayable', type: 'constructor', inputs: [] },
  2789    {
  2790      type: 'event',
  2791      anonymous: false,
  2792      inputs: [
  2793        {
  2794          name: 'msgHash',
  2795          internalType: 'bytes32',
  2796          type: 'bytes32',
  2797          indexed: true,
  2798        },
  2799      ],
  2800      name: 'FailedRelayedMessage',
  2801    },
  2802    {
  2803      type: 'event',
  2804      anonymous: false,
  2805      inputs: [
  2806        { name: 'version', internalType: 'uint8', type: 'uint8', indexed: false },
  2807      ],
  2808      name: 'Initialized',
  2809    },
  2810    {
  2811      type: 'event',
  2812      anonymous: false,
  2813      inputs: [
  2814        {
  2815          name: 'msgHash',
  2816          internalType: 'bytes32',
  2817          type: 'bytes32',
  2818          indexed: true,
  2819        },
  2820      ],
  2821      name: 'RelayedMessage',
  2822    },
  2823    {
  2824      type: 'event',
  2825      anonymous: false,
  2826      inputs: [
  2827        {
  2828          name: 'target',
  2829          internalType: 'address',
  2830          type: 'address',
  2831          indexed: true,
  2832        },
  2833        {
  2834          name: 'sender',
  2835          internalType: 'address',
  2836          type: 'address',
  2837          indexed: false,
  2838        },
  2839        { name: 'message', internalType: 'bytes', type: 'bytes', indexed: false },
  2840        {
  2841          name: 'messageNonce',
  2842          internalType: 'uint256',
  2843          type: 'uint256',
  2844          indexed: false,
  2845        },
  2846        {
  2847          name: 'gasLimit',
  2848          internalType: 'uint256',
  2849          type: 'uint256',
  2850          indexed: false,
  2851        },
  2852      ],
  2853      name: 'SentMessage',
  2854    },
  2855    {
  2856      type: 'event',
  2857      anonymous: false,
  2858      inputs: [
  2859        {
  2860          name: 'sender',
  2861          internalType: 'address',
  2862          type: 'address',
  2863          indexed: true,
  2864        },
  2865        {
  2866          name: 'value',
  2867          internalType: 'uint256',
  2868          type: 'uint256',
  2869          indexed: false,
  2870        },
  2871      ],
  2872      name: 'SentMessageExtension1',
  2873    },
  2874    {
  2875      stateMutability: 'view',
  2876      type: 'function',
  2877      inputs: [],
  2878      name: 'MESSAGE_VERSION',
  2879      outputs: [{ name: '', internalType: 'uint16', type: 'uint16' }],
  2880    },
  2881    {
  2882      stateMutability: 'view',
  2883      type: 'function',
  2884      inputs: [],
  2885      name: 'MIN_GAS_CALLDATA_OVERHEAD',
  2886      outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }],
  2887    },
  2888    {
  2889      stateMutability: 'view',
  2890      type: 'function',
  2891      inputs: [],
  2892      name: 'MIN_GAS_DYNAMIC_OVERHEAD_DENOMINATOR',
  2893      outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }],
  2894    },
  2895    {
  2896      stateMutability: 'view',
  2897      type: 'function',
  2898      inputs: [],
  2899      name: 'MIN_GAS_DYNAMIC_OVERHEAD_NUMERATOR',
  2900      outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }],
  2901    },
  2902    {
  2903      stateMutability: 'view',
  2904      type: 'function',
  2905      inputs: [],
  2906      name: 'OTHER_MESSENGER',
  2907      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  2908    },
  2909    {
  2910      stateMutability: 'view',
  2911      type: 'function',
  2912      inputs: [],
  2913      name: 'PORTAL',
  2914      outputs: [
  2915        { name: '', internalType: 'contract OptimismPortal', type: 'address' },
  2916      ],
  2917    },
  2918    {
  2919      stateMutability: 'view',
  2920      type: 'function',
  2921      inputs: [],
  2922      name: 'RELAY_CALL_OVERHEAD',
  2923      outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }],
  2924    },
  2925    {
  2926      stateMutability: 'view',
  2927      type: 'function',
  2928      inputs: [],
  2929      name: 'RELAY_CONSTANT_OVERHEAD',
  2930      outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }],
  2931    },
  2932    {
  2933      stateMutability: 'view',
  2934      type: 'function',
  2935      inputs: [],
  2936      name: 'RELAY_GAS_CHECK_BUFFER',
  2937      outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }],
  2938    },
  2939    {
  2940      stateMutability: 'view',
  2941      type: 'function',
  2942      inputs: [],
  2943      name: 'RELAY_RESERVED_GAS',
  2944      outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }],
  2945    },
  2946    {
  2947      stateMutability: 'pure',
  2948      type: 'function',
  2949      inputs: [
  2950        { name: '_message', internalType: 'bytes', type: 'bytes' },
  2951        { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' },
  2952      ],
  2953      name: 'baseGas',
  2954      outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }],
  2955    },
  2956    {
  2957      stateMutability: 'view',
  2958      type: 'function',
  2959      inputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
  2960      name: 'failedMessages',
  2961      outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
  2962    },
  2963    {
  2964      stateMutability: 'nonpayable',
  2965      type: 'function',
  2966      inputs: [
  2967        {
  2968          name: '_portal',
  2969          internalType: 'contract OptimismPortal',
  2970          type: 'address',
  2971        },
  2972      ],
  2973      name: 'initialize',
  2974      outputs: [],
  2975    },
  2976    {
  2977      stateMutability: 'view',
  2978      type: 'function',
  2979      inputs: [],
  2980      name: 'messageNonce',
  2981      outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
  2982    },
  2983    {
  2984      stateMutability: 'view',
  2985      type: 'function',
  2986      inputs: [],
  2987      name: 'portal',
  2988      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  2989    },
  2990    {
  2991      stateMutability: 'payable',
  2992      type: 'function',
  2993      inputs: [
  2994        { name: '_nonce', internalType: 'uint256', type: 'uint256' },
  2995        { name: '_sender', internalType: 'address', type: 'address' },
  2996        { name: '_target', internalType: 'address', type: 'address' },
  2997        { name: '_value', internalType: 'uint256', type: 'uint256' },
  2998        { name: '_minGasLimit', internalType: 'uint256', type: 'uint256' },
  2999        { name: '_message', internalType: 'bytes', type: 'bytes' },
  3000      ],
  3001      name: 'relayMessage',
  3002      outputs: [],
  3003    },
  3004    {
  3005      stateMutability: 'payable',
  3006      type: 'function',
  3007      inputs: [
  3008        { name: '_target', internalType: 'address', type: 'address' },
  3009        { name: '_message', internalType: 'bytes', type: 'bytes' },
  3010        { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' },
  3011      ],
  3012      name: 'sendMessage',
  3013      outputs: [],
  3014    },
  3015    {
  3016      stateMutability: 'view',
  3017      type: 'function',
  3018      inputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
  3019      name: 'successfulMessages',
  3020      outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
  3021    },
  3022    {
  3023      stateMutability: 'view',
  3024      type: 'function',
  3025      inputs: [],
  3026      name: 'version',
  3027      outputs: [{ name: '', internalType: 'string', type: 'string' }],
  3028    },
  3029    {
  3030      stateMutability: 'view',
  3031      type: 'function',
  3032      inputs: [],
  3033      name: 'xDomainMessageSender',
  3034      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  3035    },
  3036  ] as const
  3037  
  3038  /**
  3039   * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x25ace71c97B33Cc4729CF772ae268934F7ab5fA1)
  3040   * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x5086d1eEF304eb5284A0f6720f79403b4e9bE294)
  3041   */
  3042  export const l1CrossDomainMessengerAddress = {
  3043    1: '0x25ace71c97B33Cc4729CF772ae268934F7ab5fA1',
  3044    5: '0x5086d1eEF304eb5284A0f6720f79403b4e9bE294',
  3045  } as const
  3046  
  3047  /**
  3048   * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x25ace71c97B33Cc4729CF772ae268934F7ab5fA1)
  3049   * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x5086d1eEF304eb5284A0f6720f79403b4e9bE294)
  3050   */
  3051  export const l1CrossDomainMessengerConfig = {
  3052    address: l1CrossDomainMessengerAddress,
  3053    abi: l1CrossDomainMessengerABI,
  3054  } as const
  3055  
  3056  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  3057  // L1ERC721Bridge
  3058  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  3059  
  3060  /**
  3061   * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x5a7749f83b81B301cAb5f48EB8516B986DAef23D)
  3062   * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x8DD330DdE8D9898d43b4dc840Da27A07dF91b3c9)
  3063   */
  3064  export const l1Erc721BridgeABI = [
  3065    { stateMutability: 'nonpayable', type: 'constructor', inputs: [] },
  3066    {
  3067      type: 'event',
  3068      anonymous: false,
  3069      inputs: [
  3070        {
  3071          name: 'localToken',
  3072          internalType: 'address',
  3073          type: 'address',
  3074          indexed: true,
  3075        },
  3076        {
  3077          name: 'remoteToken',
  3078          internalType: 'address',
  3079          type: 'address',
  3080          indexed: true,
  3081        },
  3082        { name: 'from', internalType: 'address', type: 'address', indexed: true },
  3083        { name: 'to', internalType: 'address', type: 'address', indexed: false },
  3084        {
  3085          name: 'tokenId',
  3086          internalType: 'uint256',
  3087          type: 'uint256',
  3088          indexed: false,
  3089        },
  3090        {
  3091          name: 'extraData',
  3092          internalType: 'bytes',
  3093          type: 'bytes',
  3094          indexed: false,
  3095        },
  3096      ],
  3097      name: 'ERC721BridgeFinalized',
  3098    },
  3099    {
  3100      type: 'event',
  3101      anonymous: false,
  3102      inputs: [
  3103        {
  3104          name: 'localToken',
  3105          internalType: 'address',
  3106          type: 'address',
  3107          indexed: true,
  3108        },
  3109        {
  3110          name: 'remoteToken',
  3111          internalType: 'address',
  3112          type: 'address',
  3113          indexed: true,
  3114        },
  3115        { name: 'from', internalType: 'address', type: 'address', indexed: true },
  3116        { name: 'to', internalType: 'address', type: 'address', indexed: false },
  3117        {
  3118          name: 'tokenId',
  3119          internalType: 'uint256',
  3120          type: 'uint256',
  3121          indexed: false,
  3122        },
  3123        {
  3124          name: 'extraData',
  3125          internalType: 'bytes',
  3126          type: 'bytes',
  3127          indexed: false,
  3128        },
  3129      ],
  3130      name: 'ERC721BridgeInitiated',
  3131    },
  3132    {
  3133      type: 'event',
  3134      anonymous: false,
  3135      inputs: [
  3136        { name: 'version', internalType: 'uint8', type: 'uint8', indexed: false },
  3137      ],
  3138      name: 'Initialized',
  3139    },
  3140    {
  3141      stateMutability: 'view',
  3142      type: 'function',
  3143      inputs: [],
  3144      name: 'MESSENGER',
  3145      outputs: [
  3146        {
  3147          name: '',
  3148          internalType: 'contract CrossDomainMessenger',
  3149          type: 'address',
  3150        },
  3151      ],
  3152    },
  3153    {
  3154      stateMutability: 'view',
  3155      type: 'function',
  3156      inputs: [],
  3157      name: 'OTHER_BRIDGE',
  3158      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  3159    },
  3160    {
  3161      stateMutability: 'nonpayable',
  3162      type: 'function',
  3163      inputs: [
  3164        { name: '_localToken', internalType: 'address', type: 'address' },
  3165        { name: '_remoteToken', internalType: 'address', type: 'address' },
  3166        { name: '_tokenId', internalType: 'uint256', type: 'uint256' },
  3167        { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' },
  3168        { name: '_extraData', internalType: 'bytes', type: 'bytes' },
  3169      ],
  3170      name: 'bridgeERC721',
  3171      outputs: [],
  3172    },
  3173    {
  3174      stateMutability: 'nonpayable',
  3175      type: 'function',
  3176      inputs: [
  3177        { name: '_localToken', internalType: 'address', type: 'address' },
  3178        { name: '_remoteToken', internalType: 'address', type: 'address' },
  3179        { name: '_to', internalType: 'address', type: 'address' },
  3180        { name: '_tokenId', internalType: 'uint256', type: 'uint256' },
  3181        { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' },
  3182        { name: '_extraData', internalType: 'bytes', type: 'bytes' },
  3183      ],
  3184      name: 'bridgeERC721To',
  3185      outputs: [],
  3186    },
  3187    {
  3188      stateMutability: 'view',
  3189      type: 'function',
  3190      inputs: [
  3191        { name: '', internalType: 'address', type: 'address' },
  3192        { name: '', internalType: 'address', type: 'address' },
  3193        { name: '', internalType: 'uint256', type: 'uint256' },
  3194      ],
  3195      name: 'deposits',
  3196      outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
  3197    },
  3198    {
  3199      stateMutability: 'nonpayable',
  3200      type: 'function',
  3201      inputs: [
  3202        { name: '_localToken', internalType: 'address', type: 'address' },
  3203        { name: '_remoteToken', internalType: 'address', type: 'address' },
  3204        { name: '_from', internalType: 'address', type: 'address' },
  3205        { name: '_to', internalType: 'address', type: 'address' },
  3206        { name: '_tokenId', internalType: 'uint256', type: 'uint256' },
  3207        { name: '_extraData', internalType: 'bytes', type: 'bytes' },
  3208      ],
  3209      name: 'finalizeBridgeERC721',
  3210      outputs: [],
  3211    },
  3212    {
  3213      stateMutability: 'nonpayable',
  3214      type: 'function',
  3215      inputs: [
  3216        {
  3217          name: '_messenger',
  3218          internalType: 'contract CrossDomainMessenger',
  3219          type: 'address',
  3220        },
  3221      ],
  3222      name: 'initialize',
  3223      outputs: [],
  3224    },
  3225    {
  3226      stateMutability: 'view',
  3227      type: 'function',
  3228      inputs: [],
  3229      name: 'messenger',
  3230      outputs: [
  3231        {
  3232          name: '',
  3233          internalType: 'contract CrossDomainMessenger',
  3234          type: 'address',
  3235        },
  3236      ],
  3237    },
  3238    {
  3239      stateMutability: 'view',
  3240      type: 'function',
  3241      inputs: [],
  3242      name: 'otherBridge',
  3243      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  3244    },
  3245    {
  3246      stateMutability: 'view',
  3247      type: 'function',
  3248      inputs: [],
  3249      name: 'version',
  3250      outputs: [{ name: '', internalType: 'string', type: 'string' }],
  3251    },
  3252  ] as const
  3253  
  3254  /**
  3255   * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x5a7749f83b81B301cAb5f48EB8516B986DAef23D)
  3256   * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x8DD330DdE8D9898d43b4dc840Da27A07dF91b3c9)
  3257   */
  3258  export const l1Erc721BridgeAddress = {
  3259    1: '0x5a7749f83b81B301cAb5f48EB8516B986DAef23D',
  3260    5: '0x8DD330DdE8D9898d43b4dc840Da27A07dF91b3c9',
  3261  } as const
  3262  
  3263  /**
  3264   * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x5a7749f83b81B301cAb5f48EB8516B986DAef23D)
  3265   * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x8DD330DdE8D9898d43b4dc840Da27A07dF91b3c9)
  3266   */
  3267  export const l1Erc721BridgeConfig = {
  3268    address: l1Erc721BridgeAddress,
  3269    abi: l1Erc721BridgeABI,
  3270  } as const
  3271  
  3272  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  3273  // L1FeeVault
  3274  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  3275  
  3276  /**
  3277   * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x420000000000000000000000000000000000001a)
  3278   */
  3279  export const l1FeeVaultABI = [
  3280    {
  3281      stateMutability: 'nonpayable',
  3282      type: 'constructor',
  3283      inputs: [{ name: '_recipient', internalType: 'address', type: 'address' }],
  3284    },
  3285    {
  3286      type: 'event',
  3287      anonymous: false,
  3288      inputs: [
  3289        {
  3290          name: 'value',
  3291          internalType: 'uint256',
  3292          type: 'uint256',
  3293          indexed: false,
  3294        },
  3295        { name: 'to', internalType: 'address', type: 'address', indexed: false },
  3296        {
  3297          name: 'from',
  3298          internalType: 'address',
  3299          type: 'address',
  3300          indexed: false,
  3301        },
  3302      ],
  3303      name: 'Withdrawal',
  3304    },
  3305    {
  3306      stateMutability: 'view',
  3307      type: 'function',
  3308      inputs: [],
  3309      name: 'MIN_WITHDRAWAL_AMOUNT',
  3310      outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
  3311    },
  3312    {
  3313      stateMutability: 'view',
  3314      type: 'function',
  3315      inputs: [],
  3316      name: 'RECIPIENT',
  3317      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  3318    },
  3319    {
  3320      stateMutability: 'view',
  3321      type: 'function',
  3322      inputs: [],
  3323      name: 'totalProcessed',
  3324      outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
  3325    },
  3326    {
  3327      stateMutability: 'view',
  3328      type: 'function',
  3329      inputs: [],
  3330      name: 'version',
  3331      outputs: [{ name: '', internalType: 'string', type: 'string' }],
  3332    },
  3333    {
  3334      stateMutability: 'nonpayable',
  3335      type: 'function',
  3336      inputs: [],
  3337      name: 'withdraw',
  3338      outputs: [],
  3339    },
  3340    { stateMutability: 'payable', type: 'receive' },
  3341  ] as const
  3342  
  3343  /**
  3344   * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x420000000000000000000000000000000000001a)
  3345   */
  3346  export const l1FeeVaultAddress = {
  3347    420: '0x420000000000000000000000000000000000001A',
  3348  } as const
  3349  
  3350  /**
  3351   * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x420000000000000000000000000000000000001a)
  3352   */
  3353  export const l1FeeVaultConfig = {
  3354    address: l1FeeVaultAddress,
  3355    abi: l1FeeVaultABI,
  3356  } as const
  3357  
  3358  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  3359  // L1StandardBridge
  3360  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  3361  
  3362  /**
  3363   * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x99C9fc46f92E8a1c0deC1b1747d010903E884bE1)
  3364   * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x636Af16bf2f682dD3109e60102b8E1A089FedAa8)
  3365   */
  3366  export const l1StandardBridgeABI = [
  3367    { stateMutability: 'nonpayable', type: 'constructor', inputs: [] },
  3368    {
  3369      type: 'event',
  3370      anonymous: false,
  3371      inputs: [
  3372        {
  3373          name: 'localToken',
  3374          internalType: 'address',
  3375          type: 'address',
  3376          indexed: true,
  3377        },
  3378        {
  3379          name: 'remoteToken',
  3380          internalType: 'address',
  3381          type: 'address',
  3382          indexed: true,
  3383        },
  3384        { name: 'from', internalType: 'address', type: 'address', indexed: true },
  3385        { name: 'to', internalType: 'address', type: 'address', indexed: false },
  3386        {
  3387          name: 'amount',
  3388          internalType: 'uint256',
  3389          type: 'uint256',
  3390          indexed: false,
  3391        },
  3392        {
  3393          name: 'extraData',
  3394          internalType: 'bytes',
  3395          type: 'bytes',
  3396          indexed: false,
  3397        },
  3398      ],
  3399      name: 'ERC20BridgeFinalized',
  3400    },
  3401    {
  3402      type: 'event',
  3403      anonymous: false,
  3404      inputs: [
  3405        {
  3406          name: 'localToken',
  3407          internalType: 'address',
  3408          type: 'address',
  3409          indexed: true,
  3410        },
  3411        {
  3412          name: 'remoteToken',
  3413          internalType: 'address',
  3414          type: 'address',
  3415          indexed: true,
  3416        },
  3417        { name: 'from', internalType: 'address', type: 'address', indexed: true },
  3418        { name: 'to', internalType: 'address', type: 'address', indexed: false },
  3419        {
  3420          name: 'amount',
  3421          internalType: 'uint256',
  3422          type: 'uint256',
  3423          indexed: false,
  3424        },
  3425        {
  3426          name: 'extraData',
  3427          internalType: 'bytes',
  3428          type: 'bytes',
  3429          indexed: false,
  3430        },
  3431      ],
  3432      name: 'ERC20BridgeInitiated',
  3433    },
  3434    {
  3435      type: 'event',
  3436      anonymous: false,
  3437      inputs: [
  3438        {
  3439          name: 'l1Token',
  3440          internalType: 'address',
  3441          type: 'address',
  3442          indexed: true,
  3443        },
  3444        {
  3445          name: 'l2Token',
  3446          internalType: 'address',
  3447          type: 'address',
  3448          indexed: true,
  3449        },
  3450        { name: 'from', internalType: 'address', type: 'address', indexed: true },
  3451        { name: 'to', internalType: 'address', type: 'address', indexed: false },
  3452        {
  3453          name: 'amount',
  3454          internalType: 'uint256',
  3455          type: 'uint256',
  3456          indexed: false,
  3457        },
  3458        {
  3459          name: 'extraData',
  3460          internalType: 'bytes',
  3461          type: 'bytes',
  3462          indexed: false,
  3463        },
  3464      ],
  3465      name: 'ERC20DepositInitiated',
  3466    },
  3467    {
  3468      type: 'event',
  3469      anonymous: false,
  3470      inputs: [
  3471        {
  3472          name: 'l1Token',
  3473          internalType: 'address',
  3474          type: 'address',
  3475          indexed: true,
  3476        },
  3477        {
  3478          name: 'l2Token',
  3479          internalType: 'address',
  3480          type: 'address',
  3481          indexed: true,
  3482        },
  3483        { name: 'from', internalType: 'address', type: 'address', indexed: true },
  3484        { name: 'to', internalType: 'address', type: 'address', indexed: false },
  3485        {
  3486          name: 'amount',
  3487          internalType: 'uint256',
  3488          type: 'uint256',
  3489          indexed: false,
  3490        },
  3491        {
  3492          name: 'extraData',
  3493          internalType: 'bytes',
  3494          type: 'bytes',
  3495          indexed: false,
  3496        },
  3497      ],
  3498      name: 'ERC20WithdrawalFinalized',
  3499    },
  3500    {
  3501      type: 'event',
  3502      anonymous: false,
  3503      inputs: [
  3504        { name: 'from', internalType: 'address', type: 'address', indexed: true },
  3505        { name: 'to', internalType: 'address', type: 'address', indexed: true },
  3506        {
  3507          name: 'amount',
  3508          internalType: 'uint256',
  3509          type: 'uint256',
  3510          indexed: false,
  3511        },
  3512        {
  3513          name: 'extraData',
  3514          internalType: 'bytes',
  3515          type: 'bytes',
  3516          indexed: false,
  3517        },
  3518      ],
  3519      name: 'ETHBridgeFinalized',
  3520    },
  3521    {
  3522      type: 'event',
  3523      anonymous: false,
  3524      inputs: [
  3525        { name: 'from', internalType: 'address', type: 'address', indexed: true },
  3526        { name: 'to', internalType: 'address', type: 'address', indexed: true },
  3527        {
  3528          name: 'amount',
  3529          internalType: 'uint256',
  3530          type: 'uint256',
  3531          indexed: false,
  3532        },
  3533        {
  3534          name: 'extraData',
  3535          internalType: 'bytes',
  3536          type: 'bytes',
  3537          indexed: false,
  3538        },
  3539      ],
  3540      name: 'ETHBridgeInitiated',
  3541    },
  3542    {
  3543      type: 'event',
  3544      anonymous: false,
  3545      inputs: [
  3546        { name: 'from', internalType: 'address', type: 'address', indexed: true },
  3547        { name: 'to', internalType: 'address', type: 'address', indexed: true },
  3548        {
  3549          name: 'amount',
  3550          internalType: 'uint256',
  3551          type: 'uint256',
  3552          indexed: false,
  3553        },
  3554        {
  3555          name: 'extraData',
  3556          internalType: 'bytes',
  3557          type: 'bytes',
  3558          indexed: false,
  3559        },
  3560      ],
  3561      name: 'ETHDepositInitiated',
  3562    },
  3563    {
  3564      type: 'event',
  3565      anonymous: false,
  3566      inputs: [
  3567        { name: 'from', internalType: 'address', type: 'address', indexed: true },
  3568        { name: 'to', internalType: 'address', type: 'address', indexed: true },
  3569        {
  3570          name: 'amount',
  3571          internalType: 'uint256',
  3572          type: 'uint256',
  3573          indexed: false,
  3574        },
  3575        {
  3576          name: 'extraData',
  3577          internalType: 'bytes',
  3578          type: 'bytes',
  3579          indexed: false,
  3580        },
  3581      ],
  3582      name: 'ETHWithdrawalFinalized',
  3583    },
  3584    {
  3585      type: 'event',
  3586      anonymous: false,
  3587      inputs: [
  3588        { name: 'version', internalType: 'uint8', type: 'uint8', indexed: false },
  3589      ],
  3590      name: 'Initialized',
  3591    },
  3592    {
  3593      stateMutability: 'view',
  3594      type: 'function',
  3595      inputs: [],
  3596      name: 'MESSENGER',
  3597      outputs: [
  3598        {
  3599          name: '',
  3600          internalType: 'contract CrossDomainMessenger',
  3601          type: 'address',
  3602        },
  3603      ],
  3604    },
  3605    {
  3606      stateMutability: 'view',
  3607      type: 'function',
  3608      inputs: [],
  3609      name: 'OTHER_BRIDGE',
  3610      outputs: [
  3611        { name: '', internalType: 'contract StandardBridge', type: 'address' },
  3612      ],
  3613    },
  3614    {
  3615      stateMutability: 'nonpayable',
  3616      type: 'function',
  3617      inputs: [
  3618        { name: '_localToken', internalType: 'address', type: 'address' },
  3619        { name: '_remoteToken', internalType: 'address', type: 'address' },
  3620        { name: '_amount', internalType: 'uint256', type: 'uint256' },
  3621        { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' },
  3622        { name: '_extraData', internalType: 'bytes', type: 'bytes' },
  3623      ],
  3624      name: 'bridgeERC20',
  3625      outputs: [],
  3626    },
  3627    {
  3628      stateMutability: 'nonpayable',
  3629      type: 'function',
  3630      inputs: [
  3631        { name: '_localToken', internalType: 'address', type: 'address' },
  3632        { name: '_remoteToken', internalType: 'address', type: 'address' },
  3633        { name: '_to', internalType: 'address', type: 'address' },
  3634        { name: '_amount', internalType: 'uint256', type: 'uint256' },
  3635        { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' },
  3636        { name: '_extraData', internalType: 'bytes', type: 'bytes' },
  3637      ],
  3638      name: 'bridgeERC20To',
  3639      outputs: [],
  3640    },
  3641    {
  3642      stateMutability: 'payable',
  3643      type: 'function',
  3644      inputs: [
  3645        { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' },
  3646        { name: '_extraData', internalType: 'bytes', type: 'bytes' },
  3647      ],
  3648      name: 'bridgeETH',
  3649      outputs: [],
  3650    },
  3651    {
  3652      stateMutability: 'payable',
  3653      type: 'function',
  3654      inputs: [
  3655        { name: '_to', internalType: 'address', type: 'address' },
  3656        { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' },
  3657        { name: '_extraData', internalType: 'bytes', type: 'bytes' },
  3658      ],
  3659      name: 'bridgeETHTo',
  3660      outputs: [],
  3661    },
  3662    {
  3663      stateMutability: 'nonpayable',
  3664      type: 'function',
  3665      inputs: [
  3666        { name: '_l1Token', internalType: 'address', type: 'address' },
  3667        { name: '_l2Token', internalType: 'address', type: 'address' },
  3668        { name: '_amount', internalType: 'uint256', type: 'uint256' },
  3669        { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' },
  3670        { name: '_extraData', internalType: 'bytes', type: 'bytes' },
  3671      ],
  3672      name: 'depositERC20',
  3673      outputs: [],
  3674    },
  3675    {
  3676      stateMutability: 'nonpayable',
  3677      type: 'function',
  3678      inputs: [
  3679        { name: '_l1Token', internalType: 'address', type: 'address' },
  3680        { name: '_l2Token', internalType: 'address', type: 'address' },
  3681        { name: '_to', internalType: 'address', type: 'address' },
  3682        { name: '_amount', internalType: 'uint256', type: 'uint256' },
  3683        { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' },
  3684        { name: '_extraData', internalType: 'bytes', type: 'bytes' },
  3685      ],
  3686      name: 'depositERC20To',
  3687      outputs: [],
  3688    },
  3689    {
  3690      stateMutability: 'payable',
  3691      type: 'function',
  3692      inputs: [
  3693        { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' },
  3694        { name: '_extraData', internalType: 'bytes', type: 'bytes' },
  3695      ],
  3696      name: 'depositETH',
  3697      outputs: [],
  3698    },
  3699    {
  3700      stateMutability: 'payable',
  3701      type: 'function',
  3702      inputs: [
  3703        { name: '_to', internalType: 'address', type: 'address' },
  3704        { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' },
  3705        { name: '_extraData', internalType: 'bytes', type: 'bytes' },
  3706      ],
  3707      name: 'depositETHTo',
  3708      outputs: [],
  3709    },
  3710    {
  3711      stateMutability: 'view',
  3712      type: 'function',
  3713      inputs: [
  3714        { name: '', internalType: 'address', type: 'address' },
  3715        { name: '', internalType: 'address', type: 'address' },
  3716      ],
  3717      name: 'deposits',
  3718      outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
  3719    },
  3720    {
  3721      stateMutability: 'nonpayable',
  3722      type: 'function',
  3723      inputs: [
  3724        { name: '_localToken', internalType: 'address', type: 'address' },
  3725        { name: '_remoteToken', internalType: 'address', type: 'address' },
  3726        { name: '_from', internalType: 'address', type: 'address' },
  3727        { name: '_to', internalType: 'address', type: 'address' },
  3728        { name: '_amount', internalType: 'uint256', type: 'uint256' },
  3729        { name: '_extraData', internalType: 'bytes', type: 'bytes' },
  3730      ],
  3731      name: 'finalizeBridgeERC20',
  3732      outputs: [],
  3733    },
  3734    {
  3735      stateMutability: 'payable',
  3736      type: 'function',
  3737      inputs: [
  3738        { name: '_from', internalType: 'address', type: 'address' },
  3739        { name: '_to', internalType: 'address', type: 'address' },
  3740        { name: '_amount', internalType: 'uint256', type: 'uint256' },
  3741        { name: '_extraData', internalType: 'bytes', type: 'bytes' },
  3742      ],
  3743      name: 'finalizeBridgeETH',
  3744      outputs: [],
  3745    },
  3746    {
  3747      stateMutability: 'nonpayable',
  3748      type: 'function',
  3749      inputs: [
  3750        { name: '_l1Token', internalType: 'address', type: 'address' },
  3751        { name: '_l2Token', internalType: 'address', type: 'address' },
  3752        { name: '_from', internalType: 'address', type: 'address' },
  3753        { name: '_to', internalType: 'address', type: 'address' },
  3754        { name: '_amount', internalType: 'uint256', type: 'uint256' },
  3755        { name: '_extraData', internalType: 'bytes', type: 'bytes' },
  3756      ],
  3757      name: 'finalizeERC20Withdrawal',
  3758      outputs: [],
  3759    },
  3760    {
  3761      stateMutability: 'payable',
  3762      type: 'function',
  3763      inputs: [
  3764        { name: '_from', internalType: 'address', type: 'address' },
  3765        { name: '_to', internalType: 'address', type: 'address' },
  3766        { name: '_amount', internalType: 'uint256', type: 'uint256' },
  3767        { name: '_extraData', internalType: 'bytes', type: 'bytes' },
  3768      ],
  3769      name: 'finalizeETHWithdrawal',
  3770      outputs: [],
  3771    },
  3772    {
  3773      stateMutability: 'nonpayable',
  3774      type: 'function',
  3775      inputs: [
  3776        {
  3777          name: '_messenger',
  3778          internalType: 'contract CrossDomainMessenger',
  3779          type: 'address',
  3780        },
  3781      ],
  3782      name: 'initialize',
  3783      outputs: [],
  3784    },
  3785    {
  3786      stateMutability: 'view',
  3787      type: 'function',
  3788      inputs: [],
  3789      name: 'l2TokenBridge',
  3790      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  3791    },
  3792    {
  3793      stateMutability: 'view',
  3794      type: 'function',
  3795      inputs: [],
  3796      name: 'messenger',
  3797      outputs: [
  3798        {
  3799          name: '',
  3800          internalType: 'contract CrossDomainMessenger',
  3801          type: 'address',
  3802        },
  3803      ],
  3804    },
  3805    {
  3806      stateMutability: 'view',
  3807      type: 'function',
  3808      inputs: [],
  3809      name: 'otherBridge',
  3810      outputs: [
  3811        { name: '', internalType: 'contract StandardBridge', type: 'address' },
  3812      ],
  3813    },
  3814    {
  3815      stateMutability: 'view',
  3816      type: 'function',
  3817      inputs: [],
  3818      name: 'version',
  3819      outputs: [{ name: '', internalType: 'string', type: 'string' }],
  3820    },
  3821    { stateMutability: 'payable', type: 'receive' },
  3822  ] as const
  3823  
  3824  /**
  3825   * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x99C9fc46f92E8a1c0deC1b1747d010903E884bE1)
  3826   * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x636Af16bf2f682dD3109e60102b8E1A089FedAa8)
  3827   */
  3828  export const l1StandardBridgeAddress = {
  3829    1: '0x99C9fc46f92E8a1c0deC1b1747d010903E884bE1',
  3830    5: '0x636Af16bf2f682dD3109e60102b8E1A089FedAa8',
  3831  } as const
  3832  
  3833  /**
  3834   * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x99C9fc46f92E8a1c0deC1b1747d010903E884bE1)
  3835   * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x636Af16bf2f682dD3109e60102b8E1A089FedAa8)
  3836   */
  3837  export const l1StandardBridgeConfig = {
  3838    address: l1StandardBridgeAddress,
  3839    abi: l1StandardBridgeABI,
  3840  } as const
  3841  
  3842  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  3843  // L2CrossDomainMessenger
  3844  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  3845  
  3846  /**
  3847   * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000007)
  3848   */
  3849  export const l2CrossDomainMessengerABI = [
  3850    {
  3851      stateMutability: 'nonpayable',
  3852      type: 'constructor',
  3853      inputs: [
  3854        {
  3855          name: '_l1CrossDomainMessenger',
  3856          internalType: 'address',
  3857          type: 'address',
  3858        },
  3859      ],
  3860    },
  3861    {
  3862      type: 'event',
  3863      anonymous: false,
  3864      inputs: [
  3865        {
  3866          name: 'msgHash',
  3867          internalType: 'bytes32',
  3868          type: 'bytes32',
  3869          indexed: true,
  3870        },
  3871      ],
  3872      name: 'FailedRelayedMessage',
  3873    },
  3874    {
  3875      type: 'event',
  3876      anonymous: false,
  3877      inputs: [
  3878        { name: 'version', internalType: 'uint8', type: 'uint8', indexed: false },
  3879      ],
  3880      name: 'Initialized',
  3881    },
  3882    {
  3883      type: 'event',
  3884      anonymous: false,
  3885      inputs: [
  3886        {
  3887          name: 'msgHash',
  3888          internalType: 'bytes32',
  3889          type: 'bytes32',
  3890          indexed: true,
  3891        },
  3892      ],
  3893      name: 'RelayedMessage',
  3894    },
  3895    {
  3896      type: 'event',
  3897      anonymous: false,
  3898      inputs: [
  3899        {
  3900          name: 'target',
  3901          internalType: 'address',
  3902          type: 'address',
  3903          indexed: true,
  3904        },
  3905        {
  3906          name: 'sender',
  3907          internalType: 'address',
  3908          type: 'address',
  3909          indexed: false,
  3910        },
  3911        { name: 'message', internalType: 'bytes', type: 'bytes', indexed: false },
  3912        {
  3913          name: 'messageNonce',
  3914          internalType: 'uint256',
  3915          type: 'uint256',
  3916          indexed: false,
  3917        },
  3918        {
  3919          name: 'gasLimit',
  3920          internalType: 'uint256',
  3921          type: 'uint256',
  3922          indexed: false,
  3923        },
  3924      ],
  3925      name: 'SentMessage',
  3926    },
  3927    {
  3928      type: 'event',
  3929      anonymous: false,
  3930      inputs: [
  3931        {
  3932          name: 'sender',
  3933          internalType: 'address',
  3934          type: 'address',
  3935          indexed: true,
  3936        },
  3937        {
  3938          name: 'value',
  3939          internalType: 'uint256',
  3940          type: 'uint256',
  3941          indexed: false,
  3942        },
  3943      ],
  3944      name: 'SentMessageExtension1',
  3945    },
  3946    {
  3947      stateMutability: 'view',
  3948      type: 'function',
  3949      inputs: [],
  3950      name: 'MESSAGE_VERSION',
  3951      outputs: [{ name: '', internalType: 'uint16', type: 'uint16' }],
  3952    },
  3953    {
  3954      stateMutability: 'view',
  3955      type: 'function',
  3956      inputs: [],
  3957      name: 'MIN_GAS_CALLDATA_OVERHEAD',
  3958      outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }],
  3959    },
  3960    {
  3961      stateMutability: 'view',
  3962      type: 'function',
  3963      inputs: [],
  3964      name: 'MIN_GAS_DYNAMIC_OVERHEAD_DENOMINATOR',
  3965      outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }],
  3966    },
  3967    {
  3968      stateMutability: 'view',
  3969      type: 'function',
  3970      inputs: [],
  3971      name: 'MIN_GAS_DYNAMIC_OVERHEAD_NUMERATOR',
  3972      outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }],
  3973    },
  3974    {
  3975      stateMutability: 'view',
  3976      type: 'function',
  3977      inputs: [],
  3978      name: 'OTHER_MESSENGER',
  3979      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  3980    },
  3981    {
  3982      stateMutability: 'view',
  3983      type: 'function',
  3984      inputs: [],
  3985      name: 'RELAY_CALL_OVERHEAD',
  3986      outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }],
  3987    },
  3988    {
  3989      stateMutability: 'view',
  3990      type: 'function',
  3991      inputs: [],
  3992      name: 'RELAY_CONSTANT_OVERHEAD',
  3993      outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }],
  3994    },
  3995    {
  3996      stateMutability: 'view',
  3997      type: 'function',
  3998      inputs: [],
  3999      name: 'RELAY_GAS_CHECK_BUFFER',
  4000      outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }],
  4001    },
  4002    {
  4003      stateMutability: 'view',
  4004      type: 'function',
  4005      inputs: [],
  4006      name: 'RELAY_RESERVED_GAS',
  4007      outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }],
  4008    },
  4009    {
  4010      stateMutability: 'pure',
  4011      type: 'function',
  4012      inputs: [
  4013        { name: '_message', internalType: 'bytes', type: 'bytes' },
  4014        { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' },
  4015      ],
  4016      name: 'baseGas',
  4017      outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }],
  4018    },
  4019    {
  4020      stateMutability: 'view',
  4021      type: 'function',
  4022      inputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
  4023      name: 'failedMessages',
  4024      outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
  4025    },
  4026    {
  4027      stateMutability: 'nonpayable',
  4028      type: 'function',
  4029      inputs: [],
  4030      name: 'initialize',
  4031      outputs: [],
  4032    },
  4033    {
  4034      stateMutability: 'view',
  4035      type: 'function',
  4036      inputs: [],
  4037      name: 'l1CrossDomainMessenger',
  4038      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  4039    },
  4040    {
  4041      stateMutability: 'view',
  4042      type: 'function',
  4043      inputs: [],
  4044      name: 'messageNonce',
  4045      outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
  4046    },
  4047    {
  4048      stateMutability: 'payable',
  4049      type: 'function',
  4050      inputs: [
  4051        { name: '_nonce', internalType: 'uint256', type: 'uint256' },
  4052        { name: '_sender', internalType: 'address', type: 'address' },
  4053        { name: '_target', internalType: 'address', type: 'address' },
  4054        { name: '_value', internalType: 'uint256', type: 'uint256' },
  4055        { name: '_minGasLimit', internalType: 'uint256', type: 'uint256' },
  4056        { name: '_message', internalType: 'bytes', type: 'bytes' },
  4057      ],
  4058      name: 'relayMessage',
  4059      outputs: [],
  4060    },
  4061    {
  4062      stateMutability: 'payable',
  4063      type: 'function',
  4064      inputs: [
  4065        { name: '_target', internalType: 'address', type: 'address' },
  4066        { name: '_message', internalType: 'bytes', type: 'bytes' },
  4067        { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' },
  4068      ],
  4069      name: 'sendMessage',
  4070      outputs: [],
  4071    },
  4072    {
  4073      stateMutability: 'view',
  4074      type: 'function',
  4075      inputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
  4076      name: 'successfulMessages',
  4077      outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
  4078    },
  4079    {
  4080      stateMutability: 'view',
  4081      type: 'function',
  4082      inputs: [],
  4083      name: 'version',
  4084      outputs: [{ name: '', internalType: 'string', type: 'string' }],
  4085    },
  4086    {
  4087      stateMutability: 'view',
  4088      type: 'function',
  4089      inputs: [],
  4090      name: 'xDomainMessageSender',
  4091      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  4092    },
  4093  ] as const
  4094  
  4095  /**
  4096   * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000007)
  4097   */
  4098  export const l2CrossDomainMessengerAddress = {
  4099    420: '0x4200000000000000000000000000000000000007',
  4100  } as const
  4101  
  4102  /**
  4103   * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000007)
  4104   */
  4105  export const l2CrossDomainMessengerConfig = {
  4106    address: l2CrossDomainMessengerAddress,
  4107    abi: l2CrossDomainMessengerABI,
  4108  } as const
  4109  
  4110  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  4111  // L2ERC721Bridge
  4112  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  4113  
  4114  /**
  4115   * [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x4200000000000000000000000000000000000014)
  4116   */
  4117  export const l2Erc721BridgeABI = [
  4118    {
  4119      stateMutability: 'nonpayable',
  4120      type: 'constructor',
  4121      inputs: [
  4122        { name: '_messenger', internalType: 'address', type: 'address' },
  4123        { name: '_otherBridge', internalType: 'address', type: 'address' },
  4124      ],
  4125    },
  4126    {
  4127      type: 'event',
  4128      anonymous: false,
  4129      inputs: [
  4130        {
  4131          name: 'localToken',
  4132          internalType: 'address',
  4133          type: 'address',
  4134          indexed: true,
  4135        },
  4136        {
  4137          name: 'remoteToken',
  4138          internalType: 'address',
  4139          type: 'address',
  4140          indexed: true,
  4141        },
  4142        { name: 'from', internalType: 'address', type: 'address', indexed: true },
  4143        { name: 'to', internalType: 'address', type: 'address', indexed: false },
  4144        {
  4145          name: 'tokenId',
  4146          internalType: 'uint256',
  4147          type: 'uint256',
  4148          indexed: false,
  4149        },
  4150        {
  4151          name: 'extraData',
  4152          internalType: 'bytes',
  4153          type: 'bytes',
  4154          indexed: false,
  4155        },
  4156      ],
  4157      name: 'ERC721BridgeFinalized',
  4158    },
  4159    {
  4160      type: 'event',
  4161      anonymous: false,
  4162      inputs: [
  4163        {
  4164          name: 'localToken',
  4165          internalType: 'address',
  4166          type: 'address',
  4167          indexed: true,
  4168        },
  4169        {
  4170          name: 'remoteToken',
  4171          internalType: 'address',
  4172          type: 'address',
  4173          indexed: true,
  4174        },
  4175        { name: 'from', internalType: 'address', type: 'address', indexed: true },
  4176        { name: 'to', internalType: 'address', type: 'address', indexed: false },
  4177        {
  4178          name: 'tokenId',
  4179          internalType: 'uint256',
  4180          type: 'uint256',
  4181          indexed: false,
  4182        },
  4183        {
  4184          name: 'extraData',
  4185          internalType: 'bytes',
  4186          type: 'bytes',
  4187          indexed: false,
  4188        },
  4189      ],
  4190      name: 'ERC721BridgeInitiated',
  4191    },
  4192    {
  4193      stateMutability: 'nonpayable',
  4194      type: 'function',
  4195      inputs: [
  4196        { name: '_localToken', internalType: 'address', type: 'address' },
  4197        { name: '_remoteToken', internalType: 'address', type: 'address' },
  4198        { name: '_tokenId', internalType: 'uint256', type: 'uint256' },
  4199        { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' },
  4200        { name: '_extraData', internalType: 'bytes', type: 'bytes' },
  4201      ],
  4202      name: 'bridgeERC721',
  4203      outputs: [],
  4204    },
  4205    {
  4206      stateMutability: 'nonpayable',
  4207      type: 'function',
  4208      inputs: [
  4209        { name: '_localToken', internalType: 'address', type: 'address' },
  4210        { name: '_remoteToken', internalType: 'address', type: 'address' },
  4211        { name: '_to', internalType: 'address', type: 'address' },
  4212        { name: '_tokenId', internalType: 'uint256', type: 'uint256' },
  4213        { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' },
  4214        { name: '_extraData', internalType: 'bytes', type: 'bytes' },
  4215      ],
  4216      name: 'bridgeERC721To',
  4217      outputs: [],
  4218    },
  4219    {
  4220      stateMutability: 'nonpayable',
  4221      type: 'function',
  4222      inputs: [
  4223        { name: '_localToken', internalType: 'address', type: 'address' },
  4224        { name: '_remoteToken', internalType: 'address', type: 'address' },
  4225        { name: '_from', internalType: 'address', type: 'address' },
  4226        { name: '_to', internalType: 'address', type: 'address' },
  4227        { name: '_tokenId', internalType: 'uint256', type: 'uint256' },
  4228        { name: '_extraData', internalType: 'bytes', type: 'bytes' },
  4229      ],
  4230      name: 'finalizeBridgeERC721',
  4231      outputs: [],
  4232    },
  4233    {
  4234      stateMutability: 'view',
  4235      type: 'function',
  4236      inputs: [],
  4237      name: 'messenger',
  4238      outputs: [
  4239        {
  4240          name: '',
  4241          internalType: 'contract CrossDomainMessenger',
  4242          type: 'address',
  4243        },
  4244      ],
  4245    },
  4246    {
  4247      stateMutability: 'view',
  4248      type: 'function',
  4249      inputs: [],
  4250      name: 'otherBridge',
  4251      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  4252    },
  4253    {
  4254      stateMutability: 'view',
  4255      type: 'function',
  4256      inputs: [],
  4257      name: 'version',
  4258      outputs: [{ name: '', internalType: 'string', type: 'string' }],
  4259    },
  4260  ] as const
  4261  
  4262  /**
  4263   * [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x4200000000000000000000000000000000000014)
  4264   */
  4265  export const l2Erc721BridgeAddress = {
  4266    10: '0x4200000000000000000000000000000000000014',
  4267  } as const
  4268  
  4269  /**
  4270   * [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x4200000000000000000000000000000000000014)
  4271   */
  4272  export const l2Erc721BridgeConfig = {
  4273    address: l2Erc721BridgeAddress,
  4274    abi: l2Erc721BridgeABI,
  4275  } as const
  4276  
  4277  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  4278  // L2ERC721Bridge_optimism-goerli
  4279  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  4280  
  4281  /**
  4282   * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000014)
  4283   */
  4284  export const l2Erc721BridgeOptimismGoerliABI = [
  4285    {
  4286      stateMutability: 'nonpayable',
  4287      type: 'constructor',
  4288      inputs: [
  4289        { name: '_messenger', internalType: 'address', type: 'address' },
  4290        { name: '_otherBridge', internalType: 'address', type: 'address' },
  4291      ],
  4292    },
  4293    {
  4294      type: 'event',
  4295      anonymous: false,
  4296      inputs: [
  4297        {
  4298          name: 'localToken',
  4299          internalType: 'address',
  4300          type: 'address',
  4301          indexed: true,
  4302        },
  4303        {
  4304          name: 'remoteToken',
  4305          internalType: 'address',
  4306          type: 'address',
  4307          indexed: true,
  4308        },
  4309        { name: 'from', internalType: 'address', type: 'address', indexed: true },
  4310        { name: 'to', internalType: 'address', type: 'address', indexed: false },
  4311        {
  4312          name: 'tokenId',
  4313          internalType: 'uint256',
  4314          type: 'uint256',
  4315          indexed: false,
  4316        },
  4317        {
  4318          name: 'extraData',
  4319          internalType: 'bytes',
  4320          type: 'bytes',
  4321          indexed: false,
  4322        },
  4323      ],
  4324      name: 'ERC721BridgeFinalized',
  4325    },
  4326    {
  4327      type: 'event',
  4328      anonymous: false,
  4329      inputs: [
  4330        {
  4331          name: 'localToken',
  4332          internalType: 'address',
  4333          type: 'address',
  4334          indexed: true,
  4335        },
  4336        {
  4337          name: 'remoteToken',
  4338          internalType: 'address',
  4339          type: 'address',
  4340          indexed: true,
  4341        },
  4342        { name: 'from', internalType: 'address', type: 'address', indexed: true },
  4343        { name: 'to', internalType: 'address', type: 'address', indexed: false },
  4344        {
  4345          name: 'tokenId',
  4346          internalType: 'uint256',
  4347          type: 'uint256',
  4348          indexed: false,
  4349        },
  4350        {
  4351          name: 'extraData',
  4352          internalType: 'bytes',
  4353          type: 'bytes',
  4354          indexed: false,
  4355        },
  4356      ],
  4357      name: 'ERC721BridgeInitiated',
  4358    },
  4359    {
  4360      stateMutability: 'view',
  4361      type: 'function',
  4362      inputs: [],
  4363      name: 'MESSENGER',
  4364      outputs: [
  4365        {
  4366          name: '',
  4367          internalType: 'contract CrossDomainMessenger',
  4368          type: 'address',
  4369        },
  4370      ],
  4371    },
  4372    {
  4373      stateMutability: 'view',
  4374      type: 'function',
  4375      inputs: [],
  4376      name: 'OTHER_BRIDGE',
  4377      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  4378    },
  4379    {
  4380      stateMutability: 'nonpayable',
  4381      type: 'function',
  4382      inputs: [
  4383        { name: '_localToken', internalType: 'address', type: 'address' },
  4384        { name: '_remoteToken', internalType: 'address', type: 'address' },
  4385        { name: '_tokenId', internalType: 'uint256', type: 'uint256' },
  4386        { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' },
  4387        { name: '_extraData', internalType: 'bytes', type: 'bytes' },
  4388      ],
  4389      name: 'bridgeERC721',
  4390      outputs: [],
  4391    },
  4392    {
  4393      stateMutability: 'nonpayable',
  4394      type: 'function',
  4395      inputs: [
  4396        { name: '_localToken', internalType: 'address', type: 'address' },
  4397        { name: '_remoteToken', internalType: 'address', type: 'address' },
  4398        { name: '_to', internalType: 'address', type: 'address' },
  4399        { name: '_tokenId', internalType: 'uint256', type: 'uint256' },
  4400        { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' },
  4401        { name: '_extraData', internalType: 'bytes', type: 'bytes' },
  4402      ],
  4403      name: 'bridgeERC721To',
  4404      outputs: [],
  4405    },
  4406    {
  4407      stateMutability: 'nonpayable',
  4408      type: 'function',
  4409      inputs: [
  4410        { name: '_localToken', internalType: 'address', type: 'address' },
  4411        { name: '_remoteToken', internalType: 'address', type: 'address' },
  4412        { name: '_from', internalType: 'address', type: 'address' },
  4413        { name: '_to', internalType: 'address', type: 'address' },
  4414        { name: '_tokenId', internalType: 'uint256', type: 'uint256' },
  4415        { name: '_extraData', internalType: 'bytes', type: 'bytes' },
  4416      ],
  4417      name: 'finalizeBridgeERC721',
  4418      outputs: [],
  4419    },
  4420    {
  4421      stateMutability: 'view',
  4422      type: 'function',
  4423      inputs: [],
  4424      name: 'messenger',
  4425      outputs: [
  4426        {
  4427          name: '',
  4428          internalType: 'contract CrossDomainMessenger',
  4429          type: 'address',
  4430        },
  4431      ],
  4432    },
  4433    {
  4434      stateMutability: 'view',
  4435      type: 'function',
  4436      inputs: [],
  4437      name: 'otherBridge',
  4438      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  4439    },
  4440    {
  4441      stateMutability: 'view',
  4442      type: 'function',
  4443      inputs: [],
  4444      name: 'version',
  4445      outputs: [{ name: '', internalType: 'string', type: 'string' }],
  4446    },
  4447  ] as const
  4448  
  4449  /**
  4450   * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000014)
  4451   */
  4452  export const l2Erc721BridgeOptimismGoerliAddress = {
  4453    420: '0x4200000000000000000000000000000000000014',
  4454  } as const
  4455  
  4456  /**
  4457   * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000014)
  4458   */
  4459  export const l2Erc721BridgeOptimismGoerliConfig = {
  4460    address: l2Erc721BridgeOptimismGoerliAddress,
  4461    abi: l2Erc721BridgeOptimismGoerliABI,
  4462  } as const
  4463  
  4464  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  4465  // L2OutputOracle
  4466  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  4467  
  4468  /**
  4469   * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0xdfe97868233d1aa22e815a266982f2cf17685a27)
  4470   * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0xE6Dfba0953616Bacab0c9A8ecb3a9BBa77FC15c0)
  4471   */
  4472  export const l2OutputOracleABI = [
  4473    {
  4474      stateMutability: 'nonpayable',
  4475      type: 'constructor',
  4476      inputs: [
  4477        { name: '_submissionInterval', internalType: 'uint256', type: 'uint256' },
  4478        { name: '_l2BlockTime', internalType: 'uint256', type: 'uint256' },
  4479        {
  4480          name: '_finalizationPeriodSeconds',
  4481          internalType: 'uint256',
  4482          type: 'uint256',
  4483        },
  4484      ],
  4485    },
  4486    {
  4487      type: 'event',
  4488      anonymous: false,
  4489      inputs: [
  4490        { name: 'version', internalType: 'uint8', type: 'uint8', indexed: false },
  4491      ],
  4492      name: 'Initialized',
  4493    },
  4494    {
  4495      type: 'event',
  4496      anonymous: false,
  4497      inputs: [
  4498        {
  4499          name: 'outputRoot',
  4500          internalType: 'bytes32',
  4501          type: 'bytes32',
  4502          indexed: true,
  4503        },
  4504        {
  4505          name: 'l2OutputIndex',
  4506          internalType: 'uint256',
  4507          type: 'uint256',
  4508          indexed: true,
  4509        },
  4510        {
  4511          name: 'l2BlockNumber',
  4512          internalType: 'uint256',
  4513          type: 'uint256',
  4514          indexed: true,
  4515        },
  4516        {
  4517          name: 'l1Timestamp',
  4518          internalType: 'uint256',
  4519          type: 'uint256',
  4520          indexed: false,
  4521        },
  4522      ],
  4523      name: 'OutputProposed',
  4524    },
  4525    {
  4526      type: 'event',
  4527      anonymous: false,
  4528      inputs: [
  4529        {
  4530          name: 'prevNextOutputIndex',
  4531          internalType: 'uint256',
  4532          type: 'uint256',
  4533          indexed: true,
  4534        },
  4535        {
  4536          name: 'newNextOutputIndex',
  4537          internalType: 'uint256',
  4538          type: 'uint256',
  4539          indexed: true,
  4540        },
  4541      ],
  4542      name: 'OutputsDeleted',
  4543    },
  4544    {
  4545      stateMutability: 'view',
  4546      type: 'function',
  4547      inputs: [],
  4548      name: 'CHALLENGER',
  4549      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  4550    },
  4551    {
  4552      stateMutability: 'view',
  4553      type: 'function',
  4554      inputs: [],
  4555      name: 'FINALIZATION_PERIOD_SECONDS',
  4556      outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
  4557    },
  4558    {
  4559      stateMutability: 'view',
  4560      type: 'function',
  4561      inputs: [],
  4562      name: 'L2_BLOCK_TIME',
  4563      outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
  4564    },
  4565    {
  4566      stateMutability: 'view',
  4567      type: 'function',
  4568      inputs: [],
  4569      name: 'PROPOSER',
  4570      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  4571    },
  4572    {
  4573      stateMutability: 'view',
  4574      type: 'function',
  4575      inputs: [],
  4576      name: 'SUBMISSION_INTERVAL',
  4577      outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
  4578    },
  4579    {
  4580      stateMutability: 'view',
  4581      type: 'function',
  4582      inputs: [],
  4583      name: 'challenger',
  4584      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  4585    },
  4586    {
  4587      stateMutability: 'view',
  4588      type: 'function',
  4589      inputs: [
  4590        { name: '_l2BlockNumber', internalType: 'uint256', type: 'uint256' },
  4591      ],
  4592      name: 'computeL2Timestamp',
  4593      outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
  4594    },
  4595    {
  4596      stateMutability: 'nonpayable',
  4597      type: 'function',
  4598      inputs: [
  4599        { name: '_l2OutputIndex', internalType: 'uint256', type: 'uint256' },
  4600      ],
  4601      name: 'deleteL2Outputs',
  4602      outputs: [],
  4603    },
  4604    {
  4605      stateMutability: 'view',
  4606      type: 'function',
  4607      inputs: [],
  4608      name: 'finalizationPeriodSeconds',
  4609      outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
  4610    },
  4611    {
  4612      stateMutability: 'view',
  4613      type: 'function',
  4614      inputs: [
  4615        { name: '_l2OutputIndex', internalType: 'uint256', type: 'uint256' },
  4616      ],
  4617      name: 'getL2Output',
  4618      outputs: [
  4619        {
  4620          name: '',
  4621          internalType: 'struct Types.OutputProposal',
  4622          type: 'tuple',
  4623          components: [
  4624            { name: 'outputRoot', internalType: 'bytes32', type: 'bytes32' },
  4625            { name: 'timestamp', internalType: 'uint128', type: 'uint128' },
  4626            { name: 'l2BlockNumber', internalType: 'uint128', type: 'uint128' },
  4627          ],
  4628        },
  4629      ],
  4630    },
  4631    {
  4632      stateMutability: 'view',
  4633      type: 'function',
  4634      inputs: [
  4635        { name: '_l2BlockNumber', internalType: 'uint256', type: 'uint256' },
  4636      ],
  4637      name: 'getL2OutputAfter',
  4638      outputs: [
  4639        {
  4640          name: '',
  4641          internalType: 'struct Types.OutputProposal',
  4642          type: 'tuple',
  4643          components: [
  4644            { name: 'outputRoot', internalType: 'bytes32', type: 'bytes32' },
  4645            { name: 'timestamp', internalType: 'uint128', type: 'uint128' },
  4646            { name: 'l2BlockNumber', internalType: 'uint128', type: 'uint128' },
  4647          ],
  4648        },
  4649      ],
  4650    },
  4651    {
  4652      stateMutability: 'view',
  4653      type: 'function',
  4654      inputs: [
  4655        { name: '_l2BlockNumber', internalType: 'uint256', type: 'uint256' },
  4656      ],
  4657      name: 'getL2OutputIndexAfter',
  4658      outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
  4659    },
  4660    {
  4661      stateMutability: 'nonpayable',
  4662      type: 'function',
  4663      inputs: [
  4664        {
  4665          name: '_startingBlockNumber',
  4666          internalType: 'uint256',
  4667          type: 'uint256',
  4668        },
  4669        { name: '_startingTimestamp', internalType: 'uint256', type: 'uint256' },
  4670        { name: '_proposer', internalType: 'address', type: 'address' },
  4671        { name: '_challenger', internalType: 'address', type: 'address' },
  4672      ],
  4673      name: 'initialize',
  4674      outputs: [],
  4675    },
  4676    {
  4677      stateMutability: 'view',
  4678      type: 'function',
  4679      inputs: [],
  4680      name: 'l2BlockTime',
  4681      outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
  4682    },
  4683    {
  4684      stateMutability: 'view',
  4685      type: 'function',
  4686      inputs: [],
  4687      name: 'latestBlockNumber',
  4688      outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
  4689    },
  4690    {
  4691      stateMutability: 'view',
  4692      type: 'function',
  4693      inputs: [],
  4694      name: 'latestOutputIndex',
  4695      outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
  4696    },
  4697    {
  4698      stateMutability: 'view',
  4699      type: 'function',
  4700      inputs: [],
  4701      name: 'nextBlockNumber',
  4702      outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
  4703    },
  4704    {
  4705      stateMutability: 'view',
  4706      type: 'function',
  4707      inputs: [],
  4708      name: 'nextOutputIndex',
  4709      outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
  4710    },
  4711    {
  4712      stateMutability: 'payable',
  4713      type: 'function',
  4714      inputs: [
  4715        { name: '_outputRoot', internalType: 'bytes32', type: 'bytes32' },
  4716        { name: '_l2BlockNumber', internalType: 'uint256', type: 'uint256' },
  4717        { name: '_l1BlockHash', internalType: 'bytes32', type: 'bytes32' },
  4718        { name: '_l1BlockNumber', internalType: 'uint256', type: 'uint256' },
  4719      ],
  4720      name: 'proposeL2Output',
  4721      outputs: [],
  4722    },
  4723    {
  4724      stateMutability: 'view',
  4725      type: 'function',
  4726      inputs: [],
  4727      name: 'proposer',
  4728      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  4729    },
  4730    {
  4731      stateMutability: 'view',
  4732      type: 'function',
  4733      inputs: [],
  4734      name: 'startingBlockNumber',
  4735      outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
  4736    },
  4737    {
  4738      stateMutability: 'view',
  4739      type: 'function',
  4740      inputs: [],
  4741      name: 'startingTimestamp',
  4742      outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
  4743    },
  4744    {
  4745      stateMutability: 'view',
  4746      type: 'function',
  4747      inputs: [],
  4748      name: 'submissionInterval',
  4749      outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
  4750    },
  4751    {
  4752      stateMutability: 'view',
  4753      type: 'function',
  4754      inputs: [],
  4755      name: 'version',
  4756      outputs: [{ name: '', internalType: 'string', type: 'string' }],
  4757    },
  4758  ] as const
  4759  
  4760  /**
  4761   * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0xdfe97868233d1aa22e815a266982f2cf17685a27)
  4762   * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0xE6Dfba0953616Bacab0c9A8ecb3a9BBa77FC15c0)
  4763   */
  4764  export const l2OutputOracleAddress = {
  4765    1: '0xdfe97868233d1aa22e815a266982f2cf17685a27',
  4766    5: '0xE6Dfba0953616Bacab0c9A8ecb3a9BBa77FC15c0',
  4767  } as const
  4768  
  4769  /**
  4770   * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0xdfe97868233d1aa22e815a266982f2cf17685a27)
  4771   * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0xE6Dfba0953616Bacab0c9A8ecb3a9BBa77FC15c0)
  4772   */
  4773  export const l2OutputOracleConfig = {
  4774    address: l2OutputOracleAddress,
  4775    abi: l2OutputOracleABI,
  4776  } as const
  4777  
  4778  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  4779  // L2StandardBridge
  4780  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  4781  
  4782  /**
  4783   * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000010)
  4784   */
  4785  export const l2StandardBridgeABI = [
  4786    {
  4787      stateMutability: 'nonpayable',
  4788      type: 'constructor',
  4789      inputs: [
  4790        {
  4791          name: '_otherBridge',
  4792          internalType: 'address payable',
  4793          type: 'address',
  4794        },
  4795      ],
  4796    },
  4797    {
  4798      type: 'event',
  4799      anonymous: false,
  4800      inputs: [
  4801        {
  4802          name: 'l1Token',
  4803          internalType: 'address',
  4804          type: 'address',
  4805          indexed: true,
  4806        },
  4807        {
  4808          name: 'l2Token',
  4809          internalType: 'address',
  4810          type: 'address',
  4811          indexed: true,
  4812        },
  4813        { name: 'from', internalType: 'address', type: 'address', indexed: true },
  4814        { name: 'to', internalType: 'address', type: 'address', indexed: false },
  4815        {
  4816          name: 'amount',
  4817          internalType: 'uint256',
  4818          type: 'uint256',
  4819          indexed: false,
  4820        },
  4821        {
  4822          name: 'extraData',
  4823          internalType: 'bytes',
  4824          type: 'bytes',
  4825          indexed: false,
  4826        },
  4827      ],
  4828      name: 'DepositFinalized',
  4829    },
  4830    {
  4831      type: 'event',
  4832      anonymous: false,
  4833      inputs: [
  4834        {
  4835          name: 'localToken',
  4836          internalType: 'address',
  4837          type: 'address',
  4838          indexed: true,
  4839        },
  4840        {
  4841          name: 'remoteToken',
  4842          internalType: 'address',
  4843          type: 'address',
  4844          indexed: true,
  4845        },
  4846        { name: 'from', internalType: 'address', type: 'address', indexed: true },
  4847        { name: 'to', internalType: 'address', type: 'address', indexed: false },
  4848        {
  4849          name: 'amount',
  4850          internalType: 'uint256',
  4851          type: 'uint256',
  4852          indexed: false,
  4853        },
  4854        {
  4855          name: 'extraData',
  4856          internalType: 'bytes',
  4857          type: 'bytes',
  4858          indexed: false,
  4859        },
  4860      ],
  4861      name: 'ERC20BridgeFinalized',
  4862    },
  4863    {
  4864      type: 'event',
  4865      anonymous: false,
  4866      inputs: [
  4867        {
  4868          name: 'localToken',
  4869          internalType: 'address',
  4870          type: 'address',
  4871          indexed: true,
  4872        },
  4873        {
  4874          name: 'remoteToken',
  4875          internalType: 'address',
  4876          type: 'address',
  4877          indexed: true,
  4878        },
  4879        { name: 'from', internalType: 'address', type: 'address', indexed: true },
  4880        { name: 'to', internalType: 'address', type: 'address', indexed: false },
  4881        {
  4882          name: 'amount',
  4883          internalType: 'uint256',
  4884          type: 'uint256',
  4885          indexed: false,
  4886        },
  4887        {
  4888          name: 'extraData',
  4889          internalType: 'bytes',
  4890          type: 'bytes',
  4891          indexed: false,
  4892        },
  4893      ],
  4894      name: 'ERC20BridgeInitiated',
  4895    },
  4896    {
  4897      type: 'event',
  4898      anonymous: false,
  4899      inputs: [
  4900        { name: 'from', internalType: 'address', type: 'address', indexed: true },
  4901        { name: 'to', internalType: 'address', type: 'address', indexed: true },
  4902        {
  4903          name: 'amount',
  4904          internalType: 'uint256',
  4905          type: 'uint256',
  4906          indexed: false,
  4907        },
  4908        {
  4909          name: 'extraData',
  4910          internalType: 'bytes',
  4911          type: 'bytes',
  4912          indexed: false,
  4913        },
  4914      ],
  4915      name: 'ETHBridgeFinalized',
  4916    },
  4917    {
  4918      type: 'event',
  4919      anonymous: false,
  4920      inputs: [
  4921        { name: 'from', internalType: 'address', type: 'address', indexed: true },
  4922        { name: 'to', internalType: 'address', type: 'address', indexed: true },
  4923        {
  4924          name: 'amount',
  4925          internalType: 'uint256',
  4926          type: 'uint256',
  4927          indexed: false,
  4928        },
  4929        {
  4930          name: 'extraData',
  4931          internalType: 'bytes',
  4932          type: 'bytes',
  4933          indexed: false,
  4934        },
  4935      ],
  4936      name: 'ETHBridgeInitiated',
  4937    },
  4938    {
  4939      type: 'event',
  4940      anonymous: false,
  4941      inputs: [
  4942        {
  4943          name: 'l1Token',
  4944          internalType: 'address',
  4945          type: 'address',
  4946          indexed: true,
  4947        },
  4948        {
  4949          name: 'l2Token',
  4950          internalType: 'address',
  4951          type: 'address',
  4952          indexed: true,
  4953        },
  4954        { name: 'from', internalType: 'address', type: 'address', indexed: true },
  4955        { name: 'to', internalType: 'address', type: 'address', indexed: false },
  4956        {
  4957          name: 'amount',
  4958          internalType: 'uint256',
  4959          type: 'uint256',
  4960          indexed: false,
  4961        },
  4962        {
  4963          name: 'extraData',
  4964          internalType: 'bytes',
  4965          type: 'bytes',
  4966          indexed: false,
  4967        },
  4968      ],
  4969      name: 'WithdrawalInitiated',
  4970    },
  4971    {
  4972      stateMutability: 'view',
  4973      type: 'function',
  4974      inputs: [],
  4975      name: 'MESSENGER',
  4976      outputs: [
  4977        {
  4978          name: '',
  4979          internalType: 'contract CrossDomainMessenger',
  4980          type: 'address',
  4981        },
  4982      ],
  4983    },
  4984    {
  4985      stateMutability: 'view',
  4986      type: 'function',
  4987      inputs: [],
  4988      name: 'OTHER_BRIDGE',
  4989      outputs: [
  4990        { name: '', internalType: 'contract StandardBridge', type: 'address' },
  4991      ],
  4992    },
  4993    {
  4994      stateMutability: 'nonpayable',
  4995      type: 'function',
  4996      inputs: [
  4997        { name: '_localToken', internalType: 'address', type: 'address' },
  4998        { name: '_remoteToken', internalType: 'address', type: 'address' },
  4999        { name: '_amount', internalType: 'uint256', type: 'uint256' },
  5000        { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' },
  5001        { name: '_extraData', internalType: 'bytes', type: 'bytes' },
  5002      ],
  5003      name: 'bridgeERC20',
  5004      outputs: [],
  5005    },
  5006    {
  5007      stateMutability: 'nonpayable',
  5008      type: 'function',
  5009      inputs: [
  5010        { name: '_localToken', internalType: 'address', type: 'address' },
  5011        { name: '_remoteToken', internalType: 'address', type: 'address' },
  5012        { name: '_to', internalType: 'address', type: 'address' },
  5013        { name: '_amount', internalType: 'uint256', type: 'uint256' },
  5014        { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' },
  5015        { name: '_extraData', internalType: 'bytes', type: 'bytes' },
  5016      ],
  5017      name: 'bridgeERC20To',
  5018      outputs: [],
  5019    },
  5020    {
  5021      stateMutability: 'payable',
  5022      type: 'function',
  5023      inputs: [
  5024        { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' },
  5025        { name: '_extraData', internalType: 'bytes', type: 'bytes' },
  5026      ],
  5027      name: 'bridgeETH',
  5028      outputs: [],
  5029    },
  5030    {
  5031      stateMutability: 'payable',
  5032      type: 'function',
  5033      inputs: [
  5034        { name: '_to', internalType: 'address', type: 'address' },
  5035        { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' },
  5036        { name: '_extraData', internalType: 'bytes', type: 'bytes' },
  5037      ],
  5038      name: 'bridgeETHTo',
  5039      outputs: [],
  5040    },
  5041    {
  5042      stateMutability: 'view',
  5043      type: 'function',
  5044      inputs: [
  5045        { name: '', internalType: 'address', type: 'address' },
  5046        { name: '', internalType: 'address', type: 'address' },
  5047      ],
  5048      name: 'deposits',
  5049      outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
  5050    },
  5051    {
  5052      stateMutability: 'nonpayable',
  5053      type: 'function',
  5054      inputs: [
  5055        { name: '_localToken', internalType: 'address', type: 'address' },
  5056        { name: '_remoteToken', internalType: 'address', type: 'address' },
  5057        { name: '_from', internalType: 'address', type: 'address' },
  5058        { name: '_to', internalType: 'address', type: 'address' },
  5059        { name: '_amount', internalType: 'uint256', type: 'uint256' },
  5060        { name: '_extraData', internalType: 'bytes', type: 'bytes' },
  5061      ],
  5062      name: 'finalizeBridgeERC20',
  5063      outputs: [],
  5064    },
  5065    {
  5066      stateMutability: 'payable',
  5067      type: 'function',
  5068      inputs: [
  5069        { name: '_from', internalType: 'address', type: 'address' },
  5070        { name: '_to', internalType: 'address', type: 'address' },
  5071        { name: '_amount', internalType: 'uint256', type: 'uint256' },
  5072        { name: '_extraData', internalType: 'bytes', type: 'bytes' },
  5073      ],
  5074      name: 'finalizeBridgeETH',
  5075      outputs: [],
  5076    },
  5077    {
  5078      stateMutability: 'payable',
  5079      type: 'function',
  5080      inputs: [
  5081        { name: '_l1Token', internalType: 'address', type: 'address' },
  5082        { name: '_l2Token', internalType: 'address', type: 'address' },
  5083        { name: '_from', internalType: 'address', type: 'address' },
  5084        { name: '_to', internalType: 'address', type: 'address' },
  5085        { name: '_amount', internalType: 'uint256', type: 'uint256' },
  5086        { name: '_extraData', internalType: 'bytes', type: 'bytes' },
  5087      ],
  5088      name: 'finalizeDeposit',
  5089      outputs: [],
  5090    },
  5091    {
  5092      stateMutability: 'view',
  5093      type: 'function',
  5094      inputs: [],
  5095      name: 'l1TokenBridge',
  5096      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  5097    },
  5098    {
  5099      stateMutability: 'view',
  5100      type: 'function',
  5101      inputs: [],
  5102      name: 'messenger',
  5103      outputs: [
  5104        {
  5105          name: '',
  5106          internalType: 'contract CrossDomainMessenger',
  5107          type: 'address',
  5108        },
  5109      ],
  5110    },
  5111    {
  5112      stateMutability: 'view',
  5113      type: 'function',
  5114      inputs: [],
  5115      name: 'version',
  5116      outputs: [{ name: '', internalType: 'string', type: 'string' }],
  5117    },
  5118    {
  5119      stateMutability: 'payable',
  5120      type: 'function',
  5121      inputs: [
  5122        { name: '_l2Token', internalType: 'address', type: 'address' },
  5123        { name: '_amount', internalType: 'uint256', type: 'uint256' },
  5124        { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' },
  5125        { name: '_extraData', internalType: 'bytes', type: 'bytes' },
  5126      ],
  5127      name: 'withdraw',
  5128      outputs: [],
  5129    },
  5130    {
  5131      stateMutability: 'payable',
  5132      type: 'function',
  5133      inputs: [
  5134        { name: '_l2Token', internalType: 'address', type: 'address' },
  5135        { name: '_to', internalType: 'address', type: 'address' },
  5136        { name: '_amount', internalType: 'uint256', type: 'uint256' },
  5137        { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' },
  5138        { name: '_extraData', internalType: 'bytes', type: 'bytes' },
  5139      ],
  5140      name: 'withdrawTo',
  5141      outputs: [],
  5142    },
  5143    { stateMutability: 'payable', type: 'receive' },
  5144  ] as const
  5145  
  5146  /**
  5147   * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000010)
  5148   */
  5149  export const l2StandardBridgeAddress = {
  5150    420: '0x4200000000000000000000000000000000000010',
  5151  } as const
  5152  
  5153  /**
  5154   * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000010)
  5155   */
  5156  export const l2StandardBridgeConfig = {
  5157    address: l2StandardBridgeAddress,
  5158    abi: l2StandardBridgeABI,
  5159  } as const
  5160  
  5161  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  5162  // L2ToL1MessagePasser
  5163  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  5164  
  5165  /**
  5166   * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000016)
  5167   */
  5168  export const l2ToL1MessagePasserABI = [
  5169    { stateMutability: 'nonpayable', type: 'constructor', inputs: [] },
  5170    {
  5171      type: 'event',
  5172      anonymous: false,
  5173      inputs: [
  5174        {
  5175          name: 'nonce',
  5176          internalType: 'uint256',
  5177          type: 'uint256',
  5178          indexed: true,
  5179        },
  5180        {
  5181          name: 'sender',
  5182          internalType: 'address',
  5183          type: 'address',
  5184          indexed: true,
  5185        },
  5186        {
  5187          name: 'target',
  5188          internalType: 'address',
  5189          type: 'address',
  5190          indexed: true,
  5191        },
  5192        {
  5193          name: 'value',
  5194          internalType: 'uint256',
  5195          type: 'uint256',
  5196          indexed: false,
  5197        },
  5198        {
  5199          name: 'gasLimit',
  5200          internalType: 'uint256',
  5201          type: 'uint256',
  5202          indexed: false,
  5203        },
  5204        { name: 'data', internalType: 'bytes', type: 'bytes', indexed: false },
  5205        {
  5206          name: 'withdrawalHash',
  5207          internalType: 'bytes32',
  5208          type: 'bytes32',
  5209          indexed: false,
  5210        },
  5211      ],
  5212      name: 'MessagePassed',
  5213    },
  5214    {
  5215      type: 'event',
  5216      anonymous: false,
  5217      inputs: [
  5218        {
  5219          name: 'amount',
  5220          internalType: 'uint256',
  5221          type: 'uint256',
  5222          indexed: true,
  5223        },
  5224      ],
  5225      name: 'WithdrawerBalanceBurnt',
  5226    },
  5227    {
  5228      stateMutability: 'view',
  5229      type: 'function',
  5230      inputs: [],
  5231      name: 'MESSAGE_VERSION',
  5232      outputs: [{ name: '', internalType: 'uint16', type: 'uint16' }],
  5233    },
  5234    {
  5235      stateMutability: 'nonpayable',
  5236      type: 'function',
  5237      inputs: [],
  5238      name: 'burn',
  5239      outputs: [],
  5240    },
  5241    {
  5242      stateMutability: 'payable',
  5243      type: 'function',
  5244      inputs: [
  5245        { name: '_target', internalType: 'address', type: 'address' },
  5246        { name: '_gasLimit', internalType: 'uint256', type: 'uint256' },
  5247        { name: '_data', internalType: 'bytes', type: 'bytes' },
  5248      ],
  5249      name: 'initiateWithdrawal',
  5250      outputs: [],
  5251    },
  5252    {
  5253      stateMutability: 'view',
  5254      type: 'function',
  5255      inputs: [],
  5256      name: 'messageNonce',
  5257      outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
  5258    },
  5259    {
  5260      stateMutability: 'view',
  5261      type: 'function',
  5262      inputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
  5263      name: 'sentMessages',
  5264      outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
  5265    },
  5266    {
  5267      stateMutability: 'view',
  5268      type: 'function',
  5269      inputs: [],
  5270      name: 'version',
  5271      outputs: [{ name: '', internalType: 'string', type: 'string' }],
  5272    },
  5273    { stateMutability: 'payable', type: 'receive' },
  5274  ] as const
  5275  
  5276  /**
  5277   * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000016)
  5278   */
  5279  export const l2ToL1MessagePasserAddress = {
  5280    420: '0x4200000000000000000000000000000000000016',
  5281  } as const
  5282  
  5283  /**
  5284   * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000016)
  5285   */
  5286  export const l2ToL1MessagePasserConfig = {
  5287    address: l2ToL1MessagePasserAddress,
  5288    abi: l2ToL1MessagePasserABI,
  5289  } as const
  5290  
  5291  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  5292  // MintManager
  5293  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  5294  
  5295  /**
  5296   * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x5C4e7Ba1E219E47948e6e3F55019A647bA501005)
  5297   * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x038a8825A3C3B0c08d52Cc76E5E361953Cf6Dc76)
  5298   */
  5299  export const mintManagerABI = [
  5300    {
  5301      stateMutability: 'nonpayable',
  5302      type: 'constructor',
  5303      inputs: [
  5304        { name: '_upgrader', internalType: 'address', type: 'address' },
  5305        { name: '_governanceToken', internalType: 'address', type: 'address' },
  5306      ],
  5307    },
  5308    {
  5309      type: 'event',
  5310      anonymous: false,
  5311      inputs: [
  5312        {
  5313          name: 'previousOwner',
  5314          internalType: 'address',
  5315          type: 'address',
  5316          indexed: true,
  5317        },
  5318        {
  5319          name: 'newOwner',
  5320          internalType: 'address',
  5321          type: 'address',
  5322          indexed: true,
  5323        },
  5324      ],
  5325      name: 'OwnershipTransferred',
  5326    },
  5327    {
  5328      stateMutability: 'view',
  5329      type: 'function',
  5330      inputs: [],
  5331      name: 'DENOMINATOR',
  5332      outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
  5333    },
  5334    {
  5335      stateMutability: 'view',
  5336      type: 'function',
  5337      inputs: [],
  5338      name: 'MINT_CAP',
  5339      outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
  5340    },
  5341    {
  5342      stateMutability: 'view',
  5343      type: 'function',
  5344      inputs: [],
  5345      name: 'MINT_PERIOD',
  5346      outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
  5347    },
  5348    {
  5349      stateMutability: 'view',
  5350      type: 'function',
  5351      inputs: [],
  5352      name: 'governanceToken',
  5353      outputs: [
  5354        { name: '', internalType: 'contract GovernanceToken', type: 'address' },
  5355      ],
  5356    },
  5357    {
  5358      stateMutability: 'nonpayable',
  5359      type: 'function',
  5360      inputs: [
  5361        { name: '_account', internalType: 'address', type: 'address' },
  5362        { name: '_amount', internalType: 'uint256', type: 'uint256' },
  5363      ],
  5364      name: 'mint',
  5365      outputs: [],
  5366    },
  5367    {
  5368      stateMutability: 'view',
  5369      type: 'function',
  5370      inputs: [],
  5371      name: 'mintPermittedAfter',
  5372      outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
  5373    },
  5374    {
  5375      stateMutability: 'view',
  5376      type: 'function',
  5377      inputs: [],
  5378      name: 'owner',
  5379      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  5380    },
  5381    {
  5382      stateMutability: 'nonpayable',
  5383      type: 'function',
  5384      inputs: [],
  5385      name: 'renounceOwnership',
  5386      outputs: [],
  5387    },
  5388    {
  5389      stateMutability: 'nonpayable',
  5390      type: 'function',
  5391      inputs: [{ name: 'newOwner', internalType: 'address', type: 'address' }],
  5392      name: 'transferOwnership',
  5393      outputs: [],
  5394    },
  5395    {
  5396      stateMutability: 'nonpayable',
  5397      type: 'function',
  5398      inputs: [
  5399        { name: '_newMintManager', internalType: 'address', type: 'address' },
  5400      ],
  5401      name: 'upgrade',
  5402      outputs: [],
  5403    },
  5404  ] as const
  5405  
  5406  /**
  5407   * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x5C4e7Ba1E219E47948e6e3F55019A647bA501005)
  5408   * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x038a8825A3C3B0c08d52Cc76E5E361953Cf6Dc76)
  5409   */
  5410  export const mintManagerAddress = {
  5411    10: '0x5C4e7Ba1E219E47948e6e3F55019A647bA501005',
  5412    420: '0x038a8825A3C3B0c08d52Cc76E5E361953Cf6Dc76',
  5413  } as const
  5414  
  5415  /**
  5416   * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x5C4e7Ba1E219E47948e6e3F55019A647bA501005)
  5417   * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x038a8825A3C3B0c08d52Cc76E5E361953Cf6Dc76)
  5418   */
  5419  export const mintManagerConfig = {
  5420    address: mintManagerAddress,
  5421    abi: mintManagerABI,
  5422  } as const
  5423  
  5424  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  5425  // OptimismMintableERC20Factory
  5426  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  5427  
  5428  /**
  5429   * [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x4200000000000000000000000000000000000012)
  5430   */
  5431  export const optimismMintableErc20FactoryABI = [
  5432    { stateMutability: 'nonpayable', type: 'constructor', inputs: [] },
  5433    {
  5434      type: 'event',
  5435      anonymous: false,
  5436      inputs: [
  5437        { name: 'version', internalType: 'uint8', type: 'uint8', indexed: false },
  5438      ],
  5439      name: 'Initialized',
  5440    },
  5441    {
  5442      type: 'event',
  5443      anonymous: false,
  5444      inputs: [
  5445        {
  5446          name: 'localToken',
  5447          internalType: 'address',
  5448          type: 'address',
  5449          indexed: true,
  5450        },
  5451        {
  5452          name: 'remoteToken',
  5453          internalType: 'address',
  5454          type: 'address',
  5455          indexed: true,
  5456        },
  5457        {
  5458          name: 'deployer',
  5459          internalType: 'address',
  5460          type: 'address',
  5461          indexed: false,
  5462        },
  5463      ],
  5464      name: 'OptimismMintableERC20Created',
  5465    },
  5466    {
  5467      type: 'event',
  5468      anonymous: false,
  5469      inputs: [
  5470        {
  5471          name: 'remoteToken',
  5472          internalType: 'address',
  5473          type: 'address',
  5474          indexed: true,
  5475        },
  5476        {
  5477          name: 'localToken',
  5478          internalType: 'address',
  5479          type: 'address',
  5480          indexed: true,
  5481        },
  5482      ],
  5483      name: 'StandardL2TokenCreated',
  5484    },
  5485    {
  5486      stateMutability: 'view',
  5487      type: 'function',
  5488      inputs: [],
  5489      name: 'BRIDGE',
  5490      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  5491    },
  5492    {
  5493      stateMutability: 'view',
  5494      type: 'function',
  5495      inputs: [],
  5496      name: 'bridge',
  5497      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  5498    },
  5499    {
  5500      stateMutability: 'nonpayable',
  5501      type: 'function',
  5502      inputs: [
  5503        { name: '_remoteToken', internalType: 'address', type: 'address' },
  5504        { name: '_name', internalType: 'string', type: 'string' },
  5505        { name: '_symbol', internalType: 'string', type: 'string' },
  5506      ],
  5507      name: 'createOptimismMintableERC20',
  5508      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  5509    },
  5510    {
  5511      stateMutability: 'nonpayable',
  5512      type: 'function',
  5513      inputs: [
  5514        { name: '_remoteToken', internalType: 'address', type: 'address' },
  5515        { name: '_name', internalType: 'string', type: 'string' },
  5516        { name: '_symbol', internalType: 'string', type: 'string' },
  5517        { name: '_decimals', internalType: 'uint8', type: 'uint8' },
  5518      ],
  5519      name: 'createOptimismMintableERC20WithDecimals',
  5520      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  5521    },
  5522    {
  5523      stateMutability: 'nonpayable',
  5524      type: 'function',
  5525      inputs: [
  5526        { name: '_remoteToken', internalType: 'address', type: 'address' },
  5527        { name: '_name', internalType: 'string', type: 'string' },
  5528        { name: '_symbol', internalType: 'string', type: 'string' },
  5529      ],
  5530      name: 'createStandardL2Token',
  5531      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  5532    },
  5533    {
  5534      stateMutability: 'nonpayable',
  5535      type: 'function',
  5536      inputs: [{ name: '_bridge', internalType: 'address', type: 'address' }],
  5537      name: 'initialize',
  5538      outputs: [],
  5539    },
  5540    {
  5541      stateMutability: 'view',
  5542      type: 'function',
  5543      inputs: [],
  5544      name: 'version',
  5545      outputs: [{ name: '', internalType: 'string', type: 'string' }],
  5546    },
  5547  ] as const
  5548  
  5549  /**
  5550   * [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x4200000000000000000000000000000000000012)
  5551   */
  5552  export const optimismMintableErc20FactoryAddress = {
  5553    1: '0x4200000000000000000000000000000000000012',
  5554  } as const
  5555  
  5556  /**
  5557   * [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x4200000000000000000000000000000000000012)
  5558   */
  5559  export const optimismMintableErc20FactoryConfig = {
  5560    address: optimismMintableErc20FactoryAddress,
  5561    abi: optimismMintableErc20FactoryABI,
  5562  } as const
  5563  
  5564  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  5565  // OptimismMintableERC20Factory_goerli
  5566  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  5567  
  5568  /**
  5569   * [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x4200000000000000000000000000000000000012)
  5570   */
  5571  export const optimismMintableErc20FactoryGoerliABI = [
  5572    { stateMutability: 'nonpayable', type: 'constructor', inputs: [] },
  5573    {
  5574      type: 'event',
  5575      anonymous: false,
  5576      inputs: [
  5577        { name: 'version', internalType: 'uint8', type: 'uint8', indexed: false },
  5578      ],
  5579      name: 'Initialized',
  5580    },
  5581    {
  5582      type: 'event',
  5583      anonymous: false,
  5584      inputs: [
  5585        {
  5586          name: 'localToken',
  5587          internalType: 'address',
  5588          type: 'address',
  5589          indexed: true,
  5590        },
  5591        {
  5592          name: 'remoteToken',
  5593          internalType: 'address',
  5594          type: 'address',
  5595          indexed: true,
  5596        },
  5597        {
  5598          name: 'deployer',
  5599          internalType: 'address',
  5600          type: 'address',
  5601          indexed: false,
  5602        },
  5603      ],
  5604      name: 'OptimismMintableERC20Created',
  5605    },
  5606    {
  5607      type: 'event',
  5608      anonymous: false,
  5609      inputs: [
  5610        {
  5611          name: 'remoteToken',
  5612          internalType: 'address',
  5613          type: 'address',
  5614          indexed: true,
  5615        },
  5616        {
  5617          name: 'localToken',
  5618          internalType: 'address',
  5619          type: 'address',
  5620          indexed: true,
  5621        },
  5622      ],
  5623      name: 'StandardL2TokenCreated',
  5624    },
  5625    {
  5626      stateMutability: 'view',
  5627      type: 'function',
  5628      inputs: [],
  5629      name: 'BRIDGE',
  5630      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  5631    },
  5632    {
  5633      stateMutability: 'view',
  5634      type: 'function',
  5635      inputs: [],
  5636      name: 'bridge',
  5637      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  5638    },
  5639    {
  5640      stateMutability: 'nonpayable',
  5641      type: 'function',
  5642      inputs: [
  5643        { name: '_remoteToken', internalType: 'address', type: 'address' },
  5644        { name: '_name', internalType: 'string', type: 'string' },
  5645        { name: '_symbol', internalType: 'string', type: 'string' },
  5646      ],
  5647      name: 'createOptimismMintableERC20',
  5648      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  5649    },
  5650    {
  5651      stateMutability: 'nonpayable',
  5652      type: 'function',
  5653      inputs: [
  5654        { name: '_remoteToken', internalType: 'address', type: 'address' },
  5655        { name: '_name', internalType: 'string', type: 'string' },
  5656        { name: '_symbol', internalType: 'string', type: 'string' },
  5657        { name: '_decimals', internalType: 'uint8', type: 'uint8' },
  5658      ],
  5659      name: 'createOptimismMintableERC20WithDecimals',
  5660      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  5661    },
  5662    {
  5663      stateMutability: 'nonpayable',
  5664      type: 'function',
  5665      inputs: [
  5666        { name: '_remoteToken', internalType: 'address', type: 'address' },
  5667        { name: '_name', internalType: 'string', type: 'string' },
  5668        { name: '_symbol', internalType: 'string', type: 'string' },
  5669      ],
  5670      name: 'createStandardL2Token',
  5671      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  5672    },
  5673    {
  5674      stateMutability: 'nonpayable',
  5675      type: 'function',
  5676      inputs: [{ name: '_bridge', internalType: 'address', type: 'address' }],
  5677      name: 'initialize',
  5678      outputs: [],
  5679    },
  5680    {
  5681      stateMutability: 'view',
  5682      type: 'function',
  5683      inputs: [],
  5684      name: 'version',
  5685      outputs: [{ name: '', internalType: 'string', type: 'string' }],
  5686    },
  5687  ] as const
  5688  
  5689  /**
  5690   * [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x4200000000000000000000000000000000000012)
  5691   */
  5692  export const optimismMintableErc20FactoryGoerliAddress = {
  5693    5: '0x4200000000000000000000000000000000000012',
  5694  } as const
  5695  
  5696  /**
  5697   * [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x4200000000000000000000000000000000000012)
  5698   */
  5699  export const optimismMintableErc20FactoryGoerliConfig = {
  5700    address: optimismMintableErc20FactoryGoerliAddress,
  5701    abi: optimismMintableErc20FactoryGoerliABI,
  5702  } as const
  5703  
  5704  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  5705  // OptimismMintableERC20Factory_optimism-goerli
  5706  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  5707  
  5708  /**
  5709   * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000012)
  5710   */
  5711  export const optimismMintableErc20FactoryOptimismGoerliABI = [
  5712    {
  5713      stateMutability: 'nonpayable',
  5714      type: 'constructor',
  5715      inputs: [{ name: '_bridge', internalType: 'address', type: 'address' }],
  5716    },
  5717    {
  5718      type: 'event',
  5719      anonymous: false,
  5720      inputs: [
  5721        {
  5722          name: 'localToken',
  5723          internalType: 'address',
  5724          type: 'address',
  5725          indexed: true,
  5726        },
  5727        {
  5728          name: 'remoteToken',
  5729          internalType: 'address',
  5730          type: 'address',
  5731          indexed: true,
  5732        },
  5733        {
  5734          name: 'deployer',
  5735          internalType: 'address',
  5736          type: 'address',
  5737          indexed: false,
  5738        },
  5739      ],
  5740      name: 'OptimismMintableERC20Created',
  5741    },
  5742    {
  5743      type: 'event',
  5744      anonymous: false,
  5745      inputs: [
  5746        {
  5747          name: 'remoteToken',
  5748          internalType: 'address',
  5749          type: 'address',
  5750          indexed: true,
  5751        },
  5752        {
  5753          name: 'localToken',
  5754          internalType: 'address',
  5755          type: 'address',
  5756          indexed: true,
  5757        },
  5758      ],
  5759      name: 'StandardL2TokenCreated',
  5760    },
  5761    {
  5762      stateMutability: 'view',
  5763      type: 'function',
  5764      inputs: [],
  5765      name: 'BRIDGE',
  5766      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  5767    },
  5768    {
  5769      stateMutability: 'nonpayable',
  5770      type: 'function',
  5771      inputs: [
  5772        { name: '_remoteToken', internalType: 'address', type: 'address' },
  5773        { name: '_name', internalType: 'string', type: 'string' },
  5774        { name: '_symbol', internalType: 'string', type: 'string' },
  5775      ],
  5776      name: 'createOptimismMintableERC20',
  5777      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  5778    },
  5779    {
  5780      stateMutability: 'nonpayable',
  5781      type: 'function',
  5782      inputs: [
  5783        { name: '_remoteToken', internalType: 'address', type: 'address' },
  5784        { name: '_name', internalType: 'string', type: 'string' },
  5785        { name: '_symbol', internalType: 'string', type: 'string' },
  5786      ],
  5787      name: 'createStandardL2Token',
  5788      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  5789    },
  5790    {
  5791      stateMutability: 'view',
  5792      type: 'function',
  5793      inputs: [],
  5794      name: 'version',
  5795      outputs: [{ name: '', internalType: 'string', type: 'string' }],
  5796    },
  5797  ] as const
  5798  
  5799  /**
  5800   * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000012)
  5801   */
  5802  export const optimismMintableErc20FactoryOptimismGoerliAddress = {
  5803    420: '0x4200000000000000000000000000000000000012',
  5804  } as const
  5805  
  5806  /**
  5807   * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000012)
  5808   */
  5809  export const optimismMintableErc20FactoryOptimismGoerliConfig = {
  5810    address: optimismMintableErc20FactoryOptimismGoerliAddress,
  5811    abi: optimismMintableErc20FactoryOptimismGoerliABI,
  5812  } as const
  5813  
  5814  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  5815  // OptimismMintableERC721Factory
  5816  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  5817  
  5818  /**
  5819   * [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x4200000000000000000000000000000000000017)
  5820   */
  5821  export const optimismMintableErc721FactoryABI = [
  5822    {
  5823      stateMutability: 'nonpayable',
  5824      type: 'constructor',
  5825      inputs: [
  5826        { name: '_bridge', internalType: 'address', type: 'address' },
  5827        { name: '_remoteChainId', internalType: 'uint256', type: 'uint256' },
  5828      ],
  5829    },
  5830    {
  5831      type: 'event',
  5832      anonymous: false,
  5833      inputs: [
  5834        {
  5835          name: 'localToken',
  5836          internalType: 'address',
  5837          type: 'address',
  5838          indexed: true,
  5839        },
  5840        {
  5841          name: 'remoteToken',
  5842          internalType: 'address',
  5843          type: 'address',
  5844          indexed: true,
  5845        },
  5846        {
  5847          name: 'deployer',
  5848          internalType: 'address',
  5849          type: 'address',
  5850          indexed: false,
  5851        },
  5852      ],
  5853      name: 'OptimismMintableERC721Created',
  5854    },
  5855    {
  5856      stateMutability: 'view',
  5857      type: 'function',
  5858      inputs: [],
  5859      name: 'bridge',
  5860      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  5861    },
  5862    {
  5863      stateMutability: 'nonpayable',
  5864      type: 'function',
  5865      inputs: [
  5866        { name: '_remoteToken', internalType: 'address', type: 'address' },
  5867        { name: '_name', internalType: 'string', type: 'string' },
  5868        { name: '_symbol', internalType: 'string', type: 'string' },
  5869      ],
  5870      name: 'createOptimismMintableERC721',
  5871      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  5872    },
  5873    {
  5874      stateMutability: 'view',
  5875      type: 'function',
  5876      inputs: [{ name: '', internalType: 'address', type: 'address' }],
  5877      name: 'isOptimismMintableERC721',
  5878      outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
  5879    },
  5880    {
  5881      stateMutability: 'view',
  5882      type: 'function',
  5883      inputs: [],
  5884      name: 'remoteChainId',
  5885      outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
  5886    },
  5887    {
  5888      stateMutability: 'view',
  5889      type: 'function',
  5890      inputs: [],
  5891      name: 'version',
  5892      outputs: [{ name: '', internalType: 'string', type: 'string' }],
  5893    },
  5894  ] as const
  5895  
  5896  /**
  5897   * [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x4200000000000000000000000000000000000017)
  5898   */
  5899  export const optimismMintableErc721FactoryAddress = {
  5900    10: '0x4200000000000000000000000000000000000017',
  5901  } as const
  5902  
  5903  /**
  5904   * [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x4200000000000000000000000000000000000017)
  5905   */
  5906  export const optimismMintableErc721FactoryConfig = {
  5907    address: optimismMintableErc721FactoryAddress,
  5908    abi: optimismMintableErc721FactoryABI,
  5909  } as const
  5910  
  5911  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  5912  // OptimismMintableERC721Factory_optimism-goerli
  5913  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  5914  
  5915  /**
  5916   * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000017)
  5917   */
  5918  export const optimismMintableErc721FactoryOptimismGoerliABI = [
  5919    {
  5920      stateMutability: 'nonpayable',
  5921      type: 'constructor',
  5922      inputs: [
  5923        { name: '_bridge', internalType: 'address', type: 'address' },
  5924        { name: '_remoteChainId', internalType: 'uint256', type: 'uint256' },
  5925      ],
  5926    },
  5927    {
  5928      type: 'event',
  5929      anonymous: false,
  5930      inputs: [
  5931        {
  5932          name: 'localToken',
  5933          internalType: 'address',
  5934          type: 'address',
  5935          indexed: true,
  5936        },
  5937        {
  5938          name: 'remoteToken',
  5939          internalType: 'address',
  5940          type: 'address',
  5941          indexed: true,
  5942        },
  5943        {
  5944          name: 'deployer',
  5945          internalType: 'address',
  5946          type: 'address',
  5947          indexed: false,
  5948        },
  5949      ],
  5950      name: 'OptimismMintableERC721Created',
  5951    },
  5952    {
  5953      stateMutability: 'view',
  5954      type: 'function',
  5955      inputs: [],
  5956      name: 'BRIDGE',
  5957      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  5958    },
  5959    {
  5960      stateMutability: 'view',
  5961      type: 'function',
  5962      inputs: [],
  5963      name: 'REMOTE_CHAIN_ID',
  5964      outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
  5965    },
  5966    {
  5967      stateMutability: 'nonpayable',
  5968      type: 'function',
  5969      inputs: [
  5970        { name: '_remoteToken', internalType: 'address', type: 'address' },
  5971        { name: '_name', internalType: 'string', type: 'string' },
  5972        { name: '_symbol', internalType: 'string', type: 'string' },
  5973      ],
  5974      name: 'createOptimismMintableERC721',
  5975      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  5976    },
  5977    {
  5978      stateMutability: 'view',
  5979      type: 'function',
  5980      inputs: [{ name: '', internalType: 'address', type: 'address' }],
  5981      name: 'isOptimismMintableERC721',
  5982      outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
  5983    },
  5984    {
  5985      stateMutability: 'view',
  5986      type: 'function',
  5987      inputs: [],
  5988      name: 'version',
  5989      outputs: [{ name: '', internalType: 'string', type: 'string' }],
  5990    },
  5991  ] as const
  5992  
  5993  /**
  5994   * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000017)
  5995   */
  5996  export const optimismMintableErc721FactoryOptimismGoerliAddress = {
  5997    420: '0x4200000000000000000000000000000000000017',
  5998  } as const
  5999  
  6000  /**
  6001   * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000017)
  6002   */
  6003  export const optimismMintableErc721FactoryOptimismGoerliConfig = {
  6004    address: optimismMintableErc721FactoryOptimismGoerliAddress,
  6005    abi: optimismMintableErc721FactoryOptimismGoerliABI,
  6006  } as const
  6007  
  6008  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  6009  // OptimismPortal
  6010  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  6011  
  6012  /**
  6013   * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0xbEb5Fc579115071764c7423A4f12eDde41f106Ed)
  6014   * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x5b47E1A08Ea6d985D6649300584e6722Ec4B1383)
  6015   */
  6016  export const optimismPortalABI = [
  6017    { stateMutability: 'nonpayable', type: 'constructor', inputs: [] },
  6018    {
  6019      type: 'event',
  6020      anonymous: false,
  6021      inputs: [
  6022        { name: 'version', internalType: 'uint8', type: 'uint8', indexed: false },
  6023      ],
  6024      name: 'Initialized',
  6025    },
  6026    {
  6027      type: 'event',
  6028      anonymous: false,
  6029      inputs: [
  6030        {
  6031          name: 'account',
  6032          internalType: 'address',
  6033          type: 'address',
  6034          indexed: false,
  6035        },
  6036      ],
  6037      name: 'Paused',
  6038    },
  6039    {
  6040      type: 'event',
  6041      anonymous: false,
  6042      inputs: [
  6043        { name: 'from', internalType: 'address', type: 'address', indexed: true },
  6044        { name: 'to', internalType: 'address', type: 'address', indexed: true },
  6045        {
  6046          name: 'version',
  6047          internalType: 'uint256',
  6048          type: 'uint256',
  6049          indexed: true,
  6050        },
  6051        {
  6052          name: 'opaqueData',
  6053          internalType: 'bytes',
  6054          type: 'bytes',
  6055          indexed: false,
  6056        },
  6057      ],
  6058      name: 'TransactionDeposited',
  6059    },
  6060    {
  6061      type: 'event',
  6062      anonymous: false,
  6063      inputs: [
  6064        {
  6065          name: 'account',
  6066          internalType: 'address',
  6067          type: 'address',
  6068          indexed: false,
  6069        },
  6070      ],
  6071      name: 'Unpaused',
  6072    },
  6073    {
  6074      type: 'event',
  6075      anonymous: false,
  6076      inputs: [
  6077        {
  6078          name: 'withdrawalHash',
  6079          internalType: 'bytes32',
  6080          type: 'bytes32',
  6081          indexed: true,
  6082        },
  6083        { name: 'success', internalType: 'bool', type: 'bool', indexed: false },
  6084      ],
  6085      name: 'WithdrawalFinalized',
  6086    },
  6087    {
  6088      type: 'event',
  6089      anonymous: false,
  6090      inputs: [
  6091        {
  6092          name: 'withdrawalHash',
  6093          internalType: 'bytes32',
  6094          type: 'bytes32',
  6095          indexed: true,
  6096        },
  6097        { name: 'from', internalType: 'address', type: 'address', indexed: true },
  6098        { name: 'to', internalType: 'address', type: 'address', indexed: true },
  6099      ],
  6100      name: 'WithdrawalProven',
  6101    },
  6102    {
  6103      stateMutability: 'view',
  6104      type: 'function',
  6105      inputs: [],
  6106      name: 'GUARDIAN',
  6107      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  6108    },
  6109    {
  6110      stateMutability: 'view',
  6111      type: 'function',
  6112      inputs: [],
  6113      name: 'L2_ORACLE',
  6114      outputs: [
  6115        { name: '', internalType: 'contract L2OutputOracle', type: 'address' },
  6116      ],
  6117    },
  6118    {
  6119      stateMutability: 'view',
  6120      type: 'function',
  6121      inputs: [],
  6122      name: 'SYSTEM_CONFIG',
  6123      outputs: [
  6124        { name: '', internalType: 'contract SystemConfig', type: 'address' },
  6125      ],
  6126    },
  6127    {
  6128      stateMutability: 'payable',
  6129      type: 'function',
  6130      inputs: [
  6131        { name: '_to', internalType: 'address', type: 'address' },
  6132        { name: '_value', internalType: 'uint256', type: 'uint256' },
  6133        { name: '_gasLimit', internalType: 'uint64', type: 'uint64' },
  6134        { name: '_isCreation', internalType: 'bool', type: 'bool' },
  6135        { name: '_data', internalType: 'bytes', type: 'bytes' },
  6136      ],
  6137      name: 'depositTransaction',
  6138      outputs: [],
  6139    },
  6140    {
  6141      stateMutability: 'payable',
  6142      type: 'function',
  6143      inputs: [],
  6144      name: 'donateETH',
  6145      outputs: [],
  6146    },
  6147    {
  6148      stateMutability: 'nonpayable',
  6149      type: 'function',
  6150      inputs: [
  6151        {
  6152          name: '_tx',
  6153          internalType: 'struct Types.WithdrawalTransaction',
  6154          type: 'tuple',
  6155          components: [
  6156            { name: 'nonce', internalType: 'uint256', type: 'uint256' },
  6157            { name: 'sender', internalType: 'address', type: 'address' },
  6158            { name: 'target', internalType: 'address', type: 'address' },
  6159            { name: 'value', internalType: 'uint256', type: 'uint256' },
  6160            { name: 'gasLimit', internalType: 'uint256', type: 'uint256' },
  6161            { name: 'data', internalType: 'bytes', type: 'bytes' },
  6162          ],
  6163        },
  6164      ],
  6165      name: 'finalizeWithdrawalTransaction',
  6166      outputs: [],
  6167    },
  6168    {
  6169      stateMutability: 'view',
  6170      type: 'function',
  6171      inputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
  6172      name: 'finalizedWithdrawals',
  6173      outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
  6174    },
  6175    {
  6176      stateMutability: 'view',
  6177      type: 'function',
  6178      inputs: [],
  6179      name: 'guardian',
  6180      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  6181    },
  6182    {
  6183      stateMutability: 'nonpayable',
  6184      type: 'function',
  6185      inputs: [
  6186        {
  6187          name: '_l2Oracle',
  6188          internalType: 'contract L2OutputOracle',
  6189          type: 'address',
  6190        },
  6191        { name: '_guardian', internalType: 'address', type: 'address' },
  6192        {
  6193          name: '_systemConfig',
  6194          internalType: 'contract SystemConfig',
  6195          type: 'address',
  6196        },
  6197        { name: '_paused', internalType: 'bool', type: 'bool' },
  6198      ],
  6199      name: 'initialize',
  6200      outputs: [],
  6201    },
  6202    {
  6203      stateMutability: 'view',
  6204      type: 'function',
  6205      inputs: [
  6206        { name: '_l2OutputIndex', internalType: 'uint256', type: 'uint256' },
  6207      ],
  6208      name: 'isOutputFinalized',
  6209      outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
  6210    },
  6211    {
  6212      stateMutability: 'view',
  6213      type: 'function',
  6214      inputs: [],
  6215      name: 'l2Oracle',
  6216      outputs: [
  6217        { name: '', internalType: 'contract L2OutputOracle', type: 'address' },
  6218      ],
  6219    },
  6220    {
  6221      stateMutability: 'view',
  6222      type: 'function',
  6223      inputs: [],
  6224      name: 'l2Sender',
  6225      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  6226    },
  6227    {
  6228      stateMutability: 'pure',
  6229      type: 'function',
  6230      inputs: [{ name: '_byteCount', internalType: 'uint64', type: 'uint64' }],
  6231      name: 'minimumGasLimit',
  6232      outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }],
  6233    },
  6234    {
  6235      stateMutability: 'view',
  6236      type: 'function',
  6237      inputs: [],
  6238      name: 'params',
  6239      outputs: [
  6240        { name: 'prevBaseFee', internalType: 'uint128', type: 'uint128' },
  6241        { name: 'prevBoughtGas', internalType: 'uint64', type: 'uint64' },
  6242        { name: 'prevBlockNum', internalType: 'uint64', type: 'uint64' },
  6243      ],
  6244    },
  6245    {
  6246      stateMutability: 'nonpayable',
  6247      type: 'function',
  6248      inputs: [],
  6249      name: 'pause',
  6250      outputs: [],
  6251    },
  6252    {
  6253      stateMutability: 'view',
  6254      type: 'function',
  6255      inputs: [],
  6256      name: 'paused',
  6257      outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
  6258    },
  6259    {
  6260      stateMutability: 'nonpayable',
  6261      type: 'function',
  6262      inputs: [
  6263        {
  6264          name: '_tx',
  6265          internalType: 'struct Types.WithdrawalTransaction',
  6266          type: 'tuple',
  6267          components: [
  6268            { name: 'nonce', internalType: 'uint256', type: 'uint256' },
  6269            { name: 'sender', internalType: 'address', type: 'address' },
  6270            { name: 'target', internalType: 'address', type: 'address' },
  6271            { name: 'value', internalType: 'uint256', type: 'uint256' },
  6272            { name: 'gasLimit', internalType: 'uint256', type: 'uint256' },
  6273            { name: 'data', internalType: 'bytes', type: 'bytes' },
  6274          ],
  6275        },
  6276        { name: '_l2OutputIndex', internalType: 'uint256', type: 'uint256' },
  6277        {
  6278          name: '_outputRootProof',
  6279          internalType: 'struct Types.OutputRootProof',
  6280          type: 'tuple',
  6281          components: [
  6282            { name: 'version', internalType: 'bytes32', type: 'bytes32' },
  6283            { name: 'stateRoot', internalType: 'bytes32', type: 'bytes32' },
  6284            {
  6285              name: 'messagePasserStorageRoot',
  6286              internalType: 'bytes32',
  6287              type: 'bytes32',
  6288            },
  6289            { name: 'latestBlockhash', internalType: 'bytes32', type: 'bytes32' },
  6290          ],
  6291        },
  6292        { name: '_withdrawalProof', internalType: 'bytes[]', type: 'bytes[]' },
  6293      ],
  6294      name: 'proveWithdrawalTransaction',
  6295      outputs: [],
  6296    },
  6297    {
  6298      stateMutability: 'view',
  6299      type: 'function',
  6300      inputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
  6301      name: 'provenWithdrawals',
  6302      outputs: [
  6303        { name: 'outputRoot', internalType: 'bytes32', type: 'bytes32' },
  6304        { name: 'timestamp', internalType: 'uint128', type: 'uint128' },
  6305        { name: 'l2OutputIndex', internalType: 'uint128', type: 'uint128' },
  6306      ],
  6307    },
  6308    {
  6309      stateMutability: 'view',
  6310      type: 'function',
  6311      inputs: [],
  6312      name: 'systemConfig',
  6313      outputs: [
  6314        { name: '', internalType: 'contract SystemConfig', type: 'address' },
  6315      ],
  6316    },
  6317    {
  6318      stateMutability: 'nonpayable',
  6319      type: 'function',
  6320      inputs: [],
  6321      name: 'unpause',
  6322      outputs: [],
  6323    },
  6324    {
  6325      stateMutability: 'view',
  6326      type: 'function',
  6327      inputs: [],
  6328      name: 'version',
  6329      outputs: [{ name: '', internalType: 'string', type: 'string' }],
  6330    },
  6331    { stateMutability: 'payable', type: 'receive' },
  6332  ] as const
  6333  
  6334  /**
  6335   * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0xbEb5Fc579115071764c7423A4f12eDde41f106Ed)
  6336   * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x5b47E1A08Ea6d985D6649300584e6722Ec4B1383)
  6337   */
  6338  export const optimismPortalAddress = {
  6339    1: '0xbEb5Fc579115071764c7423A4f12eDde41f106Ed',
  6340    5: '0x5b47E1A08Ea6d985D6649300584e6722Ec4B1383',
  6341  } as const
  6342  
  6343  /**
  6344   * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0xbEb5Fc579115071764c7423A4f12eDde41f106Ed)
  6345   * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x5b47E1A08Ea6d985D6649300584e6722Ec4B1383)
  6346   */
  6347  export const optimismPortalConfig = {
  6348    address: optimismPortalAddress,
  6349    abi: optimismPortalABI,
  6350  } as const
  6351  
  6352  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  6353  // Optimist
  6354  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  6355  
  6356  /**
  6357   * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x2335022c740d17c2837f9C884Bfe4fFdbf0A95D5)
  6358   * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x2335022c740d17c2837f9C884Bfe4fFdbf0A95D5)
  6359   */
  6360  export const optimistABI = [
  6361    {
  6362      stateMutability: 'nonpayable',
  6363      type: 'constructor',
  6364      inputs: [
  6365        { name: '_name', internalType: 'string', type: 'string' },
  6366        { name: '_symbol', internalType: 'string', type: 'string' },
  6367        { name: '_baseURIAttestor', internalType: 'address', type: 'address' },
  6368        {
  6369          name: '_attestationStation',
  6370          internalType: 'contract AttestationStation',
  6371          type: 'address',
  6372        },
  6373        {
  6374          name: '_optimistAllowlist',
  6375          internalType: 'contract OptimistAllowlist',
  6376          type: 'address',
  6377        },
  6378      ],
  6379    },
  6380    {
  6381      type: 'event',
  6382      anonymous: false,
  6383      inputs: [
  6384        {
  6385          name: 'owner',
  6386          internalType: 'address',
  6387          type: 'address',
  6388          indexed: true,
  6389        },
  6390        {
  6391          name: 'approved',
  6392          internalType: 'address',
  6393          type: 'address',
  6394          indexed: true,
  6395        },
  6396        {
  6397          name: 'tokenId',
  6398          internalType: 'uint256',
  6399          type: 'uint256',
  6400          indexed: true,
  6401        },
  6402      ],
  6403      name: 'Approval',
  6404    },
  6405    {
  6406      type: 'event',
  6407      anonymous: false,
  6408      inputs: [
  6409        {
  6410          name: 'owner',
  6411          internalType: 'address',
  6412          type: 'address',
  6413          indexed: true,
  6414        },
  6415        {
  6416          name: 'operator',
  6417          internalType: 'address',
  6418          type: 'address',
  6419          indexed: true,
  6420        },
  6421        { name: 'approved', internalType: 'bool', type: 'bool', indexed: false },
  6422      ],
  6423      name: 'ApprovalForAll',
  6424    },
  6425    {
  6426      type: 'event',
  6427      anonymous: false,
  6428      inputs: [
  6429        { name: 'version', internalType: 'uint8', type: 'uint8', indexed: false },
  6430      ],
  6431      name: 'Initialized',
  6432    },
  6433    {
  6434      type: 'event',
  6435      anonymous: false,
  6436      inputs: [
  6437        { name: 'from', internalType: 'address', type: 'address', indexed: true },
  6438        { name: 'to', internalType: 'address', type: 'address', indexed: true },
  6439        {
  6440          name: 'tokenId',
  6441          internalType: 'uint256',
  6442          type: 'uint256',
  6443          indexed: true,
  6444        },
  6445      ],
  6446      name: 'Transfer',
  6447    },
  6448    {
  6449      stateMutability: 'view',
  6450      type: 'function',
  6451      inputs: [],
  6452      name: 'ATTESTATION_STATION',
  6453      outputs: [
  6454        {
  6455          name: '',
  6456          internalType: 'contract AttestationStation',
  6457          type: 'address',
  6458        },
  6459      ],
  6460    },
  6461    {
  6462      stateMutability: 'view',
  6463      type: 'function',
  6464      inputs: [],
  6465      name: 'BASE_URI_ATTESTATION_KEY',
  6466      outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
  6467    },
  6468    {
  6469      stateMutability: 'view',
  6470      type: 'function',
  6471      inputs: [],
  6472      name: 'BASE_URI_ATTESTOR',
  6473      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  6474    },
  6475    {
  6476      stateMutability: 'view',
  6477      type: 'function',
  6478      inputs: [],
  6479      name: 'OPTIMIST_ALLOWLIST',
  6480      outputs: [
  6481        { name: '', internalType: 'contract OptimistAllowlist', type: 'address' },
  6482      ],
  6483    },
  6484    {
  6485      stateMutability: 'pure',
  6486      type: 'function',
  6487      inputs: [
  6488        { name: '', internalType: 'address', type: 'address' },
  6489        { name: '', internalType: 'uint256', type: 'uint256' },
  6490      ],
  6491      name: 'approve',
  6492      outputs: [],
  6493    },
  6494    {
  6495      stateMutability: 'view',
  6496      type: 'function',
  6497      inputs: [{ name: 'owner', internalType: 'address', type: 'address' }],
  6498      name: 'balanceOf',
  6499      outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
  6500    },
  6501    {
  6502      stateMutability: 'view',
  6503      type: 'function',
  6504      inputs: [],
  6505      name: 'baseURI',
  6506      outputs: [{ name: '', internalType: 'string', type: 'string' }],
  6507    },
  6508    {
  6509      stateMutability: 'nonpayable',
  6510      type: 'function',
  6511      inputs: [{ name: 'tokenId', internalType: 'uint256', type: 'uint256' }],
  6512      name: 'burn',
  6513      outputs: [],
  6514    },
  6515    {
  6516      stateMutability: 'view',
  6517      type: 'function',
  6518      inputs: [{ name: 'tokenId', internalType: 'uint256', type: 'uint256' }],
  6519      name: 'getApproved',
  6520      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  6521    },
  6522    {
  6523      stateMutability: 'nonpayable',
  6524      type: 'function',
  6525      inputs: [
  6526        { name: '_name', internalType: 'string', type: 'string' },
  6527        { name: '_symbol', internalType: 'string', type: 'string' },
  6528      ],
  6529      name: 'initialize',
  6530      outputs: [],
  6531    },
  6532    {
  6533      stateMutability: 'view',
  6534      type: 'function',
  6535      inputs: [
  6536        { name: 'owner', internalType: 'address', type: 'address' },
  6537        { name: 'operator', internalType: 'address', type: 'address' },
  6538      ],
  6539      name: 'isApprovedForAll',
  6540      outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
  6541    },
  6542    {
  6543      stateMutability: 'view',
  6544      type: 'function',
  6545      inputs: [{ name: '_recipient', internalType: 'address', type: 'address' }],
  6546      name: 'isOnAllowList',
  6547      outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
  6548    },
  6549    {
  6550      stateMutability: 'nonpayable',
  6551      type: 'function',
  6552      inputs: [{ name: '_recipient', internalType: 'address', type: 'address' }],
  6553      name: 'mint',
  6554      outputs: [],
  6555    },
  6556    {
  6557      stateMutability: 'view',
  6558      type: 'function',
  6559      inputs: [],
  6560      name: 'name',
  6561      outputs: [{ name: '', internalType: 'string', type: 'string' }],
  6562    },
  6563    {
  6564      stateMutability: 'view',
  6565      type: 'function',
  6566      inputs: [{ name: 'tokenId', internalType: 'uint256', type: 'uint256' }],
  6567      name: 'ownerOf',
  6568      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  6569    },
  6570    {
  6571      stateMutability: 'nonpayable',
  6572      type: 'function',
  6573      inputs: [
  6574        { name: 'from', internalType: 'address', type: 'address' },
  6575        { name: 'to', internalType: 'address', type: 'address' },
  6576        { name: 'tokenId', internalType: 'uint256', type: 'uint256' },
  6577      ],
  6578      name: 'safeTransferFrom',
  6579      outputs: [],
  6580    },
  6581    {
  6582      stateMutability: 'nonpayable',
  6583      type: 'function',
  6584      inputs: [
  6585        { name: 'from', internalType: 'address', type: 'address' },
  6586        { name: 'to', internalType: 'address', type: 'address' },
  6587        { name: 'tokenId', internalType: 'uint256', type: 'uint256' },
  6588        { name: 'data', internalType: 'bytes', type: 'bytes' },
  6589      ],
  6590      name: 'safeTransferFrom',
  6591      outputs: [],
  6592    },
  6593    {
  6594      stateMutability: 'nonpayable',
  6595      type: 'function',
  6596      inputs: [
  6597        { name: '', internalType: 'address', type: 'address' },
  6598        { name: '', internalType: 'bool', type: 'bool' },
  6599      ],
  6600      name: 'setApprovalForAll',
  6601      outputs: [],
  6602    },
  6603    {
  6604      stateMutability: 'view',
  6605      type: 'function',
  6606      inputs: [{ name: 'interfaceId', internalType: 'bytes4', type: 'bytes4' }],
  6607      name: 'supportsInterface',
  6608      outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
  6609    },
  6610    {
  6611      stateMutability: 'view',
  6612      type: 'function',
  6613      inputs: [],
  6614      name: 'symbol',
  6615      outputs: [{ name: '', internalType: 'string', type: 'string' }],
  6616    },
  6617    {
  6618      stateMutability: 'pure',
  6619      type: 'function',
  6620      inputs: [{ name: '_owner', internalType: 'address', type: 'address' }],
  6621      name: 'tokenIdOfAddress',
  6622      outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
  6623    },
  6624    {
  6625      stateMutability: 'view',
  6626      type: 'function',
  6627      inputs: [{ name: '_tokenId', internalType: 'uint256', type: 'uint256' }],
  6628      name: 'tokenURI',
  6629      outputs: [{ name: '', internalType: 'string', type: 'string' }],
  6630    },
  6631    {
  6632      stateMutability: 'nonpayable',
  6633      type: 'function',
  6634      inputs: [
  6635        { name: 'from', internalType: 'address', type: 'address' },
  6636        { name: 'to', internalType: 'address', type: 'address' },
  6637        { name: 'tokenId', internalType: 'uint256', type: 'uint256' },
  6638      ],
  6639      name: 'transferFrom',
  6640      outputs: [],
  6641    },
  6642    {
  6643      stateMutability: 'view',
  6644      type: 'function',
  6645      inputs: [],
  6646      name: 'version',
  6647      outputs: [{ name: '', internalType: 'string', type: 'string' }],
  6648    },
  6649  ] as const
  6650  
  6651  /**
  6652   * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x2335022c740d17c2837f9C884Bfe4fFdbf0A95D5)
  6653   * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x2335022c740d17c2837f9C884Bfe4fFdbf0A95D5)
  6654   */
  6655  export const optimistAddress = {
  6656    10: '0x2335022c740d17c2837f9C884Bfe4fFdbf0A95D5',
  6657    420: '0x2335022c740d17c2837f9C884Bfe4fFdbf0A95D5',
  6658  } as const
  6659  
  6660  /**
  6661   * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x2335022c740d17c2837f9C884Bfe4fFdbf0A95D5)
  6662   * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x2335022c740d17c2837f9C884Bfe4fFdbf0A95D5)
  6663   */
  6664  export const optimistConfig = {
  6665    address: optimistAddress,
  6666    abi: optimistABI,
  6667  } as const
  6668  
  6669  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  6670  // OptimistAllowlist
  6671  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  6672  
  6673  /**
  6674   * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x482b1945D58f2E9Db0CEbe13c7fcFc6876b41180)
  6675   * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x482b1945D58f2E9Db0CEbe13c7fcFc6876b41180)
  6676   */
  6677  export const optimistAllowlistABI = [
  6678    {
  6679      stateMutability: 'nonpayable',
  6680      type: 'constructor',
  6681      inputs: [
  6682        {
  6683          name: '_attestationStation',
  6684          internalType: 'contract AttestationStation',
  6685          type: 'address',
  6686        },
  6687        { name: '_allowlistAttestor', internalType: 'address', type: 'address' },
  6688        {
  6689          name: '_coinbaseQuestAttestor',
  6690          internalType: 'address',
  6691          type: 'address',
  6692        },
  6693        { name: '_optimistInviter', internalType: 'address', type: 'address' },
  6694      ],
  6695    },
  6696    {
  6697      stateMutability: 'view',
  6698      type: 'function',
  6699      inputs: [],
  6700      name: 'ALLOWLIST_ATTESTOR',
  6701      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  6702    },
  6703    {
  6704      stateMutability: 'view',
  6705      type: 'function',
  6706      inputs: [],
  6707      name: 'ATTESTATION_STATION',
  6708      outputs: [
  6709        {
  6710          name: '',
  6711          internalType: 'contract AttestationStation',
  6712          type: 'address',
  6713        },
  6714      ],
  6715    },
  6716    {
  6717      stateMutability: 'view',
  6718      type: 'function',
  6719      inputs: [],
  6720      name: 'COINBASE_QUEST_ATTESTOR',
  6721      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  6722    },
  6723    {
  6724      stateMutability: 'view',
  6725      type: 'function',
  6726      inputs: [],
  6727      name: 'COINBASE_QUEST_ELIGIBLE_ATTESTATION_KEY',
  6728      outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
  6729    },
  6730    {
  6731      stateMutability: 'view',
  6732      type: 'function',
  6733      inputs: [],
  6734      name: 'OPTIMIST_CAN_MINT_ATTESTATION_KEY',
  6735      outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
  6736    },
  6737    {
  6738      stateMutability: 'view',
  6739      type: 'function',
  6740      inputs: [],
  6741      name: 'OPTIMIST_INVITER',
  6742      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  6743    },
  6744    {
  6745      stateMutability: 'view',
  6746      type: 'function',
  6747      inputs: [{ name: '_claimer', internalType: 'address', type: 'address' }],
  6748      name: 'isAllowedToMint',
  6749      outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
  6750    },
  6751    {
  6752      stateMutability: 'view',
  6753      type: 'function',
  6754      inputs: [],
  6755      name: 'version',
  6756      outputs: [{ name: '', internalType: 'string', type: 'string' }],
  6757    },
  6758  ] as const
  6759  
  6760  /**
  6761   * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x482b1945D58f2E9Db0CEbe13c7fcFc6876b41180)
  6762   * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x482b1945D58f2E9Db0CEbe13c7fcFc6876b41180)
  6763   */
  6764  export const optimistAllowlistAddress = {
  6765    10: '0x482b1945D58f2E9Db0CEbe13c7fcFc6876b41180',
  6766    420: '0x482b1945D58f2E9Db0CEbe13c7fcFc6876b41180',
  6767  } as const
  6768  
  6769  /**
  6770   * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x482b1945D58f2E9Db0CEbe13c7fcFc6876b41180)
  6771   * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x482b1945D58f2E9Db0CEbe13c7fcFc6876b41180)
  6772   */
  6773  export const optimistAllowlistConfig = {
  6774    address: optimistAllowlistAddress,
  6775    abi: optimistAllowlistABI,
  6776  } as const
  6777  
  6778  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  6779  // OptimistInviter
  6780  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  6781  
  6782  /**
  6783   * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x073031A1E1b8F5458Ed41Ce56331F5fd7e1de929)
  6784   * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x073031A1E1b8F5458Ed41Ce56331F5fd7e1de929)
  6785   */
  6786  export const optimistInviterABI = [
  6787    {
  6788      stateMutability: 'nonpayable',
  6789      type: 'constructor',
  6790      inputs: [
  6791        { name: '_inviteGranter', internalType: 'address', type: 'address' },
  6792        {
  6793          name: '_attestationStation',
  6794          internalType: 'contract AttestationStation',
  6795          type: 'address',
  6796        },
  6797      ],
  6798    },
  6799    {
  6800      type: 'event',
  6801      anonymous: false,
  6802      inputs: [
  6803        { name: 'version', internalType: 'uint8', type: 'uint8', indexed: false },
  6804      ],
  6805      name: 'Initialized',
  6806    },
  6807    {
  6808      type: 'event',
  6809      anonymous: false,
  6810      inputs: [
  6811        {
  6812          name: 'issuer',
  6813          internalType: 'address',
  6814          type: 'address',
  6815          indexed: true,
  6816        },
  6817        {
  6818          name: 'claimer',
  6819          internalType: 'address',
  6820          type: 'address',
  6821          indexed: true,
  6822        },
  6823      ],
  6824      name: 'InviteClaimed',
  6825    },
  6826    {
  6827      stateMutability: 'view',
  6828      type: 'function',
  6829      inputs: [],
  6830      name: 'ATTESTATION_STATION',
  6831      outputs: [
  6832        {
  6833          name: '',
  6834          internalType: 'contract AttestationStation',
  6835          type: 'address',
  6836        },
  6837      ],
  6838    },
  6839    {
  6840      stateMutability: 'view',
  6841      type: 'function',
  6842      inputs: [],
  6843      name: 'CAN_INVITE_ATTESTATION_KEY',
  6844      outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
  6845    },
  6846    {
  6847      stateMutability: 'view',
  6848      type: 'function',
  6849      inputs: [],
  6850      name: 'CLAIMABLE_INVITE_TYPEHASH',
  6851      outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
  6852    },
  6853    {
  6854      stateMutability: 'view',
  6855      type: 'function',
  6856      inputs: [],
  6857      name: 'EIP712_VERSION',
  6858      outputs: [{ name: '', internalType: 'string', type: 'string' }],
  6859    },
  6860    {
  6861      stateMutability: 'view',
  6862      type: 'function',
  6863      inputs: [],
  6864      name: 'INVITE_GRANTER',
  6865      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  6866    },
  6867    {
  6868      stateMutability: 'view',
  6869      type: 'function',
  6870      inputs: [],
  6871      name: 'MIN_COMMITMENT_PERIOD',
  6872      outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
  6873    },
  6874    {
  6875      stateMutability: 'nonpayable',
  6876      type: 'function',
  6877      inputs: [
  6878        { name: '_claimer', internalType: 'address', type: 'address' },
  6879        {
  6880          name: '_claimableInvite',
  6881          internalType: 'struct OptimistInviter.ClaimableInvite',
  6882          type: 'tuple',
  6883          components: [
  6884            { name: 'issuer', internalType: 'address', type: 'address' },
  6885            { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },
  6886          ],
  6887        },
  6888        { name: '_signature', internalType: 'bytes', type: 'bytes' },
  6889      ],
  6890      name: 'claimInvite',
  6891      outputs: [],
  6892    },
  6893    {
  6894      stateMutability: 'nonpayable',
  6895      type: 'function',
  6896      inputs: [{ name: '_commitment', internalType: 'bytes32', type: 'bytes32' }],
  6897      name: 'commitInvite',
  6898      outputs: [],
  6899    },
  6900    {
  6901      stateMutability: 'view',
  6902      type: 'function',
  6903      inputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
  6904      name: 'commitmentTimestamps',
  6905      outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
  6906    },
  6907    {
  6908      stateMutability: 'nonpayable',
  6909      type: 'function',
  6910      inputs: [{ name: '_name', internalType: 'string', type: 'string' }],
  6911      name: 'initialize',
  6912      outputs: [],
  6913    },
  6914    {
  6915      stateMutability: 'view',
  6916      type: 'function',
  6917      inputs: [{ name: '', internalType: 'address', type: 'address' }],
  6918      name: 'inviteCounts',
  6919      outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
  6920    },
  6921    {
  6922      stateMutability: 'nonpayable',
  6923      type: 'function',
  6924      inputs: [
  6925        { name: '_accounts', internalType: 'address[]', type: 'address[]' },
  6926        { name: '_inviteCount', internalType: 'uint256', type: 'uint256' },
  6927      ],
  6928      name: 'setInviteCounts',
  6929      outputs: [],
  6930    },
  6931    {
  6932      stateMutability: 'view',
  6933      type: 'function',
  6934      inputs: [
  6935        { name: '', internalType: 'address', type: 'address' },
  6936        { name: '', internalType: 'bytes32', type: 'bytes32' },
  6937      ],
  6938      name: 'usedNonces',
  6939      outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
  6940    },
  6941    {
  6942      stateMutability: 'view',
  6943      type: 'function',
  6944      inputs: [],
  6945      name: 'version',
  6946      outputs: [{ name: '', internalType: 'string', type: 'string' }],
  6947    },
  6948  ] as const
  6949  
  6950  /**
  6951   * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x073031A1E1b8F5458Ed41Ce56331F5fd7e1de929)
  6952   * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x073031A1E1b8F5458Ed41Ce56331F5fd7e1de929)
  6953   */
  6954  export const optimistInviterAddress = {
  6955    10: '0x073031A1E1b8F5458Ed41Ce56331F5fd7e1de929',
  6956    420: '0x073031A1E1b8F5458Ed41Ce56331F5fd7e1de929',
  6957  } as const
  6958  
  6959  /**
  6960   * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x073031A1E1b8F5458Ed41Ce56331F5fd7e1de929)
  6961   * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x073031A1E1b8F5458Ed41Ce56331F5fd7e1de929)
  6962   */
  6963  export const optimistInviterConfig = {
  6964    address: optimistInviterAddress,
  6965    abi: optimistInviterABI,
  6966  } as const
  6967  
  6968  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  6969  // PortalSender
  6970  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  6971  
  6972  /**
  6973   * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x0A893d9576b9cFD9EF78595963dc973238E78210)
  6974   * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0xe7FACd39531ee3C313330E93B4d7a8B8A3c84Aa4)
  6975   */
  6976  export const portalSenderABI = [
  6977    {
  6978      stateMutability: 'nonpayable',
  6979      type: 'constructor',
  6980      inputs: [
  6981        {
  6982          name: '_portal',
  6983          internalType: 'contract OptimismPortal',
  6984          type: 'address',
  6985        },
  6986      ],
  6987    },
  6988    {
  6989      stateMutability: 'view',
  6990      type: 'function',
  6991      inputs: [],
  6992      name: 'PORTAL',
  6993      outputs: [
  6994        { name: '', internalType: 'contract OptimismPortal', type: 'address' },
  6995      ],
  6996    },
  6997    {
  6998      stateMutability: 'nonpayable',
  6999      type: 'function',
  7000      inputs: [],
  7001      name: 'donate',
  7002      outputs: [],
  7003    },
  7004  ] as const
  7005  
  7006  /**
  7007   * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x0A893d9576b9cFD9EF78595963dc973238E78210)
  7008   * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0xe7FACd39531ee3C313330E93B4d7a8B8A3c84Aa4)
  7009   */
  7010  export const portalSenderAddress = {
  7011    1: '0x0A893d9576b9cFD9EF78595963dc973238E78210',
  7012    5: '0xe7FACd39531ee3C313330E93B4d7a8B8A3c84Aa4',
  7013  } as const
  7014  
  7015  /**
  7016   * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x0A893d9576b9cFD9EF78595963dc973238E78210)
  7017   * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0xe7FACd39531ee3C313330E93B4d7a8B8A3c84Aa4)
  7018   */
  7019  export const portalSenderConfig = {
  7020    address: portalSenderAddress,
  7021    abi: portalSenderABI,
  7022  } as const
  7023  
  7024  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  7025  // ProtocolVersions
  7026  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  7027  
  7028  /**
  7029   * [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x0C24F5098774aA366827D667494e9F889f7cFc08)
  7030   */
  7031  export const protocolVersionsABI = [
  7032    { stateMutability: 'nonpayable', type: 'constructor', inputs: [] },
  7033    {
  7034      type: 'event',
  7035      anonymous: false,
  7036      inputs: [
  7037        {
  7038          name: 'version',
  7039          internalType: 'uint256',
  7040          type: 'uint256',
  7041          indexed: true,
  7042        },
  7043        {
  7044          name: 'updateType',
  7045          internalType: 'enum ProtocolVersions.UpdateType',
  7046          type: 'uint8',
  7047          indexed: true,
  7048        },
  7049        { name: 'data', internalType: 'bytes', type: 'bytes', indexed: false },
  7050      ],
  7051      name: 'ConfigUpdate',
  7052    },
  7053    {
  7054      type: 'event',
  7055      anonymous: false,
  7056      inputs: [
  7057        { name: 'version', internalType: 'uint8', type: 'uint8', indexed: false },
  7058      ],
  7059      name: 'Initialized',
  7060    },
  7061    {
  7062      type: 'event',
  7063      anonymous: false,
  7064      inputs: [
  7065        {
  7066          name: 'previousOwner',
  7067          internalType: 'address',
  7068          type: 'address',
  7069          indexed: true,
  7070        },
  7071        {
  7072          name: 'newOwner',
  7073          internalType: 'address',
  7074          type: 'address',
  7075          indexed: true,
  7076        },
  7077      ],
  7078      name: 'OwnershipTransferred',
  7079    },
  7080    {
  7081      stateMutability: 'view',
  7082      type: 'function',
  7083      inputs: [],
  7084      name: 'RECOMMENDED_SLOT',
  7085      outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
  7086    },
  7087    {
  7088      stateMutability: 'view',
  7089      type: 'function',
  7090      inputs: [],
  7091      name: 'REQUIRED_SLOT',
  7092      outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
  7093    },
  7094    {
  7095      stateMutability: 'view',
  7096      type: 'function',
  7097      inputs: [],
  7098      name: 'VERSION',
  7099      outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
  7100    },
  7101    {
  7102      stateMutability: 'nonpayable',
  7103      type: 'function',
  7104      inputs: [
  7105        { name: '_owner', internalType: 'address', type: 'address' },
  7106        { name: '_required', internalType: 'ProtocolVersion', type: 'uint256' },
  7107        {
  7108          name: '_recommended',
  7109          internalType: 'ProtocolVersion',
  7110          type: 'uint256',
  7111        },
  7112      ],
  7113      name: 'initialize',
  7114      outputs: [],
  7115    },
  7116    {
  7117      stateMutability: 'view',
  7118      type: 'function',
  7119      inputs: [],
  7120      name: 'owner',
  7121      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  7122    },
  7123    {
  7124      stateMutability: 'view',
  7125      type: 'function',
  7126      inputs: [],
  7127      name: 'recommended',
  7128      outputs: [
  7129        { name: 'out_', internalType: 'ProtocolVersion', type: 'uint256' },
  7130      ],
  7131    },
  7132    {
  7133      stateMutability: 'nonpayable',
  7134      type: 'function',
  7135      inputs: [],
  7136      name: 'renounceOwnership',
  7137      outputs: [],
  7138    },
  7139    {
  7140      stateMutability: 'view',
  7141      type: 'function',
  7142      inputs: [],
  7143      name: 'required',
  7144      outputs: [
  7145        { name: 'out_', internalType: 'ProtocolVersion', type: 'uint256' },
  7146      ],
  7147    },
  7148    {
  7149      stateMutability: 'nonpayable',
  7150      type: 'function',
  7151      inputs: [
  7152        {
  7153          name: '_recommended',
  7154          internalType: 'ProtocolVersion',
  7155          type: 'uint256',
  7156        },
  7157      ],
  7158      name: 'setRecommended',
  7159      outputs: [],
  7160    },
  7161    {
  7162      stateMutability: 'nonpayable',
  7163      type: 'function',
  7164      inputs: [
  7165        { name: '_required', internalType: 'ProtocolVersion', type: 'uint256' },
  7166      ],
  7167      name: 'setRequired',
  7168      outputs: [],
  7169    },
  7170    {
  7171      stateMutability: 'nonpayable',
  7172      type: 'function',
  7173      inputs: [{ name: 'newOwner', internalType: 'address', type: 'address' }],
  7174      name: 'transferOwnership',
  7175      outputs: [],
  7176    },
  7177    {
  7178      stateMutability: 'view',
  7179      type: 'function',
  7180      inputs: [],
  7181      name: 'version',
  7182      outputs: [{ name: '', internalType: 'string', type: 'string' }],
  7183    },
  7184  ] as const
  7185  
  7186  /**
  7187   * [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x0C24F5098774aA366827D667494e9F889f7cFc08)
  7188   */
  7189  export const protocolVersionsAddress = {
  7190    5: '0x0C24F5098774aA366827D667494e9F889f7cFc08',
  7191  } as const
  7192  
  7193  /**
  7194   * [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x0C24F5098774aA366827D667494e9F889f7cFc08)
  7195   */
  7196  export const protocolVersionsConfig = {
  7197    address: protocolVersionsAddress,
  7198    abi: protocolVersionsABI,
  7199  } as const
  7200  
  7201  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  7202  // ProxyAdmin
  7203  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  7204  
  7205  /**
  7206   * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x4200000000000000000000000000000000000018)
  7207   * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x4200000000000000000000000000000000000018)
  7208   */
  7209  export const proxyAdminABI = [
  7210    {
  7211      stateMutability: 'nonpayable',
  7212      type: 'constructor',
  7213      inputs: [{ name: '_owner', internalType: 'address', type: 'address' }],
  7214    },
  7215    {
  7216      type: 'event',
  7217      anonymous: false,
  7218      inputs: [
  7219        {
  7220          name: 'previousOwner',
  7221          internalType: 'address',
  7222          type: 'address',
  7223          indexed: true,
  7224        },
  7225        {
  7226          name: 'newOwner',
  7227          internalType: 'address',
  7228          type: 'address',
  7229          indexed: true,
  7230        },
  7231      ],
  7232      name: 'OwnershipTransferred',
  7233    },
  7234    {
  7235      stateMutability: 'view',
  7236      type: 'function',
  7237      inputs: [],
  7238      name: 'addressManager',
  7239      outputs: [
  7240        { name: '', internalType: 'contract AddressManager', type: 'address' },
  7241      ],
  7242    },
  7243    {
  7244      stateMutability: 'nonpayable',
  7245      type: 'function',
  7246      inputs: [
  7247        { name: '_proxy', internalType: 'address payable', type: 'address' },
  7248        { name: '_newAdmin', internalType: 'address', type: 'address' },
  7249      ],
  7250      name: 'changeProxyAdmin',
  7251      outputs: [],
  7252    },
  7253    {
  7254      stateMutability: 'view',
  7255      type: 'function',
  7256      inputs: [
  7257        { name: '_proxy', internalType: 'address payable', type: 'address' },
  7258      ],
  7259      name: 'getProxyAdmin',
  7260      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  7261    },
  7262    {
  7263      stateMutability: 'view',
  7264      type: 'function',
  7265      inputs: [{ name: '_proxy', internalType: 'address', type: 'address' }],
  7266      name: 'getProxyImplementation',
  7267      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  7268    },
  7269    {
  7270      stateMutability: 'view',
  7271      type: 'function',
  7272      inputs: [{ name: '', internalType: 'address', type: 'address' }],
  7273      name: 'implementationName',
  7274      outputs: [{ name: '', internalType: 'string', type: 'string' }],
  7275    },
  7276    {
  7277      stateMutability: 'view',
  7278      type: 'function',
  7279      inputs: [],
  7280      name: 'isUpgrading',
  7281      outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
  7282    },
  7283    {
  7284      stateMutability: 'view',
  7285      type: 'function',
  7286      inputs: [],
  7287      name: 'owner',
  7288      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  7289    },
  7290    {
  7291      stateMutability: 'view',
  7292      type: 'function',
  7293      inputs: [{ name: '', internalType: 'address', type: 'address' }],
  7294      name: 'proxyType',
  7295      outputs: [
  7296        { name: '', internalType: 'enum ProxyAdmin.ProxyType', type: 'uint8' },
  7297      ],
  7298    },
  7299    {
  7300      stateMutability: 'nonpayable',
  7301      type: 'function',
  7302      inputs: [],
  7303      name: 'renounceOwnership',
  7304      outputs: [],
  7305    },
  7306    {
  7307      stateMutability: 'nonpayable',
  7308      type: 'function',
  7309      inputs: [
  7310        { name: '_name', internalType: 'string', type: 'string' },
  7311        { name: '_address', internalType: 'address', type: 'address' },
  7312      ],
  7313      name: 'setAddress',
  7314      outputs: [],
  7315    },
  7316    {
  7317      stateMutability: 'nonpayable',
  7318      type: 'function',
  7319      inputs: [
  7320        {
  7321          name: '_address',
  7322          internalType: 'contract AddressManager',
  7323          type: 'address',
  7324        },
  7325      ],
  7326      name: 'setAddressManager',
  7327      outputs: [],
  7328    },
  7329    {
  7330      stateMutability: 'nonpayable',
  7331      type: 'function',
  7332      inputs: [
  7333        { name: '_address', internalType: 'address', type: 'address' },
  7334        { name: '_name', internalType: 'string', type: 'string' },
  7335      ],
  7336      name: 'setImplementationName',
  7337      outputs: [],
  7338    },
  7339    {
  7340      stateMutability: 'nonpayable',
  7341      type: 'function',
  7342      inputs: [
  7343        { name: '_address', internalType: 'address', type: 'address' },
  7344        {
  7345          name: '_type',
  7346          internalType: 'enum ProxyAdmin.ProxyType',
  7347          type: 'uint8',
  7348        },
  7349      ],
  7350      name: 'setProxyType',
  7351      outputs: [],
  7352    },
  7353    {
  7354      stateMutability: 'nonpayable',
  7355      type: 'function',
  7356      inputs: [{ name: '_upgrading', internalType: 'bool', type: 'bool' }],
  7357      name: 'setUpgrading',
  7358      outputs: [],
  7359    },
  7360    {
  7361      stateMutability: 'nonpayable',
  7362      type: 'function',
  7363      inputs: [{ name: 'newOwner', internalType: 'address', type: 'address' }],
  7364      name: 'transferOwnership',
  7365      outputs: [],
  7366    },
  7367    {
  7368      stateMutability: 'nonpayable',
  7369      type: 'function',
  7370      inputs: [
  7371        { name: '_proxy', internalType: 'address payable', type: 'address' },
  7372        { name: '_implementation', internalType: 'address', type: 'address' },
  7373      ],
  7374      name: 'upgrade',
  7375      outputs: [],
  7376    },
  7377    {
  7378      stateMutability: 'payable',
  7379      type: 'function',
  7380      inputs: [
  7381        { name: '_proxy', internalType: 'address payable', type: 'address' },
  7382        { name: '_implementation', internalType: 'address', type: 'address' },
  7383        { name: '_data', internalType: 'bytes', type: 'bytes' },
  7384      ],
  7385      name: 'upgradeAndCall',
  7386      outputs: [],
  7387    },
  7388  ] as const
  7389  
  7390  /**
  7391   * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x4200000000000000000000000000000000000018)
  7392   * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x4200000000000000000000000000000000000018)
  7393   */
  7394  export const proxyAdminAddress = {
  7395    1: '0x4200000000000000000000000000000000000018',
  7396    5: '0x4200000000000000000000000000000000000018',
  7397  } as const
  7398  
  7399  /**
  7400   * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x4200000000000000000000000000000000000018)
  7401   * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x4200000000000000000000000000000000000018)
  7402   */
  7403  export const proxyAdminConfig = {
  7404    address: proxyAdminAddress,
  7405    abi: proxyAdminABI,
  7406  } as const
  7407  
  7408  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  7409  // SchemaRegistry
  7410  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  7411  
  7412  /**
  7413   * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x6232208d66bAc2305b46b4Cb6BCB3857B298DF13)
  7414   * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x2545fa928d5d278cA75Fd47306e4a89096ff6403)
  7415   */
  7416  export const schemaRegistryABI = [
  7417    { stateMutability: 'nonpayable', type: 'constructor', inputs: [] },
  7418    { type: 'error', inputs: [], name: 'AlreadyExists' },
  7419    {
  7420      type: 'event',
  7421      anonymous: false,
  7422      inputs: [
  7423        { name: 'uid', internalType: 'bytes32', type: 'bytes32', indexed: true },
  7424        {
  7425          name: 'registerer',
  7426          internalType: 'address',
  7427          type: 'address',
  7428          indexed: false,
  7429        },
  7430      ],
  7431      name: 'Registered',
  7432    },
  7433    {
  7434      stateMutability: 'view',
  7435      type: 'function',
  7436      inputs: [{ name: 'uid', internalType: 'bytes32', type: 'bytes32' }],
  7437      name: 'getSchema',
  7438      outputs: [
  7439        {
  7440          name: '',
  7441          internalType: 'struct SchemaRecord',
  7442          type: 'tuple',
  7443          components: [
  7444            { name: 'uid', internalType: 'bytes32', type: 'bytes32' },
  7445            {
  7446              name: 'resolver',
  7447              internalType: 'contract ISchemaResolver',
  7448              type: 'address',
  7449            },
  7450            { name: 'revocable', internalType: 'bool', type: 'bool' },
  7451            { name: 'schema', internalType: 'string', type: 'string' },
  7452          ],
  7453        },
  7454      ],
  7455    },
  7456    {
  7457      stateMutability: 'nonpayable',
  7458      type: 'function',
  7459      inputs: [
  7460        { name: 'schema', internalType: 'string', type: 'string' },
  7461        {
  7462          name: 'resolver',
  7463          internalType: 'contract ISchemaResolver',
  7464          type: 'address',
  7465        },
  7466        { name: 'revocable', internalType: 'bool', type: 'bool' },
  7467      ],
  7468      name: 'register',
  7469      outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
  7470    },
  7471    {
  7472      stateMutability: 'view',
  7473      type: 'function',
  7474      inputs: [],
  7475      name: 'version',
  7476      outputs: [{ name: '', internalType: 'string', type: 'string' }],
  7477    },
  7478  ] as const
  7479  
  7480  /**
  7481   * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x6232208d66bAc2305b46b4Cb6BCB3857B298DF13)
  7482   * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x2545fa928d5d278cA75Fd47306e4a89096ff6403)
  7483   */
  7484  export const schemaRegistryAddress = {
  7485    10: '0x6232208d66bAc2305b46b4Cb6BCB3857B298DF13',
  7486    420: '0x2545fa928d5d278cA75Fd47306e4a89096ff6403',
  7487  } as const
  7488  
  7489  /**
  7490   * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x6232208d66bAc2305b46b4Cb6BCB3857B298DF13)
  7491   * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x2545fa928d5d278cA75Fd47306e4a89096ff6403)
  7492   */
  7493  export const schemaRegistryConfig = {
  7494    address: schemaRegistryAddress,
  7495    abi: schemaRegistryABI,
  7496  } as const
  7497  
  7498  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  7499  // SequencerFeeVault
  7500  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  7501  
  7502  /**
  7503   * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000011)
  7504   */
  7505  export const sequencerFeeVaultABI = [
  7506    {
  7507      stateMutability: 'nonpayable',
  7508      type: 'constructor',
  7509      inputs: [{ name: '_recipient', internalType: 'address', type: 'address' }],
  7510    },
  7511    {
  7512      type: 'event',
  7513      anonymous: false,
  7514      inputs: [
  7515        {
  7516          name: 'value',
  7517          internalType: 'uint256',
  7518          type: 'uint256',
  7519          indexed: false,
  7520        },
  7521        { name: 'to', internalType: 'address', type: 'address', indexed: false },
  7522        {
  7523          name: 'from',
  7524          internalType: 'address',
  7525          type: 'address',
  7526          indexed: false,
  7527        },
  7528      ],
  7529      name: 'Withdrawal',
  7530    },
  7531    {
  7532      stateMutability: 'view',
  7533      type: 'function',
  7534      inputs: [],
  7535      name: 'MIN_WITHDRAWAL_AMOUNT',
  7536      outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
  7537    },
  7538    {
  7539      stateMutability: 'view',
  7540      type: 'function',
  7541      inputs: [],
  7542      name: 'RECIPIENT',
  7543      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  7544    },
  7545    {
  7546      stateMutability: 'view',
  7547      type: 'function',
  7548      inputs: [],
  7549      name: 'l1FeeWallet',
  7550      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  7551    },
  7552    {
  7553      stateMutability: 'view',
  7554      type: 'function',
  7555      inputs: [],
  7556      name: 'totalProcessed',
  7557      outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
  7558    },
  7559    {
  7560      stateMutability: 'view',
  7561      type: 'function',
  7562      inputs: [],
  7563      name: 'version',
  7564      outputs: [{ name: '', internalType: 'string', type: 'string' }],
  7565    },
  7566    {
  7567      stateMutability: 'nonpayable',
  7568      type: 'function',
  7569      inputs: [],
  7570      name: 'withdraw',
  7571      outputs: [],
  7572    },
  7573    { stateMutability: 'payable', type: 'receive' },
  7574  ] as const
  7575  
  7576  /**
  7577   * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000011)
  7578   */
  7579  export const sequencerFeeVaultAddress = {
  7580    420: '0x4200000000000000000000000000000000000011',
  7581  } as const
  7582  
  7583  /**
  7584   * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000011)
  7585   */
  7586  export const sequencerFeeVaultConfig = {
  7587    address: sequencerFeeVaultAddress,
  7588    abi: sequencerFeeVaultABI,
  7589  } as const
  7590  
  7591  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  7592  // SystemConfig
  7593  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  7594  
  7595  /**
  7596   * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x229047fed2591dbec1eF1118d64F7aF3dB9EB290)
  7597   * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0xAe851f927Ee40dE99aaBb7461C00f9622ab91d60)
  7598   */
  7599  export const systemConfigABI = [
  7600    { stateMutability: 'nonpayable', type: 'constructor', inputs: [] },
  7601    {
  7602      type: 'event',
  7603      anonymous: false,
  7604      inputs: [
  7605        {
  7606          name: 'version',
  7607          internalType: 'uint256',
  7608          type: 'uint256',
  7609          indexed: true,
  7610        },
  7611        {
  7612          name: 'updateType',
  7613          internalType: 'enum SystemConfig.UpdateType',
  7614          type: 'uint8',
  7615          indexed: true,
  7616        },
  7617        { name: 'data', internalType: 'bytes', type: 'bytes', indexed: false },
  7618      ],
  7619      name: 'ConfigUpdate',
  7620    },
  7621    {
  7622      type: 'event',
  7623      anonymous: false,
  7624      inputs: [
  7625        { name: 'version', internalType: 'uint8', type: 'uint8', indexed: false },
  7626      ],
  7627      name: 'Initialized',
  7628    },
  7629    {
  7630      type: 'event',
  7631      anonymous: false,
  7632      inputs: [
  7633        {
  7634          name: 'previousOwner',
  7635          internalType: 'address',
  7636          type: 'address',
  7637          indexed: true,
  7638        },
  7639        {
  7640          name: 'newOwner',
  7641          internalType: 'address',
  7642          type: 'address',
  7643          indexed: true,
  7644        },
  7645      ],
  7646      name: 'OwnershipTransferred',
  7647    },
  7648    {
  7649      stateMutability: 'view',
  7650      type: 'function',
  7651      inputs: [],
  7652      name: 'BATCH_INBOX_SLOT',
  7653      outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
  7654    },
  7655    {
  7656      stateMutability: 'view',
  7657      type: 'function',
  7658      inputs: [],
  7659      name: 'L1_CROSS_DOMAIN_MESSENGER_SLOT',
  7660      outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
  7661    },
  7662    {
  7663      stateMutability: 'view',
  7664      type: 'function',
  7665      inputs: [],
  7666      name: 'L1_ERC_721_BRIDGE_SLOT',
  7667      outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
  7668    },
  7669    {
  7670      stateMutability: 'view',
  7671      type: 'function',
  7672      inputs: [],
  7673      name: 'L1_STANDARD_BRIDGE_SLOT',
  7674      outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
  7675    },
  7676    {
  7677      stateMutability: 'view',
  7678      type: 'function',
  7679      inputs: [],
  7680      name: 'L2_OUTPUT_ORACLE_SLOT',
  7681      outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
  7682    },
  7683    {
  7684      stateMutability: 'view',
  7685      type: 'function',
  7686      inputs: [],
  7687      name: 'OPTIMISM_MINTABLE_ERC20_FACTORY_SLOT',
  7688      outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
  7689    },
  7690    {
  7691      stateMutability: 'view',
  7692      type: 'function',
  7693      inputs: [],
  7694      name: 'OPTIMISM_PORTAL_SLOT',
  7695      outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
  7696    },
  7697    {
  7698      stateMutability: 'view',
  7699      type: 'function',
  7700      inputs: [],
  7701      name: 'UNSAFE_BLOCK_SIGNER_SLOT',
  7702      outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
  7703    },
  7704    {
  7705      stateMutability: 'view',
  7706      type: 'function',
  7707      inputs: [],
  7708      name: 'VERSION',
  7709      outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
  7710    },
  7711    {
  7712      stateMutability: 'view',
  7713      type: 'function',
  7714      inputs: [],
  7715      name: 'batchInbox',
  7716      outputs: [{ name: 'addr_', internalType: 'address', type: 'address' }],
  7717    },
  7718    {
  7719      stateMutability: 'view',
  7720      type: 'function',
  7721      inputs: [],
  7722      name: 'batcherHash',
  7723      outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
  7724    },
  7725    {
  7726      stateMutability: 'view',
  7727      type: 'function',
  7728      inputs: [],
  7729      name: 'gasLimit',
  7730      outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }],
  7731    },
  7732    {
  7733      stateMutability: 'nonpayable',
  7734      type: 'function',
  7735      inputs: [
  7736        { name: '_owner', internalType: 'address', type: 'address' },
  7737        { name: '_overhead', internalType: 'uint256', type: 'uint256' },
  7738        { name: '_scalar', internalType: 'uint256', type: 'uint256' },
  7739        { name: '_batcherHash', internalType: 'bytes32', type: 'bytes32' },
  7740        { name: '_gasLimit', internalType: 'uint64', type: 'uint64' },
  7741        { name: '_unsafeBlockSigner', internalType: 'address', type: 'address' },
  7742        {
  7743          name: '_config',
  7744          internalType: 'struct ResourceMetering.ResourceConfig',
  7745          type: 'tuple',
  7746          components: [
  7747            { name: 'maxResourceLimit', internalType: 'uint32', type: 'uint32' },
  7748            {
  7749              name: 'elasticityMultiplier',
  7750              internalType: 'uint8',
  7751              type: 'uint8',
  7752            },
  7753            {
  7754              name: 'baseFeeMaxChangeDenominator',
  7755              internalType: 'uint8',
  7756              type: 'uint8',
  7757            },
  7758            { name: 'minimumBaseFee', internalType: 'uint32', type: 'uint32' },
  7759            { name: 'systemTxMaxGas', internalType: 'uint32', type: 'uint32' },
  7760            { name: 'maximumBaseFee', internalType: 'uint128', type: 'uint128' },
  7761          ],
  7762        },
  7763        { name: '_startBlock', internalType: 'uint256', type: 'uint256' },
  7764        { name: '_batchInbox', internalType: 'address', type: 'address' },
  7765        {
  7766          name: '_addresses',
  7767          internalType: 'struct SystemConfig.Addresses',
  7768          type: 'tuple',
  7769          components: [
  7770            {
  7771              name: 'l1CrossDomainMessenger',
  7772              internalType: 'address',
  7773              type: 'address',
  7774            },
  7775            { name: 'l1ERC721Bridge', internalType: 'address', type: 'address' },
  7776            {
  7777              name: 'l1StandardBridge',
  7778              internalType: 'address',
  7779              type: 'address',
  7780            },
  7781            { name: 'l2OutputOracle', internalType: 'address', type: 'address' },
  7782            { name: 'optimismPortal', internalType: 'address', type: 'address' },
  7783            {
  7784              name: 'optimismMintableERC20Factory',
  7785              internalType: 'address',
  7786              type: 'address',
  7787            },
  7788          ],
  7789        },
  7790      ],
  7791      name: 'initialize',
  7792      outputs: [],
  7793    },
  7794    {
  7795      stateMutability: 'view',
  7796      type: 'function',
  7797      inputs: [],
  7798      name: 'l1CrossDomainMessenger',
  7799      outputs: [{ name: 'addr_', internalType: 'address', type: 'address' }],
  7800    },
  7801    {
  7802      stateMutability: 'view',
  7803      type: 'function',
  7804      inputs: [],
  7805      name: 'l1ERC721Bridge',
  7806      outputs: [{ name: 'addr_', internalType: 'address', type: 'address' }],
  7807    },
  7808    {
  7809      stateMutability: 'view',
  7810      type: 'function',
  7811      inputs: [],
  7812      name: 'l1StandardBridge',
  7813      outputs: [{ name: 'addr_', internalType: 'address', type: 'address' }],
  7814    },
  7815    {
  7816      stateMutability: 'view',
  7817      type: 'function',
  7818      inputs: [],
  7819      name: 'l2OutputOracle',
  7820      outputs: [{ name: 'addr_', internalType: 'address', type: 'address' }],
  7821    },
  7822    {
  7823      stateMutability: 'view',
  7824      type: 'function',
  7825      inputs: [],
  7826      name: 'minimumGasLimit',
  7827      outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }],
  7828    },
  7829    {
  7830      stateMutability: 'view',
  7831      type: 'function',
  7832      inputs: [],
  7833      name: 'optimismMintableERC20Factory',
  7834      outputs: [{ name: 'addr_', internalType: 'address', type: 'address' }],
  7835    },
  7836    {
  7837      stateMutability: 'view',
  7838      type: 'function',
  7839      inputs: [],
  7840      name: 'optimismPortal',
  7841      outputs: [{ name: 'addr_', internalType: 'address', type: 'address' }],
  7842    },
  7843    {
  7844      stateMutability: 'view',
  7845      type: 'function',
  7846      inputs: [],
  7847      name: 'overhead',
  7848      outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
  7849    },
  7850    {
  7851      stateMutability: 'view',
  7852      type: 'function',
  7853      inputs: [],
  7854      name: 'owner',
  7855      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  7856    },
  7857    {
  7858      stateMutability: 'nonpayable',
  7859      type: 'function',
  7860      inputs: [],
  7861      name: 'renounceOwnership',
  7862      outputs: [],
  7863    },
  7864    {
  7865      stateMutability: 'view',
  7866      type: 'function',
  7867      inputs: [],
  7868      name: 'resourceConfig',
  7869      outputs: [
  7870        {
  7871          name: '',
  7872          internalType: 'struct ResourceMetering.ResourceConfig',
  7873          type: 'tuple',
  7874          components: [
  7875            { name: 'maxResourceLimit', internalType: 'uint32', type: 'uint32' },
  7876            {
  7877              name: 'elasticityMultiplier',
  7878              internalType: 'uint8',
  7879              type: 'uint8',
  7880            },
  7881            {
  7882              name: 'baseFeeMaxChangeDenominator',
  7883              internalType: 'uint8',
  7884              type: 'uint8',
  7885            },
  7886            { name: 'minimumBaseFee', internalType: 'uint32', type: 'uint32' },
  7887            { name: 'systemTxMaxGas', internalType: 'uint32', type: 'uint32' },
  7888            { name: 'maximumBaseFee', internalType: 'uint128', type: 'uint128' },
  7889          ],
  7890        },
  7891      ],
  7892    },
  7893    {
  7894      stateMutability: 'view',
  7895      type: 'function',
  7896      inputs: [],
  7897      name: 'scalar',
  7898      outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
  7899    },
  7900    {
  7901      stateMutability: 'nonpayable',
  7902      type: 'function',
  7903      inputs: [
  7904        { name: '_batcherHash', internalType: 'bytes32', type: 'bytes32' },
  7905      ],
  7906      name: 'setBatcherHash',
  7907      outputs: [],
  7908    },
  7909    {
  7910      stateMutability: 'nonpayable',
  7911      type: 'function',
  7912      inputs: [
  7913        { name: '_overhead', internalType: 'uint256', type: 'uint256' },
  7914        { name: '_scalar', internalType: 'uint256', type: 'uint256' },
  7915      ],
  7916      name: 'setGasConfig',
  7917      outputs: [],
  7918    },
  7919    {
  7920      stateMutability: 'nonpayable',
  7921      type: 'function',
  7922      inputs: [{ name: '_gasLimit', internalType: 'uint64', type: 'uint64' }],
  7923      name: 'setGasLimit',
  7924      outputs: [],
  7925    },
  7926    {
  7927      stateMutability: 'nonpayable',
  7928      type: 'function',
  7929      inputs: [
  7930        {
  7931          name: '_config',
  7932          internalType: 'struct ResourceMetering.ResourceConfig',
  7933          type: 'tuple',
  7934          components: [
  7935            { name: 'maxResourceLimit', internalType: 'uint32', type: 'uint32' },
  7936            {
  7937              name: 'elasticityMultiplier',
  7938              internalType: 'uint8',
  7939              type: 'uint8',
  7940            },
  7941            {
  7942              name: 'baseFeeMaxChangeDenominator',
  7943              internalType: 'uint8',
  7944              type: 'uint8',
  7945            },
  7946            { name: 'minimumBaseFee', internalType: 'uint32', type: 'uint32' },
  7947            { name: 'systemTxMaxGas', internalType: 'uint32', type: 'uint32' },
  7948            { name: 'maximumBaseFee', internalType: 'uint128', type: 'uint128' },
  7949          ],
  7950        },
  7951      ],
  7952      name: 'setResourceConfig',
  7953      outputs: [],
  7954    },
  7955    {
  7956      stateMutability: 'nonpayable',
  7957      type: 'function',
  7958      inputs: [
  7959        { name: '_unsafeBlockSigner', internalType: 'address', type: 'address' },
  7960      ],
  7961      name: 'setUnsafeBlockSigner',
  7962      outputs: [],
  7963    },
  7964    {
  7965      stateMutability: 'view',
  7966      type: 'function',
  7967      inputs: [],
  7968      name: 'startBlock',
  7969      outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
  7970    },
  7971    {
  7972      stateMutability: 'nonpayable',
  7973      type: 'function',
  7974      inputs: [{ name: 'newOwner', internalType: 'address', type: 'address' }],
  7975      name: 'transferOwnership',
  7976      outputs: [],
  7977    },
  7978    {
  7979      stateMutability: 'view',
  7980      type: 'function',
  7981      inputs: [],
  7982      name: 'unsafeBlockSigner',
  7983      outputs: [{ name: 'addr_', internalType: 'address', type: 'address' }],
  7984    },
  7985    {
  7986      stateMutability: 'view',
  7987      type: 'function',
  7988      inputs: [],
  7989      name: 'version',
  7990      outputs: [{ name: '', internalType: 'string', type: 'string' }],
  7991    },
  7992  ] as const
  7993  
  7994  /**
  7995   * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x229047fed2591dbec1eF1118d64F7aF3dB9EB290)
  7996   * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0xAe851f927Ee40dE99aaBb7461C00f9622ab91d60)
  7997   */
  7998  export const systemConfigAddress = {
  7999    1: '0x229047fed2591dbec1eF1118d64F7aF3dB9EB290',
  8000    5: '0xAe851f927Ee40dE99aaBb7461C00f9622ab91d60',
  8001  } as const
  8002  
  8003  /**
  8004   * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x229047fed2591dbec1eF1118d64F7aF3dB9EB290)
  8005   * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0xAe851f927Ee40dE99aaBb7461C00f9622ab91d60)
  8006   */
  8007  export const systemConfigConfig = {
  8008    address: systemConfigAddress,
  8009    abi: systemConfigABI,
  8010  } as const
  8011  
  8012  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  8013  // SystemDictator
  8014  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  8015  
  8016  /**
  8017   * [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0xB4453CEb33d2e67FA244A24acf2E50CEF31F53cB)
  8018   */
  8019  export const systemDictatorABI = [
  8020    { stateMutability: 'nonpayable', type: 'constructor', inputs: [] },
  8021    {
  8022      type: 'event',
  8023      anonymous: false,
  8024      inputs: [
  8025        { name: 'version', internalType: 'uint8', type: 'uint8', indexed: false },
  8026      ],
  8027      name: 'Initialized',
  8028    },
  8029    {
  8030      type: 'event',
  8031      anonymous: false,
  8032      inputs: [
  8033        {
  8034          name: 'previousOwner',
  8035          internalType: 'address',
  8036          type: 'address',
  8037          indexed: true,
  8038        },
  8039        {
  8040          name: 'newOwner',
  8041          internalType: 'address',
  8042          type: 'address',
  8043          indexed: true,
  8044        },
  8045      ],
  8046      name: 'OwnershipTransferred',
  8047    },
  8048    {
  8049      stateMutability: 'view',
  8050      type: 'function',
  8051      inputs: [],
  8052      name: 'EXIT_1_NO_RETURN_STEP',
  8053      outputs: [{ name: '', internalType: 'uint8', type: 'uint8' }],
  8054    },
  8055    {
  8056      stateMutability: 'view',
  8057      type: 'function',
  8058      inputs: [],
  8059      name: 'PROXY_TRANSFER_STEP',
  8060      outputs: [{ name: '', internalType: 'uint8', type: 'uint8' }],
  8061    },
  8062    {
  8063      stateMutability: 'view',
  8064      type: 'function',
  8065      inputs: [],
  8066      name: 'config',
  8067      outputs: [
  8068        {
  8069          name: 'globalConfig',
  8070          internalType: 'struct SystemDictator.GlobalConfig',
  8071          type: 'tuple',
  8072          components: [
  8073            {
  8074              name: 'addressManager',
  8075              internalType: 'contract AddressManager',
  8076              type: 'address',
  8077            },
  8078            {
  8079              name: 'proxyAdmin',
  8080              internalType: 'contract ProxyAdmin',
  8081              type: 'address',
  8082            },
  8083            { name: 'controller', internalType: 'address', type: 'address' },
  8084            { name: 'finalOwner', internalType: 'address', type: 'address' },
  8085          ],
  8086        },
  8087        {
  8088          name: 'proxyAddressConfig',
  8089          internalType: 'struct SystemDictator.ProxyAddressConfig',
  8090          type: 'tuple',
  8091          components: [
  8092            {
  8093              name: 'l2OutputOracleProxy',
  8094              internalType: 'address',
  8095              type: 'address',
  8096            },
  8097            {
  8098              name: 'optimismPortalProxy',
  8099              internalType: 'address',
  8100              type: 'address',
  8101            },
  8102            {
  8103              name: 'l1CrossDomainMessengerProxy',
  8104              internalType: 'address',
  8105              type: 'address',
  8106            },
  8107            {
  8108              name: 'l1StandardBridgeProxy',
  8109              internalType: 'address',
  8110              type: 'address',
  8111            },
  8112            {
  8113              name: 'optimismMintableERC20FactoryProxy',
  8114              internalType: 'address',
  8115              type: 'address',
  8116            },
  8117            {
  8118              name: 'l1ERC721BridgeProxy',
  8119              internalType: 'address',
  8120              type: 'address',
  8121            },
  8122            {
  8123              name: 'systemConfigProxy',
  8124              internalType: 'address',
  8125              type: 'address',
  8126            },
  8127          ],
  8128        },
  8129        {
  8130          name: 'implementationAddressConfig',
  8131          internalType: 'struct SystemDictator.ImplementationAddressConfig',
  8132          type: 'tuple',
  8133          components: [
  8134            {
  8135              name: 'l2OutputOracleImpl',
  8136              internalType: 'contract L2OutputOracle',
  8137              type: 'address',
  8138            },
  8139            {
  8140              name: 'optimismPortalImpl',
  8141              internalType: 'contract OptimismPortal',
  8142              type: 'address',
  8143            },
  8144            {
  8145              name: 'l1CrossDomainMessengerImpl',
  8146              internalType: 'contract L1CrossDomainMessenger',
  8147              type: 'address',
  8148            },
  8149            {
  8150              name: 'l1StandardBridgeImpl',
  8151              internalType: 'contract L1StandardBridge',
  8152              type: 'address',
  8153            },
  8154            {
  8155              name: 'optimismMintableERC20FactoryImpl',
  8156              internalType: 'contract OptimismMintableERC20Factory',
  8157              type: 'address',
  8158            },
  8159            {
  8160              name: 'l1ERC721BridgeImpl',
  8161              internalType: 'contract L1ERC721Bridge',
  8162              type: 'address',
  8163            },
  8164            {
  8165              name: 'portalSenderImpl',
  8166              internalType: 'contract PortalSender',
  8167              type: 'address',
  8168            },
  8169            {
  8170              name: 'systemConfigImpl',
  8171              internalType: 'contract SystemConfig',
  8172              type: 'address',
  8173            },
  8174          ],
  8175        },
  8176        {
  8177          name: 'systemConfigConfig',
  8178          internalType: 'struct SystemDictator.SystemConfigConfig',
  8179          type: 'tuple',
  8180          components: [
  8181            { name: 'owner', internalType: 'address', type: 'address' },
  8182            { name: 'overhead', internalType: 'uint256', type: 'uint256' },
  8183            { name: 'scalar', internalType: 'uint256', type: 'uint256' },
  8184            { name: 'batcherHash', internalType: 'bytes32', type: 'bytes32' },
  8185            { name: 'gasLimit', internalType: 'uint64', type: 'uint64' },
  8186            {
  8187              name: 'unsafeBlockSigner',
  8188              internalType: 'address',
  8189              type: 'address',
  8190            },
  8191            {
  8192              name: 'resourceConfig',
  8193              internalType: 'struct ResourceMetering.ResourceConfig',
  8194              type: 'tuple',
  8195              components: [
  8196                {
  8197                  name: 'maxResourceLimit',
  8198                  internalType: 'uint32',
  8199                  type: 'uint32',
  8200                },
  8201                {
  8202                  name: 'elasticityMultiplier',
  8203                  internalType: 'uint8',
  8204                  type: 'uint8',
  8205                },
  8206                {
  8207                  name: 'baseFeeMaxChangeDenominator',
  8208                  internalType: 'uint8',
  8209                  type: 'uint8',
  8210                },
  8211                {
  8212                  name: 'minimumBaseFee',
  8213                  internalType: 'uint32',
  8214                  type: 'uint32',
  8215                },
  8216                {
  8217                  name: 'systemTxMaxGas',
  8218                  internalType: 'uint32',
  8219                  type: 'uint32',
  8220                },
  8221                {
  8222                  name: 'maximumBaseFee',
  8223                  internalType: 'uint128',
  8224                  type: 'uint128',
  8225                },
  8226              ],
  8227            },
  8228          ],
  8229        },
  8230      ],
  8231    },
  8232    {
  8233      stateMutability: 'view',
  8234      type: 'function',
  8235      inputs: [],
  8236      name: 'currentStep',
  8237      outputs: [{ name: '', internalType: 'uint8', type: 'uint8' }],
  8238    },
  8239    {
  8240      stateMutability: 'view',
  8241      type: 'function',
  8242      inputs: [],
  8243      name: 'dynamicConfigSet',
  8244      outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
  8245    },
  8246    {
  8247      stateMutability: 'nonpayable',
  8248      type: 'function',
  8249      inputs: [],
  8250      name: 'exit1',
  8251      outputs: [],
  8252    },
  8253    {
  8254      stateMutability: 'view',
  8255      type: 'function',
  8256      inputs: [],
  8257      name: 'exited',
  8258      outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
  8259    },
  8260    {
  8261      stateMutability: 'nonpayable',
  8262      type: 'function',
  8263      inputs: [],
  8264      name: 'finalize',
  8265      outputs: [],
  8266    },
  8267    {
  8268      stateMutability: 'view',
  8269      type: 'function',
  8270      inputs: [],
  8271      name: 'finalized',
  8272      outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
  8273    },
  8274    {
  8275      stateMutability: 'nonpayable',
  8276      type: 'function',
  8277      inputs: [
  8278        {
  8279          name: '_config',
  8280          internalType: 'struct SystemDictator.DeployConfig',
  8281          type: 'tuple',
  8282          components: [
  8283            {
  8284              name: 'globalConfig',
  8285              internalType: 'struct SystemDictator.GlobalConfig',
  8286              type: 'tuple',
  8287              components: [
  8288                {
  8289                  name: 'addressManager',
  8290                  internalType: 'contract AddressManager',
  8291                  type: 'address',
  8292                },
  8293                {
  8294                  name: 'proxyAdmin',
  8295                  internalType: 'contract ProxyAdmin',
  8296                  type: 'address',
  8297                },
  8298                { name: 'controller', internalType: 'address', type: 'address' },
  8299                { name: 'finalOwner', internalType: 'address', type: 'address' },
  8300              ],
  8301            },
  8302            {
  8303              name: 'proxyAddressConfig',
  8304              internalType: 'struct SystemDictator.ProxyAddressConfig',
  8305              type: 'tuple',
  8306              components: [
  8307                {
  8308                  name: 'l2OutputOracleProxy',
  8309                  internalType: 'address',
  8310                  type: 'address',
  8311                },
  8312                {
  8313                  name: 'optimismPortalProxy',
  8314                  internalType: 'address',
  8315                  type: 'address',
  8316                },
  8317                {
  8318                  name: 'l1CrossDomainMessengerProxy',
  8319                  internalType: 'address',
  8320                  type: 'address',
  8321                },
  8322                {
  8323                  name: 'l1StandardBridgeProxy',
  8324                  internalType: 'address',
  8325                  type: 'address',
  8326                },
  8327                {
  8328                  name: 'optimismMintableERC20FactoryProxy',
  8329                  internalType: 'address',
  8330                  type: 'address',
  8331                },
  8332                {
  8333                  name: 'l1ERC721BridgeProxy',
  8334                  internalType: 'address',
  8335                  type: 'address',
  8336                },
  8337                {
  8338                  name: 'systemConfigProxy',
  8339                  internalType: 'address',
  8340                  type: 'address',
  8341                },
  8342              ],
  8343            },
  8344            {
  8345              name: 'implementationAddressConfig',
  8346              internalType: 'struct SystemDictator.ImplementationAddressConfig',
  8347              type: 'tuple',
  8348              components: [
  8349                {
  8350                  name: 'l2OutputOracleImpl',
  8351                  internalType: 'contract L2OutputOracle',
  8352                  type: 'address',
  8353                },
  8354                {
  8355                  name: 'optimismPortalImpl',
  8356                  internalType: 'contract OptimismPortal',
  8357                  type: 'address',
  8358                },
  8359                {
  8360                  name: 'l1CrossDomainMessengerImpl',
  8361                  internalType: 'contract L1CrossDomainMessenger',
  8362                  type: 'address',
  8363                },
  8364                {
  8365                  name: 'l1StandardBridgeImpl',
  8366                  internalType: 'contract L1StandardBridge',
  8367                  type: 'address',
  8368                },
  8369                {
  8370                  name: 'optimismMintableERC20FactoryImpl',
  8371                  internalType: 'contract OptimismMintableERC20Factory',
  8372                  type: 'address',
  8373                },
  8374                {
  8375                  name: 'l1ERC721BridgeImpl',
  8376                  internalType: 'contract L1ERC721Bridge',
  8377                  type: 'address',
  8378                },
  8379                {
  8380                  name: 'portalSenderImpl',
  8381                  internalType: 'contract PortalSender',
  8382                  type: 'address',
  8383                },
  8384                {
  8385                  name: 'systemConfigImpl',
  8386                  internalType: 'contract SystemConfig',
  8387                  type: 'address',
  8388                },
  8389              ],
  8390            },
  8391            {
  8392              name: 'systemConfigConfig',
  8393              internalType: 'struct SystemDictator.SystemConfigConfig',
  8394              type: 'tuple',
  8395              components: [
  8396                { name: 'owner', internalType: 'address', type: 'address' },
  8397                { name: 'overhead', internalType: 'uint256', type: 'uint256' },
  8398                { name: 'scalar', internalType: 'uint256', type: 'uint256' },
  8399                { name: 'batcherHash', internalType: 'bytes32', type: 'bytes32' },
  8400                { name: 'gasLimit', internalType: 'uint64', type: 'uint64' },
  8401                {
  8402                  name: 'unsafeBlockSigner',
  8403                  internalType: 'address',
  8404                  type: 'address',
  8405                },
  8406                {
  8407                  name: 'resourceConfig',
  8408                  internalType: 'struct ResourceMetering.ResourceConfig',
  8409                  type: 'tuple',
  8410                  components: [
  8411                    {
  8412                      name: 'maxResourceLimit',
  8413                      internalType: 'uint32',
  8414                      type: 'uint32',
  8415                    },
  8416                    {
  8417                      name: 'elasticityMultiplier',
  8418                      internalType: 'uint8',
  8419                      type: 'uint8',
  8420                    },
  8421                    {
  8422                      name: 'baseFeeMaxChangeDenominator',
  8423                      internalType: 'uint8',
  8424                      type: 'uint8',
  8425                    },
  8426                    {
  8427                      name: 'minimumBaseFee',
  8428                      internalType: 'uint32',
  8429                      type: 'uint32',
  8430                    },
  8431                    {
  8432                      name: 'systemTxMaxGas',
  8433                      internalType: 'uint32',
  8434                      type: 'uint32',
  8435                    },
  8436                    {
  8437                      name: 'maximumBaseFee',
  8438                      internalType: 'uint128',
  8439                      type: 'uint128',
  8440                    },
  8441                  ],
  8442                },
  8443              ],
  8444            },
  8445          ],
  8446        },
  8447      ],
  8448      name: 'initialize',
  8449      outputs: [],
  8450    },
  8451    {
  8452      stateMutability: 'view',
  8453      type: 'function',
  8454      inputs: [],
  8455      name: 'l2OutputOracleDynamicConfig',
  8456      outputs: [
  8457        {
  8458          name: 'l2OutputOracleStartingBlockNumber',
  8459          internalType: 'uint256',
  8460          type: 'uint256',
  8461        },
  8462        {
  8463          name: 'l2OutputOracleStartingTimestamp',
  8464          internalType: 'uint256',
  8465          type: 'uint256',
  8466        },
  8467      ],
  8468    },
  8469    {
  8470      stateMutability: 'view',
  8471      type: 'function',
  8472      inputs: [],
  8473      name: 'oldL1CrossDomainMessenger',
  8474      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  8475    },
  8476    {
  8477      stateMutability: 'view',
  8478      type: 'function',
  8479      inputs: [],
  8480      name: 'optimismPortalDynamicConfig',
  8481      outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
  8482    },
  8483    {
  8484      stateMutability: 'view',
  8485      type: 'function',
  8486      inputs: [],
  8487      name: 'owner',
  8488      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  8489    },
  8490    {
  8491      stateMutability: 'nonpayable',
  8492      type: 'function',
  8493      inputs: [],
  8494      name: 'phase1',
  8495      outputs: [],
  8496    },
  8497    {
  8498      stateMutability: 'nonpayable',
  8499      type: 'function',
  8500      inputs: [],
  8501      name: 'phase2',
  8502      outputs: [],
  8503    },
  8504    {
  8505      stateMutability: 'nonpayable',
  8506      type: 'function',
  8507      inputs: [],
  8508      name: 'renounceOwnership',
  8509      outputs: [],
  8510    },
  8511    {
  8512      stateMutability: 'nonpayable',
  8513      type: 'function',
  8514      inputs: [],
  8515      name: 'step1',
  8516      outputs: [],
  8517    },
  8518    {
  8519      stateMutability: 'nonpayable',
  8520      type: 'function',
  8521      inputs: [],
  8522      name: 'step2',
  8523      outputs: [],
  8524    },
  8525    {
  8526      stateMutability: 'nonpayable',
  8527      type: 'function',
  8528      inputs: [],
  8529      name: 'step3',
  8530      outputs: [],
  8531    },
  8532    {
  8533      stateMutability: 'nonpayable',
  8534      type: 'function',
  8535      inputs: [],
  8536      name: 'step4',
  8537      outputs: [],
  8538    },
  8539    {
  8540      stateMutability: 'nonpayable',
  8541      type: 'function',
  8542      inputs: [],
  8543      name: 'step5',
  8544      outputs: [],
  8545    },
  8546    {
  8547      stateMutability: 'nonpayable',
  8548      type: 'function',
  8549      inputs: [{ name: 'newOwner', internalType: 'address', type: 'address' }],
  8550      name: 'transferOwnership',
  8551      outputs: [],
  8552    },
  8553    {
  8554      stateMutability: 'nonpayable',
  8555      type: 'function',
  8556      inputs: [
  8557        {
  8558          name: '_l2OutputOracleDynamicConfig',
  8559          internalType: 'struct SystemDictator.L2OutputOracleDynamicConfig',
  8560          type: 'tuple',
  8561          components: [
  8562            {
  8563              name: 'l2OutputOracleStartingBlockNumber',
  8564              internalType: 'uint256',
  8565              type: 'uint256',
  8566            },
  8567            {
  8568              name: 'l2OutputOracleStartingTimestamp',
  8569              internalType: 'uint256',
  8570              type: 'uint256',
  8571            },
  8572          ],
  8573        },
  8574        {
  8575          name: '_optimismPortalDynamicConfig',
  8576          internalType: 'bool',
  8577          type: 'bool',
  8578        },
  8579      ],
  8580      name: 'updateDynamicConfig',
  8581      outputs: [],
  8582    },
  8583  ] as const
  8584  
  8585  /**
  8586   * [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0xB4453CEb33d2e67FA244A24acf2E50CEF31F53cB)
  8587   */
  8588  export const systemDictatorAddress = {
  8589    1: '0xB4453CEb33d2e67FA244A24acf2E50CEF31F53cB',
  8590  } as const
  8591  
  8592  /**
  8593   * [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0xB4453CEb33d2e67FA244A24acf2E50CEF31F53cB)
  8594   */
  8595  export const systemDictatorConfig = {
  8596    address: systemDictatorAddress,
  8597    abi: systemDictatorABI,
  8598  } as const
  8599  
  8600  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  8601  // SystemDictator_goerli
  8602  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  8603  
  8604  /**
  8605   * [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x1f0613A44c9a8ECE7B3A2e0CdBdF0F5B47A50971)
  8606   */
  8607  export const systemDictatorGoerliABI = [
  8608    {
  8609      type: 'event',
  8610      anonymous: false,
  8611      inputs: [
  8612        { name: 'version', internalType: 'uint8', type: 'uint8', indexed: false },
  8613      ],
  8614      name: 'Initialized',
  8615    },
  8616    {
  8617      type: 'event',
  8618      anonymous: false,
  8619      inputs: [
  8620        {
  8621          name: 'previousOwner',
  8622          internalType: 'address',
  8623          type: 'address',
  8624          indexed: true,
  8625        },
  8626        {
  8627          name: 'newOwner',
  8628          internalType: 'address',
  8629          type: 'address',
  8630          indexed: true,
  8631        },
  8632      ],
  8633      name: 'OwnershipTransferred',
  8634    },
  8635    {
  8636      stateMutability: 'view',
  8637      type: 'function',
  8638      inputs: [],
  8639      name: 'EXIT_1_NO_RETURN_STEP',
  8640      outputs: [{ name: '', internalType: 'uint8', type: 'uint8' }],
  8641    },
  8642    {
  8643      stateMutability: 'view',
  8644      type: 'function',
  8645      inputs: [],
  8646      name: 'PROXY_TRANSFER_STEP',
  8647      outputs: [{ name: '', internalType: 'uint8', type: 'uint8' }],
  8648    },
  8649    {
  8650      stateMutability: 'view',
  8651      type: 'function',
  8652      inputs: [],
  8653      name: 'config',
  8654      outputs: [
  8655        {
  8656          name: 'globalConfig',
  8657          internalType: 'struct SystemDictator.GlobalConfig',
  8658          type: 'tuple',
  8659          components: [
  8660            {
  8661              name: 'addressManager',
  8662              internalType: 'contract AddressManager',
  8663              type: 'address',
  8664            },
  8665            {
  8666              name: 'proxyAdmin',
  8667              internalType: 'contract ProxyAdmin',
  8668              type: 'address',
  8669            },
  8670            { name: 'controller', internalType: 'address', type: 'address' },
  8671            { name: 'finalOwner', internalType: 'address', type: 'address' },
  8672          ],
  8673        },
  8674        {
  8675          name: 'proxyAddressConfig',
  8676          internalType: 'struct SystemDictator.ProxyAddressConfig',
  8677          type: 'tuple',
  8678          components: [
  8679            {
  8680              name: 'l2OutputOracleProxy',
  8681              internalType: 'address',
  8682              type: 'address',
  8683            },
  8684            {
  8685              name: 'optimismPortalProxy',
  8686              internalType: 'address',
  8687              type: 'address',
  8688            },
  8689            {
  8690              name: 'l1CrossDomainMessengerProxy',
  8691              internalType: 'address',
  8692              type: 'address',
  8693            },
  8694            {
  8695              name: 'l1StandardBridgeProxy',
  8696              internalType: 'address',
  8697              type: 'address',
  8698            },
  8699            {
  8700              name: 'optimismMintableERC20FactoryProxy',
  8701              internalType: 'address',
  8702              type: 'address',
  8703            },
  8704            {
  8705              name: 'l1ERC721BridgeProxy',
  8706              internalType: 'address',
  8707              type: 'address',
  8708            },
  8709            {
  8710              name: 'systemConfigProxy',
  8711              internalType: 'address',
  8712              type: 'address',
  8713            },
  8714          ],
  8715        },
  8716        {
  8717          name: 'implementationAddressConfig',
  8718          internalType: 'struct SystemDictator.ImplementationAddressConfig',
  8719          type: 'tuple',
  8720          components: [
  8721            {
  8722              name: 'l2OutputOracleImpl',
  8723              internalType: 'contract L2OutputOracle',
  8724              type: 'address',
  8725            },
  8726            {
  8727              name: 'optimismPortalImpl',
  8728              internalType: 'contract OptimismPortal',
  8729              type: 'address',
  8730            },
  8731            {
  8732              name: 'l1CrossDomainMessengerImpl',
  8733              internalType: 'contract L1CrossDomainMessenger',
  8734              type: 'address',
  8735            },
  8736            {
  8737              name: 'l1StandardBridgeImpl',
  8738              internalType: 'contract L1StandardBridge',
  8739              type: 'address',
  8740            },
  8741            {
  8742              name: 'optimismMintableERC20FactoryImpl',
  8743              internalType: 'contract OptimismMintableERC20Factory',
  8744              type: 'address',
  8745            },
  8746            {
  8747              name: 'l1ERC721BridgeImpl',
  8748              internalType: 'contract L1ERC721Bridge',
  8749              type: 'address',
  8750            },
  8751            {
  8752              name: 'portalSenderImpl',
  8753              internalType: 'contract PortalSender',
  8754              type: 'address',
  8755            },
  8756            {
  8757              name: 'systemConfigImpl',
  8758              internalType: 'contract SystemConfig',
  8759              type: 'address',
  8760            },
  8761          ],
  8762        },
  8763        {
  8764          name: 'systemConfigConfig',
  8765          internalType: 'struct SystemDictator.SystemConfigConfig',
  8766          type: 'tuple',
  8767          components: [
  8768            { name: 'owner', internalType: 'address', type: 'address' },
  8769            { name: 'overhead', internalType: 'uint256', type: 'uint256' },
  8770            { name: 'scalar', internalType: 'uint256', type: 'uint256' },
  8771            { name: 'batcherHash', internalType: 'bytes32', type: 'bytes32' },
  8772            { name: 'gasLimit', internalType: 'uint64', type: 'uint64' },
  8773            {
  8774              name: 'unsafeBlockSigner',
  8775              internalType: 'address',
  8776              type: 'address',
  8777            },
  8778          ],
  8779        },
  8780      ],
  8781    },
  8782    {
  8783      stateMutability: 'view',
  8784      type: 'function',
  8785      inputs: [],
  8786      name: 'currentStep',
  8787      outputs: [{ name: '', internalType: 'uint8', type: 'uint8' }],
  8788    },
  8789    {
  8790      stateMutability: 'view',
  8791      type: 'function',
  8792      inputs: [],
  8793      name: 'dynamicConfigSet',
  8794      outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
  8795    },
  8796    {
  8797      stateMutability: 'nonpayable',
  8798      type: 'function',
  8799      inputs: [],
  8800      name: 'exit1',
  8801      outputs: [],
  8802    },
  8803    {
  8804      stateMutability: 'nonpayable',
  8805      type: 'function',
  8806      inputs: [],
  8807      name: 'finalize',
  8808      outputs: [],
  8809    },
  8810    {
  8811      stateMutability: 'view',
  8812      type: 'function',
  8813      inputs: [],
  8814      name: 'finalized',
  8815      outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
  8816    },
  8817    {
  8818      stateMutability: 'nonpayable',
  8819      type: 'function',
  8820      inputs: [
  8821        {
  8822          name: '_config',
  8823          internalType: 'struct SystemDictator.DeployConfig',
  8824          type: 'tuple',
  8825          components: [
  8826            {
  8827              name: 'globalConfig',
  8828              internalType: 'struct SystemDictator.GlobalConfig',
  8829              type: 'tuple',
  8830              components: [
  8831                {
  8832                  name: 'addressManager',
  8833                  internalType: 'contract AddressManager',
  8834                  type: 'address',
  8835                },
  8836                {
  8837                  name: 'proxyAdmin',
  8838                  internalType: 'contract ProxyAdmin',
  8839                  type: 'address',
  8840                },
  8841                { name: 'controller', internalType: 'address', type: 'address' },
  8842                { name: 'finalOwner', internalType: 'address', type: 'address' },
  8843              ],
  8844            },
  8845            {
  8846              name: 'proxyAddressConfig',
  8847              internalType: 'struct SystemDictator.ProxyAddressConfig',
  8848              type: 'tuple',
  8849              components: [
  8850                {
  8851                  name: 'l2OutputOracleProxy',
  8852                  internalType: 'address',
  8853                  type: 'address',
  8854                },
  8855                {
  8856                  name: 'optimismPortalProxy',
  8857                  internalType: 'address',
  8858                  type: 'address',
  8859                },
  8860                {
  8861                  name: 'l1CrossDomainMessengerProxy',
  8862                  internalType: 'address',
  8863                  type: 'address',
  8864                },
  8865                {
  8866                  name: 'l1StandardBridgeProxy',
  8867                  internalType: 'address',
  8868                  type: 'address',
  8869                },
  8870                {
  8871                  name: 'optimismMintableERC20FactoryProxy',
  8872                  internalType: 'address',
  8873                  type: 'address',
  8874                },
  8875                {
  8876                  name: 'l1ERC721BridgeProxy',
  8877                  internalType: 'address',
  8878                  type: 'address',
  8879                },
  8880                {
  8881                  name: 'systemConfigProxy',
  8882                  internalType: 'address',
  8883                  type: 'address',
  8884                },
  8885              ],
  8886            },
  8887            {
  8888              name: 'implementationAddressConfig',
  8889              internalType: 'struct SystemDictator.ImplementationAddressConfig',
  8890              type: 'tuple',
  8891              components: [
  8892                {
  8893                  name: 'l2OutputOracleImpl',
  8894                  internalType: 'contract L2OutputOracle',
  8895                  type: 'address',
  8896                },
  8897                {
  8898                  name: 'optimismPortalImpl',
  8899                  internalType: 'contract OptimismPortal',
  8900                  type: 'address',
  8901                },
  8902                {
  8903                  name: 'l1CrossDomainMessengerImpl',
  8904                  internalType: 'contract L1CrossDomainMessenger',
  8905                  type: 'address',
  8906                },
  8907                {
  8908                  name: 'l1StandardBridgeImpl',
  8909                  internalType: 'contract L1StandardBridge',
  8910                  type: 'address',
  8911                },
  8912                {
  8913                  name: 'optimismMintableERC20FactoryImpl',
  8914                  internalType: 'contract OptimismMintableERC20Factory',
  8915                  type: 'address',
  8916                },
  8917                {
  8918                  name: 'l1ERC721BridgeImpl',
  8919                  internalType: 'contract L1ERC721Bridge',
  8920                  type: 'address',
  8921                },
  8922                {
  8923                  name: 'portalSenderImpl',
  8924                  internalType: 'contract PortalSender',
  8925                  type: 'address',
  8926                },
  8927                {
  8928                  name: 'systemConfigImpl',
  8929                  internalType: 'contract SystemConfig',
  8930                  type: 'address',
  8931                },
  8932              ],
  8933            },
  8934            {
  8935              name: 'systemConfigConfig',
  8936              internalType: 'struct SystemDictator.SystemConfigConfig',
  8937              type: 'tuple',
  8938              components: [
  8939                { name: 'owner', internalType: 'address', type: 'address' },
  8940                { name: 'overhead', internalType: 'uint256', type: 'uint256' },
  8941                { name: 'scalar', internalType: 'uint256', type: 'uint256' },
  8942                { name: 'batcherHash', internalType: 'bytes32', type: 'bytes32' },
  8943                { name: 'gasLimit', internalType: 'uint64', type: 'uint64' },
  8944                {
  8945                  name: 'unsafeBlockSigner',
  8946                  internalType: 'address',
  8947                  type: 'address',
  8948                },
  8949              ],
  8950            },
  8951          ],
  8952        },
  8953      ],
  8954      name: 'initialize',
  8955      outputs: [],
  8956    },
  8957    {
  8958      stateMutability: 'view',
  8959      type: 'function',
  8960      inputs: [],
  8961      name: 'l2OutputOracleDynamicConfig',
  8962      outputs: [
  8963        {
  8964          name: 'l2OutputOracleStartingBlockNumber',
  8965          internalType: 'uint256',
  8966          type: 'uint256',
  8967        },
  8968        {
  8969          name: 'l2OutputOracleStartingTimestamp',
  8970          internalType: 'uint256',
  8971          type: 'uint256',
  8972        },
  8973      ],
  8974    },
  8975    {
  8976      stateMutability: 'view',
  8977      type: 'function',
  8978      inputs: [],
  8979      name: 'oldL1CrossDomainMessenger',
  8980      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  8981    },
  8982    {
  8983      stateMutability: 'view',
  8984      type: 'function',
  8985      inputs: [],
  8986      name: 'owner',
  8987      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  8988    },
  8989    {
  8990      stateMutability: 'nonpayable',
  8991      type: 'function',
  8992      inputs: [],
  8993      name: 'renounceOwnership',
  8994      outputs: [],
  8995    },
  8996    {
  8997      stateMutability: 'nonpayable',
  8998      type: 'function',
  8999      inputs: [],
  9000      name: 'step1',
  9001      outputs: [],
  9002    },
  9003    {
  9004      stateMutability: 'nonpayable',
  9005      type: 'function',
  9006      inputs: [],
  9007      name: 'step2',
  9008      outputs: [],
  9009    },
  9010    {
  9011      stateMutability: 'nonpayable',
  9012      type: 'function',
  9013      inputs: [],
  9014      name: 'step3',
  9015      outputs: [],
  9016    },
  9017    {
  9018      stateMutability: 'nonpayable',
  9019      type: 'function',
  9020      inputs: [],
  9021      name: 'step4',
  9022      outputs: [],
  9023    },
  9024    {
  9025      stateMutability: 'nonpayable',
  9026      type: 'function',
  9027      inputs: [],
  9028      name: 'step5',
  9029      outputs: [],
  9030    },
  9031    {
  9032      stateMutability: 'nonpayable',
  9033      type: 'function',
  9034      inputs: [],
  9035      name: 'step6',
  9036      outputs: [],
  9037    },
  9038    {
  9039      stateMutability: 'nonpayable',
  9040      type: 'function',
  9041      inputs: [{ name: 'newOwner', internalType: 'address', type: 'address' }],
  9042      name: 'transferOwnership',
  9043      outputs: [],
  9044    },
  9045    {
  9046      stateMutability: 'nonpayable',
  9047      type: 'function',
  9048      inputs: [
  9049        {
  9050          name: '_l2OutputOracleDynamicConfig',
  9051          internalType: 'struct SystemDictator.L2OutputOracleDynamicConfig',
  9052          type: 'tuple',
  9053          components: [
  9054            {
  9055              name: 'l2OutputOracleStartingBlockNumber',
  9056              internalType: 'uint256',
  9057              type: 'uint256',
  9058            },
  9059            {
  9060              name: 'l2OutputOracleStartingTimestamp',
  9061              internalType: 'uint256',
  9062              type: 'uint256',
  9063            },
  9064          ],
  9065        },
  9066      ],
  9067      name: 'updateL2OutputOracleDynamicConfig',
  9068      outputs: [],
  9069    },
  9070  ] as const
  9071  
  9072  /**
  9073   * [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x1f0613A44c9a8ECE7B3A2e0CdBdF0F5B47A50971)
  9074   */
  9075  export const systemDictatorGoerliAddress = {
  9076    5: '0x1f0613A44c9a8ECE7B3A2e0CdBdF0F5B47A50971',
  9077  } as const
  9078  
  9079  /**
  9080   * [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x1f0613A44c9a8ECE7B3A2e0CdBdF0F5B47A50971)
  9081   */
  9082  export const systemDictatorGoerliConfig = {
  9083    address: systemDictatorGoerliAddress,
  9084    abi: systemDictatorGoerliABI,
  9085  } as const
  9086  
  9087  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  9088  // TeleportrWithdrawer
  9089  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  9090  
  9091  /**
  9092   * [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x78A25524D90E3D0596558fb43789bD800a5c3007)
  9093   */
  9094  export const teleportrWithdrawerABI = [
  9095    {
  9096      stateMutability: 'nonpayable',
  9097      type: 'constructor',
  9098      inputs: [{ name: '_owner', internalType: 'address', type: 'address' }],
  9099    },
  9100    {
  9101      type: 'event',
  9102      anonymous: false,
  9103      inputs: [
  9104        { name: 'user', internalType: 'address', type: 'address', indexed: true },
  9105        {
  9106          name: 'newOwner',
  9107          internalType: 'address',
  9108          type: 'address',
  9109          indexed: true,
  9110        },
  9111      ],
  9112      name: 'OwnerUpdated',
  9113    },
  9114    {
  9115      type: 'event',
  9116      anonymous: false,
  9117      inputs: [
  9118        { name: 'from', internalType: 'address', type: 'address', indexed: true },
  9119        {
  9120          name: 'amount',
  9121          internalType: 'uint256',
  9122          type: 'uint256',
  9123          indexed: false,
  9124        },
  9125      ],
  9126      name: 'ReceivedETH',
  9127    },
  9128    {
  9129      type: 'event',
  9130      anonymous: false,
  9131      inputs: [
  9132        {
  9133          name: 'withdrawer',
  9134          internalType: 'address',
  9135          type: 'address',
  9136          indexed: true,
  9137        },
  9138        {
  9139          name: 'recipient',
  9140          internalType: 'address',
  9141          type: 'address',
  9142          indexed: true,
  9143        },
  9144        {
  9145          name: 'asset',
  9146          internalType: 'address',
  9147          type: 'address',
  9148          indexed: true,
  9149        },
  9150        {
  9151          name: 'amount',
  9152          internalType: 'uint256',
  9153          type: 'uint256',
  9154          indexed: false,
  9155        },
  9156      ],
  9157      name: 'WithdrewERC20',
  9158    },
  9159    {
  9160      type: 'event',
  9161      anonymous: false,
  9162      inputs: [
  9163        {
  9164          name: 'withdrawer',
  9165          internalType: 'address',
  9166          type: 'address',
  9167          indexed: true,
  9168        },
  9169        {
  9170          name: 'recipient',
  9171          internalType: 'address',
  9172          type: 'address',
  9173          indexed: true,
  9174        },
  9175        {
  9176          name: 'asset',
  9177          internalType: 'address',
  9178          type: 'address',
  9179          indexed: true,
  9180        },
  9181        { name: 'id', internalType: 'uint256', type: 'uint256', indexed: false },
  9182      ],
  9183      name: 'WithdrewERC721',
  9184    },
  9185    {
  9186      type: 'event',
  9187      anonymous: false,
  9188      inputs: [
  9189        {
  9190          name: 'withdrawer',
  9191          internalType: 'address',
  9192          type: 'address',
  9193          indexed: true,
  9194        },
  9195        {
  9196          name: 'recipient',
  9197          internalType: 'address',
  9198          type: 'address',
  9199          indexed: true,
  9200        },
  9201        {
  9202          name: 'amount',
  9203          internalType: 'uint256',
  9204          type: 'uint256',
  9205          indexed: false,
  9206        },
  9207      ],
  9208      name: 'WithdrewETH',
  9209    },
  9210    {
  9211      stateMutability: 'payable',
  9212      type: 'function',
  9213      inputs: [
  9214        { name: '_target', internalType: 'address', type: 'address' },
  9215        { name: '_data', internalType: 'bytes', type: 'bytes' },
  9216        { name: '_gas', internalType: 'uint256', type: 'uint256' },
  9217        { name: '_value', internalType: 'uint256', type: 'uint256' },
  9218      ],
  9219      name: 'CALL',
  9220      outputs: [
  9221        { name: '', internalType: 'bool', type: 'bool' },
  9222        { name: '', internalType: 'bytes', type: 'bytes' },
  9223      ],
  9224    },
  9225    {
  9226      stateMutability: 'payable',
  9227      type: 'function',
  9228      inputs: [
  9229        { name: '_target', internalType: 'address', type: 'address' },
  9230        { name: '_data', internalType: 'bytes', type: 'bytes' },
  9231        { name: '_gas', internalType: 'uint256', type: 'uint256' },
  9232      ],
  9233      name: 'DELEGATECALL',
  9234      outputs: [
  9235        { name: '', internalType: 'bool', type: 'bool' },
  9236        { name: '', internalType: 'bytes', type: 'bytes' },
  9237      ],
  9238    },
  9239    {
  9240      stateMutability: 'view',
  9241      type: 'function',
  9242      inputs: [],
  9243      name: 'data',
  9244      outputs: [{ name: '', internalType: 'bytes', type: 'bytes' }],
  9245    },
  9246    {
  9247      stateMutability: 'view',
  9248      type: 'function',
  9249      inputs: [],
  9250      name: 'owner',
  9251      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  9252    },
  9253    {
  9254      stateMutability: 'view',
  9255      type: 'function',
  9256      inputs: [],
  9257      name: 'recipient',
  9258      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  9259    },
  9260    {
  9261      stateMutability: 'nonpayable',
  9262      type: 'function',
  9263      inputs: [{ name: '_data', internalType: 'bytes', type: 'bytes' }],
  9264      name: 'setData',
  9265      outputs: [],
  9266    },
  9267    {
  9268      stateMutability: 'nonpayable',
  9269      type: 'function',
  9270      inputs: [{ name: 'newOwner', internalType: 'address', type: 'address' }],
  9271      name: 'setOwner',
  9272      outputs: [],
  9273    },
  9274    {
  9275      stateMutability: 'nonpayable',
  9276      type: 'function',
  9277      inputs: [{ name: '_recipient', internalType: 'address', type: 'address' }],
  9278      name: 'setRecipient',
  9279      outputs: [],
  9280    },
  9281    {
  9282      stateMutability: 'nonpayable',
  9283      type: 'function',
  9284      inputs: [{ name: '_teleportr', internalType: 'address', type: 'address' }],
  9285      name: 'setTeleportr',
  9286      outputs: [],
  9287    },
  9288    {
  9289      stateMutability: 'view',
  9290      type: 'function',
  9291      inputs: [],
  9292      name: 'teleportr',
  9293      outputs: [{ name: '', internalType: 'address', type: 'address' }],
  9294    },
  9295    {
  9296      stateMutability: 'nonpayable',
  9297      type: 'function',
  9298      inputs: [
  9299        { name: '_asset', internalType: 'contract ERC20', type: 'address' },
  9300        { name: '_to', internalType: 'address', type: 'address' },
  9301        { name: '_amount', internalType: 'uint256', type: 'uint256' },
  9302      ],
  9303      name: 'withdrawERC20',
  9304      outputs: [],
  9305    },
  9306    {
  9307      stateMutability: 'nonpayable',
  9308      type: 'function',
  9309      inputs: [
  9310        { name: '_asset', internalType: 'contract ERC20', type: 'address' },
  9311        { name: '_to', internalType: 'address', type: 'address' },
  9312      ],
  9313      name: 'withdrawERC20',
  9314      outputs: [],
  9315    },
  9316    {
  9317      stateMutability: 'nonpayable',
  9318      type: 'function',
  9319      inputs: [
  9320        { name: '_asset', internalType: 'contract ERC721', type: 'address' },
  9321        { name: '_to', internalType: 'address', type: 'address' },
  9322        { name: '_id', internalType: 'uint256', type: 'uint256' },
  9323      ],
  9324      name: 'withdrawERC721',
  9325      outputs: [],
  9326    },
  9327    {
  9328      stateMutability: 'nonpayable',
  9329      type: 'function',
  9330      inputs: [
  9331        { name: '_to', internalType: 'address payable', type: 'address' },
  9332        { name: '_amount', internalType: 'uint256', type: 'uint256' },
  9333      ],
  9334      name: 'withdrawETH',
  9335      outputs: [],
  9336    },
  9337    {
  9338      stateMutability: 'nonpayable',
  9339      type: 'function',
  9340      inputs: [{ name: '_to', internalType: 'address payable', type: 'address' }],
  9341      name: 'withdrawETH',
  9342      outputs: [],
  9343    },
  9344    {
  9345      stateMutability: 'nonpayable',
  9346      type: 'function',
  9347      inputs: [],
  9348      name: 'withdrawFromTeleportr',
  9349      outputs: [],
  9350    },
  9351    { stateMutability: 'payable', type: 'receive' },
  9352  ] as const
  9353  
  9354  /**
  9355   * [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x78A25524D90E3D0596558fb43789bD800a5c3007)
  9356   */
  9357  export const teleportrWithdrawerAddress = {
  9358    1: '0x78A25524D90E3D0596558fb43789bD800a5c3007',
  9359  } as const
  9360  
  9361  /**
  9362   * [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x78A25524D90E3D0596558fb43789bD800a5c3007)
  9363   */
  9364  export const teleportrWithdrawerConfig = {
  9365    address: teleportrWithdrawerAddress,
  9366    abi: teleportrWithdrawerABI,
  9367  } as const
  9368  
  9369  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  9370  // eslintIgnore
  9371  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  9372  
  9373  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  9374  // addressesByContractByNetwork
  9375  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  9376  
  9377  export const addresses = {
  9378    AddressManager: {
  9379      '1': '0xdE1FCfB0851916CA5101820A69b13a4E276bd81F',
  9380      '5': '0xa6f73589243a6A7a9023b1Fa0651b1d89c177111',
  9381    },
  9382    AssetReceiver: {
  9383      '1': '0x15DdA60616Ffca20371ED1659dBB78E888f65556',
  9384      '10': '0x15DdA60616Ffca20371ED1659dBB78E888f65556',
  9385    },
  9386    AttestationStation: {
  9387      '10': '0xEE36eaaD94d1Cc1d0eccaDb55C38bFfB6Be06C77',
  9388      '420': '0xEE36eaaD94d1Cc1d0eccaDb55C38bFfB6Be06C77',
  9389    },
  9390    BaseFeeVault: { '420': '0x4200000000000000000000000000000000000019' },
  9391    CheckBalanceHigh: {
  9392      '1': '0x7eC64a8a591bFf829ff6C8be76074D540ACb813F',
  9393      '5': '0x7eC64a8a591bFf829ff6C8be76074D540ACb813F',
  9394      '420': '0x5d7103853f12109A7d27F118e54BbC654ad847E9',
  9395    },
  9396    CheckBalanceLow: {
  9397      '1': '0x381a4eFC2A2C914eA1889722bB4B44Fa6BD5b640',
  9398      '5': '0x381a4eFC2A2C914eA1889722bB4B44Fa6BD5b640',
  9399      '420': '0x7Ce13D154FAEE5C8B3E6b19d4Add16f21d884474',
  9400    },
  9401    CheckGelatoLow: {
  9402      '1': '0x4f7CFc43f6D262a085F3b946cAC69E7a8E39BBAa',
  9403      '5': '0x4f7CFc43f6D262a085F3b946cAC69E7a8E39BBAa',
  9404      '420': '0xF9c8a4Cb4021f57F9f6d69799cA9BefF64524862',
  9405    },
  9406    CheckTrue: {
  9407      '1': '0x5c741a38cb11424711231777D71689C458eE835D',
  9408      '5': '0x5c741a38cb11424711231777D71689C458eE835D',
  9409      '420': '0x47443D0C184e022F19BD1578F5bca6B8a9F58E32',
  9410    },
  9411    Drippie: { '1': '0x44b3A2a040057eBafC601A78647e805fd58B1f50' },
  9412    Drippie_goerli: { '5': '0x44b3A2a040057eBafC601A78647e805fd58B1f50' },
  9413    'Drippie_optimism-goerli': {
  9414      '420': '0x8D8d533C16D23847EB04EEB0925be8900Dd3af86',
  9415    },
  9416    EAS: {
  9417      '10': '0x4E0275Ea5a89e7a3c1B58411379D1a0eDdc5b088',
  9418      '420': '0x5A633F1cc84B03F7588486CF2F386c102061E6e1',
  9419    },
  9420    GasPriceOracle: { '420': '0x420000000000000000000000000000000000000F' },
  9421    L1Block: { '420': '0x4200000000000000000000000000000000000015' },
  9422    L1CrossDomainMessenger: {
  9423      '1': '0x25ace71c97B33Cc4729CF772ae268934F7ab5fA1',
  9424      '5': '0x5086d1eEF304eb5284A0f6720f79403b4e9bE294',
  9425    },
  9426    L1ERC721Bridge: {
  9427      '1': '0x5a7749f83b81B301cAb5f48EB8516B986DAef23D',
  9428      '5': '0x8DD330DdE8D9898d43b4dc840Da27A07dF91b3c9',
  9429    },
  9430    L1FeeVault: { '420': '0x420000000000000000000000000000000000001a' },
  9431    L1StandardBridge: {
  9432      '1': '0x99C9fc46f92E8a1c0deC1b1747d010903E884bE1',
  9433      '5': '0x636Af16bf2f682dD3109e60102b8E1A089FedAa8',
  9434    },
  9435    L2CrossDomainMessenger: {
  9436      '420': '0x4200000000000000000000000000000000000007',
  9437    },
  9438    L2ERC721Bridge: { '10': '0x4200000000000000000000000000000000000014' },
  9439    'L2ERC721Bridge_optimism-goerli': {
  9440      '420': '0x4200000000000000000000000000000000000014',
  9441    },
  9442    L2OutputOracle: {
  9443      '1': '0xdfe97868233d1aa22e815a266982f2cf17685a27',
  9444      '5': '0xE6Dfba0953616Bacab0c9A8ecb3a9BBa77FC15c0',
  9445    },
  9446    L2StandardBridge: { '420': '0x4200000000000000000000000000000000000010' },
  9447    L2ToL1MessagePasser: { '420': '0x4200000000000000000000000000000000000016' },
  9448    MintManager: {
  9449      '10': '0x5C4e7Ba1E219E47948e6e3F55019A647bA501005',
  9450      '420': '0x038a8825A3C3B0c08d52Cc76E5E361953Cf6Dc76',
  9451    },
  9452    OptimismMintableERC20Factory: {
  9453      '1': '0x4200000000000000000000000000000000000012',
  9454    },
  9455    OptimismMintableERC20Factory_goerli: {
  9456      '5': '0x4200000000000000000000000000000000000012',
  9457    },
  9458    'OptimismMintableERC20Factory_optimism-goerli': {
  9459      '420': '0x4200000000000000000000000000000000000012',
  9460    },
  9461    OptimismMintableERC721Factory: {
  9462      '10': '0x4200000000000000000000000000000000000017',
  9463    },
  9464    'OptimismMintableERC721Factory_optimism-goerli': {
  9465      '420': '0x4200000000000000000000000000000000000017',
  9466    },
  9467    OptimismPortal: {
  9468      '1': '0xbEb5Fc579115071764c7423A4f12eDde41f106Ed',
  9469      '5': '0x5b47E1A08Ea6d985D6649300584e6722Ec4B1383',
  9470    },
  9471    Optimist: {
  9472      '10': '0x2335022c740d17c2837f9C884Bfe4fFdbf0A95D5',
  9473      '420': '0x2335022c740d17c2837f9C884Bfe4fFdbf0A95D5',
  9474    },
  9475    OptimistAllowlist: {
  9476      '10': '0x482b1945D58f2E9Db0CEbe13c7fcFc6876b41180',
  9477      '420': '0x482b1945D58f2E9Db0CEbe13c7fcFc6876b41180',
  9478    },
  9479    OptimistInviter: {
  9480      '10': '0x073031A1E1b8F5458Ed41Ce56331F5fd7e1de929',
  9481      '420': '0x073031A1E1b8F5458Ed41Ce56331F5fd7e1de929',
  9482    },
  9483    PortalSender: {
  9484      '1': '0x0A893d9576b9cFD9EF78595963dc973238E78210',
  9485      '5': '0xe7FACd39531ee3C313330E93B4d7a8B8A3c84Aa4',
  9486    },
  9487    ProtocolVersions: { '5': '0x0C24F5098774aA366827D667494e9F889f7cFc08' },
  9488    ProxyAdmin: {
  9489      '1': '0x4200000000000000000000000000000000000018',
  9490      '5': '0x4200000000000000000000000000000000000018',
  9491    },
  9492    SchemaRegistry: {
  9493      '10': '0x6232208d66bAc2305b46b4Cb6BCB3857B298DF13',
  9494      '420': '0x2545fa928d5d278cA75Fd47306e4a89096ff6403',
  9495    },
  9496    SequencerFeeVault: { '420': '0x4200000000000000000000000000000000000011' },
  9497    SystemConfig: {
  9498      '1': '0x229047fed2591dbec1eF1118d64F7aF3dB9EB290',
  9499      '5': '0xAe851f927Ee40dE99aaBb7461C00f9622ab91d60',
  9500    },
  9501    SystemDictator: { '1': '0xB4453CEb33d2e67FA244A24acf2E50CEF31F53cB' },
  9502    SystemDictator_goerli: { '5': '0x1f0613A44c9a8ECE7B3A2e0CdBdF0F5B47A50971' },
  9503    TeleportrWithdrawer: { '1': '0x78A25524D90E3D0596558fb43789bD800a5c3007' },
  9504  } as const
  9505  export const predeploys = {
  9506    LegacyMessagePasser: {
  9507      address: '0x4200000000000000000000000000000000000000',
  9508      introduced: 'Legacy',
  9509      deprecated: true,
  9510      proxied: true,
  9511    },
  9512    DeployerWhitelist: {
  9513      address: '0x4200000000000000000000000000000000000002',
  9514      introduced: 'Legacy',
  9515      deprecated: true,
  9516      proxied: true,
  9517    },
  9518    LegacyERC20ETH: {
  9519      address: '0xDeadDeAddeAddEAddeadDEaDDEAdDeaDDeAD0000',
  9520      introduced: 'Legacy',
  9521      deprecated: true,
  9522      proxied: false,
  9523    },
  9524    WETH9: {
  9525      address: '0x4200000000000000000000000000000000000006',
  9526      introduced: 'Legacy',
  9527      deprecated: false,
  9528      proxied: false,
  9529    },
  9530    L2CrossDomainMessenger: {
  9531      address: '0x4200000000000000000000000000000000000007',
  9532      introduced: 'Legacy',
  9533      deprecated: false,
  9534      proxied: true,
  9535    },
  9536    L2StandardBridge: {
  9537      address: '0x4200000000000000000000000000000000000010',
  9538      introduced: 'Legacy',
  9539      deprecated: false,
  9540      proxied: true,
  9541    },
  9542    SequencerFeeVault: {
  9543      address: '0x4200000000000000000000000000000000000011',
  9544      introduced: 'Legacy',
  9545      deprecated: false,
  9546      proxied: true,
  9547    },
  9548    OptimismMintableERC20Factory: {
  9549      address: '0x4200000000000000000000000000000000000012',
  9550      introduced: 'Legacy',
  9551      deprecated: false,
  9552      proxied: true,
  9553    },
  9554    L1BlockNumber: {
  9555      address: '0x4200000000000000000000000000000000000013',
  9556      introduced: 'Legacy',
  9557      deprecated: true,
  9558      proxied: true,
  9559    },
  9560    GasPriceOracle: {
  9561      address: '0x420000000000000000000000000000000000000F',
  9562      introduced: 'Legacy',
  9563      deprecated: false,
  9564      proxied: true,
  9565    },
  9566    GovernanceToken: {
  9567      address: '0x4200000000000000000000000000000000000042',
  9568      introduced: 'Legacy',
  9569      deprecated: false,
  9570      proxied: false,
  9571    },
  9572    L1Block: {
  9573      address: '0x4200000000000000000000000000000000000015',
  9574      introduced: 'Bedrock',
  9575      deprecated: false,
  9576      proxied: true,
  9577    },
  9578    L2ToL1MessagePasser: {
  9579      address: '0x4200000000000000000000000000000000000016',
  9580      introduced: 'Bedrock',
  9581      deprecated: false,
  9582      proxied: true,
  9583    },
  9584    L2ERC721Bridge: {
  9585      address: '0x4200000000000000000000000000000000000014',
  9586      introduced: 'Legacy',
  9587      deprecated: false,
  9588      proxied: true,
  9589    },
  9590    OptimismMintableERC721Factory: {
  9591      address: '0x4200000000000000000000000000000000000017',
  9592      introduced: 'Bedrock',
  9593      deprecated: false,
  9594      proxied: true,
  9595    },
  9596    ProxyAdmin: {
  9597      address: '0x4200000000000000000000000000000000000018',
  9598      introduced: 'Bedrock',
  9599      deprecated: false,
  9600      proxied: true,
  9601    },
  9602    BaseFeeVault: {
  9603      address: '0x4200000000000000000000000000000000000019',
  9604      introduced: 'Bedrock',
  9605      deprecated: false,
  9606      proxied: true,
  9607    },
  9608    L1FeeVault: {
  9609      address: '0x420000000000000000000000000000000000001a',
  9610      introduced: 'Bedrock',
  9611      deprecated: false,
  9612      proxied: true,
  9613    },
  9614  }
  9615  
  9616  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  9617  // abisByContractByNetwork
  9618  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  9619  
  9620  export const abis = {
  9621    AddressManager: [
  9622      {
  9623        type: 'event',
  9624        anonymous: false,
  9625        inputs: [
  9626          {
  9627            name: '_name',
  9628            internalType: 'string',
  9629            type: 'string',
  9630            indexed: true,
  9631          },
  9632          {
  9633            name: '_newAddress',
  9634            internalType: 'address',
  9635            type: 'address',
  9636            indexed: false,
  9637          },
  9638          {
  9639            name: '_oldAddress',
  9640            internalType: 'address',
  9641            type: 'address',
  9642            indexed: false,
  9643          },
  9644        ],
  9645        name: 'AddressSet',
  9646      },
  9647      {
  9648        type: 'event',
  9649        anonymous: false,
  9650        inputs: [
  9651          {
  9652            name: 'previousOwner',
  9653            internalType: 'address',
  9654            type: 'address',
  9655            indexed: true,
  9656          },
  9657          {
  9658            name: 'newOwner',
  9659            internalType: 'address',
  9660            type: 'address',
  9661            indexed: true,
  9662          },
  9663        ],
  9664        name: 'OwnershipTransferred',
  9665      },
  9666      {
  9667        stateMutability: 'view',
  9668        type: 'function',
  9669        inputs: [{ name: '_name', internalType: 'string', type: 'string' }],
  9670        name: 'getAddress',
  9671        outputs: [{ name: '', internalType: 'address', type: 'address' }],
  9672      },
  9673      {
  9674        stateMutability: 'view',
  9675        type: 'function',
  9676        inputs: [],
  9677        name: 'owner',
  9678        outputs: [{ name: '', internalType: 'address', type: 'address' }],
  9679      },
  9680      {
  9681        stateMutability: 'nonpayable',
  9682        type: 'function',
  9683        inputs: [],
  9684        name: 'renounceOwnership',
  9685        outputs: [],
  9686      },
  9687      {
  9688        stateMutability: 'nonpayable',
  9689        type: 'function',
  9690        inputs: [
  9691          { name: '_name', internalType: 'string', type: 'string' },
  9692          { name: '_address', internalType: 'address', type: 'address' },
  9693        ],
  9694        name: 'setAddress',
  9695        outputs: [],
  9696      },
  9697      {
  9698        stateMutability: 'nonpayable',
  9699        type: 'function',
  9700        inputs: [{ name: 'newOwner', internalType: 'address', type: 'address' }],
  9701        name: 'transferOwnership',
  9702        outputs: [],
  9703      },
  9704    ],
  9705    AssetReceiver: [
  9706      {
  9707        stateMutability: 'nonpayable',
  9708        type: 'constructor',
  9709        inputs: [{ name: '_owner', internalType: 'address', type: 'address' }],
  9710      },
  9711      {
  9712        type: 'event',
  9713        anonymous: false,
  9714        inputs: [
  9715          {
  9716            name: 'user',
  9717            internalType: 'address',
  9718            type: 'address',
  9719            indexed: true,
  9720          },
  9721          {
  9722            name: 'newOwner',
  9723            internalType: 'address',
  9724            type: 'address',
  9725            indexed: true,
  9726          },
  9727        ],
  9728        name: 'OwnerUpdated',
  9729      },
  9730      {
  9731        type: 'event',
  9732        anonymous: false,
  9733        inputs: [
  9734          {
  9735            name: 'from',
  9736            internalType: 'address',
  9737            type: 'address',
  9738            indexed: true,
  9739          },
  9740          {
  9741            name: 'amount',
  9742            internalType: 'uint256',
  9743            type: 'uint256',
  9744            indexed: false,
  9745          },
  9746        ],
  9747        name: 'ReceivedETH',
  9748      },
  9749      {
  9750        type: 'event',
  9751        anonymous: false,
  9752        inputs: [
  9753          {
  9754            name: 'withdrawer',
  9755            internalType: 'address',
  9756            type: 'address',
  9757            indexed: true,
  9758          },
  9759          {
  9760            name: 'recipient',
  9761            internalType: 'address',
  9762            type: 'address',
  9763            indexed: true,
  9764          },
  9765          {
  9766            name: 'asset',
  9767            internalType: 'address',
  9768            type: 'address',
  9769            indexed: true,
  9770          },
  9771          {
  9772            name: 'amount',
  9773            internalType: 'uint256',
  9774            type: 'uint256',
  9775            indexed: false,
  9776          },
  9777        ],
  9778        name: 'WithdrewERC20',
  9779      },
  9780      {
  9781        type: 'event',
  9782        anonymous: false,
  9783        inputs: [
  9784          {
  9785            name: 'withdrawer',
  9786            internalType: 'address',
  9787            type: 'address',
  9788            indexed: true,
  9789          },
  9790          {
  9791            name: 'recipient',
  9792            internalType: 'address',
  9793            type: 'address',
  9794            indexed: true,
  9795          },
  9796          {
  9797            name: 'asset',
  9798            internalType: 'address',
  9799            type: 'address',
  9800            indexed: true,
  9801          },
  9802          {
  9803            name: 'id',
  9804            internalType: 'uint256',
  9805            type: 'uint256',
  9806            indexed: false,
  9807          },
  9808        ],
  9809        name: 'WithdrewERC721',
  9810      },
  9811      {
  9812        type: 'event',
  9813        anonymous: false,
  9814        inputs: [
  9815          {
  9816            name: 'withdrawer',
  9817            internalType: 'address',
  9818            type: 'address',
  9819            indexed: true,
  9820          },
  9821          {
  9822            name: 'recipient',
  9823            internalType: 'address',
  9824            type: 'address',
  9825            indexed: true,
  9826          },
  9827          {
  9828            name: 'amount',
  9829            internalType: 'uint256',
  9830            type: 'uint256',
  9831            indexed: false,
  9832          },
  9833        ],
  9834        name: 'WithdrewETH',
  9835      },
  9836      {
  9837        stateMutability: 'payable',
  9838        type: 'function',
  9839        inputs: [
  9840          { name: '_target', internalType: 'address', type: 'address' },
  9841          { name: '_data', internalType: 'bytes', type: 'bytes' },
  9842          { name: '_gas', internalType: 'uint256', type: 'uint256' },
  9843          { name: '_value', internalType: 'uint256', type: 'uint256' },
  9844        ],
  9845        name: 'CALL',
  9846        outputs: [
  9847          { name: '', internalType: 'bool', type: 'bool' },
  9848          { name: '', internalType: 'bytes', type: 'bytes' },
  9849        ],
  9850      },
  9851      {
  9852        stateMutability: 'payable',
  9853        type: 'function',
  9854        inputs: [
  9855          { name: '_target', internalType: 'address', type: 'address' },
  9856          { name: '_data', internalType: 'bytes', type: 'bytes' },
  9857          { name: '_gas', internalType: 'uint256', type: 'uint256' },
  9858        ],
  9859        name: 'DELEGATECALL',
  9860        outputs: [
  9861          { name: '', internalType: 'bool', type: 'bool' },
  9862          { name: '', internalType: 'bytes', type: 'bytes' },
  9863        ],
  9864      },
  9865      {
  9866        stateMutability: 'view',
  9867        type: 'function',
  9868        inputs: [],
  9869        name: 'owner',
  9870        outputs: [{ name: '', internalType: 'address', type: 'address' }],
  9871      },
  9872      {
  9873        stateMutability: 'nonpayable',
  9874        type: 'function',
  9875        inputs: [{ name: 'newOwner', internalType: 'address', type: 'address' }],
  9876        name: 'setOwner',
  9877        outputs: [],
  9878      },
  9879      {
  9880        stateMutability: 'nonpayable',
  9881        type: 'function',
  9882        inputs: [
  9883          { name: '_asset', internalType: 'contract ERC20', type: 'address' },
  9884          { name: '_to', internalType: 'address', type: 'address' },
  9885          { name: '_amount', internalType: 'uint256', type: 'uint256' },
  9886        ],
  9887        name: 'withdrawERC20',
  9888        outputs: [],
  9889      },
  9890      {
  9891        stateMutability: 'nonpayable',
  9892        type: 'function',
  9893        inputs: [
  9894          { name: '_asset', internalType: 'contract ERC20', type: 'address' },
  9895          { name: '_to', internalType: 'address', type: 'address' },
  9896        ],
  9897        name: 'withdrawERC20',
  9898        outputs: [],
  9899      },
  9900      {
  9901        stateMutability: 'nonpayable',
  9902        type: 'function',
  9903        inputs: [
  9904          { name: '_asset', internalType: 'contract ERC721', type: 'address' },
  9905          { name: '_to', internalType: 'address', type: 'address' },
  9906          { name: '_id', internalType: 'uint256', type: 'uint256' },
  9907        ],
  9908        name: 'withdrawERC721',
  9909        outputs: [],
  9910      },
  9911      {
  9912        stateMutability: 'nonpayable',
  9913        type: 'function',
  9914        inputs: [
  9915          { name: '_to', internalType: 'address payable', type: 'address' },
  9916          { name: '_amount', internalType: 'uint256', type: 'uint256' },
  9917        ],
  9918        name: 'withdrawETH',
  9919        outputs: [],
  9920      },
  9921      {
  9922        stateMutability: 'nonpayable',
  9923        type: 'function',
  9924        inputs: [
  9925          { name: '_to', internalType: 'address payable', type: 'address' },
  9926        ],
  9927        name: 'withdrawETH',
  9928        outputs: [],
  9929      },
  9930      { stateMutability: 'payable', type: 'receive' },
  9931    ],
  9932    AttestationStation: [
  9933      { stateMutability: 'nonpayable', type: 'constructor', inputs: [] },
  9934      {
  9935        type: 'event',
  9936        anonymous: false,
  9937        inputs: [
  9938          {
  9939            name: 'creator',
  9940            internalType: 'address',
  9941            type: 'address',
  9942            indexed: true,
  9943          },
  9944          {
  9945            name: 'about',
  9946            internalType: 'address',
  9947            type: 'address',
  9948            indexed: true,
  9949          },
  9950          {
  9951            name: 'key',
  9952            internalType: 'bytes32',
  9953            type: 'bytes32',
  9954            indexed: true,
  9955          },
  9956          { name: 'val', internalType: 'bytes', type: 'bytes', indexed: false },
  9957        ],
  9958        name: 'AttestationCreated',
  9959      },
  9960      {
  9961        stateMutability: 'nonpayable',
  9962        type: 'function',
  9963        inputs: [
  9964          {
  9965            name: '_attestations',
  9966            internalType: 'struct AttestationStation.AttestationData[]',
  9967            type: 'tuple[]',
  9968            components: [
  9969              { name: 'about', internalType: 'address', type: 'address' },
  9970              { name: 'key', internalType: 'bytes32', type: 'bytes32' },
  9971              { name: 'val', internalType: 'bytes', type: 'bytes' },
  9972            ],
  9973          },
  9974        ],
  9975        name: 'attest',
  9976        outputs: [],
  9977      },
  9978      {
  9979        stateMutability: 'nonpayable',
  9980        type: 'function',
  9981        inputs: [
  9982          { name: '_about', internalType: 'address', type: 'address' },
  9983          { name: '_key', internalType: 'bytes32', type: 'bytes32' },
  9984          { name: '_val', internalType: 'bytes', type: 'bytes' },
  9985        ],
  9986        name: 'attest',
  9987        outputs: [],
  9988      },
  9989      {
  9990        stateMutability: 'view',
  9991        type: 'function',
  9992        inputs: [
  9993          { name: '', internalType: 'address', type: 'address' },
  9994          { name: '', internalType: 'address', type: 'address' },
  9995          { name: '', internalType: 'bytes32', type: 'bytes32' },
  9996        ],
  9997        name: 'attestations',
  9998        outputs: [{ name: '', internalType: 'bytes', type: 'bytes' }],
  9999      },
 10000      {
 10001        stateMutability: 'view',
 10002        type: 'function',
 10003        inputs: [],
 10004        name: 'version',
 10005        outputs: [{ name: '', internalType: 'string', type: 'string' }],
 10006      },
 10007    ],
 10008    BaseFeeVault: [
 10009      {
 10010        stateMutability: 'nonpayable',
 10011        type: 'constructor',
 10012        inputs: [
 10013          { name: '_recipient', internalType: 'address', type: 'address' },
 10014        ],
 10015      },
 10016      {
 10017        type: 'event',
 10018        anonymous: false,
 10019        inputs: [
 10020          {
 10021            name: 'value',
 10022            internalType: 'uint256',
 10023            type: 'uint256',
 10024            indexed: false,
 10025          },
 10026          {
 10027            name: 'to',
 10028            internalType: 'address',
 10029            type: 'address',
 10030            indexed: false,
 10031          },
 10032          {
 10033            name: 'from',
 10034            internalType: 'address',
 10035            type: 'address',
 10036            indexed: false,
 10037          },
 10038        ],
 10039        name: 'Withdrawal',
 10040      },
 10041      {
 10042        stateMutability: 'view',
 10043        type: 'function',
 10044        inputs: [],
 10045        name: 'MIN_WITHDRAWAL_AMOUNT',
 10046        outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
 10047      },
 10048      {
 10049        stateMutability: 'view',
 10050        type: 'function',
 10051        inputs: [],
 10052        name: 'RECIPIENT',
 10053        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 10054      },
 10055      {
 10056        stateMutability: 'view',
 10057        type: 'function',
 10058        inputs: [],
 10059        name: 'totalProcessed',
 10060        outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
 10061      },
 10062      {
 10063        stateMutability: 'view',
 10064        type: 'function',
 10065        inputs: [],
 10066        name: 'version',
 10067        outputs: [{ name: '', internalType: 'string', type: 'string' }],
 10068      },
 10069      {
 10070        stateMutability: 'nonpayable',
 10071        type: 'function',
 10072        inputs: [],
 10073        name: 'withdraw',
 10074        outputs: [],
 10075      },
 10076      { stateMutability: 'payable', type: 'receive' },
 10077    ],
 10078    CheckBalanceHigh: [
 10079      {
 10080        type: 'event',
 10081        anonymous: false,
 10082        inputs: [
 10083          {
 10084            name: 'params',
 10085            internalType: 'struct CheckBalanceHigh.Params',
 10086            type: 'tuple',
 10087            components: [
 10088              { name: 'target', internalType: 'address', type: 'address' },
 10089              { name: 'threshold', internalType: 'uint256', type: 'uint256' },
 10090            ],
 10091            indexed: false,
 10092          },
 10093        ],
 10094        name: '_EventToExposeStructInABI__Params',
 10095      },
 10096      {
 10097        stateMutability: 'view',
 10098        type: 'function',
 10099        inputs: [{ name: '_params', internalType: 'bytes', type: 'bytes' }],
 10100        name: 'check',
 10101        outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
 10102      },
 10103    ],
 10104    CheckBalanceLow: [
 10105      {
 10106        type: 'event',
 10107        anonymous: false,
 10108        inputs: [
 10109          {
 10110            name: 'params',
 10111            internalType: 'struct CheckBalanceLow.Params',
 10112            type: 'tuple',
 10113            components: [
 10114              { name: 'target', internalType: 'address', type: 'address' },
 10115              { name: 'threshold', internalType: 'uint256', type: 'uint256' },
 10116            ],
 10117            indexed: false,
 10118          },
 10119        ],
 10120        name: '_EventToExposeStructInABI__Params',
 10121      },
 10122      {
 10123        stateMutability: 'view',
 10124        type: 'function',
 10125        inputs: [{ name: '_params', internalType: 'bytes', type: 'bytes' }],
 10126        name: 'check',
 10127        outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
 10128      },
 10129    ],
 10130    CheckGelatoLow: [
 10131      {
 10132        type: 'event',
 10133        anonymous: false,
 10134        inputs: [
 10135          {
 10136            name: 'params',
 10137            internalType: 'struct CheckGelatoLow.Params',
 10138            type: 'tuple',
 10139            components: [
 10140              { name: 'treasury', internalType: 'address', type: 'address' },
 10141              { name: 'threshold', internalType: 'uint256', type: 'uint256' },
 10142              { name: 'recipient', internalType: 'address', type: 'address' },
 10143            ],
 10144            indexed: false,
 10145          },
 10146        ],
 10147        name: '_EventToExposeStructInABI__Params',
 10148      },
 10149      {
 10150        stateMutability: 'view',
 10151        type: 'function',
 10152        inputs: [{ name: '_params', internalType: 'bytes', type: 'bytes' }],
 10153        name: 'check',
 10154        outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
 10155      },
 10156    ],
 10157    CheckTrue: [
 10158      {
 10159        stateMutability: 'pure',
 10160        type: 'function',
 10161        inputs: [{ name: '', internalType: 'bytes', type: 'bytes' }],
 10162        name: 'check',
 10163        outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
 10164      },
 10165    ],
 10166    Drippie: [
 10167      {
 10168        stateMutability: 'nonpayable',
 10169        type: 'constructor',
 10170        inputs: [{ name: '_owner', internalType: 'address', type: 'address' }],
 10171      },
 10172      {
 10173        type: 'event',
 10174        anonymous: false,
 10175        inputs: [
 10176          {
 10177            name: 'nameref',
 10178            internalType: 'string',
 10179            type: 'string',
 10180            indexed: true,
 10181          },
 10182          {
 10183            name: 'name',
 10184            internalType: 'string',
 10185            type: 'string',
 10186            indexed: false,
 10187          },
 10188          {
 10189            name: 'config',
 10190            internalType: 'struct Drippie.DripConfig',
 10191            type: 'tuple',
 10192            components: [
 10193              { name: 'reentrant', internalType: 'bool', type: 'bool' },
 10194              { name: 'interval', internalType: 'uint256', type: 'uint256' },
 10195              {
 10196                name: 'dripcheck',
 10197                internalType: 'contract IDripCheck',
 10198                type: 'address',
 10199              },
 10200              { name: 'checkparams', internalType: 'bytes', type: 'bytes' },
 10201              {
 10202                name: 'actions',
 10203                internalType: 'struct Drippie.DripAction[]',
 10204                type: 'tuple[]',
 10205                components: [
 10206                  {
 10207                    name: 'target',
 10208                    internalType: 'address payable',
 10209                    type: 'address',
 10210                  },
 10211                  { name: 'data', internalType: 'bytes', type: 'bytes' },
 10212                  { name: 'value', internalType: 'uint256', type: 'uint256' },
 10213                ],
 10214              },
 10215            ],
 10216            indexed: false,
 10217          },
 10218        ],
 10219        name: 'DripCreated',
 10220      },
 10221      {
 10222        type: 'event',
 10223        anonymous: false,
 10224        inputs: [
 10225          {
 10226            name: 'nameref',
 10227            internalType: 'string',
 10228            type: 'string',
 10229            indexed: true,
 10230          },
 10231          {
 10232            name: 'name',
 10233            internalType: 'string',
 10234            type: 'string',
 10235            indexed: false,
 10236          },
 10237          {
 10238            name: 'executor',
 10239            internalType: 'address',
 10240            type: 'address',
 10241            indexed: false,
 10242          },
 10243          {
 10244            name: 'timestamp',
 10245            internalType: 'uint256',
 10246            type: 'uint256',
 10247            indexed: false,
 10248          },
 10249        ],
 10250        name: 'DripExecuted',
 10251      },
 10252      {
 10253        type: 'event',
 10254        anonymous: false,
 10255        inputs: [
 10256          {
 10257            name: 'nameref',
 10258            internalType: 'string',
 10259            type: 'string',
 10260            indexed: true,
 10261          },
 10262          {
 10263            name: 'name',
 10264            internalType: 'string',
 10265            type: 'string',
 10266            indexed: false,
 10267          },
 10268          {
 10269            name: 'status',
 10270            internalType: 'enum Drippie.DripStatus',
 10271            type: 'uint8',
 10272            indexed: false,
 10273          },
 10274        ],
 10275        name: 'DripStatusUpdated',
 10276      },
 10277      {
 10278        type: 'event',
 10279        anonymous: false,
 10280        inputs: [
 10281          {
 10282            name: 'user',
 10283            internalType: 'address',
 10284            type: 'address',
 10285            indexed: true,
 10286          },
 10287          {
 10288            name: 'newOwner',
 10289            internalType: 'address',
 10290            type: 'address',
 10291            indexed: true,
 10292          },
 10293        ],
 10294        name: 'OwnerUpdated',
 10295      },
 10296      {
 10297        type: 'event',
 10298        anonymous: false,
 10299        inputs: [
 10300          {
 10301            name: 'from',
 10302            internalType: 'address',
 10303            type: 'address',
 10304            indexed: true,
 10305          },
 10306          {
 10307            name: 'amount',
 10308            internalType: 'uint256',
 10309            type: 'uint256',
 10310            indexed: false,
 10311          },
 10312        ],
 10313        name: 'ReceivedETH',
 10314      },
 10315      {
 10316        type: 'event',
 10317        anonymous: false,
 10318        inputs: [
 10319          {
 10320            name: 'withdrawer',
 10321            internalType: 'address',
 10322            type: 'address',
 10323            indexed: true,
 10324          },
 10325          {
 10326            name: 'recipient',
 10327            internalType: 'address',
 10328            type: 'address',
 10329            indexed: true,
 10330          },
 10331          {
 10332            name: 'asset',
 10333            internalType: 'address',
 10334            type: 'address',
 10335            indexed: true,
 10336          },
 10337          {
 10338            name: 'amount',
 10339            internalType: 'uint256',
 10340            type: 'uint256',
 10341            indexed: false,
 10342          },
 10343        ],
 10344        name: 'WithdrewERC20',
 10345      },
 10346      {
 10347        type: 'event',
 10348        anonymous: false,
 10349        inputs: [
 10350          {
 10351            name: 'withdrawer',
 10352            internalType: 'address',
 10353            type: 'address',
 10354            indexed: true,
 10355          },
 10356          {
 10357            name: 'recipient',
 10358            internalType: 'address',
 10359            type: 'address',
 10360            indexed: true,
 10361          },
 10362          {
 10363            name: 'asset',
 10364            internalType: 'address',
 10365            type: 'address',
 10366            indexed: true,
 10367          },
 10368          {
 10369            name: 'id',
 10370            internalType: 'uint256',
 10371            type: 'uint256',
 10372            indexed: false,
 10373          },
 10374        ],
 10375        name: 'WithdrewERC721',
 10376      },
 10377      {
 10378        type: 'event',
 10379        anonymous: false,
 10380        inputs: [
 10381          {
 10382            name: 'withdrawer',
 10383            internalType: 'address',
 10384            type: 'address',
 10385            indexed: true,
 10386          },
 10387          {
 10388            name: 'recipient',
 10389            internalType: 'address',
 10390            type: 'address',
 10391            indexed: true,
 10392          },
 10393          {
 10394            name: 'amount',
 10395            internalType: 'uint256',
 10396            type: 'uint256',
 10397            indexed: false,
 10398          },
 10399        ],
 10400        name: 'WithdrewETH',
 10401      },
 10402      {
 10403        stateMutability: 'payable',
 10404        type: 'function',
 10405        inputs: [
 10406          { name: '_target', internalType: 'address', type: 'address' },
 10407          { name: '_data', internalType: 'bytes', type: 'bytes' },
 10408          { name: '_value', internalType: 'uint256', type: 'uint256' },
 10409        ],
 10410        name: 'CALL',
 10411        outputs: [
 10412          { name: '', internalType: 'bool', type: 'bool' },
 10413          { name: '', internalType: 'bytes', type: 'bytes' },
 10414        ],
 10415      },
 10416      {
 10417        stateMutability: 'payable',
 10418        type: 'function',
 10419        inputs: [
 10420          { name: '_target', internalType: 'address', type: 'address' },
 10421          { name: '_data', internalType: 'bytes', type: 'bytes' },
 10422        ],
 10423        name: 'DELEGATECALL',
 10424        outputs: [
 10425          { name: '', internalType: 'bool', type: 'bool' },
 10426          { name: '', internalType: 'bytes', type: 'bytes' },
 10427        ],
 10428      },
 10429      {
 10430        stateMutability: 'nonpayable',
 10431        type: 'function',
 10432        inputs: [
 10433          { name: '_name', internalType: 'string', type: 'string' },
 10434          {
 10435            name: '_config',
 10436            internalType: 'struct Drippie.DripConfig',
 10437            type: 'tuple',
 10438            components: [
 10439              { name: 'reentrant', internalType: 'bool', type: 'bool' },
 10440              { name: 'interval', internalType: 'uint256', type: 'uint256' },
 10441              {
 10442                name: 'dripcheck',
 10443                internalType: 'contract IDripCheck',
 10444                type: 'address',
 10445              },
 10446              { name: 'checkparams', internalType: 'bytes', type: 'bytes' },
 10447              {
 10448                name: 'actions',
 10449                internalType: 'struct Drippie.DripAction[]',
 10450                type: 'tuple[]',
 10451                components: [
 10452                  {
 10453                    name: 'target',
 10454                    internalType: 'address payable',
 10455                    type: 'address',
 10456                  },
 10457                  { name: 'data', internalType: 'bytes', type: 'bytes' },
 10458                  { name: 'value', internalType: 'uint256', type: 'uint256' },
 10459                ],
 10460              },
 10461            ],
 10462          },
 10463        ],
 10464        name: 'create',
 10465        outputs: [],
 10466      },
 10467      {
 10468        stateMutability: 'nonpayable',
 10469        type: 'function',
 10470        inputs: [{ name: '_name', internalType: 'string', type: 'string' }],
 10471        name: 'drip',
 10472        outputs: [],
 10473      },
 10474      {
 10475        stateMutability: 'view',
 10476        type: 'function',
 10477        inputs: [{ name: '', internalType: 'string', type: 'string' }],
 10478        name: 'drips',
 10479        outputs: [
 10480          {
 10481            name: 'status',
 10482            internalType: 'enum Drippie.DripStatus',
 10483            type: 'uint8',
 10484          },
 10485          {
 10486            name: 'config',
 10487            internalType: 'struct Drippie.DripConfig',
 10488            type: 'tuple',
 10489            components: [
 10490              { name: 'reentrant', internalType: 'bool', type: 'bool' },
 10491              { name: 'interval', internalType: 'uint256', type: 'uint256' },
 10492              {
 10493                name: 'dripcheck',
 10494                internalType: 'contract IDripCheck',
 10495                type: 'address',
 10496              },
 10497              { name: 'checkparams', internalType: 'bytes', type: 'bytes' },
 10498              {
 10499                name: 'actions',
 10500                internalType: 'struct Drippie.DripAction[]',
 10501                type: 'tuple[]',
 10502                components: [
 10503                  {
 10504                    name: 'target',
 10505                    internalType: 'address payable',
 10506                    type: 'address',
 10507                  },
 10508                  { name: 'data', internalType: 'bytes', type: 'bytes' },
 10509                  { name: 'value', internalType: 'uint256', type: 'uint256' },
 10510                ],
 10511              },
 10512            ],
 10513          },
 10514          { name: 'last', internalType: 'uint256', type: 'uint256' },
 10515          { name: 'count', internalType: 'uint256', type: 'uint256' },
 10516        ],
 10517      },
 10518      {
 10519        stateMutability: 'view',
 10520        type: 'function',
 10521        inputs: [{ name: '_name', internalType: 'string', type: 'string' }],
 10522        name: 'executable',
 10523        outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
 10524      },
 10525      {
 10526        stateMutability: 'view',
 10527        type: 'function',
 10528        inputs: [],
 10529        name: 'owner',
 10530        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 10531      },
 10532      {
 10533        stateMutability: 'nonpayable',
 10534        type: 'function',
 10535        inputs: [{ name: 'newOwner', internalType: 'address', type: 'address' }],
 10536        name: 'setOwner',
 10537        outputs: [],
 10538      },
 10539      {
 10540        stateMutability: 'nonpayable',
 10541        type: 'function',
 10542        inputs: [
 10543          { name: '_name', internalType: 'string', type: 'string' },
 10544          {
 10545            name: '_status',
 10546            internalType: 'enum Drippie.DripStatus',
 10547            type: 'uint8',
 10548          },
 10549        ],
 10550        name: 'status',
 10551        outputs: [],
 10552      },
 10553      {
 10554        stateMutability: 'nonpayable',
 10555        type: 'function',
 10556        inputs: [
 10557          { name: '_asset', internalType: 'contract ERC20', type: 'address' },
 10558          { name: '_to', internalType: 'address', type: 'address' },
 10559          { name: '_amount', internalType: 'uint256', type: 'uint256' },
 10560        ],
 10561        name: 'withdrawERC20',
 10562        outputs: [],
 10563      },
 10564      {
 10565        stateMutability: 'nonpayable',
 10566        type: 'function',
 10567        inputs: [
 10568          { name: '_asset', internalType: 'contract ERC20', type: 'address' },
 10569          { name: '_to', internalType: 'address', type: 'address' },
 10570        ],
 10571        name: 'withdrawERC20',
 10572        outputs: [],
 10573      },
 10574      {
 10575        stateMutability: 'nonpayable',
 10576        type: 'function',
 10577        inputs: [
 10578          { name: '_asset', internalType: 'contract ERC721', type: 'address' },
 10579          { name: '_to', internalType: 'address', type: 'address' },
 10580          { name: '_id', internalType: 'uint256', type: 'uint256' },
 10581        ],
 10582        name: 'withdrawERC721',
 10583        outputs: [],
 10584      },
 10585      {
 10586        stateMutability: 'nonpayable',
 10587        type: 'function',
 10588        inputs: [
 10589          { name: '_to', internalType: 'address payable', type: 'address' },
 10590          { name: '_amount', internalType: 'uint256', type: 'uint256' },
 10591        ],
 10592        name: 'withdrawETH',
 10593        outputs: [],
 10594      },
 10595      {
 10596        stateMutability: 'nonpayable',
 10597        type: 'function',
 10598        inputs: [
 10599          { name: '_to', internalType: 'address payable', type: 'address' },
 10600        ],
 10601        name: 'withdrawETH',
 10602        outputs: [],
 10603      },
 10604      { stateMutability: 'payable', type: 'receive' },
 10605    ],
 10606    Drippie_goerli: [
 10607      {
 10608        stateMutability: 'nonpayable',
 10609        type: 'constructor',
 10610        inputs: [{ name: '_owner', internalType: 'address', type: 'address' }],
 10611      },
 10612      {
 10613        type: 'event',
 10614        anonymous: false,
 10615        inputs: [
 10616          {
 10617            name: 'nameref',
 10618            internalType: 'string',
 10619            type: 'string',
 10620            indexed: true,
 10621          },
 10622          {
 10623            name: 'name',
 10624            internalType: 'string',
 10625            type: 'string',
 10626            indexed: false,
 10627          },
 10628          {
 10629            name: 'config',
 10630            internalType: 'struct Drippie.DripConfig',
 10631            type: 'tuple',
 10632            components: [
 10633              { name: 'reentrant', internalType: 'bool', type: 'bool' },
 10634              { name: 'interval', internalType: 'uint256', type: 'uint256' },
 10635              {
 10636                name: 'dripcheck',
 10637                internalType: 'contract IDripCheck',
 10638                type: 'address',
 10639              },
 10640              { name: 'checkparams', internalType: 'bytes', type: 'bytes' },
 10641              {
 10642                name: 'actions',
 10643                internalType: 'struct Drippie.DripAction[]',
 10644                type: 'tuple[]',
 10645                components: [
 10646                  {
 10647                    name: 'target',
 10648                    internalType: 'address payable',
 10649                    type: 'address',
 10650                  },
 10651                  { name: 'data', internalType: 'bytes', type: 'bytes' },
 10652                  { name: 'value', internalType: 'uint256', type: 'uint256' },
 10653                ],
 10654              },
 10655            ],
 10656            indexed: false,
 10657          },
 10658        ],
 10659        name: 'DripCreated',
 10660      },
 10661      {
 10662        type: 'event',
 10663        anonymous: false,
 10664        inputs: [
 10665          {
 10666            name: 'nameref',
 10667            internalType: 'string',
 10668            type: 'string',
 10669            indexed: true,
 10670          },
 10671          {
 10672            name: 'name',
 10673            internalType: 'string',
 10674            type: 'string',
 10675            indexed: false,
 10676          },
 10677          {
 10678            name: 'executor',
 10679            internalType: 'address',
 10680            type: 'address',
 10681            indexed: false,
 10682          },
 10683          {
 10684            name: 'timestamp',
 10685            internalType: 'uint256',
 10686            type: 'uint256',
 10687            indexed: false,
 10688          },
 10689        ],
 10690        name: 'DripExecuted',
 10691      },
 10692      {
 10693        type: 'event',
 10694        anonymous: false,
 10695        inputs: [
 10696          {
 10697            name: 'nameref',
 10698            internalType: 'string',
 10699            type: 'string',
 10700            indexed: true,
 10701          },
 10702          {
 10703            name: 'name',
 10704            internalType: 'string',
 10705            type: 'string',
 10706            indexed: false,
 10707          },
 10708          {
 10709            name: 'status',
 10710            internalType: 'enum Drippie.DripStatus',
 10711            type: 'uint8',
 10712            indexed: false,
 10713          },
 10714        ],
 10715        name: 'DripStatusUpdated',
 10716      },
 10717      {
 10718        type: 'event',
 10719        anonymous: false,
 10720        inputs: [
 10721          {
 10722            name: 'user',
 10723            internalType: 'address',
 10724            type: 'address',
 10725            indexed: true,
 10726          },
 10727          {
 10728            name: 'newOwner',
 10729            internalType: 'address',
 10730            type: 'address',
 10731            indexed: true,
 10732          },
 10733        ],
 10734        name: 'OwnerUpdated',
 10735      },
 10736      {
 10737        type: 'event',
 10738        anonymous: false,
 10739        inputs: [
 10740          {
 10741            name: 'from',
 10742            internalType: 'address',
 10743            type: 'address',
 10744            indexed: true,
 10745          },
 10746          {
 10747            name: 'amount',
 10748            internalType: 'uint256',
 10749            type: 'uint256',
 10750            indexed: false,
 10751          },
 10752        ],
 10753        name: 'ReceivedETH',
 10754      },
 10755      {
 10756        type: 'event',
 10757        anonymous: false,
 10758        inputs: [
 10759          {
 10760            name: 'withdrawer',
 10761            internalType: 'address',
 10762            type: 'address',
 10763            indexed: true,
 10764          },
 10765          {
 10766            name: 'recipient',
 10767            internalType: 'address',
 10768            type: 'address',
 10769            indexed: true,
 10770          },
 10771          {
 10772            name: 'asset',
 10773            internalType: 'address',
 10774            type: 'address',
 10775            indexed: true,
 10776          },
 10777          {
 10778            name: 'amount',
 10779            internalType: 'uint256',
 10780            type: 'uint256',
 10781            indexed: false,
 10782          },
 10783        ],
 10784        name: 'WithdrewERC20',
 10785      },
 10786      {
 10787        type: 'event',
 10788        anonymous: false,
 10789        inputs: [
 10790          {
 10791            name: 'withdrawer',
 10792            internalType: 'address',
 10793            type: 'address',
 10794            indexed: true,
 10795          },
 10796          {
 10797            name: 'recipient',
 10798            internalType: 'address',
 10799            type: 'address',
 10800            indexed: true,
 10801          },
 10802          {
 10803            name: 'asset',
 10804            internalType: 'address',
 10805            type: 'address',
 10806            indexed: true,
 10807          },
 10808          {
 10809            name: 'id',
 10810            internalType: 'uint256',
 10811            type: 'uint256',
 10812            indexed: false,
 10813          },
 10814        ],
 10815        name: 'WithdrewERC721',
 10816      },
 10817      {
 10818        type: 'event',
 10819        anonymous: false,
 10820        inputs: [
 10821          {
 10822            name: 'withdrawer',
 10823            internalType: 'address',
 10824            type: 'address',
 10825            indexed: true,
 10826          },
 10827          {
 10828            name: 'recipient',
 10829            internalType: 'address',
 10830            type: 'address',
 10831            indexed: true,
 10832          },
 10833          {
 10834            name: 'amount',
 10835            internalType: 'uint256',
 10836            type: 'uint256',
 10837            indexed: false,
 10838          },
 10839        ],
 10840        name: 'WithdrewETH',
 10841      },
 10842      {
 10843        stateMutability: 'payable',
 10844        type: 'function',
 10845        inputs: [
 10846          { name: '_target', internalType: 'address', type: 'address' },
 10847          { name: '_data', internalType: 'bytes', type: 'bytes' },
 10848          { name: '_value', internalType: 'uint256', type: 'uint256' },
 10849        ],
 10850        name: 'CALL',
 10851        outputs: [
 10852          { name: '', internalType: 'bool', type: 'bool' },
 10853          { name: '', internalType: 'bytes', type: 'bytes' },
 10854        ],
 10855      },
 10856      {
 10857        stateMutability: 'payable',
 10858        type: 'function',
 10859        inputs: [
 10860          { name: '_target', internalType: 'address', type: 'address' },
 10861          { name: '_data', internalType: 'bytes', type: 'bytes' },
 10862        ],
 10863        name: 'DELEGATECALL',
 10864        outputs: [
 10865          { name: '', internalType: 'bool', type: 'bool' },
 10866          { name: '', internalType: 'bytes', type: 'bytes' },
 10867        ],
 10868      },
 10869      {
 10870        stateMutability: 'nonpayable',
 10871        type: 'function',
 10872        inputs: [
 10873          { name: '_name', internalType: 'string', type: 'string' },
 10874          {
 10875            name: '_config',
 10876            internalType: 'struct Drippie.DripConfig',
 10877            type: 'tuple',
 10878            components: [
 10879              { name: 'reentrant', internalType: 'bool', type: 'bool' },
 10880              { name: 'interval', internalType: 'uint256', type: 'uint256' },
 10881              {
 10882                name: 'dripcheck',
 10883                internalType: 'contract IDripCheck',
 10884                type: 'address',
 10885              },
 10886              { name: 'checkparams', internalType: 'bytes', type: 'bytes' },
 10887              {
 10888                name: 'actions',
 10889                internalType: 'struct Drippie.DripAction[]',
 10890                type: 'tuple[]',
 10891                components: [
 10892                  {
 10893                    name: 'target',
 10894                    internalType: 'address payable',
 10895                    type: 'address',
 10896                  },
 10897                  { name: 'data', internalType: 'bytes', type: 'bytes' },
 10898                  { name: 'value', internalType: 'uint256', type: 'uint256' },
 10899                ],
 10900              },
 10901            ],
 10902          },
 10903        ],
 10904        name: 'create',
 10905        outputs: [],
 10906      },
 10907      {
 10908        stateMutability: 'nonpayable',
 10909        type: 'function',
 10910        inputs: [{ name: '_name', internalType: 'string', type: 'string' }],
 10911        name: 'drip',
 10912        outputs: [],
 10913      },
 10914      {
 10915        stateMutability: 'view',
 10916        type: 'function',
 10917        inputs: [{ name: '', internalType: 'string', type: 'string' }],
 10918        name: 'drips',
 10919        outputs: [
 10920          {
 10921            name: 'status',
 10922            internalType: 'enum Drippie.DripStatus',
 10923            type: 'uint8',
 10924          },
 10925          {
 10926            name: 'config',
 10927            internalType: 'struct Drippie.DripConfig',
 10928            type: 'tuple',
 10929            components: [
 10930              { name: 'reentrant', internalType: 'bool', type: 'bool' },
 10931              { name: 'interval', internalType: 'uint256', type: 'uint256' },
 10932              {
 10933                name: 'dripcheck',
 10934                internalType: 'contract IDripCheck',
 10935                type: 'address',
 10936              },
 10937              { name: 'checkparams', internalType: 'bytes', type: 'bytes' },
 10938              {
 10939                name: 'actions',
 10940                internalType: 'struct Drippie.DripAction[]',
 10941                type: 'tuple[]',
 10942                components: [
 10943                  {
 10944                    name: 'target',
 10945                    internalType: 'address payable',
 10946                    type: 'address',
 10947                  },
 10948                  { name: 'data', internalType: 'bytes', type: 'bytes' },
 10949                  { name: 'value', internalType: 'uint256', type: 'uint256' },
 10950                ],
 10951              },
 10952            ],
 10953          },
 10954          { name: 'last', internalType: 'uint256', type: 'uint256' },
 10955          { name: 'count', internalType: 'uint256', type: 'uint256' },
 10956        ],
 10957      },
 10958      {
 10959        stateMutability: 'view',
 10960        type: 'function',
 10961        inputs: [{ name: '_name', internalType: 'string', type: 'string' }],
 10962        name: 'executable',
 10963        outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
 10964      },
 10965      {
 10966        stateMutability: 'view',
 10967        type: 'function',
 10968        inputs: [],
 10969        name: 'owner',
 10970        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 10971      },
 10972      {
 10973        stateMutability: 'nonpayable',
 10974        type: 'function',
 10975        inputs: [{ name: 'newOwner', internalType: 'address', type: 'address' }],
 10976        name: 'setOwner',
 10977        outputs: [],
 10978      },
 10979      {
 10980        stateMutability: 'nonpayable',
 10981        type: 'function',
 10982        inputs: [
 10983          { name: '_name', internalType: 'string', type: 'string' },
 10984          {
 10985            name: '_status',
 10986            internalType: 'enum Drippie.DripStatus',
 10987            type: 'uint8',
 10988          },
 10989        ],
 10990        name: 'status',
 10991        outputs: [],
 10992      },
 10993      {
 10994        stateMutability: 'nonpayable',
 10995        type: 'function',
 10996        inputs: [
 10997          { name: '_asset', internalType: 'contract ERC20', type: 'address' },
 10998          { name: '_to', internalType: 'address', type: 'address' },
 10999          { name: '_amount', internalType: 'uint256', type: 'uint256' },
 11000        ],
 11001        name: 'withdrawERC20',
 11002        outputs: [],
 11003      },
 11004      {
 11005        stateMutability: 'nonpayable',
 11006        type: 'function',
 11007        inputs: [
 11008          { name: '_asset', internalType: 'contract ERC20', type: 'address' },
 11009          { name: '_to', internalType: 'address', type: 'address' },
 11010        ],
 11011        name: 'withdrawERC20',
 11012        outputs: [],
 11013      },
 11014      {
 11015        stateMutability: 'nonpayable',
 11016        type: 'function',
 11017        inputs: [
 11018          { name: '_asset', internalType: 'contract ERC721', type: 'address' },
 11019          { name: '_to', internalType: 'address', type: 'address' },
 11020          { name: '_id', internalType: 'uint256', type: 'uint256' },
 11021        ],
 11022        name: 'withdrawERC721',
 11023        outputs: [],
 11024      },
 11025      {
 11026        stateMutability: 'nonpayable',
 11027        type: 'function',
 11028        inputs: [
 11029          { name: '_to', internalType: 'address payable', type: 'address' },
 11030          { name: '_amount', internalType: 'uint256', type: 'uint256' },
 11031        ],
 11032        name: 'withdrawETH',
 11033        outputs: [],
 11034      },
 11035      {
 11036        stateMutability: 'nonpayable',
 11037        type: 'function',
 11038        inputs: [
 11039          { name: '_to', internalType: 'address payable', type: 'address' },
 11040        ],
 11041        name: 'withdrawETH',
 11042        outputs: [],
 11043      },
 11044      { stateMutability: 'payable', type: 'receive' },
 11045    ],
 11046    'Drippie_optimism-goerli': [
 11047      {
 11048        stateMutability: 'nonpayable',
 11049        type: 'constructor',
 11050        inputs: [{ name: '_owner', internalType: 'address', type: 'address' }],
 11051      },
 11052      {
 11053        type: 'event',
 11054        anonymous: false,
 11055        inputs: [
 11056          {
 11057            name: 'nameref',
 11058            internalType: 'string',
 11059            type: 'string',
 11060            indexed: true,
 11061          },
 11062          {
 11063            name: 'name',
 11064            internalType: 'string',
 11065            type: 'string',
 11066            indexed: false,
 11067          },
 11068          {
 11069            name: 'config',
 11070            internalType: 'struct Drippie.DripConfig',
 11071            type: 'tuple',
 11072            components: [
 11073              { name: 'interval', internalType: 'uint256', type: 'uint256' },
 11074              {
 11075                name: 'dripcheck',
 11076                internalType: 'contract IDripCheck',
 11077                type: 'address',
 11078              },
 11079              { name: 'checkparams', internalType: 'bytes', type: 'bytes' },
 11080              {
 11081                name: 'actions',
 11082                internalType: 'struct Drippie.DripAction[]',
 11083                type: 'tuple[]',
 11084                components: [
 11085                  {
 11086                    name: 'target',
 11087                    internalType: 'address payable',
 11088                    type: 'address',
 11089                  },
 11090                  { name: 'data', internalType: 'bytes', type: 'bytes' },
 11091                  { name: 'value', internalType: 'uint256', type: 'uint256' },
 11092                ],
 11093              },
 11094            ],
 11095            indexed: false,
 11096          },
 11097        ],
 11098        name: 'DripCreated',
 11099      },
 11100      {
 11101        type: 'event',
 11102        anonymous: false,
 11103        inputs: [
 11104          {
 11105            name: 'nameref',
 11106            internalType: 'string',
 11107            type: 'string',
 11108            indexed: true,
 11109          },
 11110          {
 11111            name: 'name',
 11112            internalType: 'string',
 11113            type: 'string',
 11114            indexed: false,
 11115          },
 11116          {
 11117            name: 'executor',
 11118            internalType: 'address',
 11119            type: 'address',
 11120            indexed: false,
 11121          },
 11122          {
 11123            name: 'timestamp',
 11124            internalType: 'uint256',
 11125            type: 'uint256',
 11126            indexed: false,
 11127          },
 11128        ],
 11129        name: 'DripExecuted',
 11130      },
 11131      {
 11132        type: 'event',
 11133        anonymous: false,
 11134        inputs: [
 11135          {
 11136            name: 'nameref',
 11137            internalType: 'string',
 11138            type: 'string',
 11139            indexed: true,
 11140          },
 11141          {
 11142            name: 'name',
 11143            internalType: 'string',
 11144            type: 'string',
 11145            indexed: false,
 11146          },
 11147          {
 11148            name: 'status',
 11149            internalType: 'enum Drippie.DripStatus',
 11150            type: 'uint8',
 11151            indexed: false,
 11152          },
 11153        ],
 11154        name: 'DripStatusUpdated',
 11155      },
 11156      {
 11157        type: 'event',
 11158        anonymous: false,
 11159        inputs: [
 11160          {
 11161            name: 'user',
 11162            internalType: 'address',
 11163            type: 'address',
 11164            indexed: true,
 11165          },
 11166          {
 11167            name: 'newOwner',
 11168            internalType: 'address',
 11169            type: 'address',
 11170            indexed: true,
 11171          },
 11172        ],
 11173        name: 'OwnerUpdated',
 11174      },
 11175      {
 11176        type: 'event',
 11177        anonymous: false,
 11178        inputs: [
 11179          {
 11180            name: 'from',
 11181            internalType: 'address',
 11182            type: 'address',
 11183            indexed: true,
 11184          },
 11185          {
 11186            name: 'amount',
 11187            internalType: 'uint256',
 11188            type: 'uint256',
 11189            indexed: false,
 11190          },
 11191        ],
 11192        name: 'ReceivedETH',
 11193      },
 11194      {
 11195        type: 'event',
 11196        anonymous: false,
 11197        inputs: [
 11198          {
 11199            name: 'withdrawer',
 11200            internalType: 'address',
 11201            type: 'address',
 11202            indexed: true,
 11203          },
 11204          {
 11205            name: 'recipient',
 11206            internalType: 'address',
 11207            type: 'address',
 11208            indexed: true,
 11209          },
 11210          {
 11211            name: 'asset',
 11212            internalType: 'address',
 11213            type: 'address',
 11214            indexed: true,
 11215          },
 11216          {
 11217            name: 'amount',
 11218            internalType: 'uint256',
 11219            type: 'uint256',
 11220            indexed: false,
 11221          },
 11222        ],
 11223        name: 'WithdrewERC20',
 11224      },
 11225      {
 11226        type: 'event',
 11227        anonymous: false,
 11228        inputs: [
 11229          {
 11230            name: 'withdrawer',
 11231            internalType: 'address',
 11232            type: 'address',
 11233            indexed: true,
 11234          },
 11235          {
 11236            name: 'recipient',
 11237            internalType: 'address',
 11238            type: 'address',
 11239            indexed: true,
 11240          },
 11241          {
 11242            name: 'asset',
 11243            internalType: 'address',
 11244            type: 'address',
 11245            indexed: true,
 11246          },
 11247          {
 11248            name: 'id',
 11249            internalType: 'uint256',
 11250            type: 'uint256',
 11251            indexed: false,
 11252          },
 11253        ],
 11254        name: 'WithdrewERC721',
 11255      },
 11256      {
 11257        type: 'event',
 11258        anonymous: false,
 11259        inputs: [
 11260          {
 11261            name: 'withdrawer',
 11262            internalType: 'address',
 11263            type: 'address',
 11264            indexed: true,
 11265          },
 11266          {
 11267            name: 'recipient',
 11268            internalType: 'address',
 11269            type: 'address',
 11270            indexed: true,
 11271          },
 11272          {
 11273            name: 'amount',
 11274            internalType: 'uint256',
 11275            type: 'uint256',
 11276            indexed: false,
 11277          },
 11278        ],
 11279        name: 'WithdrewETH',
 11280      },
 11281      {
 11282        stateMutability: 'payable',
 11283        type: 'function',
 11284        inputs: [
 11285          { name: '_target', internalType: 'address', type: 'address' },
 11286          { name: '_data', internalType: 'bytes', type: 'bytes' },
 11287          { name: '_gas', internalType: 'uint256', type: 'uint256' },
 11288          { name: '_value', internalType: 'uint256', type: 'uint256' },
 11289        ],
 11290        name: 'CALL',
 11291        outputs: [
 11292          { name: '', internalType: 'bool', type: 'bool' },
 11293          { name: '', internalType: 'bytes', type: 'bytes' },
 11294        ],
 11295      },
 11296      {
 11297        stateMutability: 'payable',
 11298        type: 'function',
 11299        inputs: [
 11300          { name: '_target', internalType: 'address', type: 'address' },
 11301          { name: '_data', internalType: 'bytes', type: 'bytes' },
 11302          { name: '_gas', internalType: 'uint256', type: 'uint256' },
 11303        ],
 11304        name: 'DELEGATECALL',
 11305        outputs: [
 11306          { name: '', internalType: 'bool', type: 'bool' },
 11307          { name: '', internalType: 'bytes', type: 'bytes' },
 11308        ],
 11309      },
 11310      {
 11311        stateMutability: 'nonpayable',
 11312        type: 'function',
 11313        inputs: [
 11314          { name: '_name', internalType: 'string', type: 'string' },
 11315          {
 11316            name: '_config',
 11317            internalType: 'struct Drippie.DripConfig',
 11318            type: 'tuple',
 11319            components: [
 11320              { name: 'interval', internalType: 'uint256', type: 'uint256' },
 11321              {
 11322                name: 'dripcheck',
 11323                internalType: 'contract IDripCheck',
 11324                type: 'address',
 11325              },
 11326              { name: 'checkparams', internalType: 'bytes', type: 'bytes' },
 11327              {
 11328                name: 'actions',
 11329                internalType: 'struct Drippie.DripAction[]',
 11330                type: 'tuple[]',
 11331                components: [
 11332                  {
 11333                    name: 'target',
 11334                    internalType: 'address payable',
 11335                    type: 'address',
 11336                  },
 11337                  { name: 'data', internalType: 'bytes', type: 'bytes' },
 11338                  { name: 'value', internalType: 'uint256', type: 'uint256' },
 11339                ],
 11340              },
 11341            ],
 11342          },
 11343        ],
 11344        name: 'create',
 11345        outputs: [],
 11346      },
 11347      {
 11348        stateMutability: 'nonpayable',
 11349        type: 'function',
 11350        inputs: [{ name: '_name', internalType: 'string', type: 'string' }],
 11351        name: 'drip',
 11352        outputs: [],
 11353      },
 11354      {
 11355        stateMutability: 'view',
 11356        type: 'function',
 11357        inputs: [{ name: '', internalType: 'string', type: 'string' }],
 11358        name: 'drips',
 11359        outputs: [
 11360          {
 11361            name: 'status',
 11362            internalType: 'enum Drippie.DripStatus',
 11363            type: 'uint8',
 11364          },
 11365          {
 11366            name: 'config',
 11367            internalType: 'struct Drippie.DripConfig',
 11368            type: 'tuple',
 11369            components: [
 11370              { name: 'interval', internalType: 'uint256', type: 'uint256' },
 11371              {
 11372                name: 'dripcheck',
 11373                internalType: 'contract IDripCheck',
 11374                type: 'address',
 11375              },
 11376              { name: 'checkparams', internalType: 'bytes', type: 'bytes' },
 11377              {
 11378                name: 'actions',
 11379                internalType: 'struct Drippie.DripAction[]',
 11380                type: 'tuple[]',
 11381                components: [
 11382                  {
 11383                    name: 'target',
 11384                    internalType: 'address payable',
 11385                    type: 'address',
 11386                  },
 11387                  { name: 'data', internalType: 'bytes', type: 'bytes' },
 11388                  { name: 'value', internalType: 'uint256', type: 'uint256' },
 11389                ],
 11390              },
 11391            ],
 11392          },
 11393          { name: 'last', internalType: 'uint256', type: 'uint256' },
 11394          { name: 'count', internalType: 'uint256', type: 'uint256' },
 11395        ],
 11396      },
 11397      {
 11398        stateMutability: 'view',
 11399        type: 'function',
 11400        inputs: [{ name: '_name', internalType: 'string', type: 'string' }],
 11401        name: 'executable',
 11402        outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
 11403      },
 11404      {
 11405        stateMutability: 'view',
 11406        type: 'function',
 11407        inputs: [],
 11408        name: 'owner',
 11409        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 11410      },
 11411      {
 11412        stateMutability: 'nonpayable',
 11413        type: 'function',
 11414        inputs: [{ name: 'newOwner', internalType: 'address', type: 'address' }],
 11415        name: 'setOwner',
 11416        outputs: [],
 11417      },
 11418      {
 11419        stateMutability: 'nonpayable',
 11420        type: 'function',
 11421        inputs: [
 11422          { name: '_name', internalType: 'string', type: 'string' },
 11423          {
 11424            name: '_status',
 11425            internalType: 'enum Drippie.DripStatus',
 11426            type: 'uint8',
 11427          },
 11428        ],
 11429        name: 'status',
 11430        outputs: [],
 11431      },
 11432      {
 11433        stateMutability: 'nonpayable',
 11434        type: 'function',
 11435        inputs: [
 11436          { name: '_asset', internalType: 'contract ERC20', type: 'address' },
 11437          { name: '_to', internalType: 'address', type: 'address' },
 11438          { name: '_amount', internalType: 'uint256', type: 'uint256' },
 11439        ],
 11440        name: 'withdrawERC20',
 11441        outputs: [],
 11442      },
 11443      {
 11444        stateMutability: 'nonpayable',
 11445        type: 'function',
 11446        inputs: [
 11447          { name: '_asset', internalType: 'contract ERC20', type: 'address' },
 11448          { name: '_to', internalType: 'address', type: 'address' },
 11449        ],
 11450        name: 'withdrawERC20',
 11451        outputs: [],
 11452      },
 11453      {
 11454        stateMutability: 'nonpayable',
 11455        type: 'function',
 11456        inputs: [
 11457          { name: '_asset', internalType: 'contract ERC721', type: 'address' },
 11458          { name: '_to', internalType: 'address', type: 'address' },
 11459          { name: '_id', internalType: 'uint256', type: 'uint256' },
 11460        ],
 11461        name: 'withdrawERC721',
 11462        outputs: [],
 11463      },
 11464      {
 11465        stateMutability: 'nonpayable',
 11466        type: 'function',
 11467        inputs: [
 11468          { name: '_to', internalType: 'address payable', type: 'address' },
 11469          { name: '_amount', internalType: 'uint256', type: 'uint256' },
 11470        ],
 11471        name: 'withdrawETH',
 11472        outputs: [],
 11473      },
 11474      {
 11475        stateMutability: 'nonpayable',
 11476        type: 'function',
 11477        inputs: [
 11478          { name: '_to', internalType: 'address payable', type: 'address' },
 11479        ],
 11480        name: 'withdrawETH',
 11481        outputs: [],
 11482      },
 11483      { stateMutability: 'payable', type: 'receive' },
 11484    ],
 11485    EAS: [
 11486      { stateMutability: 'nonpayable', type: 'constructor', inputs: [] },
 11487      { type: 'error', inputs: [], name: 'AccessDenied' },
 11488      { type: 'error', inputs: [], name: 'AlreadyRevoked' },
 11489      { type: 'error', inputs: [], name: 'AlreadyRevokedOffchain' },
 11490      { type: 'error', inputs: [], name: 'AlreadyTimestamped' },
 11491      { type: 'error', inputs: [], name: 'InsufficientValue' },
 11492      { type: 'error', inputs: [], name: 'InvalidAttestation' },
 11493      { type: 'error', inputs: [], name: 'InvalidAttestations' },
 11494      { type: 'error', inputs: [], name: 'InvalidExpirationTime' },
 11495      { type: 'error', inputs: [], name: 'InvalidLength' },
 11496      { type: 'error', inputs: [], name: 'InvalidOffset' },
 11497      { type: 'error', inputs: [], name: 'InvalidRegistry' },
 11498      { type: 'error', inputs: [], name: 'InvalidRevocation' },
 11499      { type: 'error', inputs: [], name: 'InvalidRevocations' },
 11500      { type: 'error', inputs: [], name: 'InvalidSchema' },
 11501      { type: 'error', inputs: [], name: 'InvalidSignature' },
 11502      { type: 'error', inputs: [], name: 'InvalidVerifier' },
 11503      { type: 'error', inputs: [], name: 'Irrevocable' },
 11504      { type: 'error', inputs: [], name: 'NotFound' },
 11505      { type: 'error', inputs: [], name: 'NotPayable' },
 11506      { type: 'error', inputs: [], name: 'WrongSchema' },
 11507      {
 11508        type: 'event',
 11509        anonymous: false,
 11510        inputs: [
 11511          {
 11512            name: 'recipient',
 11513            internalType: 'address',
 11514            type: 'address',
 11515            indexed: true,
 11516          },
 11517          {
 11518            name: 'attester',
 11519            internalType: 'address',
 11520            type: 'address',
 11521            indexed: true,
 11522          },
 11523          {
 11524            name: 'uid',
 11525            internalType: 'bytes32',
 11526            type: 'bytes32',
 11527            indexed: false,
 11528          },
 11529          {
 11530            name: 'schema',
 11531            internalType: 'bytes32',
 11532            type: 'bytes32',
 11533            indexed: true,
 11534          },
 11535        ],
 11536        name: 'Attested',
 11537      },
 11538      {
 11539        type: 'event',
 11540        anonymous: false,
 11541        inputs: [
 11542          {
 11543            name: 'recipient',
 11544            internalType: 'address',
 11545            type: 'address',
 11546            indexed: true,
 11547          },
 11548          {
 11549            name: 'attester',
 11550            internalType: 'address',
 11551            type: 'address',
 11552            indexed: true,
 11553          },
 11554          {
 11555            name: 'uid',
 11556            internalType: 'bytes32',
 11557            type: 'bytes32',
 11558            indexed: false,
 11559          },
 11560          {
 11561            name: 'schema',
 11562            internalType: 'bytes32',
 11563            type: 'bytes32',
 11564            indexed: true,
 11565          },
 11566        ],
 11567        name: 'Revoked',
 11568      },
 11569      {
 11570        type: 'event',
 11571        anonymous: false,
 11572        inputs: [
 11573          {
 11574            name: 'revoker',
 11575            internalType: 'address',
 11576            type: 'address',
 11577            indexed: true,
 11578          },
 11579          {
 11580            name: 'data',
 11581            internalType: 'bytes32',
 11582            type: 'bytes32',
 11583            indexed: true,
 11584          },
 11585          {
 11586            name: 'timestamp',
 11587            internalType: 'uint64',
 11588            type: 'uint64',
 11589            indexed: true,
 11590          },
 11591        ],
 11592        name: 'RevokedOffchain',
 11593      },
 11594      {
 11595        type: 'event',
 11596        anonymous: false,
 11597        inputs: [
 11598          {
 11599            name: 'data',
 11600            internalType: 'bytes32',
 11601            type: 'bytes32',
 11602            indexed: true,
 11603          },
 11604          {
 11605            name: 'timestamp',
 11606            internalType: 'uint64',
 11607            type: 'uint64',
 11608            indexed: true,
 11609          },
 11610        ],
 11611        name: 'Timestamped',
 11612      },
 11613      {
 11614        stateMutability: 'payable',
 11615        type: 'function',
 11616        inputs: [
 11617          {
 11618            name: 'request',
 11619            internalType: 'struct AttestationRequest',
 11620            type: 'tuple',
 11621            components: [
 11622              { name: 'schema', internalType: 'bytes32', type: 'bytes32' },
 11623              {
 11624                name: 'data',
 11625                internalType: 'struct AttestationRequestData',
 11626                type: 'tuple',
 11627                components: [
 11628                  { name: 'recipient', internalType: 'address', type: 'address' },
 11629                  {
 11630                    name: 'expirationTime',
 11631                    internalType: 'uint64',
 11632                    type: 'uint64',
 11633                  },
 11634                  { name: 'revocable', internalType: 'bool', type: 'bool' },
 11635                  { name: 'refUID', internalType: 'bytes32', type: 'bytes32' },
 11636                  { name: 'data', internalType: 'bytes', type: 'bytes' },
 11637                  { name: 'value', internalType: 'uint256', type: 'uint256' },
 11638                ],
 11639              },
 11640            ],
 11641          },
 11642        ],
 11643        name: 'attest',
 11644        outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
 11645      },
 11646      {
 11647        stateMutability: 'payable',
 11648        type: 'function',
 11649        inputs: [
 11650          {
 11651            name: 'delegatedRequest',
 11652            internalType: 'struct DelegatedAttestationRequest',
 11653            type: 'tuple',
 11654            components: [
 11655              { name: 'schema', internalType: 'bytes32', type: 'bytes32' },
 11656              {
 11657                name: 'data',
 11658                internalType: 'struct AttestationRequestData',
 11659                type: 'tuple',
 11660                components: [
 11661                  { name: 'recipient', internalType: 'address', type: 'address' },
 11662                  {
 11663                    name: 'expirationTime',
 11664                    internalType: 'uint64',
 11665                    type: 'uint64',
 11666                  },
 11667                  { name: 'revocable', internalType: 'bool', type: 'bool' },
 11668                  { name: 'refUID', internalType: 'bytes32', type: 'bytes32' },
 11669                  { name: 'data', internalType: 'bytes', type: 'bytes' },
 11670                  { name: 'value', internalType: 'uint256', type: 'uint256' },
 11671                ],
 11672              },
 11673              {
 11674                name: 'signature',
 11675                internalType: 'struct EIP712Signature',
 11676                type: 'tuple',
 11677                components: [
 11678                  { name: 'v', internalType: 'uint8', type: 'uint8' },
 11679                  { name: 'r', internalType: 'bytes32', type: 'bytes32' },
 11680                  { name: 's', internalType: 'bytes32', type: 'bytes32' },
 11681                ],
 11682              },
 11683              { name: 'attester', internalType: 'address', type: 'address' },
 11684            ],
 11685          },
 11686        ],
 11687        name: 'attestByDelegation',
 11688        outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
 11689      },
 11690      {
 11691        stateMutability: 'pure',
 11692        type: 'function',
 11693        inputs: [],
 11694        name: 'getAttestTypeHash',
 11695        outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
 11696      },
 11697      {
 11698        stateMutability: 'view',
 11699        type: 'function',
 11700        inputs: [{ name: 'uid', internalType: 'bytes32', type: 'bytes32' }],
 11701        name: 'getAttestation',
 11702        outputs: [
 11703          {
 11704            name: '',
 11705            internalType: 'struct Attestation',
 11706            type: 'tuple',
 11707            components: [
 11708              { name: 'uid', internalType: 'bytes32', type: 'bytes32' },
 11709              { name: 'schema', internalType: 'bytes32', type: 'bytes32' },
 11710              { name: 'time', internalType: 'uint64', type: 'uint64' },
 11711              { name: 'expirationTime', internalType: 'uint64', type: 'uint64' },
 11712              { name: 'revocationTime', internalType: 'uint64', type: 'uint64' },
 11713              { name: 'refUID', internalType: 'bytes32', type: 'bytes32' },
 11714              { name: 'recipient', internalType: 'address', type: 'address' },
 11715              { name: 'attester', internalType: 'address', type: 'address' },
 11716              { name: 'revocable', internalType: 'bool', type: 'bool' },
 11717              { name: 'data', internalType: 'bytes', type: 'bytes' },
 11718            ],
 11719          },
 11720        ],
 11721      },
 11722      {
 11723        stateMutability: 'view',
 11724        type: 'function',
 11725        inputs: [],
 11726        name: 'getDomainSeparator',
 11727        outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
 11728      },
 11729      {
 11730        stateMutability: 'view',
 11731        type: 'function',
 11732        inputs: [],
 11733        name: 'getName',
 11734        outputs: [{ name: '', internalType: 'string', type: 'string' }],
 11735      },
 11736      {
 11737        stateMutability: 'view',
 11738        type: 'function',
 11739        inputs: [{ name: 'account', internalType: 'address', type: 'address' }],
 11740        name: 'getNonce',
 11741        outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
 11742      },
 11743      {
 11744        stateMutability: 'view',
 11745        type: 'function',
 11746        inputs: [
 11747          { name: 'revoker', internalType: 'address', type: 'address' },
 11748          { name: 'data', internalType: 'bytes32', type: 'bytes32' },
 11749        ],
 11750        name: 'getRevokeOffchain',
 11751        outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }],
 11752      },
 11753      {
 11754        stateMutability: 'pure',
 11755        type: 'function',
 11756        inputs: [],
 11757        name: 'getRevokeTypeHash',
 11758        outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
 11759      },
 11760      {
 11761        stateMutability: 'pure',
 11762        type: 'function',
 11763        inputs: [],
 11764        name: 'getSchemaRegistry',
 11765        outputs: [
 11766          { name: '', internalType: 'contract ISchemaRegistry', type: 'address' },
 11767        ],
 11768      },
 11769      {
 11770        stateMutability: 'view',
 11771        type: 'function',
 11772        inputs: [{ name: 'data', internalType: 'bytes32', type: 'bytes32' }],
 11773        name: 'getTimestamp',
 11774        outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }],
 11775      },
 11776      {
 11777        stateMutability: 'view',
 11778        type: 'function',
 11779        inputs: [{ name: 'uid', internalType: 'bytes32', type: 'bytes32' }],
 11780        name: 'isAttestationValid',
 11781        outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
 11782      },
 11783      {
 11784        stateMutability: 'payable',
 11785        type: 'function',
 11786        inputs: [
 11787          {
 11788            name: 'multiRequests',
 11789            internalType: 'struct MultiAttestationRequest[]',
 11790            type: 'tuple[]',
 11791            components: [
 11792              { name: 'schema', internalType: 'bytes32', type: 'bytes32' },
 11793              {
 11794                name: 'data',
 11795                internalType: 'struct AttestationRequestData[]',
 11796                type: 'tuple[]',
 11797                components: [
 11798                  { name: 'recipient', internalType: 'address', type: 'address' },
 11799                  {
 11800                    name: 'expirationTime',
 11801                    internalType: 'uint64',
 11802                    type: 'uint64',
 11803                  },
 11804                  { name: 'revocable', internalType: 'bool', type: 'bool' },
 11805                  { name: 'refUID', internalType: 'bytes32', type: 'bytes32' },
 11806                  { name: 'data', internalType: 'bytes', type: 'bytes' },
 11807                  { name: 'value', internalType: 'uint256', type: 'uint256' },
 11808                ],
 11809              },
 11810            ],
 11811          },
 11812        ],
 11813        name: 'multiAttest',
 11814        outputs: [{ name: '', internalType: 'bytes32[]', type: 'bytes32[]' }],
 11815      },
 11816      {
 11817        stateMutability: 'payable',
 11818        type: 'function',
 11819        inputs: [
 11820          {
 11821            name: 'multiDelegatedRequests',
 11822            internalType: 'struct MultiDelegatedAttestationRequest[]',
 11823            type: 'tuple[]',
 11824            components: [
 11825              { name: 'schema', internalType: 'bytes32', type: 'bytes32' },
 11826              {
 11827                name: 'data',
 11828                internalType: 'struct AttestationRequestData[]',
 11829                type: 'tuple[]',
 11830                components: [
 11831                  { name: 'recipient', internalType: 'address', type: 'address' },
 11832                  {
 11833                    name: 'expirationTime',
 11834                    internalType: 'uint64',
 11835                    type: 'uint64',
 11836                  },
 11837                  { name: 'revocable', internalType: 'bool', type: 'bool' },
 11838                  { name: 'refUID', internalType: 'bytes32', type: 'bytes32' },
 11839                  { name: 'data', internalType: 'bytes', type: 'bytes' },
 11840                  { name: 'value', internalType: 'uint256', type: 'uint256' },
 11841                ],
 11842              },
 11843              {
 11844                name: 'signatures',
 11845                internalType: 'struct EIP712Signature[]',
 11846                type: 'tuple[]',
 11847                components: [
 11848                  { name: 'v', internalType: 'uint8', type: 'uint8' },
 11849                  { name: 'r', internalType: 'bytes32', type: 'bytes32' },
 11850                  { name: 's', internalType: 'bytes32', type: 'bytes32' },
 11851                ],
 11852              },
 11853              { name: 'attester', internalType: 'address', type: 'address' },
 11854            ],
 11855          },
 11856        ],
 11857        name: 'multiAttestByDelegation',
 11858        outputs: [{ name: '', internalType: 'bytes32[]', type: 'bytes32[]' }],
 11859      },
 11860      {
 11861        stateMutability: 'payable',
 11862        type: 'function',
 11863        inputs: [
 11864          {
 11865            name: 'multiRequests',
 11866            internalType: 'struct MultiRevocationRequest[]',
 11867            type: 'tuple[]',
 11868            components: [
 11869              { name: 'schema', internalType: 'bytes32', type: 'bytes32' },
 11870              {
 11871                name: 'data',
 11872                internalType: 'struct RevocationRequestData[]',
 11873                type: 'tuple[]',
 11874                components: [
 11875                  { name: 'uid', internalType: 'bytes32', type: 'bytes32' },
 11876                  { name: 'value', internalType: 'uint256', type: 'uint256' },
 11877                ],
 11878              },
 11879            ],
 11880          },
 11881        ],
 11882        name: 'multiRevoke',
 11883        outputs: [],
 11884      },
 11885      {
 11886        stateMutability: 'payable',
 11887        type: 'function',
 11888        inputs: [
 11889          {
 11890            name: 'multiDelegatedRequests',
 11891            internalType: 'struct MultiDelegatedRevocationRequest[]',
 11892            type: 'tuple[]',
 11893            components: [
 11894              { name: 'schema', internalType: 'bytes32', type: 'bytes32' },
 11895              {
 11896                name: 'data',
 11897                internalType: 'struct RevocationRequestData[]',
 11898                type: 'tuple[]',
 11899                components: [
 11900                  { name: 'uid', internalType: 'bytes32', type: 'bytes32' },
 11901                  { name: 'value', internalType: 'uint256', type: 'uint256' },
 11902                ],
 11903              },
 11904              {
 11905                name: 'signatures',
 11906                internalType: 'struct EIP712Signature[]',
 11907                type: 'tuple[]',
 11908                components: [
 11909                  { name: 'v', internalType: 'uint8', type: 'uint8' },
 11910                  { name: 'r', internalType: 'bytes32', type: 'bytes32' },
 11911                  { name: 's', internalType: 'bytes32', type: 'bytes32' },
 11912                ],
 11913              },
 11914              { name: 'revoker', internalType: 'address', type: 'address' },
 11915            ],
 11916          },
 11917        ],
 11918        name: 'multiRevokeByDelegation',
 11919        outputs: [],
 11920      },
 11921      {
 11922        stateMutability: 'nonpayable',
 11923        type: 'function',
 11924        inputs: [{ name: 'data', internalType: 'bytes32[]', type: 'bytes32[]' }],
 11925        name: 'multiRevokeOffchain',
 11926        outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }],
 11927      },
 11928      {
 11929        stateMutability: 'nonpayable',
 11930        type: 'function',
 11931        inputs: [{ name: 'data', internalType: 'bytes32[]', type: 'bytes32[]' }],
 11932        name: 'multiTimestamp',
 11933        outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }],
 11934      },
 11935      {
 11936        stateMutability: 'payable',
 11937        type: 'function',
 11938        inputs: [
 11939          {
 11940            name: 'request',
 11941            internalType: 'struct RevocationRequest',
 11942            type: 'tuple',
 11943            components: [
 11944              { name: 'schema', internalType: 'bytes32', type: 'bytes32' },
 11945              {
 11946                name: 'data',
 11947                internalType: 'struct RevocationRequestData',
 11948                type: 'tuple',
 11949                components: [
 11950                  { name: 'uid', internalType: 'bytes32', type: 'bytes32' },
 11951                  { name: 'value', internalType: 'uint256', type: 'uint256' },
 11952                ],
 11953              },
 11954            ],
 11955          },
 11956        ],
 11957        name: 'revoke',
 11958        outputs: [],
 11959      },
 11960      {
 11961        stateMutability: 'payable',
 11962        type: 'function',
 11963        inputs: [
 11964          {
 11965            name: 'delegatedRequest',
 11966            internalType: 'struct DelegatedRevocationRequest',
 11967            type: 'tuple',
 11968            components: [
 11969              { name: 'schema', internalType: 'bytes32', type: 'bytes32' },
 11970              {
 11971                name: 'data',
 11972                internalType: 'struct RevocationRequestData',
 11973                type: 'tuple',
 11974                components: [
 11975                  { name: 'uid', internalType: 'bytes32', type: 'bytes32' },
 11976                  { name: 'value', internalType: 'uint256', type: 'uint256' },
 11977                ],
 11978              },
 11979              {
 11980                name: 'signature',
 11981                internalType: 'struct EIP712Signature',
 11982                type: 'tuple',
 11983                components: [
 11984                  { name: 'v', internalType: 'uint8', type: 'uint8' },
 11985                  { name: 'r', internalType: 'bytes32', type: 'bytes32' },
 11986                  { name: 's', internalType: 'bytes32', type: 'bytes32' },
 11987                ],
 11988              },
 11989              { name: 'revoker', internalType: 'address', type: 'address' },
 11990            ],
 11991          },
 11992        ],
 11993        name: 'revokeByDelegation',
 11994        outputs: [],
 11995      },
 11996      {
 11997        stateMutability: 'nonpayable',
 11998        type: 'function',
 11999        inputs: [{ name: 'data', internalType: 'bytes32', type: 'bytes32' }],
 12000        name: 'revokeOffchain',
 12001        outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }],
 12002      },
 12003      {
 12004        stateMutability: 'nonpayable',
 12005        type: 'function',
 12006        inputs: [{ name: 'data', internalType: 'bytes32', type: 'bytes32' }],
 12007        name: 'timestamp',
 12008        outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }],
 12009      },
 12010      {
 12011        stateMutability: 'view',
 12012        type: 'function',
 12013        inputs: [],
 12014        name: 'version',
 12015        outputs: [{ name: '', internalType: 'string', type: 'string' }],
 12016      },
 12017    ],
 12018    GasPriceOracle: [
 12019      { stateMutability: 'nonpayable', type: 'constructor', inputs: [] },
 12020      {
 12021        stateMutability: 'view',
 12022        type: 'function',
 12023        inputs: [],
 12024        name: 'DECIMALS',
 12025        outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
 12026      },
 12027      {
 12028        stateMutability: 'view',
 12029        type: 'function',
 12030        inputs: [],
 12031        name: 'baseFee',
 12032        outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
 12033      },
 12034      {
 12035        stateMutability: 'pure',
 12036        type: 'function',
 12037        inputs: [],
 12038        name: 'decimals',
 12039        outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
 12040      },
 12041      {
 12042        stateMutability: 'view',
 12043        type: 'function',
 12044        inputs: [],
 12045        name: 'gasPrice',
 12046        outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
 12047      },
 12048      {
 12049        stateMutability: 'view',
 12050        type: 'function',
 12051        inputs: [{ name: '_data', internalType: 'bytes', type: 'bytes' }],
 12052        name: 'getL1Fee',
 12053        outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
 12054      },
 12055      {
 12056        stateMutability: 'view',
 12057        type: 'function',
 12058        inputs: [{ name: '_data', internalType: 'bytes', type: 'bytes' }],
 12059        name: 'getL1GasUsed',
 12060        outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
 12061      },
 12062      {
 12063        stateMutability: 'view',
 12064        type: 'function',
 12065        inputs: [],
 12066        name: 'l1BaseFee',
 12067        outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
 12068      },
 12069      {
 12070        stateMutability: 'view',
 12071        type: 'function',
 12072        inputs: [],
 12073        name: 'overhead',
 12074        outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
 12075      },
 12076      {
 12077        stateMutability: 'view',
 12078        type: 'function',
 12079        inputs: [],
 12080        name: 'scalar',
 12081        outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
 12082      },
 12083      {
 12084        stateMutability: 'view',
 12085        type: 'function',
 12086        inputs: [],
 12087        name: 'version',
 12088        outputs: [{ name: '', internalType: 'string', type: 'string' }],
 12089      },
 12090    ],
 12091    L1Block: [
 12092      { stateMutability: 'nonpayable', type: 'constructor', inputs: [] },
 12093      {
 12094        stateMutability: 'view',
 12095        type: 'function',
 12096        inputs: [],
 12097        name: 'DEPOSITOR_ACCOUNT',
 12098        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 12099      },
 12100      {
 12101        stateMutability: 'view',
 12102        type: 'function',
 12103        inputs: [],
 12104        name: 'basefee',
 12105        outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
 12106      },
 12107      {
 12108        stateMutability: 'view',
 12109        type: 'function',
 12110        inputs: [],
 12111        name: 'batcherHash',
 12112        outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
 12113      },
 12114      {
 12115        stateMutability: 'view',
 12116        type: 'function',
 12117        inputs: [],
 12118        name: 'hash',
 12119        outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
 12120      },
 12121      {
 12122        stateMutability: 'view',
 12123        type: 'function',
 12124        inputs: [],
 12125        name: 'l1FeeOverhead',
 12126        outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
 12127      },
 12128      {
 12129        stateMutability: 'view',
 12130        type: 'function',
 12131        inputs: [],
 12132        name: 'l1FeeScalar',
 12133        outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
 12134      },
 12135      {
 12136        stateMutability: 'view',
 12137        type: 'function',
 12138        inputs: [],
 12139        name: 'number',
 12140        outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }],
 12141      },
 12142      {
 12143        stateMutability: 'view',
 12144        type: 'function',
 12145        inputs: [],
 12146        name: 'sequenceNumber',
 12147        outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }],
 12148      },
 12149      {
 12150        stateMutability: 'nonpayable',
 12151        type: 'function',
 12152        inputs: [
 12153          { name: '_number', internalType: 'uint64', type: 'uint64' },
 12154          { name: '_timestamp', internalType: 'uint64', type: 'uint64' },
 12155          { name: '_basefee', internalType: 'uint256', type: 'uint256' },
 12156          { name: '_hash', internalType: 'bytes32', type: 'bytes32' },
 12157          { name: '_sequenceNumber', internalType: 'uint64', type: 'uint64' },
 12158          { name: '_batcherHash', internalType: 'bytes32', type: 'bytes32' },
 12159          { name: '_l1FeeOverhead', internalType: 'uint256', type: 'uint256' },
 12160          { name: '_l1FeeScalar', internalType: 'uint256', type: 'uint256' },
 12161        ],
 12162        name: 'setL1BlockValues',
 12163        outputs: [],
 12164      },
 12165      {
 12166        stateMutability: 'view',
 12167        type: 'function',
 12168        inputs: [],
 12169        name: 'timestamp',
 12170        outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }],
 12171      },
 12172      {
 12173        stateMutability: 'view',
 12174        type: 'function',
 12175        inputs: [],
 12176        name: 'version',
 12177        outputs: [{ name: '', internalType: 'string', type: 'string' }],
 12178      },
 12179    ],
 12180    L1CrossDomainMessenger: [
 12181      { stateMutability: 'nonpayable', type: 'constructor', inputs: [] },
 12182      {
 12183        type: 'event',
 12184        anonymous: false,
 12185        inputs: [
 12186          {
 12187            name: 'msgHash',
 12188            internalType: 'bytes32',
 12189            type: 'bytes32',
 12190            indexed: true,
 12191          },
 12192        ],
 12193        name: 'FailedRelayedMessage',
 12194      },
 12195      {
 12196        type: 'event',
 12197        anonymous: false,
 12198        inputs: [
 12199          {
 12200            name: 'version',
 12201            internalType: 'uint8',
 12202            type: 'uint8',
 12203            indexed: false,
 12204          },
 12205        ],
 12206        name: 'Initialized',
 12207      },
 12208      {
 12209        type: 'event',
 12210        anonymous: false,
 12211        inputs: [
 12212          {
 12213            name: 'msgHash',
 12214            internalType: 'bytes32',
 12215            type: 'bytes32',
 12216            indexed: true,
 12217          },
 12218        ],
 12219        name: 'RelayedMessage',
 12220      },
 12221      {
 12222        type: 'event',
 12223        anonymous: false,
 12224        inputs: [
 12225          {
 12226            name: 'target',
 12227            internalType: 'address',
 12228            type: 'address',
 12229            indexed: true,
 12230          },
 12231          {
 12232            name: 'sender',
 12233            internalType: 'address',
 12234            type: 'address',
 12235            indexed: false,
 12236          },
 12237          {
 12238            name: 'message',
 12239            internalType: 'bytes',
 12240            type: 'bytes',
 12241            indexed: false,
 12242          },
 12243          {
 12244            name: 'messageNonce',
 12245            internalType: 'uint256',
 12246            type: 'uint256',
 12247            indexed: false,
 12248          },
 12249          {
 12250            name: 'gasLimit',
 12251            internalType: 'uint256',
 12252            type: 'uint256',
 12253            indexed: false,
 12254          },
 12255        ],
 12256        name: 'SentMessage',
 12257      },
 12258      {
 12259        type: 'event',
 12260        anonymous: false,
 12261        inputs: [
 12262          {
 12263            name: 'sender',
 12264            internalType: 'address',
 12265            type: 'address',
 12266            indexed: true,
 12267          },
 12268          {
 12269            name: 'value',
 12270            internalType: 'uint256',
 12271            type: 'uint256',
 12272            indexed: false,
 12273          },
 12274        ],
 12275        name: 'SentMessageExtension1',
 12276      },
 12277      {
 12278        stateMutability: 'view',
 12279        type: 'function',
 12280        inputs: [],
 12281        name: 'MESSAGE_VERSION',
 12282        outputs: [{ name: '', internalType: 'uint16', type: 'uint16' }],
 12283      },
 12284      {
 12285        stateMutability: 'view',
 12286        type: 'function',
 12287        inputs: [],
 12288        name: 'MIN_GAS_CALLDATA_OVERHEAD',
 12289        outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }],
 12290      },
 12291      {
 12292        stateMutability: 'view',
 12293        type: 'function',
 12294        inputs: [],
 12295        name: 'MIN_GAS_DYNAMIC_OVERHEAD_DENOMINATOR',
 12296        outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }],
 12297      },
 12298      {
 12299        stateMutability: 'view',
 12300        type: 'function',
 12301        inputs: [],
 12302        name: 'MIN_GAS_DYNAMIC_OVERHEAD_NUMERATOR',
 12303        outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }],
 12304      },
 12305      {
 12306        stateMutability: 'view',
 12307        type: 'function',
 12308        inputs: [],
 12309        name: 'OTHER_MESSENGER',
 12310        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 12311      },
 12312      {
 12313        stateMutability: 'view',
 12314        type: 'function',
 12315        inputs: [],
 12316        name: 'PORTAL',
 12317        outputs: [
 12318          { name: '', internalType: 'contract OptimismPortal', type: 'address' },
 12319        ],
 12320      },
 12321      {
 12322        stateMutability: 'view',
 12323        type: 'function',
 12324        inputs: [],
 12325        name: 'RELAY_CALL_OVERHEAD',
 12326        outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }],
 12327      },
 12328      {
 12329        stateMutability: 'view',
 12330        type: 'function',
 12331        inputs: [],
 12332        name: 'RELAY_CONSTANT_OVERHEAD',
 12333        outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }],
 12334      },
 12335      {
 12336        stateMutability: 'view',
 12337        type: 'function',
 12338        inputs: [],
 12339        name: 'RELAY_GAS_CHECK_BUFFER',
 12340        outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }],
 12341      },
 12342      {
 12343        stateMutability: 'view',
 12344        type: 'function',
 12345        inputs: [],
 12346        name: 'RELAY_RESERVED_GAS',
 12347        outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }],
 12348      },
 12349      {
 12350        stateMutability: 'pure',
 12351        type: 'function',
 12352        inputs: [
 12353          { name: '_message', internalType: 'bytes', type: 'bytes' },
 12354          { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' },
 12355        ],
 12356        name: 'baseGas',
 12357        outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }],
 12358      },
 12359      {
 12360        stateMutability: 'view',
 12361        type: 'function',
 12362        inputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
 12363        name: 'failedMessages',
 12364        outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
 12365      },
 12366      {
 12367        stateMutability: 'nonpayable',
 12368        type: 'function',
 12369        inputs: [
 12370          {
 12371            name: '_portal',
 12372            internalType: 'contract OptimismPortal',
 12373            type: 'address',
 12374          },
 12375        ],
 12376        name: 'initialize',
 12377        outputs: [],
 12378      },
 12379      {
 12380        stateMutability: 'view',
 12381        type: 'function',
 12382        inputs: [],
 12383        name: 'messageNonce',
 12384        outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
 12385      },
 12386      {
 12387        stateMutability: 'view',
 12388        type: 'function',
 12389        inputs: [],
 12390        name: 'portal',
 12391        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 12392      },
 12393      {
 12394        stateMutability: 'payable',
 12395        type: 'function',
 12396        inputs: [
 12397          { name: '_nonce', internalType: 'uint256', type: 'uint256' },
 12398          { name: '_sender', internalType: 'address', type: 'address' },
 12399          { name: '_target', internalType: 'address', type: 'address' },
 12400          { name: '_value', internalType: 'uint256', type: 'uint256' },
 12401          { name: '_minGasLimit', internalType: 'uint256', type: 'uint256' },
 12402          { name: '_message', internalType: 'bytes', type: 'bytes' },
 12403        ],
 12404        name: 'relayMessage',
 12405        outputs: [],
 12406      },
 12407      {
 12408        stateMutability: 'payable',
 12409        type: 'function',
 12410        inputs: [
 12411          { name: '_target', internalType: 'address', type: 'address' },
 12412          { name: '_message', internalType: 'bytes', type: 'bytes' },
 12413          { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' },
 12414        ],
 12415        name: 'sendMessage',
 12416        outputs: [],
 12417      },
 12418      {
 12419        stateMutability: 'view',
 12420        type: 'function',
 12421        inputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
 12422        name: 'successfulMessages',
 12423        outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
 12424      },
 12425      {
 12426        stateMutability: 'view',
 12427        type: 'function',
 12428        inputs: [],
 12429        name: 'version',
 12430        outputs: [{ name: '', internalType: 'string', type: 'string' }],
 12431      },
 12432      {
 12433        stateMutability: 'view',
 12434        type: 'function',
 12435        inputs: [],
 12436        name: 'xDomainMessageSender',
 12437        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 12438      },
 12439    ],
 12440    L1ERC721Bridge: [
 12441      { stateMutability: 'nonpayable', type: 'constructor', inputs: [] },
 12442      {
 12443        type: 'event',
 12444        anonymous: false,
 12445        inputs: [
 12446          {
 12447            name: 'localToken',
 12448            internalType: 'address',
 12449            type: 'address',
 12450            indexed: true,
 12451          },
 12452          {
 12453            name: 'remoteToken',
 12454            internalType: 'address',
 12455            type: 'address',
 12456            indexed: true,
 12457          },
 12458          {
 12459            name: 'from',
 12460            internalType: 'address',
 12461            type: 'address',
 12462            indexed: true,
 12463          },
 12464          {
 12465            name: 'to',
 12466            internalType: 'address',
 12467            type: 'address',
 12468            indexed: false,
 12469          },
 12470          {
 12471            name: 'tokenId',
 12472            internalType: 'uint256',
 12473            type: 'uint256',
 12474            indexed: false,
 12475          },
 12476          {
 12477            name: 'extraData',
 12478            internalType: 'bytes',
 12479            type: 'bytes',
 12480            indexed: false,
 12481          },
 12482        ],
 12483        name: 'ERC721BridgeFinalized',
 12484      },
 12485      {
 12486        type: 'event',
 12487        anonymous: false,
 12488        inputs: [
 12489          {
 12490            name: 'localToken',
 12491            internalType: 'address',
 12492            type: 'address',
 12493            indexed: true,
 12494          },
 12495          {
 12496            name: 'remoteToken',
 12497            internalType: 'address',
 12498            type: 'address',
 12499            indexed: true,
 12500          },
 12501          {
 12502            name: 'from',
 12503            internalType: 'address',
 12504            type: 'address',
 12505            indexed: true,
 12506          },
 12507          {
 12508            name: 'to',
 12509            internalType: 'address',
 12510            type: 'address',
 12511            indexed: false,
 12512          },
 12513          {
 12514            name: 'tokenId',
 12515            internalType: 'uint256',
 12516            type: 'uint256',
 12517            indexed: false,
 12518          },
 12519          {
 12520            name: 'extraData',
 12521            internalType: 'bytes',
 12522            type: 'bytes',
 12523            indexed: false,
 12524          },
 12525        ],
 12526        name: 'ERC721BridgeInitiated',
 12527      },
 12528      {
 12529        type: 'event',
 12530        anonymous: false,
 12531        inputs: [
 12532          {
 12533            name: 'version',
 12534            internalType: 'uint8',
 12535            type: 'uint8',
 12536            indexed: false,
 12537          },
 12538        ],
 12539        name: 'Initialized',
 12540      },
 12541      {
 12542        stateMutability: 'view',
 12543        type: 'function',
 12544        inputs: [],
 12545        name: 'MESSENGER',
 12546        outputs: [
 12547          {
 12548            name: '',
 12549            internalType: 'contract CrossDomainMessenger',
 12550            type: 'address',
 12551          },
 12552        ],
 12553      },
 12554      {
 12555        stateMutability: 'view',
 12556        type: 'function',
 12557        inputs: [],
 12558        name: 'OTHER_BRIDGE',
 12559        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 12560      },
 12561      {
 12562        stateMutability: 'nonpayable',
 12563        type: 'function',
 12564        inputs: [
 12565          { name: '_localToken', internalType: 'address', type: 'address' },
 12566          { name: '_remoteToken', internalType: 'address', type: 'address' },
 12567          { name: '_tokenId', internalType: 'uint256', type: 'uint256' },
 12568          { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' },
 12569          { name: '_extraData', internalType: 'bytes', type: 'bytes' },
 12570        ],
 12571        name: 'bridgeERC721',
 12572        outputs: [],
 12573      },
 12574      {
 12575        stateMutability: 'nonpayable',
 12576        type: 'function',
 12577        inputs: [
 12578          { name: '_localToken', internalType: 'address', type: 'address' },
 12579          { name: '_remoteToken', internalType: 'address', type: 'address' },
 12580          { name: '_to', internalType: 'address', type: 'address' },
 12581          { name: '_tokenId', internalType: 'uint256', type: 'uint256' },
 12582          { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' },
 12583          { name: '_extraData', internalType: 'bytes', type: 'bytes' },
 12584        ],
 12585        name: 'bridgeERC721To',
 12586        outputs: [],
 12587      },
 12588      {
 12589        stateMutability: 'view',
 12590        type: 'function',
 12591        inputs: [
 12592          { name: '', internalType: 'address', type: 'address' },
 12593          { name: '', internalType: 'address', type: 'address' },
 12594          { name: '', internalType: 'uint256', type: 'uint256' },
 12595        ],
 12596        name: 'deposits',
 12597        outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
 12598      },
 12599      {
 12600        stateMutability: 'nonpayable',
 12601        type: 'function',
 12602        inputs: [
 12603          { name: '_localToken', internalType: 'address', type: 'address' },
 12604          { name: '_remoteToken', internalType: 'address', type: 'address' },
 12605          { name: '_from', internalType: 'address', type: 'address' },
 12606          { name: '_to', internalType: 'address', type: 'address' },
 12607          { name: '_tokenId', internalType: 'uint256', type: 'uint256' },
 12608          { name: '_extraData', internalType: 'bytes', type: 'bytes' },
 12609        ],
 12610        name: 'finalizeBridgeERC721',
 12611        outputs: [],
 12612      },
 12613      {
 12614        stateMutability: 'nonpayable',
 12615        type: 'function',
 12616        inputs: [
 12617          {
 12618            name: '_messenger',
 12619            internalType: 'contract CrossDomainMessenger',
 12620            type: 'address',
 12621          },
 12622        ],
 12623        name: 'initialize',
 12624        outputs: [],
 12625      },
 12626      {
 12627        stateMutability: 'view',
 12628        type: 'function',
 12629        inputs: [],
 12630        name: 'messenger',
 12631        outputs: [
 12632          {
 12633            name: '',
 12634            internalType: 'contract CrossDomainMessenger',
 12635            type: 'address',
 12636          },
 12637        ],
 12638      },
 12639      {
 12640        stateMutability: 'view',
 12641        type: 'function',
 12642        inputs: [],
 12643        name: 'otherBridge',
 12644        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 12645      },
 12646      {
 12647        stateMutability: 'view',
 12648        type: 'function',
 12649        inputs: [],
 12650        name: 'version',
 12651        outputs: [{ name: '', internalType: 'string', type: 'string' }],
 12652      },
 12653    ],
 12654    L1FeeVault: [
 12655      {
 12656        stateMutability: 'nonpayable',
 12657        type: 'constructor',
 12658        inputs: [
 12659          { name: '_recipient', internalType: 'address', type: 'address' },
 12660        ],
 12661      },
 12662      {
 12663        type: 'event',
 12664        anonymous: false,
 12665        inputs: [
 12666          {
 12667            name: 'value',
 12668            internalType: 'uint256',
 12669            type: 'uint256',
 12670            indexed: false,
 12671          },
 12672          {
 12673            name: 'to',
 12674            internalType: 'address',
 12675            type: 'address',
 12676            indexed: false,
 12677          },
 12678          {
 12679            name: 'from',
 12680            internalType: 'address',
 12681            type: 'address',
 12682            indexed: false,
 12683          },
 12684        ],
 12685        name: 'Withdrawal',
 12686      },
 12687      {
 12688        stateMutability: 'view',
 12689        type: 'function',
 12690        inputs: [],
 12691        name: 'MIN_WITHDRAWAL_AMOUNT',
 12692        outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
 12693      },
 12694      {
 12695        stateMutability: 'view',
 12696        type: 'function',
 12697        inputs: [],
 12698        name: 'RECIPIENT',
 12699        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 12700      },
 12701      {
 12702        stateMutability: 'view',
 12703        type: 'function',
 12704        inputs: [],
 12705        name: 'totalProcessed',
 12706        outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
 12707      },
 12708      {
 12709        stateMutability: 'view',
 12710        type: 'function',
 12711        inputs: [],
 12712        name: 'version',
 12713        outputs: [{ name: '', internalType: 'string', type: 'string' }],
 12714      },
 12715      {
 12716        stateMutability: 'nonpayable',
 12717        type: 'function',
 12718        inputs: [],
 12719        name: 'withdraw',
 12720        outputs: [],
 12721      },
 12722      { stateMutability: 'payable', type: 'receive' },
 12723    ],
 12724    L1StandardBridge: [
 12725      { stateMutability: 'nonpayable', type: 'constructor', inputs: [] },
 12726      {
 12727        type: 'event',
 12728        anonymous: false,
 12729        inputs: [
 12730          {
 12731            name: 'localToken',
 12732            internalType: 'address',
 12733            type: 'address',
 12734            indexed: true,
 12735          },
 12736          {
 12737            name: 'remoteToken',
 12738            internalType: 'address',
 12739            type: 'address',
 12740            indexed: true,
 12741          },
 12742          {
 12743            name: 'from',
 12744            internalType: 'address',
 12745            type: 'address',
 12746            indexed: true,
 12747          },
 12748          {
 12749            name: 'to',
 12750            internalType: 'address',
 12751            type: 'address',
 12752            indexed: false,
 12753          },
 12754          {
 12755            name: 'amount',
 12756            internalType: 'uint256',
 12757            type: 'uint256',
 12758            indexed: false,
 12759          },
 12760          {
 12761            name: 'extraData',
 12762            internalType: 'bytes',
 12763            type: 'bytes',
 12764            indexed: false,
 12765          },
 12766        ],
 12767        name: 'ERC20BridgeFinalized',
 12768      },
 12769      {
 12770        type: 'event',
 12771        anonymous: false,
 12772        inputs: [
 12773          {
 12774            name: 'localToken',
 12775            internalType: 'address',
 12776            type: 'address',
 12777            indexed: true,
 12778          },
 12779          {
 12780            name: 'remoteToken',
 12781            internalType: 'address',
 12782            type: 'address',
 12783            indexed: true,
 12784          },
 12785          {
 12786            name: 'from',
 12787            internalType: 'address',
 12788            type: 'address',
 12789            indexed: true,
 12790          },
 12791          {
 12792            name: 'to',
 12793            internalType: 'address',
 12794            type: 'address',
 12795            indexed: false,
 12796          },
 12797          {
 12798            name: 'amount',
 12799            internalType: 'uint256',
 12800            type: 'uint256',
 12801            indexed: false,
 12802          },
 12803          {
 12804            name: 'extraData',
 12805            internalType: 'bytes',
 12806            type: 'bytes',
 12807            indexed: false,
 12808          },
 12809        ],
 12810        name: 'ERC20BridgeInitiated',
 12811      },
 12812      {
 12813        type: 'event',
 12814        anonymous: false,
 12815        inputs: [
 12816          {
 12817            name: 'l1Token',
 12818            internalType: 'address',
 12819            type: 'address',
 12820            indexed: true,
 12821          },
 12822          {
 12823            name: 'l2Token',
 12824            internalType: 'address',
 12825            type: 'address',
 12826            indexed: true,
 12827          },
 12828          {
 12829            name: 'from',
 12830            internalType: 'address',
 12831            type: 'address',
 12832            indexed: true,
 12833          },
 12834          {
 12835            name: 'to',
 12836            internalType: 'address',
 12837            type: 'address',
 12838            indexed: false,
 12839          },
 12840          {
 12841            name: 'amount',
 12842            internalType: 'uint256',
 12843            type: 'uint256',
 12844            indexed: false,
 12845          },
 12846          {
 12847            name: 'extraData',
 12848            internalType: 'bytes',
 12849            type: 'bytes',
 12850            indexed: false,
 12851          },
 12852        ],
 12853        name: 'ERC20DepositInitiated',
 12854      },
 12855      {
 12856        type: 'event',
 12857        anonymous: false,
 12858        inputs: [
 12859          {
 12860            name: 'l1Token',
 12861            internalType: 'address',
 12862            type: 'address',
 12863            indexed: true,
 12864          },
 12865          {
 12866            name: 'l2Token',
 12867            internalType: 'address',
 12868            type: 'address',
 12869            indexed: true,
 12870          },
 12871          {
 12872            name: 'from',
 12873            internalType: 'address',
 12874            type: 'address',
 12875            indexed: true,
 12876          },
 12877          {
 12878            name: 'to',
 12879            internalType: 'address',
 12880            type: 'address',
 12881            indexed: false,
 12882          },
 12883          {
 12884            name: 'amount',
 12885            internalType: 'uint256',
 12886            type: 'uint256',
 12887            indexed: false,
 12888          },
 12889          {
 12890            name: 'extraData',
 12891            internalType: 'bytes',
 12892            type: 'bytes',
 12893            indexed: false,
 12894          },
 12895        ],
 12896        name: 'ERC20WithdrawalFinalized',
 12897      },
 12898      {
 12899        type: 'event',
 12900        anonymous: false,
 12901        inputs: [
 12902          {
 12903            name: 'from',
 12904            internalType: 'address',
 12905            type: 'address',
 12906            indexed: true,
 12907          },
 12908          { name: 'to', internalType: 'address', type: 'address', indexed: true },
 12909          {
 12910            name: 'amount',
 12911            internalType: 'uint256',
 12912            type: 'uint256',
 12913            indexed: false,
 12914          },
 12915          {
 12916            name: 'extraData',
 12917            internalType: 'bytes',
 12918            type: 'bytes',
 12919            indexed: false,
 12920          },
 12921        ],
 12922        name: 'ETHBridgeFinalized',
 12923      },
 12924      {
 12925        type: 'event',
 12926        anonymous: false,
 12927        inputs: [
 12928          {
 12929            name: 'from',
 12930            internalType: 'address',
 12931            type: 'address',
 12932            indexed: true,
 12933          },
 12934          { name: 'to', internalType: 'address', type: 'address', indexed: true },
 12935          {
 12936            name: 'amount',
 12937            internalType: 'uint256',
 12938            type: 'uint256',
 12939            indexed: false,
 12940          },
 12941          {
 12942            name: 'extraData',
 12943            internalType: 'bytes',
 12944            type: 'bytes',
 12945            indexed: false,
 12946          },
 12947        ],
 12948        name: 'ETHBridgeInitiated',
 12949      },
 12950      {
 12951        type: 'event',
 12952        anonymous: false,
 12953        inputs: [
 12954          {
 12955            name: 'from',
 12956            internalType: 'address',
 12957            type: 'address',
 12958            indexed: true,
 12959          },
 12960          { name: 'to', internalType: 'address', type: 'address', indexed: true },
 12961          {
 12962            name: 'amount',
 12963            internalType: 'uint256',
 12964            type: 'uint256',
 12965            indexed: false,
 12966          },
 12967          {
 12968            name: 'extraData',
 12969            internalType: 'bytes',
 12970            type: 'bytes',
 12971            indexed: false,
 12972          },
 12973        ],
 12974        name: 'ETHDepositInitiated',
 12975      },
 12976      {
 12977        type: 'event',
 12978        anonymous: false,
 12979        inputs: [
 12980          {
 12981            name: 'from',
 12982            internalType: 'address',
 12983            type: 'address',
 12984            indexed: true,
 12985          },
 12986          { name: 'to', internalType: 'address', type: 'address', indexed: true },
 12987          {
 12988            name: 'amount',
 12989            internalType: 'uint256',
 12990            type: 'uint256',
 12991            indexed: false,
 12992          },
 12993          {
 12994            name: 'extraData',
 12995            internalType: 'bytes',
 12996            type: 'bytes',
 12997            indexed: false,
 12998          },
 12999        ],
 13000        name: 'ETHWithdrawalFinalized',
 13001      },
 13002      {
 13003        type: 'event',
 13004        anonymous: false,
 13005        inputs: [
 13006          {
 13007            name: 'version',
 13008            internalType: 'uint8',
 13009            type: 'uint8',
 13010            indexed: false,
 13011          },
 13012        ],
 13013        name: 'Initialized',
 13014      },
 13015      {
 13016        stateMutability: 'view',
 13017        type: 'function',
 13018        inputs: [],
 13019        name: 'MESSENGER',
 13020        outputs: [
 13021          {
 13022            name: '',
 13023            internalType: 'contract CrossDomainMessenger',
 13024            type: 'address',
 13025          },
 13026        ],
 13027      },
 13028      {
 13029        stateMutability: 'view',
 13030        type: 'function',
 13031        inputs: [],
 13032        name: 'OTHER_BRIDGE',
 13033        outputs: [
 13034          { name: '', internalType: 'contract StandardBridge', type: 'address' },
 13035        ],
 13036      },
 13037      {
 13038        stateMutability: 'nonpayable',
 13039        type: 'function',
 13040        inputs: [
 13041          { name: '_localToken', internalType: 'address', type: 'address' },
 13042          { name: '_remoteToken', internalType: 'address', type: 'address' },
 13043          { name: '_amount', internalType: 'uint256', type: 'uint256' },
 13044          { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' },
 13045          { name: '_extraData', internalType: 'bytes', type: 'bytes' },
 13046        ],
 13047        name: 'bridgeERC20',
 13048        outputs: [],
 13049      },
 13050      {
 13051        stateMutability: 'nonpayable',
 13052        type: 'function',
 13053        inputs: [
 13054          { name: '_localToken', internalType: 'address', type: 'address' },
 13055          { name: '_remoteToken', internalType: 'address', type: 'address' },
 13056          { name: '_to', internalType: 'address', type: 'address' },
 13057          { name: '_amount', internalType: 'uint256', type: 'uint256' },
 13058          { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' },
 13059          { name: '_extraData', internalType: 'bytes', type: 'bytes' },
 13060        ],
 13061        name: 'bridgeERC20To',
 13062        outputs: [],
 13063      },
 13064      {
 13065        stateMutability: 'payable',
 13066        type: 'function',
 13067        inputs: [
 13068          { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' },
 13069          { name: '_extraData', internalType: 'bytes', type: 'bytes' },
 13070        ],
 13071        name: 'bridgeETH',
 13072        outputs: [],
 13073      },
 13074      {
 13075        stateMutability: 'payable',
 13076        type: 'function',
 13077        inputs: [
 13078          { name: '_to', internalType: 'address', type: 'address' },
 13079          { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' },
 13080          { name: '_extraData', internalType: 'bytes', type: 'bytes' },
 13081        ],
 13082        name: 'bridgeETHTo',
 13083        outputs: [],
 13084      },
 13085      {
 13086        stateMutability: 'nonpayable',
 13087        type: 'function',
 13088        inputs: [
 13089          { name: '_l1Token', internalType: 'address', type: 'address' },
 13090          { name: '_l2Token', internalType: 'address', type: 'address' },
 13091          { name: '_amount', internalType: 'uint256', type: 'uint256' },
 13092          { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' },
 13093          { name: '_extraData', internalType: 'bytes', type: 'bytes' },
 13094        ],
 13095        name: 'depositERC20',
 13096        outputs: [],
 13097      },
 13098      {
 13099        stateMutability: 'nonpayable',
 13100        type: 'function',
 13101        inputs: [
 13102          { name: '_l1Token', internalType: 'address', type: 'address' },
 13103          { name: '_l2Token', internalType: 'address', type: 'address' },
 13104          { name: '_to', internalType: 'address', type: 'address' },
 13105          { name: '_amount', internalType: 'uint256', type: 'uint256' },
 13106          { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' },
 13107          { name: '_extraData', internalType: 'bytes', type: 'bytes' },
 13108        ],
 13109        name: 'depositERC20To',
 13110        outputs: [],
 13111      },
 13112      {
 13113        stateMutability: 'payable',
 13114        type: 'function',
 13115        inputs: [
 13116          { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' },
 13117          { name: '_extraData', internalType: 'bytes', type: 'bytes' },
 13118        ],
 13119        name: 'depositETH',
 13120        outputs: [],
 13121      },
 13122      {
 13123        stateMutability: 'payable',
 13124        type: 'function',
 13125        inputs: [
 13126          { name: '_to', internalType: 'address', type: 'address' },
 13127          { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' },
 13128          { name: '_extraData', internalType: 'bytes', type: 'bytes' },
 13129        ],
 13130        name: 'depositETHTo',
 13131        outputs: [],
 13132      },
 13133      {
 13134        stateMutability: 'view',
 13135        type: 'function',
 13136        inputs: [
 13137          { name: '', internalType: 'address', type: 'address' },
 13138          { name: '', internalType: 'address', type: 'address' },
 13139        ],
 13140        name: 'deposits',
 13141        outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
 13142      },
 13143      {
 13144        stateMutability: 'nonpayable',
 13145        type: 'function',
 13146        inputs: [
 13147          { name: '_localToken', internalType: 'address', type: 'address' },
 13148          { name: '_remoteToken', internalType: 'address', type: 'address' },
 13149          { name: '_from', internalType: 'address', type: 'address' },
 13150          { name: '_to', internalType: 'address', type: 'address' },
 13151          { name: '_amount', internalType: 'uint256', type: 'uint256' },
 13152          { name: '_extraData', internalType: 'bytes', type: 'bytes' },
 13153        ],
 13154        name: 'finalizeBridgeERC20',
 13155        outputs: [],
 13156      },
 13157      {
 13158        stateMutability: 'payable',
 13159        type: 'function',
 13160        inputs: [
 13161          { name: '_from', internalType: 'address', type: 'address' },
 13162          { name: '_to', internalType: 'address', type: 'address' },
 13163          { name: '_amount', internalType: 'uint256', type: 'uint256' },
 13164          { name: '_extraData', internalType: 'bytes', type: 'bytes' },
 13165        ],
 13166        name: 'finalizeBridgeETH',
 13167        outputs: [],
 13168      },
 13169      {
 13170        stateMutability: 'nonpayable',
 13171        type: 'function',
 13172        inputs: [
 13173          { name: '_l1Token', internalType: 'address', type: 'address' },
 13174          { name: '_l2Token', internalType: 'address', type: 'address' },
 13175          { name: '_from', internalType: 'address', type: 'address' },
 13176          { name: '_to', internalType: 'address', type: 'address' },
 13177          { name: '_amount', internalType: 'uint256', type: 'uint256' },
 13178          { name: '_extraData', internalType: 'bytes', type: 'bytes' },
 13179        ],
 13180        name: 'finalizeERC20Withdrawal',
 13181        outputs: [],
 13182      },
 13183      {
 13184        stateMutability: 'payable',
 13185        type: 'function',
 13186        inputs: [
 13187          { name: '_from', internalType: 'address', type: 'address' },
 13188          { name: '_to', internalType: 'address', type: 'address' },
 13189          { name: '_amount', internalType: 'uint256', type: 'uint256' },
 13190          { name: '_extraData', internalType: 'bytes', type: 'bytes' },
 13191        ],
 13192        name: 'finalizeETHWithdrawal',
 13193        outputs: [],
 13194      },
 13195      {
 13196        stateMutability: 'nonpayable',
 13197        type: 'function',
 13198        inputs: [
 13199          {
 13200            name: '_messenger',
 13201            internalType: 'contract CrossDomainMessenger',
 13202            type: 'address',
 13203          },
 13204        ],
 13205        name: 'initialize',
 13206        outputs: [],
 13207      },
 13208      {
 13209        stateMutability: 'view',
 13210        type: 'function',
 13211        inputs: [],
 13212        name: 'l2TokenBridge',
 13213        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 13214      },
 13215      {
 13216        stateMutability: 'view',
 13217        type: 'function',
 13218        inputs: [],
 13219        name: 'messenger',
 13220        outputs: [
 13221          {
 13222            name: '',
 13223            internalType: 'contract CrossDomainMessenger',
 13224            type: 'address',
 13225          },
 13226        ],
 13227      },
 13228      {
 13229        stateMutability: 'view',
 13230        type: 'function',
 13231        inputs: [],
 13232        name: 'otherBridge',
 13233        outputs: [
 13234          { name: '', internalType: 'contract StandardBridge', type: 'address' },
 13235        ],
 13236      },
 13237      {
 13238        stateMutability: 'view',
 13239        type: 'function',
 13240        inputs: [],
 13241        name: 'version',
 13242        outputs: [{ name: '', internalType: 'string', type: 'string' }],
 13243      },
 13244      { stateMutability: 'payable', type: 'receive' },
 13245    ],
 13246    L2CrossDomainMessenger: [
 13247      {
 13248        stateMutability: 'nonpayable',
 13249        type: 'constructor',
 13250        inputs: [
 13251          {
 13252            name: '_l1CrossDomainMessenger',
 13253            internalType: 'address',
 13254            type: 'address',
 13255          },
 13256        ],
 13257      },
 13258      {
 13259        type: 'event',
 13260        anonymous: false,
 13261        inputs: [
 13262          {
 13263            name: 'msgHash',
 13264            internalType: 'bytes32',
 13265            type: 'bytes32',
 13266            indexed: true,
 13267          },
 13268        ],
 13269        name: 'FailedRelayedMessage',
 13270      },
 13271      {
 13272        type: 'event',
 13273        anonymous: false,
 13274        inputs: [
 13275          {
 13276            name: 'version',
 13277            internalType: 'uint8',
 13278            type: 'uint8',
 13279            indexed: false,
 13280          },
 13281        ],
 13282        name: 'Initialized',
 13283      },
 13284      {
 13285        type: 'event',
 13286        anonymous: false,
 13287        inputs: [
 13288          {
 13289            name: 'msgHash',
 13290            internalType: 'bytes32',
 13291            type: 'bytes32',
 13292            indexed: true,
 13293          },
 13294        ],
 13295        name: 'RelayedMessage',
 13296      },
 13297      {
 13298        type: 'event',
 13299        anonymous: false,
 13300        inputs: [
 13301          {
 13302            name: 'target',
 13303            internalType: 'address',
 13304            type: 'address',
 13305            indexed: true,
 13306          },
 13307          {
 13308            name: 'sender',
 13309            internalType: 'address',
 13310            type: 'address',
 13311            indexed: false,
 13312          },
 13313          {
 13314            name: 'message',
 13315            internalType: 'bytes',
 13316            type: 'bytes',
 13317            indexed: false,
 13318          },
 13319          {
 13320            name: 'messageNonce',
 13321            internalType: 'uint256',
 13322            type: 'uint256',
 13323            indexed: false,
 13324          },
 13325          {
 13326            name: 'gasLimit',
 13327            internalType: 'uint256',
 13328            type: 'uint256',
 13329            indexed: false,
 13330          },
 13331        ],
 13332        name: 'SentMessage',
 13333      },
 13334      {
 13335        type: 'event',
 13336        anonymous: false,
 13337        inputs: [
 13338          {
 13339            name: 'sender',
 13340            internalType: 'address',
 13341            type: 'address',
 13342            indexed: true,
 13343          },
 13344          {
 13345            name: 'value',
 13346            internalType: 'uint256',
 13347            type: 'uint256',
 13348            indexed: false,
 13349          },
 13350        ],
 13351        name: 'SentMessageExtension1',
 13352      },
 13353      {
 13354        stateMutability: 'view',
 13355        type: 'function',
 13356        inputs: [],
 13357        name: 'MESSAGE_VERSION',
 13358        outputs: [{ name: '', internalType: 'uint16', type: 'uint16' }],
 13359      },
 13360      {
 13361        stateMutability: 'view',
 13362        type: 'function',
 13363        inputs: [],
 13364        name: 'MIN_GAS_CALLDATA_OVERHEAD',
 13365        outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }],
 13366      },
 13367      {
 13368        stateMutability: 'view',
 13369        type: 'function',
 13370        inputs: [],
 13371        name: 'MIN_GAS_DYNAMIC_OVERHEAD_DENOMINATOR',
 13372        outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }],
 13373      },
 13374      {
 13375        stateMutability: 'view',
 13376        type: 'function',
 13377        inputs: [],
 13378        name: 'MIN_GAS_DYNAMIC_OVERHEAD_NUMERATOR',
 13379        outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }],
 13380      },
 13381      {
 13382        stateMutability: 'view',
 13383        type: 'function',
 13384        inputs: [],
 13385        name: 'OTHER_MESSENGER',
 13386        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 13387      },
 13388      {
 13389        stateMutability: 'view',
 13390        type: 'function',
 13391        inputs: [],
 13392        name: 'RELAY_CALL_OVERHEAD',
 13393        outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }],
 13394      },
 13395      {
 13396        stateMutability: 'view',
 13397        type: 'function',
 13398        inputs: [],
 13399        name: 'RELAY_CONSTANT_OVERHEAD',
 13400        outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }],
 13401      },
 13402      {
 13403        stateMutability: 'view',
 13404        type: 'function',
 13405        inputs: [],
 13406        name: 'RELAY_GAS_CHECK_BUFFER',
 13407        outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }],
 13408      },
 13409      {
 13410        stateMutability: 'view',
 13411        type: 'function',
 13412        inputs: [],
 13413        name: 'RELAY_RESERVED_GAS',
 13414        outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }],
 13415      },
 13416      {
 13417        stateMutability: 'pure',
 13418        type: 'function',
 13419        inputs: [
 13420          { name: '_message', internalType: 'bytes', type: 'bytes' },
 13421          { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' },
 13422        ],
 13423        name: 'baseGas',
 13424        outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }],
 13425      },
 13426      {
 13427        stateMutability: 'view',
 13428        type: 'function',
 13429        inputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
 13430        name: 'failedMessages',
 13431        outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
 13432      },
 13433      {
 13434        stateMutability: 'nonpayable',
 13435        type: 'function',
 13436        inputs: [],
 13437        name: 'initialize',
 13438        outputs: [],
 13439      },
 13440      {
 13441        stateMutability: 'view',
 13442        type: 'function',
 13443        inputs: [],
 13444        name: 'l1CrossDomainMessenger',
 13445        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 13446      },
 13447      {
 13448        stateMutability: 'view',
 13449        type: 'function',
 13450        inputs: [],
 13451        name: 'messageNonce',
 13452        outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
 13453      },
 13454      {
 13455        stateMutability: 'payable',
 13456        type: 'function',
 13457        inputs: [
 13458          { name: '_nonce', internalType: 'uint256', type: 'uint256' },
 13459          { name: '_sender', internalType: 'address', type: 'address' },
 13460          { name: '_target', internalType: 'address', type: 'address' },
 13461          { name: '_value', internalType: 'uint256', type: 'uint256' },
 13462          { name: '_minGasLimit', internalType: 'uint256', type: 'uint256' },
 13463          { name: '_message', internalType: 'bytes', type: 'bytes' },
 13464        ],
 13465        name: 'relayMessage',
 13466        outputs: [],
 13467      },
 13468      {
 13469        stateMutability: 'payable',
 13470        type: 'function',
 13471        inputs: [
 13472          { name: '_target', internalType: 'address', type: 'address' },
 13473          { name: '_message', internalType: 'bytes', type: 'bytes' },
 13474          { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' },
 13475        ],
 13476        name: 'sendMessage',
 13477        outputs: [],
 13478      },
 13479      {
 13480        stateMutability: 'view',
 13481        type: 'function',
 13482        inputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
 13483        name: 'successfulMessages',
 13484        outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
 13485      },
 13486      {
 13487        stateMutability: 'view',
 13488        type: 'function',
 13489        inputs: [],
 13490        name: 'version',
 13491        outputs: [{ name: '', internalType: 'string', type: 'string' }],
 13492      },
 13493      {
 13494        stateMutability: 'view',
 13495        type: 'function',
 13496        inputs: [],
 13497        name: 'xDomainMessageSender',
 13498        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 13499      },
 13500    ],
 13501    L2ERC721Bridge: [
 13502      {
 13503        stateMutability: 'nonpayable',
 13504        type: 'constructor',
 13505        inputs: [
 13506          { name: '_messenger', internalType: 'address', type: 'address' },
 13507          { name: '_otherBridge', internalType: 'address', type: 'address' },
 13508        ],
 13509      },
 13510      {
 13511        type: 'event',
 13512        anonymous: false,
 13513        inputs: [
 13514          {
 13515            name: 'localToken',
 13516            internalType: 'address',
 13517            type: 'address',
 13518            indexed: true,
 13519          },
 13520          {
 13521            name: 'remoteToken',
 13522            internalType: 'address',
 13523            type: 'address',
 13524            indexed: true,
 13525          },
 13526          {
 13527            name: 'from',
 13528            internalType: 'address',
 13529            type: 'address',
 13530            indexed: true,
 13531          },
 13532          {
 13533            name: 'to',
 13534            internalType: 'address',
 13535            type: 'address',
 13536            indexed: false,
 13537          },
 13538          {
 13539            name: 'tokenId',
 13540            internalType: 'uint256',
 13541            type: 'uint256',
 13542            indexed: false,
 13543          },
 13544          {
 13545            name: 'extraData',
 13546            internalType: 'bytes',
 13547            type: 'bytes',
 13548            indexed: false,
 13549          },
 13550        ],
 13551        name: 'ERC721BridgeFinalized',
 13552      },
 13553      {
 13554        type: 'event',
 13555        anonymous: false,
 13556        inputs: [
 13557          {
 13558            name: 'localToken',
 13559            internalType: 'address',
 13560            type: 'address',
 13561            indexed: true,
 13562          },
 13563          {
 13564            name: 'remoteToken',
 13565            internalType: 'address',
 13566            type: 'address',
 13567            indexed: true,
 13568          },
 13569          {
 13570            name: 'from',
 13571            internalType: 'address',
 13572            type: 'address',
 13573            indexed: true,
 13574          },
 13575          {
 13576            name: 'to',
 13577            internalType: 'address',
 13578            type: 'address',
 13579            indexed: false,
 13580          },
 13581          {
 13582            name: 'tokenId',
 13583            internalType: 'uint256',
 13584            type: 'uint256',
 13585            indexed: false,
 13586          },
 13587          {
 13588            name: 'extraData',
 13589            internalType: 'bytes',
 13590            type: 'bytes',
 13591            indexed: false,
 13592          },
 13593        ],
 13594        name: 'ERC721BridgeInitiated',
 13595      },
 13596      {
 13597        stateMutability: 'nonpayable',
 13598        type: 'function',
 13599        inputs: [
 13600          { name: '_localToken', internalType: 'address', type: 'address' },
 13601          { name: '_remoteToken', internalType: 'address', type: 'address' },
 13602          { name: '_tokenId', internalType: 'uint256', type: 'uint256' },
 13603          { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' },
 13604          { name: '_extraData', internalType: 'bytes', type: 'bytes' },
 13605        ],
 13606        name: 'bridgeERC721',
 13607        outputs: [],
 13608      },
 13609      {
 13610        stateMutability: 'nonpayable',
 13611        type: 'function',
 13612        inputs: [
 13613          { name: '_localToken', internalType: 'address', type: 'address' },
 13614          { name: '_remoteToken', internalType: 'address', type: 'address' },
 13615          { name: '_to', internalType: 'address', type: 'address' },
 13616          { name: '_tokenId', internalType: 'uint256', type: 'uint256' },
 13617          { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' },
 13618          { name: '_extraData', internalType: 'bytes', type: 'bytes' },
 13619        ],
 13620        name: 'bridgeERC721To',
 13621        outputs: [],
 13622      },
 13623      {
 13624        stateMutability: 'nonpayable',
 13625        type: 'function',
 13626        inputs: [
 13627          { name: '_localToken', internalType: 'address', type: 'address' },
 13628          { name: '_remoteToken', internalType: 'address', type: 'address' },
 13629          { name: '_from', internalType: 'address', type: 'address' },
 13630          { name: '_to', internalType: 'address', type: 'address' },
 13631          { name: '_tokenId', internalType: 'uint256', type: 'uint256' },
 13632          { name: '_extraData', internalType: 'bytes', type: 'bytes' },
 13633        ],
 13634        name: 'finalizeBridgeERC721',
 13635        outputs: [],
 13636      },
 13637      {
 13638        stateMutability: 'view',
 13639        type: 'function',
 13640        inputs: [],
 13641        name: 'messenger',
 13642        outputs: [
 13643          {
 13644            name: '',
 13645            internalType: 'contract CrossDomainMessenger',
 13646            type: 'address',
 13647          },
 13648        ],
 13649      },
 13650      {
 13651        stateMutability: 'view',
 13652        type: 'function',
 13653        inputs: [],
 13654        name: 'otherBridge',
 13655        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 13656      },
 13657      {
 13658        stateMutability: 'view',
 13659        type: 'function',
 13660        inputs: [],
 13661        name: 'version',
 13662        outputs: [{ name: '', internalType: 'string', type: 'string' }],
 13663      },
 13664    ],
 13665    'L2ERC721Bridge_optimism-goerli': [
 13666      {
 13667        stateMutability: 'nonpayable',
 13668        type: 'constructor',
 13669        inputs: [
 13670          { name: '_messenger', internalType: 'address', type: 'address' },
 13671          { name: '_otherBridge', internalType: 'address', type: 'address' },
 13672        ],
 13673      },
 13674      {
 13675        type: 'event',
 13676        anonymous: false,
 13677        inputs: [
 13678          {
 13679            name: 'localToken',
 13680            internalType: 'address',
 13681            type: 'address',
 13682            indexed: true,
 13683          },
 13684          {
 13685            name: 'remoteToken',
 13686            internalType: 'address',
 13687            type: 'address',
 13688            indexed: true,
 13689          },
 13690          {
 13691            name: 'from',
 13692            internalType: 'address',
 13693            type: 'address',
 13694            indexed: true,
 13695          },
 13696          {
 13697            name: 'to',
 13698            internalType: 'address',
 13699            type: 'address',
 13700            indexed: false,
 13701          },
 13702          {
 13703            name: 'tokenId',
 13704            internalType: 'uint256',
 13705            type: 'uint256',
 13706            indexed: false,
 13707          },
 13708          {
 13709            name: 'extraData',
 13710            internalType: 'bytes',
 13711            type: 'bytes',
 13712            indexed: false,
 13713          },
 13714        ],
 13715        name: 'ERC721BridgeFinalized',
 13716      },
 13717      {
 13718        type: 'event',
 13719        anonymous: false,
 13720        inputs: [
 13721          {
 13722            name: 'localToken',
 13723            internalType: 'address',
 13724            type: 'address',
 13725            indexed: true,
 13726          },
 13727          {
 13728            name: 'remoteToken',
 13729            internalType: 'address',
 13730            type: 'address',
 13731            indexed: true,
 13732          },
 13733          {
 13734            name: 'from',
 13735            internalType: 'address',
 13736            type: 'address',
 13737            indexed: true,
 13738          },
 13739          {
 13740            name: 'to',
 13741            internalType: 'address',
 13742            type: 'address',
 13743            indexed: false,
 13744          },
 13745          {
 13746            name: 'tokenId',
 13747            internalType: 'uint256',
 13748            type: 'uint256',
 13749            indexed: false,
 13750          },
 13751          {
 13752            name: 'extraData',
 13753            internalType: 'bytes',
 13754            type: 'bytes',
 13755            indexed: false,
 13756          },
 13757        ],
 13758        name: 'ERC721BridgeInitiated',
 13759      },
 13760      {
 13761        stateMutability: 'view',
 13762        type: 'function',
 13763        inputs: [],
 13764        name: 'MESSENGER',
 13765        outputs: [
 13766          {
 13767            name: '',
 13768            internalType: 'contract CrossDomainMessenger',
 13769            type: 'address',
 13770          },
 13771        ],
 13772      },
 13773      {
 13774        stateMutability: 'view',
 13775        type: 'function',
 13776        inputs: [],
 13777        name: 'OTHER_BRIDGE',
 13778        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 13779      },
 13780      {
 13781        stateMutability: 'nonpayable',
 13782        type: 'function',
 13783        inputs: [
 13784          { name: '_localToken', internalType: 'address', type: 'address' },
 13785          { name: '_remoteToken', internalType: 'address', type: 'address' },
 13786          { name: '_tokenId', internalType: 'uint256', type: 'uint256' },
 13787          { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' },
 13788          { name: '_extraData', internalType: 'bytes', type: 'bytes' },
 13789        ],
 13790        name: 'bridgeERC721',
 13791        outputs: [],
 13792      },
 13793      {
 13794        stateMutability: 'nonpayable',
 13795        type: 'function',
 13796        inputs: [
 13797          { name: '_localToken', internalType: 'address', type: 'address' },
 13798          { name: '_remoteToken', internalType: 'address', type: 'address' },
 13799          { name: '_to', internalType: 'address', type: 'address' },
 13800          { name: '_tokenId', internalType: 'uint256', type: 'uint256' },
 13801          { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' },
 13802          { name: '_extraData', internalType: 'bytes', type: 'bytes' },
 13803        ],
 13804        name: 'bridgeERC721To',
 13805        outputs: [],
 13806      },
 13807      {
 13808        stateMutability: 'nonpayable',
 13809        type: 'function',
 13810        inputs: [
 13811          { name: '_localToken', internalType: 'address', type: 'address' },
 13812          { name: '_remoteToken', internalType: 'address', type: 'address' },
 13813          { name: '_from', internalType: 'address', type: 'address' },
 13814          { name: '_to', internalType: 'address', type: 'address' },
 13815          { name: '_tokenId', internalType: 'uint256', type: 'uint256' },
 13816          { name: '_extraData', internalType: 'bytes', type: 'bytes' },
 13817        ],
 13818        name: 'finalizeBridgeERC721',
 13819        outputs: [],
 13820      },
 13821      {
 13822        stateMutability: 'view',
 13823        type: 'function',
 13824        inputs: [],
 13825        name: 'messenger',
 13826        outputs: [
 13827          {
 13828            name: '',
 13829            internalType: 'contract CrossDomainMessenger',
 13830            type: 'address',
 13831          },
 13832        ],
 13833      },
 13834      {
 13835        stateMutability: 'view',
 13836        type: 'function',
 13837        inputs: [],
 13838        name: 'otherBridge',
 13839        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 13840      },
 13841      {
 13842        stateMutability: 'view',
 13843        type: 'function',
 13844        inputs: [],
 13845        name: 'version',
 13846        outputs: [{ name: '', internalType: 'string', type: 'string' }],
 13847      },
 13848    ],
 13849    L2OutputOracle: [
 13850      {
 13851        stateMutability: 'nonpayable',
 13852        type: 'constructor',
 13853        inputs: [
 13854          {
 13855            name: '_submissionInterval',
 13856            internalType: 'uint256',
 13857            type: 'uint256',
 13858          },
 13859          { name: '_l2BlockTime', internalType: 'uint256', type: 'uint256' },
 13860          {
 13861            name: '_finalizationPeriodSeconds',
 13862            internalType: 'uint256',
 13863            type: 'uint256',
 13864          },
 13865        ],
 13866      },
 13867      {
 13868        type: 'event',
 13869        anonymous: false,
 13870        inputs: [
 13871          {
 13872            name: 'version',
 13873            internalType: 'uint8',
 13874            type: 'uint8',
 13875            indexed: false,
 13876          },
 13877        ],
 13878        name: 'Initialized',
 13879      },
 13880      {
 13881        type: 'event',
 13882        anonymous: false,
 13883        inputs: [
 13884          {
 13885            name: 'outputRoot',
 13886            internalType: 'bytes32',
 13887            type: 'bytes32',
 13888            indexed: true,
 13889          },
 13890          {
 13891            name: 'l2OutputIndex',
 13892            internalType: 'uint256',
 13893            type: 'uint256',
 13894            indexed: true,
 13895          },
 13896          {
 13897            name: 'l2BlockNumber',
 13898            internalType: 'uint256',
 13899            type: 'uint256',
 13900            indexed: true,
 13901          },
 13902          {
 13903            name: 'l1Timestamp',
 13904            internalType: 'uint256',
 13905            type: 'uint256',
 13906            indexed: false,
 13907          },
 13908        ],
 13909        name: 'OutputProposed',
 13910      },
 13911      {
 13912        type: 'event',
 13913        anonymous: false,
 13914        inputs: [
 13915          {
 13916            name: 'prevNextOutputIndex',
 13917            internalType: 'uint256',
 13918            type: 'uint256',
 13919            indexed: true,
 13920          },
 13921          {
 13922            name: 'newNextOutputIndex',
 13923            internalType: 'uint256',
 13924            type: 'uint256',
 13925            indexed: true,
 13926          },
 13927        ],
 13928        name: 'OutputsDeleted',
 13929      },
 13930      {
 13931        stateMutability: 'view',
 13932        type: 'function',
 13933        inputs: [],
 13934        name: 'CHALLENGER',
 13935        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 13936      },
 13937      {
 13938        stateMutability: 'view',
 13939        type: 'function',
 13940        inputs: [],
 13941        name: 'FINALIZATION_PERIOD_SECONDS',
 13942        outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
 13943      },
 13944      {
 13945        stateMutability: 'view',
 13946        type: 'function',
 13947        inputs: [],
 13948        name: 'L2_BLOCK_TIME',
 13949        outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
 13950      },
 13951      {
 13952        stateMutability: 'view',
 13953        type: 'function',
 13954        inputs: [],
 13955        name: 'PROPOSER',
 13956        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 13957      },
 13958      {
 13959        stateMutability: 'view',
 13960        type: 'function',
 13961        inputs: [],
 13962        name: 'SUBMISSION_INTERVAL',
 13963        outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
 13964      },
 13965      {
 13966        stateMutability: 'view',
 13967        type: 'function',
 13968        inputs: [],
 13969        name: 'challenger',
 13970        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 13971      },
 13972      {
 13973        stateMutability: 'view',
 13974        type: 'function',
 13975        inputs: [
 13976          { name: '_l2BlockNumber', internalType: 'uint256', type: 'uint256' },
 13977        ],
 13978        name: 'computeL2Timestamp',
 13979        outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
 13980      },
 13981      {
 13982        stateMutability: 'nonpayable',
 13983        type: 'function',
 13984        inputs: [
 13985          { name: '_l2OutputIndex', internalType: 'uint256', type: 'uint256' },
 13986        ],
 13987        name: 'deleteL2Outputs',
 13988        outputs: [],
 13989      },
 13990      {
 13991        stateMutability: 'view',
 13992        type: 'function',
 13993        inputs: [],
 13994        name: 'finalizationPeriodSeconds',
 13995        outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
 13996      },
 13997      {
 13998        stateMutability: 'view',
 13999        type: 'function',
 14000        inputs: [
 14001          { name: '_l2OutputIndex', internalType: 'uint256', type: 'uint256' },
 14002        ],
 14003        name: 'getL2Output',
 14004        outputs: [
 14005          {
 14006            name: '',
 14007            internalType: 'struct Types.OutputProposal',
 14008            type: 'tuple',
 14009            components: [
 14010              { name: 'outputRoot', internalType: 'bytes32', type: 'bytes32' },
 14011              { name: 'timestamp', internalType: 'uint128', type: 'uint128' },
 14012              { name: 'l2BlockNumber', internalType: 'uint128', type: 'uint128' },
 14013            ],
 14014          },
 14015        ],
 14016      },
 14017      {
 14018        stateMutability: 'view',
 14019        type: 'function',
 14020        inputs: [
 14021          { name: '_l2BlockNumber', internalType: 'uint256', type: 'uint256' },
 14022        ],
 14023        name: 'getL2OutputAfter',
 14024        outputs: [
 14025          {
 14026            name: '',
 14027            internalType: 'struct Types.OutputProposal',
 14028            type: 'tuple',
 14029            components: [
 14030              { name: 'outputRoot', internalType: 'bytes32', type: 'bytes32' },
 14031              { name: 'timestamp', internalType: 'uint128', type: 'uint128' },
 14032              { name: 'l2BlockNumber', internalType: 'uint128', type: 'uint128' },
 14033            ],
 14034          },
 14035        ],
 14036      },
 14037      {
 14038        stateMutability: 'view',
 14039        type: 'function',
 14040        inputs: [
 14041          { name: '_l2BlockNumber', internalType: 'uint256', type: 'uint256' },
 14042        ],
 14043        name: 'getL2OutputIndexAfter',
 14044        outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
 14045      },
 14046      {
 14047        stateMutability: 'nonpayable',
 14048        type: 'function',
 14049        inputs: [
 14050          {
 14051            name: '_startingBlockNumber',
 14052            internalType: 'uint256',
 14053            type: 'uint256',
 14054          },
 14055          {
 14056            name: '_startingTimestamp',
 14057            internalType: 'uint256',
 14058            type: 'uint256',
 14059          },
 14060          { name: '_proposer', internalType: 'address', type: 'address' },
 14061          { name: '_challenger', internalType: 'address', type: 'address' },
 14062        ],
 14063        name: 'initialize',
 14064        outputs: [],
 14065      },
 14066      {
 14067        stateMutability: 'view',
 14068        type: 'function',
 14069        inputs: [],
 14070        name: 'l2BlockTime',
 14071        outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
 14072      },
 14073      {
 14074        stateMutability: 'view',
 14075        type: 'function',
 14076        inputs: [],
 14077        name: 'latestBlockNumber',
 14078        outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
 14079      },
 14080      {
 14081        stateMutability: 'view',
 14082        type: 'function',
 14083        inputs: [],
 14084        name: 'latestOutputIndex',
 14085        outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
 14086      },
 14087      {
 14088        stateMutability: 'view',
 14089        type: 'function',
 14090        inputs: [],
 14091        name: 'nextBlockNumber',
 14092        outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
 14093      },
 14094      {
 14095        stateMutability: 'view',
 14096        type: 'function',
 14097        inputs: [],
 14098        name: 'nextOutputIndex',
 14099        outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
 14100      },
 14101      {
 14102        stateMutability: 'payable',
 14103        type: 'function',
 14104        inputs: [
 14105          { name: '_outputRoot', internalType: 'bytes32', type: 'bytes32' },
 14106          { name: '_l2BlockNumber', internalType: 'uint256', type: 'uint256' },
 14107          { name: '_l1BlockHash', internalType: 'bytes32', type: 'bytes32' },
 14108          { name: '_l1BlockNumber', internalType: 'uint256', type: 'uint256' },
 14109        ],
 14110        name: 'proposeL2Output',
 14111        outputs: [],
 14112      },
 14113      {
 14114        stateMutability: 'view',
 14115        type: 'function',
 14116        inputs: [],
 14117        name: 'proposer',
 14118        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 14119      },
 14120      {
 14121        stateMutability: 'view',
 14122        type: 'function',
 14123        inputs: [],
 14124        name: 'startingBlockNumber',
 14125        outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
 14126      },
 14127      {
 14128        stateMutability: 'view',
 14129        type: 'function',
 14130        inputs: [],
 14131        name: 'startingTimestamp',
 14132        outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
 14133      },
 14134      {
 14135        stateMutability: 'view',
 14136        type: 'function',
 14137        inputs: [],
 14138        name: 'submissionInterval',
 14139        outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
 14140      },
 14141      {
 14142        stateMutability: 'view',
 14143        type: 'function',
 14144        inputs: [],
 14145        name: 'version',
 14146        outputs: [{ name: '', internalType: 'string', type: 'string' }],
 14147      },
 14148    ],
 14149    L2StandardBridge: [
 14150      {
 14151        stateMutability: 'nonpayable',
 14152        type: 'constructor',
 14153        inputs: [
 14154          {
 14155            name: '_otherBridge',
 14156            internalType: 'address payable',
 14157            type: 'address',
 14158          },
 14159        ],
 14160      },
 14161      {
 14162        type: 'event',
 14163        anonymous: false,
 14164        inputs: [
 14165          {
 14166            name: 'l1Token',
 14167            internalType: 'address',
 14168            type: 'address',
 14169            indexed: true,
 14170          },
 14171          {
 14172            name: 'l2Token',
 14173            internalType: 'address',
 14174            type: 'address',
 14175            indexed: true,
 14176          },
 14177          {
 14178            name: 'from',
 14179            internalType: 'address',
 14180            type: 'address',
 14181            indexed: true,
 14182          },
 14183          {
 14184            name: 'to',
 14185            internalType: 'address',
 14186            type: 'address',
 14187            indexed: false,
 14188          },
 14189          {
 14190            name: 'amount',
 14191            internalType: 'uint256',
 14192            type: 'uint256',
 14193            indexed: false,
 14194          },
 14195          {
 14196            name: 'extraData',
 14197            internalType: 'bytes',
 14198            type: 'bytes',
 14199            indexed: false,
 14200          },
 14201        ],
 14202        name: 'DepositFinalized',
 14203      },
 14204      {
 14205        type: 'event',
 14206        anonymous: false,
 14207        inputs: [
 14208          {
 14209            name: 'localToken',
 14210            internalType: 'address',
 14211            type: 'address',
 14212            indexed: true,
 14213          },
 14214          {
 14215            name: 'remoteToken',
 14216            internalType: 'address',
 14217            type: 'address',
 14218            indexed: true,
 14219          },
 14220          {
 14221            name: 'from',
 14222            internalType: 'address',
 14223            type: 'address',
 14224            indexed: true,
 14225          },
 14226          {
 14227            name: 'to',
 14228            internalType: 'address',
 14229            type: 'address',
 14230            indexed: false,
 14231          },
 14232          {
 14233            name: 'amount',
 14234            internalType: 'uint256',
 14235            type: 'uint256',
 14236            indexed: false,
 14237          },
 14238          {
 14239            name: 'extraData',
 14240            internalType: 'bytes',
 14241            type: 'bytes',
 14242            indexed: false,
 14243          },
 14244        ],
 14245        name: 'ERC20BridgeFinalized',
 14246      },
 14247      {
 14248        type: 'event',
 14249        anonymous: false,
 14250        inputs: [
 14251          {
 14252            name: 'localToken',
 14253            internalType: 'address',
 14254            type: 'address',
 14255            indexed: true,
 14256          },
 14257          {
 14258            name: 'remoteToken',
 14259            internalType: 'address',
 14260            type: 'address',
 14261            indexed: true,
 14262          },
 14263          {
 14264            name: 'from',
 14265            internalType: 'address',
 14266            type: 'address',
 14267            indexed: true,
 14268          },
 14269          {
 14270            name: 'to',
 14271            internalType: 'address',
 14272            type: 'address',
 14273            indexed: false,
 14274          },
 14275          {
 14276            name: 'amount',
 14277            internalType: 'uint256',
 14278            type: 'uint256',
 14279            indexed: false,
 14280          },
 14281          {
 14282            name: 'extraData',
 14283            internalType: 'bytes',
 14284            type: 'bytes',
 14285            indexed: false,
 14286          },
 14287        ],
 14288        name: 'ERC20BridgeInitiated',
 14289      },
 14290      {
 14291        type: 'event',
 14292        anonymous: false,
 14293        inputs: [
 14294          {
 14295            name: 'from',
 14296            internalType: 'address',
 14297            type: 'address',
 14298            indexed: true,
 14299          },
 14300          { name: 'to', internalType: 'address', type: 'address', indexed: true },
 14301          {
 14302            name: 'amount',
 14303            internalType: 'uint256',
 14304            type: 'uint256',
 14305            indexed: false,
 14306          },
 14307          {
 14308            name: 'extraData',
 14309            internalType: 'bytes',
 14310            type: 'bytes',
 14311            indexed: false,
 14312          },
 14313        ],
 14314        name: 'ETHBridgeFinalized',
 14315      },
 14316      {
 14317        type: 'event',
 14318        anonymous: false,
 14319        inputs: [
 14320          {
 14321            name: 'from',
 14322            internalType: 'address',
 14323            type: 'address',
 14324            indexed: true,
 14325          },
 14326          { name: 'to', internalType: 'address', type: 'address', indexed: true },
 14327          {
 14328            name: 'amount',
 14329            internalType: 'uint256',
 14330            type: 'uint256',
 14331            indexed: false,
 14332          },
 14333          {
 14334            name: 'extraData',
 14335            internalType: 'bytes',
 14336            type: 'bytes',
 14337            indexed: false,
 14338          },
 14339        ],
 14340        name: 'ETHBridgeInitiated',
 14341      },
 14342      {
 14343        type: 'event',
 14344        anonymous: false,
 14345        inputs: [
 14346          {
 14347            name: 'l1Token',
 14348            internalType: 'address',
 14349            type: 'address',
 14350            indexed: true,
 14351          },
 14352          {
 14353            name: 'l2Token',
 14354            internalType: 'address',
 14355            type: 'address',
 14356            indexed: true,
 14357          },
 14358          {
 14359            name: 'from',
 14360            internalType: 'address',
 14361            type: 'address',
 14362            indexed: true,
 14363          },
 14364          {
 14365            name: 'to',
 14366            internalType: 'address',
 14367            type: 'address',
 14368            indexed: false,
 14369          },
 14370          {
 14371            name: 'amount',
 14372            internalType: 'uint256',
 14373            type: 'uint256',
 14374            indexed: false,
 14375          },
 14376          {
 14377            name: 'extraData',
 14378            internalType: 'bytes',
 14379            type: 'bytes',
 14380            indexed: false,
 14381          },
 14382        ],
 14383        name: 'WithdrawalInitiated',
 14384      },
 14385      {
 14386        stateMutability: 'view',
 14387        type: 'function',
 14388        inputs: [],
 14389        name: 'MESSENGER',
 14390        outputs: [
 14391          {
 14392            name: '',
 14393            internalType: 'contract CrossDomainMessenger',
 14394            type: 'address',
 14395          },
 14396        ],
 14397      },
 14398      {
 14399        stateMutability: 'view',
 14400        type: 'function',
 14401        inputs: [],
 14402        name: 'OTHER_BRIDGE',
 14403        outputs: [
 14404          { name: '', internalType: 'contract StandardBridge', type: 'address' },
 14405        ],
 14406      },
 14407      {
 14408        stateMutability: 'nonpayable',
 14409        type: 'function',
 14410        inputs: [
 14411          { name: '_localToken', internalType: 'address', type: 'address' },
 14412          { name: '_remoteToken', internalType: 'address', type: 'address' },
 14413          { name: '_amount', internalType: 'uint256', type: 'uint256' },
 14414          { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' },
 14415          { name: '_extraData', internalType: 'bytes', type: 'bytes' },
 14416        ],
 14417        name: 'bridgeERC20',
 14418        outputs: [],
 14419      },
 14420      {
 14421        stateMutability: 'nonpayable',
 14422        type: 'function',
 14423        inputs: [
 14424          { name: '_localToken', internalType: 'address', type: 'address' },
 14425          { name: '_remoteToken', internalType: 'address', type: 'address' },
 14426          { name: '_to', internalType: 'address', type: 'address' },
 14427          { name: '_amount', internalType: 'uint256', type: 'uint256' },
 14428          { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' },
 14429          { name: '_extraData', internalType: 'bytes', type: 'bytes' },
 14430        ],
 14431        name: 'bridgeERC20To',
 14432        outputs: [],
 14433      },
 14434      {
 14435        stateMutability: 'payable',
 14436        type: 'function',
 14437        inputs: [
 14438          { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' },
 14439          { name: '_extraData', internalType: 'bytes', type: 'bytes' },
 14440        ],
 14441        name: 'bridgeETH',
 14442        outputs: [],
 14443      },
 14444      {
 14445        stateMutability: 'payable',
 14446        type: 'function',
 14447        inputs: [
 14448          { name: '_to', internalType: 'address', type: 'address' },
 14449          { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' },
 14450          { name: '_extraData', internalType: 'bytes', type: 'bytes' },
 14451        ],
 14452        name: 'bridgeETHTo',
 14453        outputs: [],
 14454      },
 14455      {
 14456        stateMutability: 'view',
 14457        type: 'function',
 14458        inputs: [
 14459          { name: '', internalType: 'address', type: 'address' },
 14460          { name: '', internalType: 'address', type: 'address' },
 14461        ],
 14462        name: 'deposits',
 14463        outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
 14464      },
 14465      {
 14466        stateMutability: 'nonpayable',
 14467        type: 'function',
 14468        inputs: [
 14469          { name: '_localToken', internalType: 'address', type: 'address' },
 14470          { name: '_remoteToken', internalType: 'address', type: 'address' },
 14471          { name: '_from', internalType: 'address', type: 'address' },
 14472          { name: '_to', internalType: 'address', type: 'address' },
 14473          { name: '_amount', internalType: 'uint256', type: 'uint256' },
 14474          { name: '_extraData', internalType: 'bytes', type: 'bytes' },
 14475        ],
 14476        name: 'finalizeBridgeERC20',
 14477        outputs: [],
 14478      },
 14479      {
 14480        stateMutability: 'payable',
 14481        type: 'function',
 14482        inputs: [
 14483          { name: '_from', internalType: 'address', type: 'address' },
 14484          { name: '_to', internalType: 'address', type: 'address' },
 14485          { name: '_amount', internalType: 'uint256', type: 'uint256' },
 14486          { name: '_extraData', internalType: 'bytes', type: 'bytes' },
 14487        ],
 14488        name: 'finalizeBridgeETH',
 14489        outputs: [],
 14490      },
 14491      {
 14492        stateMutability: 'payable',
 14493        type: 'function',
 14494        inputs: [
 14495          { name: '_l1Token', internalType: 'address', type: 'address' },
 14496          { name: '_l2Token', internalType: 'address', type: 'address' },
 14497          { name: '_from', internalType: 'address', type: 'address' },
 14498          { name: '_to', internalType: 'address', type: 'address' },
 14499          { name: '_amount', internalType: 'uint256', type: 'uint256' },
 14500          { name: '_extraData', internalType: 'bytes', type: 'bytes' },
 14501        ],
 14502        name: 'finalizeDeposit',
 14503        outputs: [],
 14504      },
 14505      {
 14506        stateMutability: 'view',
 14507        type: 'function',
 14508        inputs: [],
 14509        name: 'l1TokenBridge',
 14510        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 14511      },
 14512      {
 14513        stateMutability: 'view',
 14514        type: 'function',
 14515        inputs: [],
 14516        name: 'messenger',
 14517        outputs: [
 14518          {
 14519            name: '',
 14520            internalType: 'contract CrossDomainMessenger',
 14521            type: 'address',
 14522          },
 14523        ],
 14524      },
 14525      {
 14526        stateMutability: 'view',
 14527        type: 'function',
 14528        inputs: [],
 14529        name: 'version',
 14530        outputs: [{ name: '', internalType: 'string', type: 'string' }],
 14531      },
 14532      {
 14533        stateMutability: 'payable',
 14534        type: 'function',
 14535        inputs: [
 14536          { name: '_l2Token', internalType: 'address', type: 'address' },
 14537          { name: '_amount', internalType: 'uint256', type: 'uint256' },
 14538          { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' },
 14539          { name: '_extraData', internalType: 'bytes', type: 'bytes' },
 14540        ],
 14541        name: 'withdraw',
 14542        outputs: [],
 14543      },
 14544      {
 14545        stateMutability: 'payable',
 14546        type: 'function',
 14547        inputs: [
 14548          { name: '_l2Token', internalType: 'address', type: 'address' },
 14549          { name: '_to', internalType: 'address', type: 'address' },
 14550          { name: '_amount', internalType: 'uint256', type: 'uint256' },
 14551          { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' },
 14552          { name: '_extraData', internalType: 'bytes', type: 'bytes' },
 14553        ],
 14554        name: 'withdrawTo',
 14555        outputs: [],
 14556      },
 14557      { stateMutability: 'payable', type: 'receive' },
 14558    ],
 14559    L2ToL1MessagePasser: [
 14560      { stateMutability: 'nonpayable', type: 'constructor', inputs: [] },
 14561      {
 14562        type: 'event',
 14563        anonymous: false,
 14564        inputs: [
 14565          {
 14566            name: 'nonce',
 14567            internalType: 'uint256',
 14568            type: 'uint256',
 14569            indexed: true,
 14570          },
 14571          {
 14572            name: 'sender',
 14573            internalType: 'address',
 14574            type: 'address',
 14575            indexed: true,
 14576          },
 14577          {
 14578            name: 'target',
 14579            internalType: 'address',
 14580            type: 'address',
 14581            indexed: true,
 14582          },
 14583          {
 14584            name: 'value',
 14585            internalType: 'uint256',
 14586            type: 'uint256',
 14587            indexed: false,
 14588          },
 14589          {
 14590            name: 'gasLimit',
 14591            internalType: 'uint256',
 14592            type: 'uint256',
 14593            indexed: false,
 14594          },
 14595          { name: 'data', internalType: 'bytes', type: 'bytes', indexed: false },
 14596          {
 14597            name: 'withdrawalHash',
 14598            internalType: 'bytes32',
 14599            type: 'bytes32',
 14600            indexed: false,
 14601          },
 14602        ],
 14603        name: 'MessagePassed',
 14604      },
 14605      {
 14606        type: 'event',
 14607        anonymous: false,
 14608        inputs: [
 14609          {
 14610            name: 'amount',
 14611            internalType: 'uint256',
 14612            type: 'uint256',
 14613            indexed: true,
 14614          },
 14615        ],
 14616        name: 'WithdrawerBalanceBurnt',
 14617      },
 14618      {
 14619        stateMutability: 'view',
 14620        type: 'function',
 14621        inputs: [],
 14622        name: 'MESSAGE_VERSION',
 14623        outputs: [{ name: '', internalType: 'uint16', type: 'uint16' }],
 14624      },
 14625      {
 14626        stateMutability: 'nonpayable',
 14627        type: 'function',
 14628        inputs: [],
 14629        name: 'burn',
 14630        outputs: [],
 14631      },
 14632      {
 14633        stateMutability: 'payable',
 14634        type: 'function',
 14635        inputs: [
 14636          { name: '_target', internalType: 'address', type: 'address' },
 14637          { name: '_gasLimit', internalType: 'uint256', type: 'uint256' },
 14638          { name: '_data', internalType: 'bytes', type: 'bytes' },
 14639        ],
 14640        name: 'initiateWithdrawal',
 14641        outputs: [],
 14642      },
 14643      {
 14644        stateMutability: 'view',
 14645        type: 'function',
 14646        inputs: [],
 14647        name: 'messageNonce',
 14648        outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
 14649      },
 14650      {
 14651        stateMutability: 'view',
 14652        type: 'function',
 14653        inputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
 14654        name: 'sentMessages',
 14655        outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
 14656      },
 14657      {
 14658        stateMutability: 'view',
 14659        type: 'function',
 14660        inputs: [],
 14661        name: 'version',
 14662        outputs: [{ name: '', internalType: 'string', type: 'string' }],
 14663      },
 14664      { stateMutability: 'payable', type: 'receive' },
 14665    ],
 14666    MintManager: [
 14667      {
 14668        stateMutability: 'nonpayable',
 14669        type: 'constructor',
 14670        inputs: [
 14671          { name: '_upgrader', internalType: 'address', type: 'address' },
 14672          { name: '_governanceToken', internalType: 'address', type: 'address' },
 14673        ],
 14674      },
 14675      {
 14676        type: 'event',
 14677        anonymous: false,
 14678        inputs: [
 14679          {
 14680            name: 'previousOwner',
 14681            internalType: 'address',
 14682            type: 'address',
 14683            indexed: true,
 14684          },
 14685          {
 14686            name: 'newOwner',
 14687            internalType: 'address',
 14688            type: 'address',
 14689            indexed: true,
 14690          },
 14691        ],
 14692        name: 'OwnershipTransferred',
 14693      },
 14694      {
 14695        stateMutability: 'view',
 14696        type: 'function',
 14697        inputs: [],
 14698        name: 'DENOMINATOR',
 14699        outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
 14700      },
 14701      {
 14702        stateMutability: 'view',
 14703        type: 'function',
 14704        inputs: [],
 14705        name: 'MINT_CAP',
 14706        outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
 14707      },
 14708      {
 14709        stateMutability: 'view',
 14710        type: 'function',
 14711        inputs: [],
 14712        name: 'MINT_PERIOD',
 14713        outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
 14714      },
 14715      {
 14716        stateMutability: 'view',
 14717        type: 'function',
 14718        inputs: [],
 14719        name: 'governanceToken',
 14720        outputs: [
 14721          { name: '', internalType: 'contract GovernanceToken', type: 'address' },
 14722        ],
 14723      },
 14724      {
 14725        stateMutability: 'nonpayable',
 14726        type: 'function',
 14727        inputs: [
 14728          { name: '_account', internalType: 'address', type: 'address' },
 14729          { name: '_amount', internalType: 'uint256', type: 'uint256' },
 14730        ],
 14731        name: 'mint',
 14732        outputs: [],
 14733      },
 14734      {
 14735        stateMutability: 'view',
 14736        type: 'function',
 14737        inputs: [],
 14738        name: 'mintPermittedAfter',
 14739        outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
 14740      },
 14741      {
 14742        stateMutability: 'view',
 14743        type: 'function',
 14744        inputs: [],
 14745        name: 'owner',
 14746        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 14747      },
 14748      {
 14749        stateMutability: 'nonpayable',
 14750        type: 'function',
 14751        inputs: [],
 14752        name: 'renounceOwnership',
 14753        outputs: [],
 14754      },
 14755      {
 14756        stateMutability: 'nonpayable',
 14757        type: 'function',
 14758        inputs: [{ name: 'newOwner', internalType: 'address', type: 'address' }],
 14759        name: 'transferOwnership',
 14760        outputs: [],
 14761      },
 14762      {
 14763        stateMutability: 'nonpayable',
 14764        type: 'function',
 14765        inputs: [
 14766          { name: '_newMintManager', internalType: 'address', type: 'address' },
 14767        ],
 14768        name: 'upgrade',
 14769        outputs: [],
 14770      },
 14771    ],
 14772    OptimismMintableERC20Factory: [
 14773      { stateMutability: 'nonpayable', type: 'constructor', inputs: [] },
 14774      {
 14775        type: 'event',
 14776        anonymous: false,
 14777        inputs: [
 14778          {
 14779            name: 'version',
 14780            internalType: 'uint8',
 14781            type: 'uint8',
 14782            indexed: false,
 14783          },
 14784        ],
 14785        name: 'Initialized',
 14786      },
 14787      {
 14788        type: 'event',
 14789        anonymous: false,
 14790        inputs: [
 14791          {
 14792            name: 'localToken',
 14793            internalType: 'address',
 14794            type: 'address',
 14795            indexed: true,
 14796          },
 14797          {
 14798            name: 'remoteToken',
 14799            internalType: 'address',
 14800            type: 'address',
 14801            indexed: true,
 14802          },
 14803          {
 14804            name: 'deployer',
 14805            internalType: 'address',
 14806            type: 'address',
 14807            indexed: false,
 14808          },
 14809        ],
 14810        name: 'OptimismMintableERC20Created',
 14811      },
 14812      {
 14813        type: 'event',
 14814        anonymous: false,
 14815        inputs: [
 14816          {
 14817            name: 'remoteToken',
 14818            internalType: 'address',
 14819            type: 'address',
 14820            indexed: true,
 14821          },
 14822          {
 14823            name: 'localToken',
 14824            internalType: 'address',
 14825            type: 'address',
 14826            indexed: true,
 14827          },
 14828        ],
 14829        name: 'StandardL2TokenCreated',
 14830      },
 14831      {
 14832        stateMutability: 'view',
 14833        type: 'function',
 14834        inputs: [],
 14835        name: 'BRIDGE',
 14836        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 14837      },
 14838      {
 14839        stateMutability: 'view',
 14840        type: 'function',
 14841        inputs: [],
 14842        name: 'bridge',
 14843        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 14844      },
 14845      {
 14846        stateMutability: 'nonpayable',
 14847        type: 'function',
 14848        inputs: [
 14849          { name: '_remoteToken', internalType: 'address', type: 'address' },
 14850          { name: '_name', internalType: 'string', type: 'string' },
 14851          { name: '_symbol', internalType: 'string', type: 'string' },
 14852        ],
 14853        name: 'createOptimismMintableERC20',
 14854        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 14855      },
 14856      {
 14857        stateMutability: 'nonpayable',
 14858        type: 'function',
 14859        inputs: [
 14860          { name: '_remoteToken', internalType: 'address', type: 'address' },
 14861          { name: '_name', internalType: 'string', type: 'string' },
 14862          { name: '_symbol', internalType: 'string', type: 'string' },
 14863          { name: '_decimals', internalType: 'uint8', type: 'uint8' },
 14864        ],
 14865        name: 'createOptimismMintableERC20WithDecimals',
 14866        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 14867      },
 14868      {
 14869        stateMutability: 'nonpayable',
 14870        type: 'function',
 14871        inputs: [
 14872          { name: '_remoteToken', internalType: 'address', type: 'address' },
 14873          { name: '_name', internalType: 'string', type: 'string' },
 14874          { name: '_symbol', internalType: 'string', type: 'string' },
 14875        ],
 14876        name: 'createStandardL2Token',
 14877        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 14878      },
 14879      {
 14880        stateMutability: 'nonpayable',
 14881        type: 'function',
 14882        inputs: [{ name: '_bridge', internalType: 'address', type: 'address' }],
 14883        name: 'initialize',
 14884        outputs: [],
 14885      },
 14886      {
 14887        stateMutability: 'view',
 14888        type: 'function',
 14889        inputs: [],
 14890        name: 'version',
 14891        outputs: [{ name: '', internalType: 'string', type: 'string' }],
 14892      },
 14893    ],
 14894    OptimismMintableERC20Factory_goerli: [
 14895      { stateMutability: 'nonpayable', type: 'constructor', inputs: [] },
 14896      {
 14897        type: 'event',
 14898        anonymous: false,
 14899        inputs: [
 14900          {
 14901            name: 'version',
 14902            internalType: 'uint8',
 14903            type: 'uint8',
 14904            indexed: false,
 14905          },
 14906        ],
 14907        name: 'Initialized',
 14908      },
 14909      {
 14910        type: 'event',
 14911        anonymous: false,
 14912        inputs: [
 14913          {
 14914            name: 'localToken',
 14915            internalType: 'address',
 14916            type: 'address',
 14917            indexed: true,
 14918          },
 14919          {
 14920            name: 'remoteToken',
 14921            internalType: 'address',
 14922            type: 'address',
 14923            indexed: true,
 14924          },
 14925          {
 14926            name: 'deployer',
 14927            internalType: 'address',
 14928            type: 'address',
 14929            indexed: false,
 14930          },
 14931        ],
 14932        name: 'OptimismMintableERC20Created',
 14933      },
 14934      {
 14935        type: 'event',
 14936        anonymous: false,
 14937        inputs: [
 14938          {
 14939            name: 'remoteToken',
 14940            internalType: 'address',
 14941            type: 'address',
 14942            indexed: true,
 14943          },
 14944          {
 14945            name: 'localToken',
 14946            internalType: 'address',
 14947            type: 'address',
 14948            indexed: true,
 14949          },
 14950        ],
 14951        name: 'StandardL2TokenCreated',
 14952      },
 14953      {
 14954        stateMutability: 'view',
 14955        type: 'function',
 14956        inputs: [],
 14957        name: 'BRIDGE',
 14958        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 14959      },
 14960      {
 14961        stateMutability: 'view',
 14962        type: 'function',
 14963        inputs: [],
 14964        name: 'bridge',
 14965        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 14966      },
 14967      {
 14968        stateMutability: 'nonpayable',
 14969        type: 'function',
 14970        inputs: [
 14971          { name: '_remoteToken', internalType: 'address', type: 'address' },
 14972          { name: '_name', internalType: 'string', type: 'string' },
 14973          { name: '_symbol', internalType: 'string', type: 'string' },
 14974        ],
 14975        name: 'createOptimismMintableERC20',
 14976        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 14977      },
 14978      {
 14979        stateMutability: 'nonpayable',
 14980        type: 'function',
 14981        inputs: [
 14982          { name: '_remoteToken', internalType: 'address', type: 'address' },
 14983          { name: '_name', internalType: 'string', type: 'string' },
 14984          { name: '_symbol', internalType: 'string', type: 'string' },
 14985          { name: '_decimals', internalType: 'uint8', type: 'uint8' },
 14986        ],
 14987        name: 'createOptimismMintableERC20WithDecimals',
 14988        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 14989      },
 14990      {
 14991        stateMutability: 'nonpayable',
 14992        type: 'function',
 14993        inputs: [
 14994          { name: '_remoteToken', internalType: 'address', type: 'address' },
 14995          { name: '_name', internalType: 'string', type: 'string' },
 14996          { name: '_symbol', internalType: 'string', type: 'string' },
 14997        ],
 14998        name: 'createStandardL2Token',
 14999        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 15000      },
 15001      {
 15002        stateMutability: 'nonpayable',
 15003        type: 'function',
 15004        inputs: [{ name: '_bridge', internalType: 'address', type: 'address' }],
 15005        name: 'initialize',
 15006        outputs: [],
 15007      },
 15008      {
 15009        stateMutability: 'view',
 15010        type: 'function',
 15011        inputs: [],
 15012        name: 'version',
 15013        outputs: [{ name: '', internalType: 'string', type: 'string' }],
 15014      },
 15015    ],
 15016    'OptimismMintableERC20Factory_optimism-goerli': [
 15017      {
 15018        stateMutability: 'nonpayable',
 15019        type: 'constructor',
 15020        inputs: [{ name: '_bridge', internalType: 'address', type: 'address' }],
 15021      },
 15022      {
 15023        type: 'event',
 15024        anonymous: false,
 15025        inputs: [
 15026          {
 15027            name: 'localToken',
 15028            internalType: 'address',
 15029            type: 'address',
 15030            indexed: true,
 15031          },
 15032          {
 15033            name: 'remoteToken',
 15034            internalType: 'address',
 15035            type: 'address',
 15036            indexed: true,
 15037          },
 15038          {
 15039            name: 'deployer',
 15040            internalType: 'address',
 15041            type: 'address',
 15042            indexed: false,
 15043          },
 15044        ],
 15045        name: 'OptimismMintableERC20Created',
 15046      },
 15047      {
 15048        type: 'event',
 15049        anonymous: false,
 15050        inputs: [
 15051          {
 15052            name: 'remoteToken',
 15053            internalType: 'address',
 15054            type: 'address',
 15055            indexed: true,
 15056          },
 15057          {
 15058            name: 'localToken',
 15059            internalType: 'address',
 15060            type: 'address',
 15061            indexed: true,
 15062          },
 15063        ],
 15064        name: 'StandardL2TokenCreated',
 15065      },
 15066      {
 15067        stateMutability: 'view',
 15068        type: 'function',
 15069        inputs: [],
 15070        name: 'BRIDGE',
 15071        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 15072      },
 15073      {
 15074        stateMutability: 'nonpayable',
 15075        type: 'function',
 15076        inputs: [
 15077          { name: '_remoteToken', internalType: 'address', type: 'address' },
 15078          { name: '_name', internalType: 'string', type: 'string' },
 15079          { name: '_symbol', internalType: 'string', type: 'string' },
 15080        ],
 15081        name: 'createOptimismMintableERC20',
 15082        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 15083      },
 15084      {
 15085        stateMutability: 'nonpayable',
 15086        type: 'function',
 15087        inputs: [
 15088          { name: '_remoteToken', internalType: 'address', type: 'address' },
 15089          { name: '_name', internalType: 'string', type: 'string' },
 15090          { name: '_symbol', internalType: 'string', type: 'string' },
 15091        ],
 15092        name: 'createStandardL2Token',
 15093        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 15094      },
 15095      {
 15096        stateMutability: 'view',
 15097        type: 'function',
 15098        inputs: [],
 15099        name: 'version',
 15100        outputs: [{ name: '', internalType: 'string', type: 'string' }],
 15101      },
 15102    ],
 15103    OptimismMintableERC721Factory: [
 15104      {
 15105        stateMutability: 'nonpayable',
 15106        type: 'constructor',
 15107        inputs: [
 15108          { name: '_bridge', internalType: 'address', type: 'address' },
 15109          { name: '_remoteChainId', internalType: 'uint256', type: 'uint256' },
 15110        ],
 15111      },
 15112      {
 15113        type: 'event',
 15114        anonymous: false,
 15115        inputs: [
 15116          {
 15117            name: 'localToken',
 15118            internalType: 'address',
 15119            type: 'address',
 15120            indexed: true,
 15121          },
 15122          {
 15123            name: 'remoteToken',
 15124            internalType: 'address',
 15125            type: 'address',
 15126            indexed: true,
 15127          },
 15128          {
 15129            name: 'deployer',
 15130            internalType: 'address',
 15131            type: 'address',
 15132            indexed: false,
 15133          },
 15134        ],
 15135        name: 'OptimismMintableERC721Created',
 15136      },
 15137      {
 15138        stateMutability: 'view',
 15139        type: 'function',
 15140        inputs: [],
 15141        name: 'bridge',
 15142        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 15143      },
 15144      {
 15145        stateMutability: 'nonpayable',
 15146        type: 'function',
 15147        inputs: [
 15148          { name: '_remoteToken', internalType: 'address', type: 'address' },
 15149          { name: '_name', internalType: 'string', type: 'string' },
 15150          { name: '_symbol', internalType: 'string', type: 'string' },
 15151        ],
 15152        name: 'createOptimismMintableERC721',
 15153        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 15154      },
 15155      {
 15156        stateMutability: 'view',
 15157        type: 'function',
 15158        inputs: [{ name: '', internalType: 'address', type: 'address' }],
 15159        name: 'isOptimismMintableERC721',
 15160        outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
 15161      },
 15162      {
 15163        stateMutability: 'view',
 15164        type: 'function',
 15165        inputs: [],
 15166        name: 'remoteChainId',
 15167        outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
 15168      },
 15169      {
 15170        stateMutability: 'view',
 15171        type: 'function',
 15172        inputs: [],
 15173        name: 'version',
 15174        outputs: [{ name: '', internalType: 'string', type: 'string' }],
 15175      },
 15176    ],
 15177    'OptimismMintableERC721Factory_optimism-goerli': [
 15178      {
 15179        stateMutability: 'nonpayable',
 15180        type: 'constructor',
 15181        inputs: [
 15182          { name: '_bridge', internalType: 'address', type: 'address' },
 15183          { name: '_remoteChainId', internalType: 'uint256', type: 'uint256' },
 15184        ],
 15185      },
 15186      {
 15187        type: 'event',
 15188        anonymous: false,
 15189        inputs: [
 15190          {
 15191            name: 'localToken',
 15192            internalType: 'address',
 15193            type: 'address',
 15194            indexed: true,
 15195          },
 15196          {
 15197            name: 'remoteToken',
 15198            internalType: 'address',
 15199            type: 'address',
 15200            indexed: true,
 15201          },
 15202          {
 15203            name: 'deployer',
 15204            internalType: 'address',
 15205            type: 'address',
 15206            indexed: false,
 15207          },
 15208        ],
 15209        name: 'OptimismMintableERC721Created',
 15210      },
 15211      {
 15212        stateMutability: 'view',
 15213        type: 'function',
 15214        inputs: [],
 15215        name: 'BRIDGE',
 15216        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 15217      },
 15218      {
 15219        stateMutability: 'view',
 15220        type: 'function',
 15221        inputs: [],
 15222        name: 'REMOTE_CHAIN_ID',
 15223        outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
 15224      },
 15225      {
 15226        stateMutability: 'nonpayable',
 15227        type: 'function',
 15228        inputs: [
 15229          { name: '_remoteToken', internalType: 'address', type: 'address' },
 15230          { name: '_name', internalType: 'string', type: 'string' },
 15231          { name: '_symbol', internalType: 'string', type: 'string' },
 15232        ],
 15233        name: 'createOptimismMintableERC721',
 15234        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 15235      },
 15236      {
 15237        stateMutability: 'view',
 15238        type: 'function',
 15239        inputs: [{ name: '', internalType: 'address', type: 'address' }],
 15240        name: 'isOptimismMintableERC721',
 15241        outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
 15242      },
 15243      {
 15244        stateMutability: 'view',
 15245        type: 'function',
 15246        inputs: [],
 15247        name: 'version',
 15248        outputs: [{ name: '', internalType: 'string', type: 'string' }],
 15249      },
 15250    ],
 15251    OptimismPortal: [
 15252      { stateMutability: 'nonpayable', type: 'constructor', inputs: [] },
 15253      {
 15254        type: 'event',
 15255        anonymous: false,
 15256        inputs: [
 15257          {
 15258            name: 'version',
 15259            internalType: 'uint8',
 15260            type: 'uint8',
 15261            indexed: false,
 15262          },
 15263        ],
 15264        name: 'Initialized',
 15265      },
 15266      {
 15267        type: 'event',
 15268        anonymous: false,
 15269        inputs: [
 15270          {
 15271            name: 'account',
 15272            internalType: 'address',
 15273            type: 'address',
 15274            indexed: false,
 15275          },
 15276        ],
 15277        name: 'Paused',
 15278      },
 15279      {
 15280        type: 'event',
 15281        anonymous: false,
 15282        inputs: [
 15283          {
 15284            name: 'from',
 15285            internalType: 'address',
 15286            type: 'address',
 15287            indexed: true,
 15288          },
 15289          { name: 'to', internalType: 'address', type: 'address', indexed: true },
 15290          {
 15291            name: 'version',
 15292            internalType: 'uint256',
 15293            type: 'uint256',
 15294            indexed: true,
 15295          },
 15296          {
 15297            name: 'opaqueData',
 15298            internalType: 'bytes',
 15299            type: 'bytes',
 15300            indexed: false,
 15301          },
 15302        ],
 15303        name: 'TransactionDeposited',
 15304      },
 15305      {
 15306        type: 'event',
 15307        anonymous: false,
 15308        inputs: [
 15309          {
 15310            name: 'account',
 15311            internalType: 'address',
 15312            type: 'address',
 15313            indexed: false,
 15314          },
 15315        ],
 15316        name: 'Unpaused',
 15317      },
 15318      {
 15319        type: 'event',
 15320        anonymous: false,
 15321        inputs: [
 15322          {
 15323            name: 'withdrawalHash',
 15324            internalType: 'bytes32',
 15325            type: 'bytes32',
 15326            indexed: true,
 15327          },
 15328          { name: 'success', internalType: 'bool', type: 'bool', indexed: false },
 15329        ],
 15330        name: 'WithdrawalFinalized',
 15331      },
 15332      {
 15333        type: 'event',
 15334        anonymous: false,
 15335        inputs: [
 15336          {
 15337            name: 'withdrawalHash',
 15338            internalType: 'bytes32',
 15339            type: 'bytes32',
 15340            indexed: true,
 15341          },
 15342          {
 15343            name: 'from',
 15344            internalType: 'address',
 15345            type: 'address',
 15346            indexed: true,
 15347          },
 15348          { name: 'to', internalType: 'address', type: 'address', indexed: true },
 15349        ],
 15350        name: 'WithdrawalProven',
 15351      },
 15352      {
 15353        stateMutability: 'view',
 15354        type: 'function',
 15355        inputs: [],
 15356        name: 'GUARDIAN',
 15357        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 15358      },
 15359      {
 15360        stateMutability: 'view',
 15361        type: 'function',
 15362        inputs: [],
 15363        name: 'L2_ORACLE',
 15364        outputs: [
 15365          { name: '', internalType: 'contract L2OutputOracle', type: 'address' },
 15366        ],
 15367      },
 15368      {
 15369        stateMutability: 'view',
 15370        type: 'function',
 15371        inputs: [],
 15372        name: 'SYSTEM_CONFIG',
 15373        outputs: [
 15374          { name: '', internalType: 'contract SystemConfig', type: 'address' },
 15375        ],
 15376      },
 15377      {
 15378        stateMutability: 'payable',
 15379        type: 'function',
 15380        inputs: [
 15381          { name: '_to', internalType: 'address', type: 'address' },
 15382          { name: '_value', internalType: 'uint256', type: 'uint256' },
 15383          { name: '_gasLimit', internalType: 'uint64', type: 'uint64' },
 15384          { name: '_isCreation', internalType: 'bool', type: 'bool' },
 15385          { name: '_data', internalType: 'bytes', type: 'bytes' },
 15386        ],
 15387        name: 'depositTransaction',
 15388        outputs: [],
 15389      },
 15390      {
 15391        stateMutability: 'payable',
 15392        type: 'function',
 15393        inputs: [],
 15394        name: 'donateETH',
 15395        outputs: [],
 15396      },
 15397      {
 15398        stateMutability: 'nonpayable',
 15399        type: 'function',
 15400        inputs: [
 15401          {
 15402            name: '_tx',
 15403            internalType: 'struct Types.WithdrawalTransaction',
 15404            type: 'tuple',
 15405            components: [
 15406              { name: 'nonce', internalType: 'uint256', type: 'uint256' },
 15407              { name: 'sender', internalType: 'address', type: 'address' },
 15408              { name: 'target', internalType: 'address', type: 'address' },
 15409              { name: 'value', internalType: 'uint256', type: 'uint256' },
 15410              { name: 'gasLimit', internalType: 'uint256', type: 'uint256' },
 15411              { name: 'data', internalType: 'bytes', type: 'bytes' },
 15412            ],
 15413          },
 15414        ],
 15415        name: 'finalizeWithdrawalTransaction',
 15416        outputs: [],
 15417      },
 15418      {
 15419        stateMutability: 'view',
 15420        type: 'function',
 15421        inputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
 15422        name: 'finalizedWithdrawals',
 15423        outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
 15424      },
 15425      {
 15426        stateMutability: 'view',
 15427        type: 'function',
 15428        inputs: [],
 15429        name: 'guardian',
 15430        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 15431      },
 15432      {
 15433        stateMutability: 'nonpayable',
 15434        type: 'function',
 15435        inputs: [
 15436          {
 15437            name: '_l2Oracle',
 15438            internalType: 'contract L2OutputOracle',
 15439            type: 'address',
 15440          },
 15441          { name: '_guardian', internalType: 'address', type: 'address' },
 15442          {
 15443            name: '_systemConfig',
 15444            internalType: 'contract SystemConfig',
 15445            type: 'address',
 15446          },
 15447          { name: '_paused', internalType: 'bool', type: 'bool' },
 15448        ],
 15449        name: 'initialize',
 15450        outputs: [],
 15451      },
 15452      {
 15453        stateMutability: 'view',
 15454        type: 'function',
 15455        inputs: [
 15456          { name: '_l2OutputIndex', internalType: 'uint256', type: 'uint256' },
 15457        ],
 15458        name: 'isOutputFinalized',
 15459        outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
 15460      },
 15461      {
 15462        stateMutability: 'view',
 15463        type: 'function',
 15464        inputs: [],
 15465        name: 'l2Oracle',
 15466        outputs: [
 15467          { name: '', internalType: 'contract L2OutputOracle', type: 'address' },
 15468        ],
 15469      },
 15470      {
 15471        stateMutability: 'view',
 15472        type: 'function',
 15473        inputs: [],
 15474        name: 'l2Sender',
 15475        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 15476      },
 15477      {
 15478        stateMutability: 'pure',
 15479        type: 'function',
 15480        inputs: [{ name: '_byteCount', internalType: 'uint64', type: 'uint64' }],
 15481        name: 'minimumGasLimit',
 15482        outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }],
 15483      },
 15484      {
 15485        stateMutability: 'view',
 15486        type: 'function',
 15487        inputs: [],
 15488        name: 'params',
 15489        outputs: [
 15490          { name: 'prevBaseFee', internalType: 'uint128', type: 'uint128' },
 15491          { name: 'prevBoughtGas', internalType: 'uint64', type: 'uint64' },
 15492          { name: 'prevBlockNum', internalType: 'uint64', type: 'uint64' },
 15493        ],
 15494      },
 15495      {
 15496        stateMutability: 'nonpayable',
 15497        type: 'function',
 15498        inputs: [],
 15499        name: 'pause',
 15500        outputs: [],
 15501      },
 15502      {
 15503        stateMutability: 'view',
 15504        type: 'function',
 15505        inputs: [],
 15506        name: 'paused',
 15507        outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
 15508      },
 15509      {
 15510        stateMutability: 'nonpayable',
 15511        type: 'function',
 15512        inputs: [
 15513          {
 15514            name: '_tx',
 15515            internalType: 'struct Types.WithdrawalTransaction',
 15516            type: 'tuple',
 15517            components: [
 15518              { name: 'nonce', internalType: 'uint256', type: 'uint256' },
 15519              { name: 'sender', internalType: 'address', type: 'address' },
 15520              { name: 'target', internalType: 'address', type: 'address' },
 15521              { name: 'value', internalType: 'uint256', type: 'uint256' },
 15522              { name: 'gasLimit', internalType: 'uint256', type: 'uint256' },
 15523              { name: 'data', internalType: 'bytes', type: 'bytes' },
 15524            ],
 15525          },
 15526          { name: '_l2OutputIndex', internalType: 'uint256', type: 'uint256' },
 15527          {
 15528            name: '_outputRootProof',
 15529            internalType: 'struct Types.OutputRootProof',
 15530            type: 'tuple',
 15531            components: [
 15532              { name: 'version', internalType: 'bytes32', type: 'bytes32' },
 15533              { name: 'stateRoot', internalType: 'bytes32', type: 'bytes32' },
 15534              {
 15535                name: 'messagePasserStorageRoot',
 15536                internalType: 'bytes32',
 15537                type: 'bytes32',
 15538              },
 15539              {
 15540                name: 'latestBlockhash',
 15541                internalType: 'bytes32',
 15542                type: 'bytes32',
 15543              },
 15544            ],
 15545          },
 15546          { name: '_withdrawalProof', internalType: 'bytes[]', type: 'bytes[]' },
 15547        ],
 15548        name: 'proveWithdrawalTransaction',
 15549        outputs: [],
 15550      },
 15551      {
 15552        stateMutability: 'view',
 15553        type: 'function',
 15554        inputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
 15555        name: 'provenWithdrawals',
 15556        outputs: [
 15557          { name: 'outputRoot', internalType: 'bytes32', type: 'bytes32' },
 15558          { name: 'timestamp', internalType: 'uint128', type: 'uint128' },
 15559          { name: 'l2OutputIndex', internalType: 'uint128', type: 'uint128' },
 15560        ],
 15561      },
 15562      {
 15563        stateMutability: 'view',
 15564        type: 'function',
 15565        inputs: [],
 15566        name: 'systemConfig',
 15567        outputs: [
 15568          { name: '', internalType: 'contract SystemConfig', type: 'address' },
 15569        ],
 15570      },
 15571      {
 15572        stateMutability: 'nonpayable',
 15573        type: 'function',
 15574        inputs: [],
 15575        name: 'unpause',
 15576        outputs: [],
 15577      },
 15578      {
 15579        stateMutability: 'view',
 15580        type: 'function',
 15581        inputs: [],
 15582        name: 'version',
 15583        outputs: [{ name: '', internalType: 'string', type: 'string' }],
 15584      },
 15585      { stateMutability: 'payable', type: 'receive' },
 15586    ],
 15587    Optimist: [
 15588      {
 15589        stateMutability: 'nonpayable',
 15590        type: 'constructor',
 15591        inputs: [
 15592          { name: '_name', internalType: 'string', type: 'string' },
 15593          { name: '_symbol', internalType: 'string', type: 'string' },
 15594          { name: '_baseURIAttestor', internalType: 'address', type: 'address' },
 15595          {
 15596            name: '_attestationStation',
 15597            internalType: 'contract AttestationStation',
 15598            type: 'address',
 15599          },
 15600          {
 15601            name: '_optimistAllowlist',
 15602            internalType: 'contract OptimistAllowlist',
 15603            type: 'address',
 15604          },
 15605        ],
 15606      },
 15607      {
 15608        type: 'event',
 15609        anonymous: false,
 15610        inputs: [
 15611          {
 15612            name: 'owner',
 15613            internalType: 'address',
 15614            type: 'address',
 15615            indexed: true,
 15616          },
 15617          {
 15618            name: 'approved',
 15619            internalType: 'address',
 15620            type: 'address',
 15621            indexed: true,
 15622          },
 15623          {
 15624            name: 'tokenId',
 15625            internalType: 'uint256',
 15626            type: 'uint256',
 15627            indexed: true,
 15628          },
 15629        ],
 15630        name: 'Approval',
 15631      },
 15632      {
 15633        type: 'event',
 15634        anonymous: false,
 15635        inputs: [
 15636          {
 15637            name: 'owner',
 15638            internalType: 'address',
 15639            type: 'address',
 15640            indexed: true,
 15641          },
 15642          {
 15643            name: 'operator',
 15644            internalType: 'address',
 15645            type: 'address',
 15646            indexed: true,
 15647          },
 15648          {
 15649            name: 'approved',
 15650            internalType: 'bool',
 15651            type: 'bool',
 15652            indexed: false,
 15653          },
 15654        ],
 15655        name: 'ApprovalForAll',
 15656      },
 15657      {
 15658        type: 'event',
 15659        anonymous: false,
 15660        inputs: [
 15661          {
 15662            name: 'version',
 15663            internalType: 'uint8',
 15664            type: 'uint8',
 15665            indexed: false,
 15666          },
 15667        ],
 15668        name: 'Initialized',
 15669      },
 15670      {
 15671        type: 'event',
 15672        anonymous: false,
 15673        inputs: [
 15674          {
 15675            name: 'from',
 15676            internalType: 'address',
 15677            type: 'address',
 15678            indexed: true,
 15679          },
 15680          { name: 'to', internalType: 'address', type: 'address', indexed: true },
 15681          {
 15682            name: 'tokenId',
 15683            internalType: 'uint256',
 15684            type: 'uint256',
 15685            indexed: true,
 15686          },
 15687        ],
 15688        name: 'Transfer',
 15689      },
 15690      {
 15691        stateMutability: 'view',
 15692        type: 'function',
 15693        inputs: [],
 15694        name: 'ATTESTATION_STATION',
 15695        outputs: [
 15696          {
 15697            name: '',
 15698            internalType: 'contract AttestationStation',
 15699            type: 'address',
 15700          },
 15701        ],
 15702      },
 15703      {
 15704        stateMutability: 'view',
 15705        type: 'function',
 15706        inputs: [],
 15707        name: 'BASE_URI_ATTESTATION_KEY',
 15708        outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
 15709      },
 15710      {
 15711        stateMutability: 'view',
 15712        type: 'function',
 15713        inputs: [],
 15714        name: 'BASE_URI_ATTESTOR',
 15715        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 15716      },
 15717      {
 15718        stateMutability: 'view',
 15719        type: 'function',
 15720        inputs: [],
 15721        name: 'OPTIMIST_ALLOWLIST',
 15722        outputs: [
 15723          {
 15724            name: '',
 15725            internalType: 'contract OptimistAllowlist',
 15726            type: 'address',
 15727          },
 15728        ],
 15729      },
 15730      {
 15731        stateMutability: 'pure',
 15732        type: 'function',
 15733        inputs: [
 15734          { name: '', internalType: 'address', type: 'address' },
 15735          { name: '', internalType: 'uint256', type: 'uint256' },
 15736        ],
 15737        name: 'approve',
 15738        outputs: [],
 15739      },
 15740      {
 15741        stateMutability: 'view',
 15742        type: 'function',
 15743        inputs: [{ name: 'owner', internalType: 'address', type: 'address' }],
 15744        name: 'balanceOf',
 15745        outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
 15746      },
 15747      {
 15748        stateMutability: 'view',
 15749        type: 'function',
 15750        inputs: [],
 15751        name: 'baseURI',
 15752        outputs: [{ name: '', internalType: 'string', type: 'string' }],
 15753      },
 15754      {
 15755        stateMutability: 'nonpayable',
 15756        type: 'function',
 15757        inputs: [{ name: 'tokenId', internalType: 'uint256', type: 'uint256' }],
 15758        name: 'burn',
 15759        outputs: [],
 15760      },
 15761      {
 15762        stateMutability: 'view',
 15763        type: 'function',
 15764        inputs: [{ name: 'tokenId', internalType: 'uint256', type: 'uint256' }],
 15765        name: 'getApproved',
 15766        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 15767      },
 15768      {
 15769        stateMutability: 'nonpayable',
 15770        type: 'function',
 15771        inputs: [
 15772          { name: '_name', internalType: 'string', type: 'string' },
 15773          { name: '_symbol', internalType: 'string', type: 'string' },
 15774        ],
 15775        name: 'initialize',
 15776        outputs: [],
 15777      },
 15778      {
 15779        stateMutability: 'view',
 15780        type: 'function',
 15781        inputs: [
 15782          { name: 'owner', internalType: 'address', type: 'address' },
 15783          { name: 'operator', internalType: 'address', type: 'address' },
 15784        ],
 15785        name: 'isApprovedForAll',
 15786        outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
 15787      },
 15788      {
 15789        stateMutability: 'view',
 15790        type: 'function',
 15791        inputs: [
 15792          { name: '_recipient', internalType: 'address', type: 'address' },
 15793        ],
 15794        name: 'isOnAllowList',
 15795        outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
 15796      },
 15797      {
 15798        stateMutability: 'nonpayable',
 15799        type: 'function',
 15800        inputs: [
 15801          { name: '_recipient', internalType: 'address', type: 'address' },
 15802        ],
 15803        name: 'mint',
 15804        outputs: [],
 15805      },
 15806      {
 15807        stateMutability: 'view',
 15808        type: 'function',
 15809        inputs: [],
 15810        name: 'name',
 15811        outputs: [{ name: '', internalType: 'string', type: 'string' }],
 15812      },
 15813      {
 15814        stateMutability: 'view',
 15815        type: 'function',
 15816        inputs: [{ name: 'tokenId', internalType: 'uint256', type: 'uint256' }],
 15817        name: 'ownerOf',
 15818        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 15819      },
 15820      {
 15821        stateMutability: 'nonpayable',
 15822        type: 'function',
 15823        inputs: [
 15824          { name: 'from', internalType: 'address', type: 'address' },
 15825          { name: 'to', internalType: 'address', type: 'address' },
 15826          { name: 'tokenId', internalType: 'uint256', type: 'uint256' },
 15827        ],
 15828        name: 'safeTransferFrom',
 15829        outputs: [],
 15830      },
 15831      {
 15832        stateMutability: 'nonpayable',
 15833        type: 'function',
 15834        inputs: [
 15835          { name: 'from', internalType: 'address', type: 'address' },
 15836          { name: 'to', internalType: 'address', type: 'address' },
 15837          { name: 'tokenId', internalType: 'uint256', type: 'uint256' },
 15838          { name: 'data', internalType: 'bytes', type: 'bytes' },
 15839        ],
 15840        name: 'safeTransferFrom',
 15841        outputs: [],
 15842      },
 15843      {
 15844        stateMutability: 'nonpayable',
 15845        type: 'function',
 15846        inputs: [
 15847          { name: '', internalType: 'address', type: 'address' },
 15848          { name: '', internalType: 'bool', type: 'bool' },
 15849        ],
 15850        name: 'setApprovalForAll',
 15851        outputs: [],
 15852      },
 15853      {
 15854        stateMutability: 'view',
 15855        type: 'function',
 15856        inputs: [{ name: 'interfaceId', internalType: 'bytes4', type: 'bytes4' }],
 15857        name: 'supportsInterface',
 15858        outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
 15859      },
 15860      {
 15861        stateMutability: 'view',
 15862        type: 'function',
 15863        inputs: [],
 15864        name: 'symbol',
 15865        outputs: [{ name: '', internalType: 'string', type: 'string' }],
 15866      },
 15867      {
 15868        stateMutability: 'pure',
 15869        type: 'function',
 15870        inputs: [{ name: '_owner', internalType: 'address', type: 'address' }],
 15871        name: 'tokenIdOfAddress',
 15872        outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
 15873      },
 15874      {
 15875        stateMutability: 'view',
 15876        type: 'function',
 15877        inputs: [{ name: '_tokenId', internalType: 'uint256', type: 'uint256' }],
 15878        name: 'tokenURI',
 15879        outputs: [{ name: '', internalType: 'string', type: 'string' }],
 15880      },
 15881      {
 15882        stateMutability: 'nonpayable',
 15883        type: 'function',
 15884        inputs: [
 15885          { name: 'from', internalType: 'address', type: 'address' },
 15886          { name: 'to', internalType: 'address', type: 'address' },
 15887          { name: 'tokenId', internalType: 'uint256', type: 'uint256' },
 15888        ],
 15889        name: 'transferFrom',
 15890        outputs: [],
 15891      },
 15892      {
 15893        stateMutability: 'view',
 15894        type: 'function',
 15895        inputs: [],
 15896        name: 'version',
 15897        outputs: [{ name: '', internalType: 'string', type: 'string' }],
 15898      },
 15899    ],
 15900    OptimistAllowlist: [
 15901      {
 15902        stateMutability: 'nonpayable',
 15903        type: 'constructor',
 15904        inputs: [
 15905          {
 15906            name: '_attestationStation',
 15907            internalType: 'contract AttestationStation',
 15908            type: 'address',
 15909          },
 15910          {
 15911            name: '_allowlistAttestor',
 15912            internalType: 'address',
 15913            type: 'address',
 15914          },
 15915          {
 15916            name: '_coinbaseQuestAttestor',
 15917            internalType: 'address',
 15918            type: 'address',
 15919          },
 15920          { name: '_optimistInviter', internalType: 'address', type: 'address' },
 15921        ],
 15922      },
 15923      {
 15924        stateMutability: 'view',
 15925        type: 'function',
 15926        inputs: [],
 15927        name: 'ALLOWLIST_ATTESTOR',
 15928        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 15929      },
 15930      {
 15931        stateMutability: 'view',
 15932        type: 'function',
 15933        inputs: [],
 15934        name: 'ATTESTATION_STATION',
 15935        outputs: [
 15936          {
 15937            name: '',
 15938            internalType: 'contract AttestationStation',
 15939            type: 'address',
 15940          },
 15941        ],
 15942      },
 15943      {
 15944        stateMutability: 'view',
 15945        type: 'function',
 15946        inputs: [],
 15947        name: 'COINBASE_QUEST_ATTESTOR',
 15948        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 15949      },
 15950      {
 15951        stateMutability: 'view',
 15952        type: 'function',
 15953        inputs: [],
 15954        name: 'COINBASE_QUEST_ELIGIBLE_ATTESTATION_KEY',
 15955        outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
 15956      },
 15957      {
 15958        stateMutability: 'view',
 15959        type: 'function',
 15960        inputs: [],
 15961        name: 'OPTIMIST_CAN_MINT_ATTESTATION_KEY',
 15962        outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
 15963      },
 15964      {
 15965        stateMutability: 'view',
 15966        type: 'function',
 15967        inputs: [],
 15968        name: 'OPTIMIST_INVITER',
 15969        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 15970      },
 15971      {
 15972        stateMutability: 'view',
 15973        type: 'function',
 15974        inputs: [{ name: '_claimer', internalType: 'address', type: 'address' }],
 15975        name: 'isAllowedToMint',
 15976        outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
 15977      },
 15978      {
 15979        stateMutability: 'view',
 15980        type: 'function',
 15981        inputs: [],
 15982        name: 'version',
 15983        outputs: [{ name: '', internalType: 'string', type: 'string' }],
 15984      },
 15985    ],
 15986    OptimistInviter: [
 15987      {
 15988        stateMutability: 'nonpayable',
 15989        type: 'constructor',
 15990        inputs: [
 15991          { name: '_inviteGranter', internalType: 'address', type: 'address' },
 15992          {
 15993            name: '_attestationStation',
 15994            internalType: 'contract AttestationStation',
 15995            type: 'address',
 15996          },
 15997        ],
 15998      },
 15999      {
 16000        type: 'event',
 16001        anonymous: false,
 16002        inputs: [
 16003          {
 16004            name: 'version',
 16005            internalType: 'uint8',
 16006            type: 'uint8',
 16007            indexed: false,
 16008          },
 16009        ],
 16010        name: 'Initialized',
 16011      },
 16012      {
 16013        type: 'event',
 16014        anonymous: false,
 16015        inputs: [
 16016          {
 16017            name: 'issuer',
 16018            internalType: 'address',
 16019            type: 'address',
 16020            indexed: true,
 16021          },
 16022          {
 16023            name: 'claimer',
 16024            internalType: 'address',
 16025            type: 'address',
 16026            indexed: true,
 16027          },
 16028        ],
 16029        name: 'InviteClaimed',
 16030      },
 16031      {
 16032        stateMutability: 'view',
 16033        type: 'function',
 16034        inputs: [],
 16035        name: 'ATTESTATION_STATION',
 16036        outputs: [
 16037          {
 16038            name: '',
 16039            internalType: 'contract AttestationStation',
 16040            type: 'address',
 16041          },
 16042        ],
 16043      },
 16044      {
 16045        stateMutability: 'view',
 16046        type: 'function',
 16047        inputs: [],
 16048        name: 'CAN_INVITE_ATTESTATION_KEY',
 16049        outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
 16050      },
 16051      {
 16052        stateMutability: 'view',
 16053        type: 'function',
 16054        inputs: [],
 16055        name: 'CLAIMABLE_INVITE_TYPEHASH',
 16056        outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
 16057      },
 16058      {
 16059        stateMutability: 'view',
 16060        type: 'function',
 16061        inputs: [],
 16062        name: 'EIP712_VERSION',
 16063        outputs: [{ name: '', internalType: 'string', type: 'string' }],
 16064      },
 16065      {
 16066        stateMutability: 'view',
 16067        type: 'function',
 16068        inputs: [],
 16069        name: 'INVITE_GRANTER',
 16070        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 16071      },
 16072      {
 16073        stateMutability: 'view',
 16074        type: 'function',
 16075        inputs: [],
 16076        name: 'MIN_COMMITMENT_PERIOD',
 16077        outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
 16078      },
 16079      {
 16080        stateMutability: 'nonpayable',
 16081        type: 'function',
 16082        inputs: [
 16083          { name: '_claimer', internalType: 'address', type: 'address' },
 16084          {
 16085            name: '_claimableInvite',
 16086            internalType: 'struct OptimistInviter.ClaimableInvite',
 16087            type: 'tuple',
 16088            components: [
 16089              { name: 'issuer', internalType: 'address', type: 'address' },
 16090              { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },
 16091            ],
 16092          },
 16093          { name: '_signature', internalType: 'bytes', type: 'bytes' },
 16094        ],
 16095        name: 'claimInvite',
 16096        outputs: [],
 16097      },
 16098      {
 16099        stateMutability: 'nonpayable',
 16100        type: 'function',
 16101        inputs: [
 16102          { name: '_commitment', internalType: 'bytes32', type: 'bytes32' },
 16103        ],
 16104        name: 'commitInvite',
 16105        outputs: [],
 16106      },
 16107      {
 16108        stateMutability: 'view',
 16109        type: 'function',
 16110        inputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
 16111        name: 'commitmentTimestamps',
 16112        outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
 16113      },
 16114      {
 16115        stateMutability: 'nonpayable',
 16116        type: 'function',
 16117        inputs: [{ name: '_name', internalType: 'string', type: 'string' }],
 16118        name: 'initialize',
 16119        outputs: [],
 16120      },
 16121      {
 16122        stateMutability: 'view',
 16123        type: 'function',
 16124        inputs: [{ name: '', internalType: 'address', type: 'address' }],
 16125        name: 'inviteCounts',
 16126        outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
 16127      },
 16128      {
 16129        stateMutability: 'nonpayable',
 16130        type: 'function',
 16131        inputs: [
 16132          { name: '_accounts', internalType: 'address[]', type: 'address[]' },
 16133          { name: '_inviteCount', internalType: 'uint256', type: 'uint256' },
 16134        ],
 16135        name: 'setInviteCounts',
 16136        outputs: [],
 16137      },
 16138      {
 16139        stateMutability: 'view',
 16140        type: 'function',
 16141        inputs: [
 16142          { name: '', internalType: 'address', type: 'address' },
 16143          { name: '', internalType: 'bytes32', type: 'bytes32' },
 16144        ],
 16145        name: 'usedNonces',
 16146        outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
 16147      },
 16148      {
 16149        stateMutability: 'view',
 16150        type: 'function',
 16151        inputs: [],
 16152        name: 'version',
 16153        outputs: [{ name: '', internalType: 'string', type: 'string' }],
 16154      },
 16155    ],
 16156    PortalSender: [
 16157      {
 16158        stateMutability: 'nonpayable',
 16159        type: 'constructor',
 16160        inputs: [
 16161          {
 16162            name: '_portal',
 16163            internalType: 'contract OptimismPortal',
 16164            type: 'address',
 16165          },
 16166        ],
 16167      },
 16168      {
 16169        stateMutability: 'view',
 16170        type: 'function',
 16171        inputs: [],
 16172        name: 'PORTAL',
 16173        outputs: [
 16174          { name: '', internalType: 'contract OptimismPortal', type: 'address' },
 16175        ],
 16176      },
 16177      {
 16178        stateMutability: 'nonpayable',
 16179        type: 'function',
 16180        inputs: [],
 16181        name: 'donate',
 16182        outputs: [],
 16183      },
 16184    ],
 16185    ProtocolVersions: [
 16186      { stateMutability: 'nonpayable', type: 'constructor', inputs: [] },
 16187      {
 16188        type: 'event',
 16189        anonymous: false,
 16190        inputs: [
 16191          {
 16192            name: 'version',
 16193            internalType: 'uint256',
 16194            type: 'uint256',
 16195            indexed: true,
 16196          },
 16197          {
 16198            name: 'updateType',
 16199            internalType: 'enum ProtocolVersions.UpdateType',
 16200            type: 'uint8',
 16201            indexed: true,
 16202          },
 16203          { name: 'data', internalType: 'bytes', type: 'bytes', indexed: false },
 16204        ],
 16205        name: 'ConfigUpdate',
 16206      },
 16207      {
 16208        type: 'event',
 16209        anonymous: false,
 16210        inputs: [
 16211          {
 16212            name: 'version',
 16213            internalType: 'uint8',
 16214            type: 'uint8',
 16215            indexed: false,
 16216          },
 16217        ],
 16218        name: 'Initialized',
 16219      },
 16220      {
 16221        type: 'event',
 16222        anonymous: false,
 16223        inputs: [
 16224          {
 16225            name: 'previousOwner',
 16226            internalType: 'address',
 16227            type: 'address',
 16228            indexed: true,
 16229          },
 16230          {
 16231            name: 'newOwner',
 16232            internalType: 'address',
 16233            type: 'address',
 16234            indexed: true,
 16235          },
 16236        ],
 16237        name: 'OwnershipTransferred',
 16238      },
 16239      {
 16240        stateMutability: 'view',
 16241        type: 'function',
 16242        inputs: [],
 16243        name: 'RECOMMENDED_SLOT',
 16244        outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
 16245      },
 16246      {
 16247        stateMutability: 'view',
 16248        type: 'function',
 16249        inputs: [],
 16250        name: 'REQUIRED_SLOT',
 16251        outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
 16252      },
 16253      {
 16254        stateMutability: 'view',
 16255        type: 'function',
 16256        inputs: [],
 16257        name: 'VERSION',
 16258        outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
 16259      },
 16260      {
 16261        stateMutability: 'nonpayable',
 16262        type: 'function',
 16263        inputs: [
 16264          { name: '_owner', internalType: 'address', type: 'address' },
 16265          { name: '_required', internalType: 'ProtocolVersion', type: 'uint256' },
 16266          {
 16267            name: '_recommended',
 16268            internalType: 'ProtocolVersion',
 16269            type: 'uint256',
 16270          },
 16271        ],
 16272        name: 'initialize',
 16273        outputs: [],
 16274      },
 16275      {
 16276        stateMutability: 'view',
 16277        type: 'function',
 16278        inputs: [],
 16279        name: 'owner',
 16280        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 16281      },
 16282      {
 16283        stateMutability: 'view',
 16284        type: 'function',
 16285        inputs: [],
 16286        name: 'recommended',
 16287        outputs: [
 16288          { name: 'out_', internalType: 'ProtocolVersion', type: 'uint256' },
 16289        ],
 16290      },
 16291      {
 16292        stateMutability: 'nonpayable',
 16293        type: 'function',
 16294        inputs: [],
 16295        name: 'renounceOwnership',
 16296        outputs: [],
 16297      },
 16298      {
 16299        stateMutability: 'view',
 16300        type: 'function',
 16301        inputs: [],
 16302        name: 'required',
 16303        outputs: [
 16304          { name: 'out_', internalType: 'ProtocolVersion', type: 'uint256' },
 16305        ],
 16306      },
 16307      {
 16308        stateMutability: 'nonpayable',
 16309        type: 'function',
 16310        inputs: [
 16311          {
 16312            name: '_recommended',
 16313            internalType: 'ProtocolVersion',
 16314            type: 'uint256',
 16315          },
 16316        ],
 16317        name: 'setRecommended',
 16318        outputs: [],
 16319      },
 16320      {
 16321        stateMutability: 'nonpayable',
 16322        type: 'function',
 16323        inputs: [
 16324          { name: '_required', internalType: 'ProtocolVersion', type: 'uint256' },
 16325        ],
 16326        name: 'setRequired',
 16327        outputs: [],
 16328      },
 16329      {
 16330        stateMutability: 'nonpayable',
 16331        type: 'function',
 16332        inputs: [{ name: 'newOwner', internalType: 'address', type: 'address' }],
 16333        name: 'transferOwnership',
 16334        outputs: [],
 16335      },
 16336      {
 16337        stateMutability: 'view',
 16338        type: 'function',
 16339        inputs: [],
 16340        name: 'version',
 16341        outputs: [{ name: '', internalType: 'string', type: 'string' }],
 16342      },
 16343    ],
 16344    ProxyAdmin: [
 16345      {
 16346        stateMutability: 'nonpayable',
 16347        type: 'constructor',
 16348        inputs: [{ name: '_owner', internalType: 'address', type: 'address' }],
 16349      },
 16350      {
 16351        type: 'event',
 16352        anonymous: false,
 16353        inputs: [
 16354          {
 16355            name: 'previousOwner',
 16356            internalType: 'address',
 16357            type: 'address',
 16358            indexed: true,
 16359          },
 16360          {
 16361            name: 'newOwner',
 16362            internalType: 'address',
 16363            type: 'address',
 16364            indexed: true,
 16365          },
 16366        ],
 16367        name: 'OwnershipTransferred',
 16368      },
 16369      {
 16370        stateMutability: 'view',
 16371        type: 'function',
 16372        inputs: [],
 16373        name: 'addressManager',
 16374        outputs: [
 16375          { name: '', internalType: 'contract AddressManager', type: 'address' },
 16376        ],
 16377      },
 16378      {
 16379        stateMutability: 'nonpayable',
 16380        type: 'function',
 16381        inputs: [
 16382          { name: '_proxy', internalType: 'address payable', type: 'address' },
 16383          { name: '_newAdmin', internalType: 'address', type: 'address' },
 16384        ],
 16385        name: 'changeProxyAdmin',
 16386        outputs: [],
 16387      },
 16388      {
 16389        stateMutability: 'view',
 16390        type: 'function',
 16391        inputs: [
 16392          { name: '_proxy', internalType: 'address payable', type: 'address' },
 16393        ],
 16394        name: 'getProxyAdmin',
 16395        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 16396      },
 16397      {
 16398        stateMutability: 'view',
 16399        type: 'function',
 16400        inputs: [{ name: '_proxy', internalType: 'address', type: 'address' }],
 16401        name: 'getProxyImplementation',
 16402        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 16403      },
 16404      {
 16405        stateMutability: 'view',
 16406        type: 'function',
 16407        inputs: [{ name: '', internalType: 'address', type: 'address' }],
 16408        name: 'implementationName',
 16409        outputs: [{ name: '', internalType: 'string', type: 'string' }],
 16410      },
 16411      {
 16412        stateMutability: 'view',
 16413        type: 'function',
 16414        inputs: [],
 16415        name: 'isUpgrading',
 16416        outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
 16417      },
 16418      {
 16419        stateMutability: 'view',
 16420        type: 'function',
 16421        inputs: [],
 16422        name: 'owner',
 16423        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 16424      },
 16425      {
 16426        stateMutability: 'view',
 16427        type: 'function',
 16428        inputs: [{ name: '', internalType: 'address', type: 'address' }],
 16429        name: 'proxyType',
 16430        outputs: [
 16431          { name: '', internalType: 'enum ProxyAdmin.ProxyType', type: 'uint8' },
 16432        ],
 16433      },
 16434      {
 16435        stateMutability: 'nonpayable',
 16436        type: 'function',
 16437        inputs: [],
 16438        name: 'renounceOwnership',
 16439        outputs: [],
 16440      },
 16441      {
 16442        stateMutability: 'nonpayable',
 16443        type: 'function',
 16444        inputs: [
 16445          { name: '_name', internalType: 'string', type: 'string' },
 16446          { name: '_address', internalType: 'address', type: 'address' },
 16447        ],
 16448        name: 'setAddress',
 16449        outputs: [],
 16450      },
 16451      {
 16452        stateMutability: 'nonpayable',
 16453        type: 'function',
 16454        inputs: [
 16455          {
 16456            name: '_address',
 16457            internalType: 'contract AddressManager',
 16458            type: 'address',
 16459          },
 16460        ],
 16461        name: 'setAddressManager',
 16462        outputs: [],
 16463      },
 16464      {
 16465        stateMutability: 'nonpayable',
 16466        type: 'function',
 16467        inputs: [
 16468          { name: '_address', internalType: 'address', type: 'address' },
 16469          { name: '_name', internalType: 'string', type: 'string' },
 16470        ],
 16471        name: 'setImplementationName',
 16472        outputs: [],
 16473      },
 16474      {
 16475        stateMutability: 'nonpayable',
 16476        type: 'function',
 16477        inputs: [
 16478          { name: '_address', internalType: 'address', type: 'address' },
 16479          {
 16480            name: '_type',
 16481            internalType: 'enum ProxyAdmin.ProxyType',
 16482            type: 'uint8',
 16483          },
 16484        ],
 16485        name: 'setProxyType',
 16486        outputs: [],
 16487      },
 16488      {
 16489        stateMutability: 'nonpayable',
 16490        type: 'function',
 16491        inputs: [{ name: '_upgrading', internalType: 'bool', type: 'bool' }],
 16492        name: 'setUpgrading',
 16493        outputs: [],
 16494      },
 16495      {
 16496        stateMutability: 'nonpayable',
 16497        type: 'function',
 16498        inputs: [{ name: 'newOwner', internalType: 'address', type: 'address' }],
 16499        name: 'transferOwnership',
 16500        outputs: [],
 16501      },
 16502      {
 16503        stateMutability: 'nonpayable',
 16504        type: 'function',
 16505        inputs: [
 16506          { name: '_proxy', internalType: 'address payable', type: 'address' },
 16507          { name: '_implementation', internalType: 'address', type: 'address' },
 16508        ],
 16509        name: 'upgrade',
 16510        outputs: [],
 16511      },
 16512      {
 16513        stateMutability: 'payable',
 16514        type: 'function',
 16515        inputs: [
 16516          { name: '_proxy', internalType: 'address payable', type: 'address' },
 16517          { name: '_implementation', internalType: 'address', type: 'address' },
 16518          { name: '_data', internalType: 'bytes', type: 'bytes' },
 16519        ],
 16520        name: 'upgradeAndCall',
 16521        outputs: [],
 16522      },
 16523    ],
 16524    SchemaRegistry: [
 16525      { stateMutability: 'nonpayable', type: 'constructor', inputs: [] },
 16526      { type: 'error', inputs: [], name: 'AlreadyExists' },
 16527      {
 16528        type: 'event',
 16529        anonymous: false,
 16530        inputs: [
 16531          {
 16532            name: 'uid',
 16533            internalType: 'bytes32',
 16534            type: 'bytes32',
 16535            indexed: true,
 16536          },
 16537          {
 16538            name: 'registerer',
 16539            internalType: 'address',
 16540            type: 'address',
 16541            indexed: false,
 16542          },
 16543        ],
 16544        name: 'Registered',
 16545      },
 16546      {
 16547        stateMutability: 'view',
 16548        type: 'function',
 16549        inputs: [{ name: 'uid', internalType: 'bytes32', type: 'bytes32' }],
 16550        name: 'getSchema',
 16551        outputs: [
 16552          {
 16553            name: '',
 16554            internalType: 'struct SchemaRecord',
 16555            type: 'tuple',
 16556            components: [
 16557              { name: 'uid', internalType: 'bytes32', type: 'bytes32' },
 16558              {
 16559                name: 'resolver',
 16560                internalType: 'contract ISchemaResolver',
 16561                type: 'address',
 16562              },
 16563              { name: 'revocable', internalType: 'bool', type: 'bool' },
 16564              { name: 'schema', internalType: 'string', type: 'string' },
 16565            ],
 16566          },
 16567        ],
 16568      },
 16569      {
 16570        stateMutability: 'nonpayable',
 16571        type: 'function',
 16572        inputs: [
 16573          { name: 'schema', internalType: 'string', type: 'string' },
 16574          {
 16575            name: 'resolver',
 16576            internalType: 'contract ISchemaResolver',
 16577            type: 'address',
 16578          },
 16579          { name: 'revocable', internalType: 'bool', type: 'bool' },
 16580        ],
 16581        name: 'register',
 16582        outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
 16583      },
 16584      {
 16585        stateMutability: 'view',
 16586        type: 'function',
 16587        inputs: [],
 16588        name: 'version',
 16589        outputs: [{ name: '', internalType: 'string', type: 'string' }],
 16590      },
 16591    ],
 16592    SequencerFeeVault: [
 16593      {
 16594        stateMutability: 'nonpayable',
 16595        type: 'constructor',
 16596        inputs: [
 16597          { name: '_recipient', internalType: 'address', type: 'address' },
 16598        ],
 16599      },
 16600      {
 16601        type: 'event',
 16602        anonymous: false,
 16603        inputs: [
 16604          {
 16605            name: 'value',
 16606            internalType: 'uint256',
 16607            type: 'uint256',
 16608            indexed: false,
 16609          },
 16610          {
 16611            name: 'to',
 16612            internalType: 'address',
 16613            type: 'address',
 16614            indexed: false,
 16615          },
 16616          {
 16617            name: 'from',
 16618            internalType: 'address',
 16619            type: 'address',
 16620            indexed: false,
 16621          },
 16622        ],
 16623        name: 'Withdrawal',
 16624      },
 16625      {
 16626        stateMutability: 'view',
 16627        type: 'function',
 16628        inputs: [],
 16629        name: 'MIN_WITHDRAWAL_AMOUNT',
 16630        outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
 16631      },
 16632      {
 16633        stateMutability: 'view',
 16634        type: 'function',
 16635        inputs: [],
 16636        name: 'RECIPIENT',
 16637        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 16638      },
 16639      {
 16640        stateMutability: 'view',
 16641        type: 'function',
 16642        inputs: [],
 16643        name: 'l1FeeWallet',
 16644        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 16645      },
 16646      {
 16647        stateMutability: 'view',
 16648        type: 'function',
 16649        inputs: [],
 16650        name: 'totalProcessed',
 16651        outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
 16652      },
 16653      {
 16654        stateMutability: 'view',
 16655        type: 'function',
 16656        inputs: [],
 16657        name: 'version',
 16658        outputs: [{ name: '', internalType: 'string', type: 'string' }],
 16659      },
 16660      {
 16661        stateMutability: 'nonpayable',
 16662        type: 'function',
 16663        inputs: [],
 16664        name: 'withdraw',
 16665        outputs: [],
 16666      },
 16667      { stateMutability: 'payable', type: 'receive' },
 16668    ],
 16669    SystemConfig: [
 16670      { stateMutability: 'nonpayable', type: 'constructor', inputs: [] },
 16671      {
 16672        type: 'event',
 16673        anonymous: false,
 16674        inputs: [
 16675          {
 16676            name: 'version',
 16677            internalType: 'uint256',
 16678            type: 'uint256',
 16679            indexed: true,
 16680          },
 16681          {
 16682            name: 'updateType',
 16683            internalType: 'enum SystemConfig.UpdateType',
 16684            type: 'uint8',
 16685            indexed: true,
 16686          },
 16687          { name: 'data', internalType: 'bytes', type: 'bytes', indexed: false },
 16688        ],
 16689        name: 'ConfigUpdate',
 16690      },
 16691      {
 16692        type: 'event',
 16693        anonymous: false,
 16694        inputs: [
 16695          {
 16696            name: 'version',
 16697            internalType: 'uint8',
 16698            type: 'uint8',
 16699            indexed: false,
 16700          },
 16701        ],
 16702        name: 'Initialized',
 16703      },
 16704      {
 16705        type: 'event',
 16706        anonymous: false,
 16707        inputs: [
 16708          {
 16709            name: 'previousOwner',
 16710            internalType: 'address',
 16711            type: 'address',
 16712            indexed: true,
 16713          },
 16714          {
 16715            name: 'newOwner',
 16716            internalType: 'address',
 16717            type: 'address',
 16718            indexed: true,
 16719          },
 16720        ],
 16721        name: 'OwnershipTransferred',
 16722      },
 16723      {
 16724        stateMutability: 'view',
 16725        type: 'function',
 16726        inputs: [],
 16727        name: 'BATCH_INBOX_SLOT',
 16728        outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
 16729      },
 16730      {
 16731        stateMutability: 'view',
 16732        type: 'function',
 16733        inputs: [],
 16734        name: 'L1_CROSS_DOMAIN_MESSENGER_SLOT',
 16735        outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
 16736      },
 16737      {
 16738        stateMutability: 'view',
 16739        type: 'function',
 16740        inputs: [],
 16741        name: 'L1_ERC_721_BRIDGE_SLOT',
 16742        outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
 16743      },
 16744      {
 16745        stateMutability: 'view',
 16746        type: 'function',
 16747        inputs: [],
 16748        name: 'L1_STANDARD_BRIDGE_SLOT',
 16749        outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
 16750      },
 16751      {
 16752        stateMutability: 'view',
 16753        type: 'function',
 16754        inputs: [],
 16755        name: 'L2_OUTPUT_ORACLE_SLOT',
 16756        outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
 16757      },
 16758      {
 16759        stateMutability: 'view',
 16760        type: 'function',
 16761        inputs: [],
 16762        name: 'OPTIMISM_MINTABLE_ERC20_FACTORY_SLOT',
 16763        outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
 16764      },
 16765      {
 16766        stateMutability: 'view',
 16767        type: 'function',
 16768        inputs: [],
 16769        name: 'OPTIMISM_PORTAL_SLOT',
 16770        outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
 16771      },
 16772      {
 16773        stateMutability: 'view',
 16774        type: 'function',
 16775        inputs: [],
 16776        name: 'UNSAFE_BLOCK_SIGNER_SLOT',
 16777        outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
 16778      },
 16779      {
 16780        stateMutability: 'view',
 16781        type: 'function',
 16782        inputs: [],
 16783        name: 'VERSION',
 16784        outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
 16785      },
 16786      {
 16787        stateMutability: 'view',
 16788        type: 'function',
 16789        inputs: [],
 16790        name: 'batchInbox',
 16791        outputs: [{ name: 'addr_', internalType: 'address', type: 'address' }],
 16792      },
 16793      {
 16794        stateMutability: 'view',
 16795        type: 'function',
 16796        inputs: [],
 16797        name: 'batcherHash',
 16798        outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
 16799      },
 16800      {
 16801        stateMutability: 'view',
 16802        type: 'function',
 16803        inputs: [],
 16804        name: 'gasLimit',
 16805        outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }],
 16806      },
 16807      {
 16808        stateMutability: 'nonpayable',
 16809        type: 'function',
 16810        inputs: [
 16811          { name: '_owner', internalType: 'address', type: 'address' },
 16812          { name: '_overhead', internalType: 'uint256', type: 'uint256' },
 16813          { name: '_scalar', internalType: 'uint256', type: 'uint256' },
 16814          { name: '_batcherHash', internalType: 'bytes32', type: 'bytes32' },
 16815          { name: '_gasLimit', internalType: 'uint64', type: 'uint64' },
 16816          {
 16817            name: '_unsafeBlockSigner',
 16818            internalType: 'address',
 16819            type: 'address',
 16820          },
 16821          {
 16822            name: '_config',
 16823            internalType: 'struct ResourceMetering.ResourceConfig',
 16824            type: 'tuple',
 16825            components: [
 16826              {
 16827                name: 'maxResourceLimit',
 16828                internalType: 'uint32',
 16829                type: 'uint32',
 16830              },
 16831              {
 16832                name: 'elasticityMultiplier',
 16833                internalType: 'uint8',
 16834                type: 'uint8',
 16835              },
 16836              {
 16837                name: 'baseFeeMaxChangeDenominator',
 16838                internalType: 'uint8',
 16839                type: 'uint8',
 16840              },
 16841              { name: 'minimumBaseFee', internalType: 'uint32', type: 'uint32' },
 16842              { name: 'systemTxMaxGas', internalType: 'uint32', type: 'uint32' },
 16843              {
 16844                name: 'maximumBaseFee',
 16845                internalType: 'uint128',
 16846                type: 'uint128',
 16847              },
 16848            ],
 16849          },
 16850          { name: '_startBlock', internalType: 'uint256', type: 'uint256' },
 16851          { name: '_batchInbox', internalType: 'address', type: 'address' },
 16852          {
 16853            name: '_addresses',
 16854            internalType: 'struct SystemConfig.Addresses',
 16855            type: 'tuple',
 16856            components: [
 16857              {
 16858                name: 'l1CrossDomainMessenger',
 16859                internalType: 'address',
 16860                type: 'address',
 16861              },
 16862              {
 16863                name: 'l1ERC721Bridge',
 16864                internalType: 'address',
 16865                type: 'address',
 16866              },
 16867              {
 16868                name: 'l1StandardBridge',
 16869                internalType: 'address',
 16870                type: 'address',
 16871              },
 16872              {
 16873                name: 'l2OutputOracle',
 16874                internalType: 'address',
 16875                type: 'address',
 16876              },
 16877              {
 16878                name: 'optimismPortal',
 16879                internalType: 'address',
 16880                type: 'address',
 16881              },
 16882              {
 16883                name: 'optimismMintableERC20Factory',
 16884                internalType: 'address',
 16885                type: 'address',
 16886              },
 16887            ],
 16888          },
 16889        ],
 16890        name: 'initialize',
 16891        outputs: [],
 16892      },
 16893      {
 16894        stateMutability: 'view',
 16895        type: 'function',
 16896        inputs: [],
 16897        name: 'l1CrossDomainMessenger',
 16898        outputs: [{ name: 'addr_', internalType: 'address', type: 'address' }],
 16899      },
 16900      {
 16901        stateMutability: 'view',
 16902        type: 'function',
 16903        inputs: [],
 16904        name: 'l1ERC721Bridge',
 16905        outputs: [{ name: 'addr_', internalType: 'address', type: 'address' }],
 16906      },
 16907      {
 16908        stateMutability: 'view',
 16909        type: 'function',
 16910        inputs: [],
 16911        name: 'l1StandardBridge',
 16912        outputs: [{ name: 'addr_', internalType: 'address', type: 'address' }],
 16913      },
 16914      {
 16915        stateMutability: 'view',
 16916        type: 'function',
 16917        inputs: [],
 16918        name: 'l2OutputOracle',
 16919        outputs: [{ name: 'addr_', internalType: 'address', type: 'address' }],
 16920      },
 16921      {
 16922        stateMutability: 'view',
 16923        type: 'function',
 16924        inputs: [],
 16925        name: 'minimumGasLimit',
 16926        outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }],
 16927      },
 16928      {
 16929        stateMutability: 'view',
 16930        type: 'function',
 16931        inputs: [],
 16932        name: 'optimismMintableERC20Factory',
 16933        outputs: [{ name: 'addr_', internalType: 'address', type: 'address' }],
 16934      },
 16935      {
 16936        stateMutability: 'view',
 16937        type: 'function',
 16938        inputs: [],
 16939        name: 'optimismPortal',
 16940        outputs: [{ name: 'addr_', internalType: 'address', type: 'address' }],
 16941      },
 16942      {
 16943        stateMutability: 'view',
 16944        type: 'function',
 16945        inputs: [],
 16946        name: 'overhead',
 16947        outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
 16948      },
 16949      {
 16950        stateMutability: 'view',
 16951        type: 'function',
 16952        inputs: [],
 16953        name: 'owner',
 16954        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 16955      },
 16956      {
 16957        stateMutability: 'nonpayable',
 16958        type: 'function',
 16959        inputs: [],
 16960        name: 'renounceOwnership',
 16961        outputs: [],
 16962      },
 16963      {
 16964        stateMutability: 'view',
 16965        type: 'function',
 16966        inputs: [],
 16967        name: 'resourceConfig',
 16968        outputs: [
 16969          {
 16970            name: '',
 16971            internalType: 'struct ResourceMetering.ResourceConfig',
 16972            type: 'tuple',
 16973            components: [
 16974              {
 16975                name: 'maxResourceLimit',
 16976                internalType: 'uint32',
 16977                type: 'uint32',
 16978              },
 16979              {
 16980                name: 'elasticityMultiplier',
 16981                internalType: 'uint8',
 16982                type: 'uint8',
 16983              },
 16984              {
 16985                name: 'baseFeeMaxChangeDenominator',
 16986                internalType: 'uint8',
 16987                type: 'uint8',
 16988              },
 16989              { name: 'minimumBaseFee', internalType: 'uint32', type: 'uint32' },
 16990              { name: 'systemTxMaxGas', internalType: 'uint32', type: 'uint32' },
 16991              {
 16992                name: 'maximumBaseFee',
 16993                internalType: 'uint128',
 16994                type: 'uint128',
 16995              },
 16996            ],
 16997          },
 16998        ],
 16999      },
 17000      {
 17001        stateMutability: 'view',
 17002        type: 'function',
 17003        inputs: [],
 17004        name: 'scalar',
 17005        outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
 17006      },
 17007      {
 17008        stateMutability: 'nonpayable',
 17009        type: 'function',
 17010        inputs: [
 17011          { name: '_batcherHash', internalType: 'bytes32', type: 'bytes32' },
 17012        ],
 17013        name: 'setBatcherHash',
 17014        outputs: [],
 17015      },
 17016      {
 17017        stateMutability: 'nonpayable',
 17018        type: 'function',
 17019        inputs: [
 17020          { name: '_overhead', internalType: 'uint256', type: 'uint256' },
 17021          { name: '_scalar', internalType: 'uint256', type: 'uint256' },
 17022        ],
 17023        name: 'setGasConfig',
 17024        outputs: [],
 17025      },
 17026      {
 17027        stateMutability: 'nonpayable',
 17028        type: 'function',
 17029        inputs: [{ name: '_gasLimit', internalType: 'uint64', type: 'uint64' }],
 17030        name: 'setGasLimit',
 17031        outputs: [],
 17032      },
 17033      {
 17034        stateMutability: 'nonpayable',
 17035        type: 'function',
 17036        inputs: [
 17037          {
 17038            name: '_config',
 17039            internalType: 'struct ResourceMetering.ResourceConfig',
 17040            type: 'tuple',
 17041            components: [
 17042              {
 17043                name: 'maxResourceLimit',
 17044                internalType: 'uint32',
 17045                type: 'uint32',
 17046              },
 17047              {
 17048                name: 'elasticityMultiplier',
 17049                internalType: 'uint8',
 17050                type: 'uint8',
 17051              },
 17052              {
 17053                name: 'baseFeeMaxChangeDenominator',
 17054                internalType: 'uint8',
 17055                type: 'uint8',
 17056              },
 17057              { name: 'minimumBaseFee', internalType: 'uint32', type: 'uint32' },
 17058              { name: 'systemTxMaxGas', internalType: 'uint32', type: 'uint32' },
 17059              {
 17060                name: 'maximumBaseFee',
 17061                internalType: 'uint128',
 17062                type: 'uint128',
 17063              },
 17064            ],
 17065          },
 17066        ],
 17067        name: 'setResourceConfig',
 17068        outputs: [],
 17069      },
 17070      {
 17071        stateMutability: 'nonpayable',
 17072        type: 'function',
 17073        inputs: [
 17074          {
 17075            name: '_unsafeBlockSigner',
 17076            internalType: 'address',
 17077            type: 'address',
 17078          },
 17079        ],
 17080        name: 'setUnsafeBlockSigner',
 17081        outputs: [],
 17082      },
 17083      {
 17084        stateMutability: 'view',
 17085        type: 'function',
 17086        inputs: [],
 17087        name: 'startBlock',
 17088        outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
 17089      },
 17090      {
 17091        stateMutability: 'nonpayable',
 17092        type: 'function',
 17093        inputs: [{ name: 'newOwner', internalType: 'address', type: 'address' }],
 17094        name: 'transferOwnership',
 17095        outputs: [],
 17096      },
 17097      {
 17098        stateMutability: 'view',
 17099        type: 'function',
 17100        inputs: [],
 17101        name: 'unsafeBlockSigner',
 17102        outputs: [{ name: 'addr_', internalType: 'address', type: 'address' }],
 17103      },
 17104      {
 17105        stateMutability: 'view',
 17106        type: 'function',
 17107        inputs: [],
 17108        name: 'version',
 17109        outputs: [{ name: '', internalType: 'string', type: 'string' }],
 17110      },
 17111    ],
 17112    SystemDictator: [
 17113      { stateMutability: 'nonpayable', type: 'constructor', inputs: [] },
 17114      {
 17115        type: 'event',
 17116        anonymous: false,
 17117        inputs: [
 17118          {
 17119            name: 'version',
 17120            internalType: 'uint8',
 17121            type: 'uint8',
 17122            indexed: false,
 17123          },
 17124        ],
 17125        name: 'Initialized',
 17126      },
 17127      {
 17128        type: 'event',
 17129        anonymous: false,
 17130        inputs: [
 17131          {
 17132            name: 'previousOwner',
 17133            internalType: 'address',
 17134            type: 'address',
 17135            indexed: true,
 17136          },
 17137          {
 17138            name: 'newOwner',
 17139            internalType: 'address',
 17140            type: 'address',
 17141            indexed: true,
 17142          },
 17143        ],
 17144        name: 'OwnershipTransferred',
 17145      },
 17146      {
 17147        stateMutability: 'view',
 17148        type: 'function',
 17149        inputs: [],
 17150        name: 'EXIT_1_NO_RETURN_STEP',
 17151        outputs: [{ name: '', internalType: 'uint8', type: 'uint8' }],
 17152      },
 17153      {
 17154        stateMutability: 'view',
 17155        type: 'function',
 17156        inputs: [],
 17157        name: 'PROXY_TRANSFER_STEP',
 17158        outputs: [{ name: '', internalType: 'uint8', type: 'uint8' }],
 17159      },
 17160      {
 17161        stateMutability: 'view',
 17162        type: 'function',
 17163        inputs: [],
 17164        name: 'config',
 17165        outputs: [
 17166          {
 17167            name: 'globalConfig',
 17168            internalType: 'struct SystemDictator.GlobalConfig',
 17169            type: 'tuple',
 17170            components: [
 17171              {
 17172                name: 'addressManager',
 17173                internalType: 'contract AddressManager',
 17174                type: 'address',
 17175              },
 17176              {
 17177                name: 'proxyAdmin',
 17178                internalType: 'contract ProxyAdmin',
 17179                type: 'address',
 17180              },
 17181              { name: 'controller', internalType: 'address', type: 'address' },
 17182              { name: 'finalOwner', internalType: 'address', type: 'address' },
 17183            ],
 17184          },
 17185          {
 17186            name: 'proxyAddressConfig',
 17187            internalType: 'struct SystemDictator.ProxyAddressConfig',
 17188            type: 'tuple',
 17189            components: [
 17190              {
 17191                name: 'l2OutputOracleProxy',
 17192                internalType: 'address',
 17193                type: 'address',
 17194              },
 17195              {
 17196                name: 'optimismPortalProxy',
 17197                internalType: 'address',
 17198                type: 'address',
 17199              },
 17200              {
 17201                name: 'l1CrossDomainMessengerProxy',
 17202                internalType: 'address',
 17203                type: 'address',
 17204              },
 17205              {
 17206                name: 'l1StandardBridgeProxy',
 17207                internalType: 'address',
 17208                type: 'address',
 17209              },
 17210              {
 17211                name: 'optimismMintableERC20FactoryProxy',
 17212                internalType: 'address',
 17213                type: 'address',
 17214              },
 17215              {
 17216                name: 'l1ERC721BridgeProxy',
 17217                internalType: 'address',
 17218                type: 'address',
 17219              },
 17220              {
 17221                name: 'systemConfigProxy',
 17222                internalType: 'address',
 17223                type: 'address',
 17224              },
 17225            ],
 17226          },
 17227          {
 17228            name: 'implementationAddressConfig',
 17229            internalType: 'struct SystemDictator.ImplementationAddressConfig',
 17230            type: 'tuple',
 17231            components: [
 17232              {
 17233                name: 'l2OutputOracleImpl',
 17234                internalType: 'contract L2OutputOracle',
 17235                type: 'address',
 17236              },
 17237              {
 17238                name: 'optimismPortalImpl',
 17239                internalType: 'contract OptimismPortal',
 17240                type: 'address',
 17241              },
 17242              {
 17243                name: 'l1CrossDomainMessengerImpl',
 17244                internalType: 'contract L1CrossDomainMessenger',
 17245                type: 'address',
 17246              },
 17247              {
 17248                name: 'l1StandardBridgeImpl',
 17249                internalType: 'contract L1StandardBridge',
 17250                type: 'address',
 17251              },
 17252              {
 17253                name: 'optimismMintableERC20FactoryImpl',
 17254                internalType: 'contract OptimismMintableERC20Factory',
 17255                type: 'address',
 17256              },
 17257              {
 17258                name: 'l1ERC721BridgeImpl',
 17259                internalType: 'contract L1ERC721Bridge',
 17260                type: 'address',
 17261              },
 17262              {
 17263                name: 'portalSenderImpl',
 17264                internalType: 'contract PortalSender',
 17265                type: 'address',
 17266              },
 17267              {
 17268                name: 'systemConfigImpl',
 17269                internalType: 'contract SystemConfig',
 17270                type: 'address',
 17271              },
 17272            ],
 17273          },
 17274          {
 17275            name: 'systemConfigConfig',
 17276            internalType: 'struct SystemDictator.SystemConfigConfig',
 17277            type: 'tuple',
 17278            components: [
 17279              { name: 'owner', internalType: 'address', type: 'address' },
 17280              { name: 'overhead', internalType: 'uint256', type: 'uint256' },
 17281              { name: 'scalar', internalType: 'uint256', type: 'uint256' },
 17282              { name: 'batcherHash', internalType: 'bytes32', type: 'bytes32' },
 17283              { name: 'gasLimit', internalType: 'uint64', type: 'uint64' },
 17284              {
 17285                name: 'unsafeBlockSigner',
 17286                internalType: 'address',
 17287                type: 'address',
 17288              },
 17289              {
 17290                name: 'resourceConfig',
 17291                internalType: 'struct ResourceMetering.ResourceConfig',
 17292                type: 'tuple',
 17293                components: [
 17294                  {
 17295                    name: 'maxResourceLimit',
 17296                    internalType: 'uint32',
 17297                    type: 'uint32',
 17298                  },
 17299                  {
 17300                    name: 'elasticityMultiplier',
 17301                    internalType: 'uint8',
 17302                    type: 'uint8',
 17303                  },
 17304                  {
 17305                    name: 'baseFeeMaxChangeDenominator',
 17306                    internalType: 'uint8',
 17307                    type: 'uint8',
 17308                  },
 17309                  {
 17310                    name: 'minimumBaseFee',
 17311                    internalType: 'uint32',
 17312                    type: 'uint32',
 17313                  },
 17314                  {
 17315                    name: 'systemTxMaxGas',
 17316                    internalType: 'uint32',
 17317                    type: 'uint32',
 17318                  },
 17319                  {
 17320                    name: 'maximumBaseFee',
 17321                    internalType: 'uint128',
 17322                    type: 'uint128',
 17323                  },
 17324                ],
 17325              },
 17326            ],
 17327          },
 17328        ],
 17329      },
 17330      {
 17331        stateMutability: 'view',
 17332        type: 'function',
 17333        inputs: [],
 17334        name: 'currentStep',
 17335        outputs: [{ name: '', internalType: 'uint8', type: 'uint8' }],
 17336      },
 17337      {
 17338        stateMutability: 'view',
 17339        type: 'function',
 17340        inputs: [],
 17341        name: 'dynamicConfigSet',
 17342        outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
 17343      },
 17344      {
 17345        stateMutability: 'nonpayable',
 17346        type: 'function',
 17347        inputs: [],
 17348        name: 'exit1',
 17349        outputs: [],
 17350      },
 17351      {
 17352        stateMutability: 'view',
 17353        type: 'function',
 17354        inputs: [],
 17355        name: 'exited',
 17356        outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
 17357      },
 17358      {
 17359        stateMutability: 'nonpayable',
 17360        type: 'function',
 17361        inputs: [],
 17362        name: 'finalize',
 17363        outputs: [],
 17364      },
 17365      {
 17366        stateMutability: 'view',
 17367        type: 'function',
 17368        inputs: [],
 17369        name: 'finalized',
 17370        outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
 17371      },
 17372      {
 17373        stateMutability: 'nonpayable',
 17374        type: 'function',
 17375        inputs: [
 17376          {
 17377            name: '_config',
 17378            internalType: 'struct SystemDictator.DeployConfig',
 17379            type: 'tuple',
 17380            components: [
 17381              {
 17382                name: 'globalConfig',
 17383                internalType: 'struct SystemDictator.GlobalConfig',
 17384                type: 'tuple',
 17385                components: [
 17386                  {
 17387                    name: 'addressManager',
 17388                    internalType: 'contract AddressManager',
 17389                    type: 'address',
 17390                  },
 17391                  {
 17392                    name: 'proxyAdmin',
 17393                    internalType: 'contract ProxyAdmin',
 17394                    type: 'address',
 17395                  },
 17396                  {
 17397                    name: 'controller',
 17398                    internalType: 'address',
 17399                    type: 'address',
 17400                  },
 17401                  {
 17402                    name: 'finalOwner',
 17403                    internalType: 'address',
 17404                    type: 'address',
 17405                  },
 17406                ],
 17407              },
 17408              {
 17409                name: 'proxyAddressConfig',
 17410                internalType: 'struct SystemDictator.ProxyAddressConfig',
 17411                type: 'tuple',
 17412                components: [
 17413                  {
 17414                    name: 'l2OutputOracleProxy',
 17415                    internalType: 'address',
 17416                    type: 'address',
 17417                  },
 17418                  {
 17419                    name: 'optimismPortalProxy',
 17420                    internalType: 'address',
 17421                    type: 'address',
 17422                  },
 17423                  {
 17424                    name: 'l1CrossDomainMessengerProxy',
 17425                    internalType: 'address',
 17426                    type: 'address',
 17427                  },
 17428                  {
 17429                    name: 'l1StandardBridgeProxy',
 17430                    internalType: 'address',
 17431                    type: 'address',
 17432                  },
 17433                  {
 17434                    name: 'optimismMintableERC20FactoryProxy',
 17435                    internalType: 'address',
 17436                    type: 'address',
 17437                  },
 17438                  {
 17439                    name: 'l1ERC721BridgeProxy',
 17440                    internalType: 'address',
 17441                    type: 'address',
 17442                  },
 17443                  {
 17444                    name: 'systemConfigProxy',
 17445                    internalType: 'address',
 17446                    type: 'address',
 17447                  },
 17448                ],
 17449              },
 17450              {
 17451                name: 'implementationAddressConfig',
 17452                internalType: 'struct SystemDictator.ImplementationAddressConfig',
 17453                type: 'tuple',
 17454                components: [
 17455                  {
 17456                    name: 'l2OutputOracleImpl',
 17457                    internalType: 'contract L2OutputOracle',
 17458                    type: 'address',
 17459                  },
 17460                  {
 17461                    name: 'optimismPortalImpl',
 17462                    internalType: 'contract OptimismPortal',
 17463                    type: 'address',
 17464                  },
 17465                  {
 17466                    name: 'l1CrossDomainMessengerImpl',
 17467                    internalType: 'contract L1CrossDomainMessenger',
 17468                    type: 'address',
 17469                  },
 17470                  {
 17471                    name: 'l1StandardBridgeImpl',
 17472                    internalType: 'contract L1StandardBridge',
 17473                    type: 'address',
 17474                  },
 17475                  {
 17476                    name: 'optimismMintableERC20FactoryImpl',
 17477                    internalType: 'contract OptimismMintableERC20Factory',
 17478                    type: 'address',
 17479                  },
 17480                  {
 17481                    name: 'l1ERC721BridgeImpl',
 17482                    internalType: 'contract L1ERC721Bridge',
 17483                    type: 'address',
 17484                  },
 17485                  {
 17486                    name: 'portalSenderImpl',
 17487                    internalType: 'contract PortalSender',
 17488                    type: 'address',
 17489                  },
 17490                  {
 17491                    name: 'systemConfigImpl',
 17492                    internalType: 'contract SystemConfig',
 17493                    type: 'address',
 17494                  },
 17495                ],
 17496              },
 17497              {
 17498                name: 'systemConfigConfig',
 17499                internalType: 'struct SystemDictator.SystemConfigConfig',
 17500                type: 'tuple',
 17501                components: [
 17502                  { name: 'owner', internalType: 'address', type: 'address' },
 17503                  { name: 'overhead', internalType: 'uint256', type: 'uint256' },
 17504                  { name: 'scalar', internalType: 'uint256', type: 'uint256' },
 17505                  {
 17506                    name: 'batcherHash',
 17507                    internalType: 'bytes32',
 17508                    type: 'bytes32',
 17509                  },
 17510                  { name: 'gasLimit', internalType: 'uint64', type: 'uint64' },
 17511                  {
 17512                    name: 'unsafeBlockSigner',
 17513                    internalType: 'address',
 17514                    type: 'address',
 17515                  },
 17516                  {
 17517                    name: 'resourceConfig',
 17518                    internalType: 'struct ResourceMetering.ResourceConfig',
 17519                    type: 'tuple',
 17520                    components: [
 17521                      {
 17522                        name: 'maxResourceLimit',
 17523                        internalType: 'uint32',
 17524                        type: 'uint32',
 17525                      },
 17526                      {
 17527                        name: 'elasticityMultiplier',
 17528                        internalType: 'uint8',
 17529                        type: 'uint8',
 17530                      },
 17531                      {
 17532                        name: 'baseFeeMaxChangeDenominator',
 17533                        internalType: 'uint8',
 17534                        type: 'uint8',
 17535                      },
 17536                      {
 17537                        name: 'minimumBaseFee',
 17538                        internalType: 'uint32',
 17539                        type: 'uint32',
 17540                      },
 17541                      {
 17542                        name: 'systemTxMaxGas',
 17543                        internalType: 'uint32',
 17544                        type: 'uint32',
 17545                      },
 17546                      {
 17547                        name: 'maximumBaseFee',
 17548                        internalType: 'uint128',
 17549                        type: 'uint128',
 17550                      },
 17551                    ],
 17552                  },
 17553                ],
 17554              },
 17555            ],
 17556          },
 17557        ],
 17558        name: 'initialize',
 17559        outputs: [],
 17560      },
 17561      {
 17562        stateMutability: 'view',
 17563        type: 'function',
 17564        inputs: [],
 17565        name: 'l2OutputOracleDynamicConfig',
 17566        outputs: [
 17567          {
 17568            name: 'l2OutputOracleStartingBlockNumber',
 17569            internalType: 'uint256',
 17570            type: 'uint256',
 17571          },
 17572          {
 17573            name: 'l2OutputOracleStartingTimestamp',
 17574            internalType: 'uint256',
 17575            type: 'uint256',
 17576          },
 17577        ],
 17578      },
 17579      {
 17580        stateMutability: 'view',
 17581        type: 'function',
 17582        inputs: [],
 17583        name: 'oldL1CrossDomainMessenger',
 17584        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 17585      },
 17586      {
 17587        stateMutability: 'view',
 17588        type: 'function',
 17589        inputs: [],
 17590        name: 'optimismPortalDynamicConfig',
 17591        outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
 17592      },
 17593      {
 17594        stateMutability: 'view',
 17595        type: 'function',
 17596        inputs: [],
 17597        name: 'owner',
 17598        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 17599      },
 17600      {
 17601        stateMutability: 'nonpayable',
 17602        type: 'function',
 17603        inputs: [],
 17604        name: 'phase1',
 17605        outputs: [],
 17606      },
 17607      {
 17608        stateMutability: 'nonpayable',
 17609        type: 'function',
 17610        inputs: [],
 17611        name: 'phase2',
 17612        outputs: [],
 17613      },
 17614      {
 17615        stateMutability: 'nonpayable',
 17616        type: 'function',
 17617        inputs: [],
 17618        name: 'renounceOwnership',
 17619        outputs: [],
 17620      },
 17621      {
 17622        stateMutability: 'nonpayable',
 17623        type: 'function',
 17624        inputs: [],
 17625        name: 'step1',
 17626        outputs: [],
 17627      },
 17628      {
 17629        stateMutability: 'nonpayable',
 17630        type: 'function',
 17631        inputs: [],
 17632        name: 'step2',
 17633        outputs: [],
 17634      },
 17635      {
 17636        stateMutability: 'nonpayable',
 17637        type: 'function',
 17638        inputs: [],
 17639        name: 'step3',
 17640        outputs: [],
 17641      },
 17642      {
 17643        stateMutability: 'nonpayable',
 17644        type: 'function',
 17645        inputs: [],
 17646        name: 'step4',
 17647        outputs: [],
 17648      },
 17649      {
 17650        stateMutability: 'nonpayable',
 17651        type: 'function',
 17652        inputs: [],
 17653        name: 'step5',
 17654        outputs: [],
 17655      },
 17656      {
 17657        stateMutability: 'nonpayable',
 17658        type: 'function',
 17659        inputs: [{ name: 'newOwner', internalType: 'address', type: 'address' }],
 17660        name: 'transferOwnership',
 17661        outputs: [],
 17662      },
 17663      {
 17664        stateMutability: 'nonpayable',
 17665        type: 'function',
 17666        inputs: [
 17667          {
 17668            name: '_l2OutputOracleDynamicConfig',
 17669            internalType: 'struct SystemDictator.L2OutputOracleDynamicConfig',
 17670            type: 'tuple',
 17671            components: [
 17672              {
 17673                name: 'l2OutputOracleStartingBlockNumber',
 17674                internalType: 'uint256',
 17675                type: 'uint256',
 17676              },
 17677              {
 17678                name: 'l2OutputOracleStartingTimestamp',
 17679                internalType: 'uint256',
 17680                type: 'uint256',
 17681              },
 17682            ],
 17683          },
 17684          {
 17685            name: '_optimismPortalDynamicConfig',
 17686            internalType: 'bool',
 17687            type: 'bool',
 17688          },
 17689        ],
 17690        name: 'updateDynamicConfig',
 17691        outputs: [],
 17692      },
 17693    ],
 17694    SystemDictator_goerli: [
 17695      {
 17696        type: 'event',
 17697        anonymous: false,
 17698        inputs: [
 17699          {
 17700            name: 'version',
 17701            internalType: 'uint8',
 17702            type: 'uint8',
 17703            indexed: false,
 17704          },
 17705        ],
 17706        name: 'Initialized',
 17707      },
 17708      {
 17709        type: 'event',
 17710        anonymous: false,
 17711        inputs: [
 17712          {
 17713            name: 'previousOwner',
 17714            internalType: 'address',
 17715            type: 'address',
 17716            indexed: true,
 17717          },
 17718          {
 17719            name: 'newOwner',
 17720            internalType: 'address',
 17721            type: 'address',
 17722            indexed: true,
 17723          },
 17724        ],
 17725        name: 'OwnershipTransferred',
 17726      },
 17727      {
 17728        stateMutability: 'view',
 17729        type: 'function',
 17730        inputs: [],
 17731        name: 'EXIT_1_NO_RETURN_STEP',
 17732        outputs: [{ name: '', internalType: 'uint8', type: 'uint8' }],
 17733      },
 17734      {
 17735        stateMutability: 'view',
 17736        type: 'function',
 17737        inputs: [],
 17738        name: 'PROXY_TRANSFER_STEP',
 17739        outputs: [{ name: '', internalType: 'uint8', type: 'uint8' }],
 17740      },
 17741      {
 17742        stateMutability: 'view',
 17743        type: 'function',
 17744        inputs: [],
 17745        name: 'config',
 17746        outputs: [
 17747          {
 17748            name: 'globalConfig',
 17749            internalType: 'struct SystemDictator.GlobalConfig',
 17750            type: 'tuple',
 17751            components: [
 17752              {
 17753                name: 'addressManager',
 17754                internalType: 'contract AddressManager',
 17755                type: 'address',
 17756              },
 17757              {
 17758                name: 'proxyAdmin',
 17759                internalType: 'contract ProxyAdmin',
 17760                type: 'address',
 17761              },
 17762              { name: 'controller', internalType: 'address', type: 'address' },
 17763              { name: 'finalOwner', internalType: 'address', type: 'address' },
 17764            ],
 17765          },
 17766          {
 17767            name: 'proxyAddressConfig',
 17768            internalType: 'struct SystemDictator.ProxyAddressConfig',
 17769            type: 'tuple',
 17770            components: [
 17771              {
 17772                name: 'l2OutputOracleProxy',
 17773                internalType: 'address',
 17774                type: 'address',
 17775              },
 17776              {
 17777                name: 'optimismPortalProxy',
 17778                internalType: 'address',
 17779                type: 'address',
 17780              },
 17781              {
 17782                name: 'l1CrossDomainMessengerProxy',
 17783                internalType: 'address',
 17784                type: 'address',
 17785              },
 17786              {
 17787                name: 'l1StandardBridgeProxy',
 17788                internalType: 'address',
 17789                type: 'address',
 17790              },
 17791              {
 17792                name: 'optimismMintableERC20FactoryProxy',
 17793                internalType: 'address',
 17794                type: 'address',
 17795              },
 17796              {
 17797                name: 'l1ERC721BridgeProxy',
 17798                internalType: 'address',
 17799                type: 'address',
 17800              },
 17801              {
 17802                name: 'systemConfigProxy',
 17803                internalType: 'address',
 17804                type: 'address',
 17805              },
 17806            ],
 17807          },
 17808          {
 17809            name: 'implementationAddressConfig',
 17810            internalType: 'struct SystemDictator.ImplementationAddressConfig',
 17811            type: 'tuple',
 17812            components: [
 17813              {
 17814                name: 'l2OutputOracleImpl',
 17815                internalType: 'contract L2OutputOracle',
 17816                type: 'address',
 17817              },
 17818              {
 17819                name: 'optimismPortalImpl',
 17820                internalType: 'contract OptimismPortal',
 17821                type: 'address',
 17822              },
 17823              {
 17824                name: 'l1CrossDomainMessengerImpl',
 17825                internalType: 'contract L1CrossDomainMessenger',
 17826                type: 'address',
 17827              },
 17828              {
 17829                name: 'l1StandardBridgeImpl',
 17830                internalType: 'contract L1StandardBridge',
 17831                type: 'address',
 17832              },
 17833              {
 17834                name: 'optimismMintableERC20FactoryImpl',
 17835                internalType: 'contract OptimismMintableERC20Factory',
 17836                type: 'address',
 17837              },
 17838              {
 17839                name: 'l1ERC721BridgeImpl',
 17840                internalType: 'contract L1ERC721Bridge',
 17841                type: 'address',
 17842              },
 17843              {
 17844                name: 'portalSenderImpl',
 17845                internalType: 'contract PortalSender',
 17846                type: 'address',
 17847              },
 17848              {
 17849                name: 'systemConfigImpl',
 17850                internalType: 'contract SystemConfig',
 17851                type: 'address',
 17852              },
 17853            ],
 17854          },
 17855          {
 17856            name: 'systemConfigConfig',
 17857            internalType: 'struct SystemDictator.SystemConfigConfig',
 17858            type: 'tuple',
 17859            components: [
 17860              { name: 'owner', internalType: 'address', type: 'address' },
 17861              { name: 'overhead', internalType: 'uint256', type: 'uint256' },
 17862              { name: 'scalar', internalType: 'uint256', type: 'uint256' },
 17863              { name: 'batcherHash', internalType: 'bytes32', type: 'bytes32' },
 17864              { name: 'gasLimit', internalType: 'uint64', type: 'uint64' },
 17865              {
 17866                name: 'unsafeBlockSigner',
 17867                internalType: 'address',
 17868                type: 'address',
 17869              },
 17870            ],
 17871          },
 17872        ],
 17873      },
 17874      {
 17875        stateMutability: 'view',
 17876        type: 'function',
 17877        inputs: [],
 17878        name: 'currentStep',
 17879        outputs: [{ name: '', internalType: 'uint8', type: 'uint8' }],
 17880      },
 17881      {
 17882        stateMutability: 'view',
 17883        type: 'function',
 17884        inputs: [],
 17885        name: 'dynamicConfigSet',
 17886        outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
 17887      },
 17888      {
 17889        stateMutability: 'nonpayable',
 17890        type: 'function',
 17891        inputs: [],
 17892        name: 'exit1',
 17893        outputs: [],
 17894      },
 17895      {
 17896        stateMutability: 'nonpayable',
 17897        type: 'function',
 17898        inputs: [],
 17899        name: 'finalize',
 17900        outputs: [],
 17901      },
 17902      {
 17903        stateMutability: 'view',
 17904        type: 'function',
 17905        inputs: [],
 17906        name: 'finalized',
 17907        outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
 17908      },
 17909      {
 17910        stateMutability: 'nonpayable',
 17911        type: 'function',
 17912        inputs: [
 17913          {
 17914            name: '_config',
 17915            internalType: 'struct SystemDictator.DeployConfig',
 17916            type: 'tuple',
 17917            components: [
 17918              {
 17919                name: 'globalConfig',
 17920                internalType: 'struct SystemDictator.GlobalConfig',
 17921                type: 'tuple',
 17922                components: [
 17923                  {
 17924                    name: 'addressManager',
 17925                    internalType: 'contract AddressManager',
 17926                    type: 'address',
 17927                  },
 17928                  {
 17929                    name: 'proxyAdmin',
 17930                    internalType: 'contract ProxyAdmin',
 17931                    type: 'address',
 17932                  },
 17933                  {
 17934                    name: 'controller',
 17935                    internalType: 'address',
 17936                    type: 'address',
 17937                  },
 17938                  {
 17939                    name: 'finalOwner',
 17940                    internalType: 'address',
 17941                    type: 'address',
 17942                  },
 17943                ],
 17944              },
 17945              {
 17946                name: 'proxyAddressConfig',
 17947                internalType: 'struct SystemDictator.ProxyAddressConfig',
 17948                type: 'tuple',
 17949                components: [
 17950                  {
 17951                    name: 'l2OutputOracleProxy',
 17952                    internalType: 'address',
 17953                    type: 'address',
 17954                  },
 17955                  {
 17956                    name: 'optimismPortalProxy',
 17957                    internalType: 'address',
 17958                    type: 'address',
 17959                  },
 17960                  {
 17961                    name: 'l1CrossDomainMessengerProxy',
 17962                    internalType: 'address',
 17963                    type: 'address',
 17964                  },
 17965                  {
 17966                    name: 'l1StandardBridgeProxy',
 17967                    internalType: 'address',
 17968                    type: 'address',
 17969                  },
 17970                  {
 17971                    name: 'optimismMintableERC20FactoryProxy',
 17972                    internalType: 'address',
 17973                    type: 'address',
 17974                  },
 17975                  {
 17976                    name: 'l1ERC721BridgeProxy',
 17977                    internalType: 'address',
 17978                    type: 'address',
 17979                  },
 17980                  {
 17981                    name: 'systemConfigProxy',
 17982                    internalType: 'address',
 17983                    type: 'address',
 17984                  },
 17985                ],
 17986              },
 17987              {
 17988                name: 'implementationAddressConfig',
 17989                internalType: 'struct SystemDictator.ImplementationAddressConfig',
 17990                type: 'tuple',
 17991                components: [
 17992                  {
 17993                    name: 'l2OutputOracleImpl',
 17994                    internalType: 'contract L2OutputOracle',
 17995                    type: 'address',
 17996                  },
 17997                  {
 17998                    name: 'optimismPortalImpl',
 17999                    internalType: 'contract OptimismPortal',
 18000                    type: 'address',
 18001                  },
 18002                  {
 18003                    name: 'l1CrossDomainMessengerImpl',
 18004                    internalType: 'contract L1CrossDomainMessenger',
 18005                    type: 'address',
 18006                  },
 18007                  {
 18008                    name: 'l1StandardBridgeImpl',
 18009                    internalType: 'contract L1StandardBridge',
 18010                    type: 'address',
 18011                  },
 18012                  {
 18013                    name: 'optimismMintableERC20FactoryImpl',
 18014                    internalType: 'contract OptimismMintableERC20Factory',
 18015                    type: 'address',
 18016                  },
 18017                  {
 18018                    name: 'l1ERC721BridgeImpl',
 18019                    internalType: 'contract L1ERC721Bridge',
 18020                    type: 'address',
 18021                  },
 18022                  {
 18023                    name: 'portalSenderImpl',
 18024                    internalType: 'contract PortalSender',
 18025                    type: 'address',
 18026                  },
 18027                  {
 18028                    name: 'systemConfigImpl',
 18029                    internalType: 'contract SystemConfig',
 18030                    type: 'address',
 18031                  },
 18032                ],
 18033              },
 18034              {
 18035                name: 'systemConfigConfig',
 18036                internalType: 'struct SystemDictator.SystemConfigConfig',
 18037                type: 'tuple',
 18038                components: [
 18039                  { name: 'owner', internalType: 'address', type: 'address' },
 18040                  { name: 'overhead', internalType: 'uint256', type: 'uint256' },
 18041                  { name: 'scalar', internalType: 'uint256', type: 'uint256' },
 18042                  {
 18043                    name: 'batcherHash',
 18044                    internalType: 'bytes32',
 18045                    type: 'bytes32',
 18046                  },
 18047                  { name: 'gasLimit', internalType: 'uint64', type: 'uint64' },
 18048                  {
 18049                    name: 'unsafeBlockSigner',
 18050                    internalType: 'address',
 18051                    type: 'address',
 18052                  },
 18053                ],
 18054              },
 18055            ],
 18056          },
 18057        ],
 18058        name: 'initialize',
 18059        outputs: [],
 18060      },
 18061      {
 18062        stateMutability: 'view',
 18063        type: 'function',
 18064        inputs: [],
 18065        name: 'l2OutputOracleDynamicConfig',
 18066        outputs: [
 18067          {
 18068            name: 'l2OutputOracleStartingBlockNumber',
 18069            internalType: 'uint256',
 18070            type: 'uint256',
 18071          },
 18072          {
 18073            name: 'l2OutputOracleStartingTimestamp',
 18074            internalType: 'uint256',
 18075            type: 'uint256',
 18076          },
 18077        ],
 18078      },
 18079      {
 18080        stateMutability: 'view',
 18081        type: 'function',
 18082        inputs: [],
 18083        name: 'oldL1CrossDomainMessenger',
 18084        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 18085      },
 18086      {
 18087        stateMutability: 'view',
 18088        type: 'function',
 18089        inputs: [],
 18090        name: 'owner',
 18091        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 18092      },
 18093      {
 18094        stateMutability: 'nonpayable',
 18095        type: 'function',
 18096        inputs: [],
 18097        name: 'renounceOwnership',
 18098        outputs: [],
 18099      },
 18100      {
 18101        stateMutability: 'nonpayable',
 18102        type: 'function',
 18103        inputs: [],
 18104        name: 'step1',
 18105        outputs: [],
 18106      },
 18107      {
 18108        stateMutability: 'nonpayable',
 18109        type: 'function',
 18110        inputs: [],
 18111        name: 'step2',
 18112        outputs: [],
 18113      },
 18114      {
 18115        stateMutability: 'nonpayable',
 18116        type: 'function',
 18117        inputs: [],
 18118        name: 'step3',
 18119        outputs: [],
 18120      },
 18121      {
 18122        stateMutability: 'nonpayable',
 18123        type: 'function',
 18124        inputs: [],
 18125        name: 'step4',
 18126        outputs: [],
 18127      },
 18128      {
 18129        stateMutability: 'nonpayable',
 18130        type: 'function',
 18131        inputs: [],
 18132        name: 'step5',
 18133        outputs: [],
 18134      },
 18135      {
 18136        stateMutability: 'nonpayable',
 18137        type: 'function',
 18138        inputs: [],
 18139        name: 'step6',
 18140        outputs: [],
 18141      },
 18142      {
 18143        stateMutability: 'nonpayable',
 18144        type: 'function',
 18145        inputs: [{ name: 'newOwner', internalType: 'address', type: 'address' }],
 18146        name: 'transferOwnership',
 18147        outputs: [],
 18148      },
 18149      {
 18150        stateMutability: 'nonpayable',
 18151        type: 'function',
 18152        inputs: [
 18153          {
 18154            name: '_l2OutputOracleDynamicConfig',
 18155            internalType: 'struct SystemDictator.L2OutputOracleDynamicConfig',
 18156            type: 'tuple',
 18157            components: [
 18158              {
 18159                name: 'l2OutputOracleStartingBlockNumber',
 18160                internalType: 'uint256',
 18161                type: 'uint256',
 18162              },
 18163              {
 18164                name: 'l2OutputOracleStartingTimestamp',
 18165                internalType: 'uint256',
 18166                type: 'uint256',
 18167              },
 18168            ],
 18169          },
 18170        ],
 18171        name: 'updateL2OutputOracleDynamicConfig',
 18172        outputs: [],
 18173      },
 18174    ],
 18175    TeleportrWithdrawer: [
 18176      {
 18177        stateMutability: 'nonpayable',
 18178        type: 'constructor',
 18179        inputs: [{ name: '_owner', internalType: 'address', type: 'address' }],
 18180      },
 18181      {
 18182        type: 'event',
 18183        anonymous: false,
 18184        inputs: [
 18185          {
 18186            name: 'user',
 18187            internalType: 'address',
 18188            type: 'address',
 18189            indexed: true,
 18190          },
 18191          {
 18192            name: 'newOwner',
 18193            internalType: 'address',
 18194            type: 'address',
 18195            indexed: true,
 18196          },
 18197        ],
 18198        name: 'OwnerUpdated',
 18199      },
 18200      {
 18201        type: 'event',
 18202        anonymous: false,
 18203        inputs: [
 18204          {
 18205            name: 'from',
 18206            internalType: 'address',
 18207            type: 'address',
 18208            indexed: true,
 18209          },
 18210          {
 18211            name: 'amount',
 18212            internalType: 'uint256',
 18213            type: 'uint256',
 18214            indexed: false,
 18215          },
 18216        ],
 18217        name: 'ReceivedETH',
 18218      },
 18219      {
 18220        type: 'event',
 18221        anonymous: false,
 18222        inputs: [
 18223          {
 18224            name: 'withdrawer',
 18225            internalType: 'address',
 18226            type: 'address',
 18227            indexed: true,
 18228          },
 18229          {
 18230            name: 'recipient',
 18231            internalType: 'address',
 18232            type: 'address',
 18233            indexed: true,
 18234          },
 18235          {
 18236            name: 'asset',
 18237            internalType: 'address',
 18238            type: 'address',
 18239            indexed: true,
 18240          },
 18241          {
 18242            name: 'amount',
 18243            internalType: 'uint256',
 18244            type: 'uint256',
 18245            indexed: false,
 18246          },
 18247        ],
 18248        name: 'WithdrewERC20',
 18249      },
 18250      {
 18251        type: 'event',
 18252        anonymous: false,
 18253        inputs: [
 18254          {
 18255            name: 'withdrawer',
 18256            internalType: 'address',
 18257            type: 'address',
 18258            indexed: true,
 18259          },
 18260          {
 18261            name: 'recipient',
 18262            internalType: 'address',
 18263            type: 'address',
 18264            indexed: true,
 18265          },
 18266          {
 18267            name: 'asset',
 18268            internalType: 'address',
 18269            type: 'address',
 18270            indexed: true,
 18271          },
 18272          {
 18273            name: 'id',
 18274            internalType: 'uint256',
 18275            type: 'uint256',
 18276            indexed: false,
 18277          },
 18278        ],
 18279        name: 'WithdrewERC721',
 18280      },
 18281      {
 18282        type: 'event',
 18283        anonymous: false,
 18284        inputs: [
 18285          {
 18286            name: 'withdrawer',
 18287            internalType: 'address',
 18288            type: 'address',
 18289            indexed: true,
 18290          },
 18291          {
 18292            name: 'recipient',
 18293            internalType: 'address',
 18294            type: 'address',
 18295            indexed: true,
 18296          },
 18297          {
 18298            name: 'amount',
 18299            internalType: 'uint256',
 18300            type: 'uint256',
 18301            indexed: false,
 18302          },
 18303        ],
 18304        name: 'WithdrewETH',
 18305      },
 18306      {
 18307        stateMutability: 'payable',
 18308        type: 'function',
 18309        inputs: [
 18310          { name: '_target', internalType: 'address', type: 'address' },
 18311          { name: '_data', internalType: 'bytes', type: 'bytes' },
 18312          { name: '_gas', internalType: 'uint256', type: 'uint256' },
 18313          { name: '_value', internalType: 'uint256', type: 'uint256' },
 18314        ],
 18315        name: 'CALL',
 18316        outputs: [
 18317          { name: '', internalType: 'bool', type: 'bool' },
 18318          { name: '', internalType: 'bytes', type: 'bytes' },
 18319        ],
 18320      },
 18321      {
 18322        stateMutability: 'payable',
 18323        type: 'function',
 18324        inputs: [
 18325          { name: '_target', internalType: 'address', type: 'address' },
 18326          { name: '_data', internalType: 'bytes', type: 'bytes' },
 18327          { name: '_gas', internalType: 'uint256', type: 'uint256' },
 18328        ],
 18329        name: 'DELEGATECALL',
 18330        outputs: [
 18331          { name: '', internalType: 'bool', type: 'bool' },
 18332          { name: '', internalType: 'bytes', type: 'bytes' },
 18333        ],
 18334      },
 18335      {
 18336        stateMutability: 'view',
 18337        type: 'function',
 18338        inputs: [],
 18339        name: 'data',
 18340        outputs: [{ name: '', internalType: 'bytes', type: 'bytes' }],
 18341      },
 18342      {
 18343        stateMutability: 'view',
 18344        type: 'function',
 18345        inputs: [],
 18346        name: 'owner',
 18347        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 18348      },
 18349      {
 18350        stateMutability: 'view',
 18351        type: 'function',
 18352        inputs: [],
 18353        name: 'recipient',
 18354        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 18355      },
 18356      {
 18357        stateMutability: 'nonpayable',
 18358        type: 'function',
 18359        inputs: [{ name: '_data', internalType: 'bytes', type: 'bytes' }],
 18360        name: 'setData',
 18361        outputs: [],
 18362      },
 18363      {
 18364        stateMutability: 'nonpayable',
 18365        type: 'function',
 18366        inputs: [{ name: 'newOwner', internalType: 'address', type: 'address' }],
 18367        name: 'setOwner',
 18368        outputs: [],
 18369      },
 18370      {
 18371        stateMutability: 'nonpayable',
 18372        type: 'function',
 18373        inputs: [
 18374          { name: '_recipient', internalType: 'address', type: 'address' },
 18375        ],
 18376        name: 'setRecipient',
 18377        outputs: [],
 18378      },
 18379      {
 18380        stateMutability: 'nonpayable',
 18381        type: 'function',
 18382        inputs: [
 18383          { name: '_teleportr', internalType: 'address', type: 'address' },
 18384        ],
 18385        name: 'setTeleportr',
 18386        outputs: [],
 18387      },
 18388      {
 18389        stateMutability: 'view',
 18390        type: 'function',
 18391        inputs: [],
 18392        name: 'teleportr',
 18393        outputs: [{ name: '', internalType: 'address', type: 'address' }],
 18394      },
 18395      {
 18396        stateMutability: 'nonpayable',
 18397        type: 'function',
 18398        inputs: [
 18399          { name: '_asset', internalType: 'contract ERC20', type: 'address' },
 18400          { name: '_to', internalType: 'address', type: 'address' },
 18401          { name: '_amount', internalType: 'uint256', type: 'uint256' },
 18402        ],
 18403        name: 'withdrawERC20',
 18404        outputs: [],
 18405      },
 18406      {
 18407        stateMutability: 'nonpayable',
 18408        type: 'function',
 18409        inputs: [
 18410          { name: '_asset', internalType: 'contract ERC20', type: 'address' },
 18411          { name: '_to', internalType: 'address', type: 'address' },
 18412        ],
 18413        name: 'withdrawERC20',
 18414        outputs: [],
 18415      },
 18416      {
 18417        stateMutability: 'nonpayable',
 18418        type: 'function',
 18419        inputs: [
 18420          { name: '_asset', internalType: 'contract ERC721', type: 'address' },
 18421          { name: '_to', internalType: 'address', type: 'address' },
 18422          { name: '_id', internalType: 'uint256', type: 'uint256' },
 18423        ],
 18424        name: 'withdrawERC721',
 18425        outputs: [],
 18426      },
 18427      {
 18428        stateMutability: 'nonpayable',
 18429        type: 'function',
 18430        inputs: [
 18431          { name: '_to', internalType: 'address payable', type: 'address' },
 18432          { name: '_amount', internalType: 'uint256', type: 'uint256' },
 18433        ],
 18434        name: 'withdrawETH',
 18435        outputs: [],
 18436      },
 18437      {
 18438        stateMutability: 'nonpayable',
 18439        type: 'function',
 18440        inputs: [
 18441          { name: '_to', internalType: 'address payable', type: 'address' },
 18442        ],
 18443        name: 'withdrawETH',
 18444        outputs: [],
 18445      },
 18446      {
 18447        stateMutability: 'nonpayable',
 18448        type: 'function',
 18449        inputs: [],
 18450        name: 'withdrawFromTeleportr',
 18451        outputs: [],
 18452      },
 18453      { stateMutability: 'payable', type: 'receive' },
 18454    ],
 18455  } as const