Contract 0x467194771dae2967aef3ecbedd3bf9a310c76c65 8

Contract Overview

Balance:
0 ETH
Txn Hash Method
Block
From
To
Value [Txn Fee]
0xa168a5c4cca98872205a23eec89bd008584ec7279f4a91500e5760a97aac8e01Approve136027782022-07-11 18:48:1678 days 5 hrs ago0x85cfbc209560f23c58a3ff7316f30fab62ea9e8b IN  0x467194771dae2967aef3ecbedd3bf9a310c76c650 ETH0.000005903264 ETH
0x0e3d84759e3df2a5d3f02cedfd93ea30dace621deb86fe66bd77d371f77a76fbApprove136027402022-07-11 18:46:1678 days 5 hrs ago0x85cfbc209560f23c58a3ff7316f30fab62ea9e8b IN  0x467194771dae2967aef3ecbedd3bf9a310c76c650 ETH0.000005864309 ETH
0x67703a40fd288a7ba5dceeac66481d1e421f9b63ec0dfd971673a722f28e5e27Transfer125199492022-06-07 1:55:52112 days 21 hrs ago0x3b11ab56fb4b3f73d726ba6a1a697230fc07e8a8 IN  0x467194771dae2967aef3ecbedd3bf9a310c76c650.0001 ETH0.000005068507 ETH
0x3573edd0251b4ba6764ae0dc8eba0a8a44622cc7dbb71da1381f31b38546fca5Transfer125164982022-06-06 22:34:41113 days 1 hr ago0x3b11ab56fb4b3f73d726ba6a1a697230fc07e8a8 IN  0x467194771dae2967aef3ecbedd3bf9a310c76c650.01 ETH0.00000504837 ETH
0xffc36584f425ef91c7d7c3692ce84d55c059b10f6996f6b8f6bdaa12bb1f1bc3Transfer125164242022-06-06 22:29:11113 days 1 hr ago0x3b11ab56fb4b3f73d726ba6a1a697230fc07e8a8 IN  0x467194771dae2967aef3ecbedd3bf9a310c76c650.07 ETH0.000005031629 ETH
0xb44dd092ce3d59c29ef485d3e766c7f733663b2bb2ed9f66a69bc4379793d156Outbound Transfe...46281902021-09-19 9:45:37373 days 14 hrs ago0x4bee0574349bf0d8cab290de4f38d38feeeed91a IN  0x467194771dae2967aef3ecbedd3bf9a310c76c650 ETH0.000008035307 ETH
0xfa3e0da3b5a28befe5765c2f7b895736cb6229ecc60b91e0cd9639d4b7182bf3Finalize Inbound...46281832021-09-19 9:44:37373 days 14 hrs ago0x21f7593cdda8c58a1d0f14c5164b376352a57040 IN  0x467194771dae2967aef3ecbedd3bf9a310c76c650 ETH0 ETH
0xa92681ac9b9d02a9dbc07465b88667acb45d7917891e79d13298a8f6d3c56ed6Rely46272142021-09-19 9:14:04373 days 14 hrs ago0x075da589886ba445d7c7e81c472059de7ae65250 IN  0x467194771dae2967aef3ecbedd3bf9a310c76c650 ETH0.000009014492 ETH
0x8b2796afe34f4d22645639f7dcb194e08dce8ad0fc8405a456ed5e7b3a87c9b10x6101006046271582021-09-19 9:12:04373 days 14 hrs ago0x075da589886ba445d7c7e81c472059de7ae65250 IN  Create: L2DaiGateway0 ETH0.000563813087 ETH
[ Download CSV Export 
Latest 4 internal transactions
Parent Txn Hash Block From To Value
0xb44dd092ce3d59c29ef485d3e766c7f733663b2bb2ed9f66a69bc4379793d15646281902021-09-19 9:45:37373 days 14 hrs ago 0x467194771dae2967aef3ecbedd3bf9a310c76c650x00000000000000000000000000000000000000640 ETH
0xb44dd092ce3d59c29ef485d3e766c7f733663b2bb2ed9f66a69bc4379793d15646281902021-09-19 9:45:37373 days 14 hrs ago 0x467194771dae2967aef3ecbedd3bf9a310c76c65 0xda10009cbd5d07dd0cecc66161fc93d7c9000da10 ETH
0x5001d3bb7b5c20fa43be414dd0c421f2c8a25acac85fa028e0f5fb93ab5ccfcd46281832021-09-19 9:44:37373 days 14 hrs ago 0x467194771dae2967aef3ecbedd3bf9a310c76c65 0xda10009cbd5d07dd0cecc66161fc93d7c9000da10 ETH
0x5001d3bb7b5c20fa43be414dd0c421f2c8a25acac85fa028e0f5fb93ab5ccfcd46281832021-09-19 9:44:37373 days 14 hrs ago 0x21f7593cdda8c58a1d0f14c5164b376352a57040 0x467194771dae2967aef3ecbedd3bf9a310c76c650 ETH
[ Download CSV Export 
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
L2DaiGateway

Compiler Version
v0.6.11+commit.5ef660b1

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, GNU AGPLv3 license

Contract Source Code (Solidity Multiple files format)

File 1 of 5: L2DaiGateway.sol
// SPDX-License-Identifier: AGPL-3.0-or-later
// Copyright (C) 2021 Dai Foundation
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program.  If not, see <https://www.gnu.org/licenses/>.

pragma solidity ^0.6.11;

import "./L2ITokenGateway.sol";
import "./L1ITokenGateway.sol";
import "./L2CrossDomainEnabled.sol";

interface Mintable {
  function mint(address usr, uint256 wad) external;

  function burn(address usr, uint256 wad) external;
}

contract L2DaiGateway is L2CrossDomainEnabled, L2ITokenGateway {
  // --- Auth ---
  mapping(address => uint256) public wards;

  function rely(address usr) external auth {
    wards[usr] = 1;
    emit Rely(usr);
  }

  function deny(address usr) external auth {
    wards[usr] = 0;
    emit Deny(usr);
  }

  modifier auth() {
    require(wards[msg.sender] == 1, "L2DaiGateway/not-authorized");
    _;
  }

  event Rely(address indexed usr);
  event Deny(address indexed usr);

  address public immutable l1Dai;
  address public immutable l2Dai;
  address public immutable l1Counterpart;
  address public immutable l2Router;
  uint256 public isOpen = 1;

  event Closed();

  constructor(
    address _l1Counterpart,
    address _l2Router,
    address _l1Dai,
    address _l2Dai
  ) public {
    wards[msg.sender] = 1;
    emit Rely(msg.sender);

    l1Dai = _l1Dai;
    l2Dai = _l2Dai;
    l1Counterpart = _l1Counterpart;
    l2Router = _l2Router;
  }

  function close() external auth {
    isOpen = 0;

    emit Closed();
  }

  function outboundTransfer(
    address l1Token,
    address to,
    uint256 amount,
    bytes calldata data
  ) external returns (bytes memory) {
    return outboundTransfer(l1Token, to, amount, 0, 0, data);
  }

  function outboundTransfer(
    address l1Token,
    address to,
    uint256 amount,
    uint256, // maxGas
    uint256, // gasPriceBid
    bytes calldata data
  ) public override returns (bytes memory res) {
    require(isOpen == 1, "L2DaiGateway/closed");
    require(l1Token == l1Dai, "L2DaiGateway/token-not-dai");

    (address from, bytes memory extraData) = parseOutboundData(data);
    require(extraData.length == 0, "L2DaiGateway/call-hook-data-not-allowed");

    Mintable(l2Dai).burn(from, amount);

    uint256 id = sendTxToL1(
      from,
      l1Counterpart,
      getOutboundCalldata(l1Token, from, to, amount, extraData)
    );

    // we don't need to track exitNums (b/c we have no fast exits) so we always use 0
    emit WithdrawalInitiated(l1Token, from, to, id, 0, amount);

    return abi.encode(id);
  }

  function getOutboundCalldata(
    address token,
    address from,
    address to,
    uint256 amount,
    bytes memory data
  ) public pure returns (bytes memory outboundCalldata) {
    outboundCalldata = abi.encodeWithSelector(
      L1ITokenGateway.finalizeInboundTransfer.selector,
      token,
      from,
      to,
      amount,
      abi.encode(0, data) // we don't need to track exitNums (b/c we have no fast exits) so we always use 0
    );

    return outboundCalldata;
  }

  function finalizeInboundTransfer(
    address l1Token,
    address from,
    address to,
    uint256 amount,
    bytes calldata // data -- unsused
  ) external override onlyL1Counterpart(l1Counterpart) {
    require(l1Token == l1Dai, "L2DaiGateway/token-not-dai");

    Mintable(l2Dai).mint(to, amount);

    emit DepositFinalized(l1Token, from, to, amount);
  }

  function calculateL2TokenAddress(address l1Token) external view override returns (address) {
    if (l1Token != l1Dai) {
      return address(0);
    }

    return l2Dai;
  }

  function parseOutboundData(bytes memory data)
    internal
    view
    returns (address from, bytes memory extraData)
  {
    if (msg.sender == l2Router) {
      (from, extraData) = abi.decode(data, (address, bytes));
    } else {
      from = msg.sender;
      extraData = data;
    }
  }

  function counterpartGateway() external view override returns (address) {
    return l1Counterpart;
  }
}

File 2 of 5: ArbSys.sol
pragma solidity >=0.4.21 <0.7.0;

/**
 * @title Precompiled contract that exists in every Arbitrum chain at address(100), 0x0000000000000000000000000000000000000064. Exposes a variety of system-level functionality.
 */
interface ArbSys {
  /**
   * @notice Get internal version number identifying an ArbOS build
   * @return version number as int
   */
  function arbOSVersion() external pure returns (uint256);

  function arbChainID() external view returns (uint256);

  /**
   * @notice Get Arbitrum block number (distinct from L1 block number; Arbitrum genesis block has block number 0)
   * @return block number as int
   */
  function arbBlockNumber() external view returns (uint256);

  /**
   * @notice Send given amount of Eth to dest from sender.
   * This is a convenience function, which is equivalent to calling sendTxToL1 with empty calldataForL1.
   * @param destination recipient address on L1
   * @return unique identifier for this L2-to-L1 transaction.
   */
  function withdrawEth(address destination) external payable returns (uint256);

  /**
   * @notice Send a transaction to L1
   * @param destination recipient address on L1
   * @param calldataForL1 (optional) calldata for L1 contract call
   * @return a unique identifier for this L2-to-L1 transaction.
   */
  function sendTxToL1(address destination, bytes calldata calldataForL1)
    external
    payable
    returns (uint256);

  /**
   * @notice get the number of transactions issued by the given external account or the account sequence number of the given contract
   * @param account target account
   * @return the number of transactions issued by the given external account or the account sequence number of the given contract
   */
  function getTransactionCount(address account) external view returns (uint256);

  /**
   * @notice get the value of target L2 storage slot
   * This function is only callable from address 0 to prevent contracts from being able to call it
   * @param account target account
   * @param index target index of storage slot
   * @return stotage value for the given account at the given index
   */
  function getStorageAt(address account, uint256 index) external view returns (uint256);

  /**
   * @notice check if current call is coming from l1
   * @return true if the caller of this was called directly from L1
   */
  function isTopLevelCall() external view returns (bool);

  event EthWithdrawal(address indexed destAddr, uint256 amount);

  event L2ToL1Transaction(
    address caller,
    address indexed destination,
    uint256 indexed uniqueId,
    uint256 indexed batchNumber,
    uint256 indexInBatch,
    uint256 arbBlockNum,
    uint256 ethBlockNum,
    uint256 timestamp,
    uint256 callvalue,
    bytes data
  );
}

File 3 of 5: L1ITokenGateway.sol
// SPDX-License-Identifier: AGPL-3.0-or-later
// Copyright (C) 2021 Dai Foundation
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program.  If not, see <https://www.gnu.org/licenses/>.

pragma solidity ^0.6.11;

// differences between L1 and L2 version of this interface:
// - payable modifier on outboundTransfer
// - events
interface L1ITokenGateway {
  event DepositInitiated(
    address l1Token,
    address indexed from,
    address indexed to,
    uint256 indexed sequenceNumber,
    uint256 amount
  );

  event WithdrawalFinalized(
    address l1Token,
    address indexed from,
    address indexed to,
    uint256 indexed exitNum,
    uint256 amount
  );

  function outboundTransfer(
    address token,
    address to,
    uint256 amount,
    uint256 maxGas,
    uint256 gasPriceBid,
    bytes calldata data
  ) external payable returns (bytes memory);

  function finalizeInboundTransfer(
    address token,
    address from,
    address to,
    uint256 amount,
    bytes calldata data
  ) external;

  // if token is not supported this should return 0x0 address
  function calculateL2TokenAddress(address l1Token) external view returns (address);

  // used by router
  function counterpartGateway() external view returns (address);
}

File 4 of 5: L2CrossDomainEnabled.sol
// SPDX-License-Identifier: AGPL-3.0-or-later
// Copyright (C) 2021 Dai Foundation
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program.  If not, see <https://www.gnu.org/licenses/>.

pragma solidity ^0.6.11;

import "./ArbSys.sol";

abstract contract L2CrossDomainEnabled {
  event TxToL1(address indexed from, address indexed to, uint256 indexed id, bytes data);

  function sendTxToL1(
    address user,
    address to,
    bytes memory data
  ) internal returns (uint256) {
    // note: this method doesn't support sending ether to L1 together with a call
    uint256 id = ArbSys(address(100)).sendTxToL1(to, data);

    emit TxToL1(user, to, id, data);

    return id;
  }

  modifier onlyL1Counterpart(address l1Counterpart) {
    require(msg.sender == applyL1ToL2Alias(l1Counterpart), "ONLY_COUNTERPART_GATEWAY");
    _;
  }

  uint160 constant offset = uint160(0x1111000000000000000000000000000000001111);

  // l1 addresses are transformed durng l1->l2 calls
  function applyL1ToL2Alias(address l1Address) internal pure returns (address l2Address) {
    l2Address = address(uint160(l1Address) + offset);
  }
}

File 5 of 5: L2ITokenGateway.sol
// SPDX-License-Identifier: AGPL-3.0-or-later
// Copyright (C) 2021 Dai Foundation
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program.  If not, see <https://www.gnu.org/licenses/>.

pragma solidity ^0.6.11;

interface L2ITokenGateway {
  event DepositFinalized(
    address indexed l1Token,
    address indexed from,
    address indexed to,
    uint256 amount
  );

  event WithdrawalInitiated(
    address l1Token,
    address indexed from,
    address indexed to,
    uint256 indexed l2ToL1Id,
    uint256 exitNum,
    uint256 amount
  );

  function outboundTransfer(
    address token,
    address to,
    uint256 amount,
    uint256 maxGas,
    uint256 gasPriceBid,
    bytes calldata data
  ) external returns (bytes memory);

  function finalizeInboundTransfer(
    address token,
    address from,
    address to,
    uint256 amount,
    bytes calldata data
  ) external;

  // if token is not supported this should return 0x0 address
  function calculateL2TokenAddress(address l1Token) external view returns (address);

  // used by router
  function counterpartGateway() external view returns (address);
}

Contract ABI

[{"inputs":[{"internalType":"address","name":"_l1Counterpart","type":"address"},{"internalType":"address","name":"_l2Router","type":"address"},{"internalType":"address","name":"_l1Dai","type":"address"},{"internalType":"address","name":"_l2Dai","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[],"name":"Closed","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"usr","type":"address"}],"name":"Deny","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"l1Token","type":"address"},{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"DepositFinalized","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"usr","type":"address"}],"name":"Rely","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"},{"indexed":false,"internalType":"bytes","name":"data","type":"bytes"}],"name":"TxToL1","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"l1Token","type":"address"},{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":true,"internalType":"uint256","name":"l2ToL1Id","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"exitNum","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"WithdrawalInitiated","type":"event"},{"inputs":[{"internalType":"address","name":"l1Token","type":"address"}],"name":"calculateL2TokenAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"close","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"counterpartGateway","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"usr","type":"address"}],"name":"deny","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"l1Token","type":"address"},{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"bytes","name":"","type":"bytes"}],"name":"finalizeInboundTransfer","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"bytes","name":"data","type":"bytes"}],"name":"getOutboundCalldata","outputs":[{"internalType":"bytes","name":"outboundCalldata","type":"bytes"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"isOpen","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"l1Counterpart","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"l1Dai","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"l2Dai","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"l2Router","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"l1Token","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"bytes","name":"data","type":"bytes"}],"name":"outboundTransfer","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"l1Token","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"bytes","name":"data","type":"bytes"}],"name":"outboundTransfer","outputs":[{"internalType":"bytes","name":"res","type":"bytes"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"usr","type":"address"}],"name":"rely","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"wards","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"}]

6101006040526001805534801561001557600080fd5b50604051611c98380380611c988339818101604052608081101561003857600080fd5b810190808051906020019092919080519060200190929190805190602001909291908051906020019092919050505060016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503373ffffffffffffffffffffffffffffffffffffffff167fdd0e34038ac38b2a1ce960229778ac48a8719bc900b6c4f8d0475c6e8b385a6060405160405180910390a28173ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff1660601b815250508073ffffffffffffffffffffffffffffffffffffffff1660a08173ffffffffffffffffffffffffffffffffffffffff1660601b815250508373ffffffffffffffffffffffffffffffffffffffff1660c08173ffffffffffffffffffffffffffffffffffffffff1660601b815250508273ffffffffffffffffffffffffffffffffffffffff1660e08173ffffffffffffffffffffffffffffffffffffffff1660601b815250505050505060805160601c60a05160601c60c05160601c60e05160601c611a5761024160003980610d1252806116af525080610909528061092f52806112b15280611583525080610aba5280610bfe528061127052806114be5250806109f95280610d365280611214528061134e5250611a576000f3fe608060405234801561001057600080fd5b50600436106100f55760003560e01c806365fae35e11610097578063a7e28d4811610066578063a7e28d481461068f578063bf353dbb14610713578063c4c0087c1461076b578063d2ce7d65146107b5576100f5565b806365fae35e1461032d5780637b3a3c8b146103715780639c52a7f1146104ad578063a0c76a96146104f1576100f5565b806343d726d6116100d357806343d726d61461027157806347535d7b1461027b5780634adc698a1461029957806359784bb7146102e3576100f5565b80632db09c1c146100fa5780632e567b3614610144578063422e67f414610227575b600080fd5b610102610905565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610225600480360360a081101561015a57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001906401000000008111156101e157600080fd5b8201836020820111156101f357600080fd5b8035906020019184600183028401116401000000008311171561021557600080fd5b909192939192939050505061092d565b005b61022f610bfc565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610279610c20565b005b610283610d0a565b6040518082815260200191505060405180910390f35b6102a1610d10565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6102eb610d34565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b61036f6004803603602081101561034357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610d58565b005b6104326004803603608081101561038757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001906401000000008111156103ee57600080fd5b82018360208201111561040057600080fd5b8035906020019184600183028401116401000000008311171561042257600080fd5b9091929391929390505050610e96565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610472578082015181840152602081019050610457565b50505050905090810190601f16801561049f5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6104ef600480360360208110156104c357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610eb3565b005b610614600480360360a081101561050757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291908035906020019064010000000081111561058e57600080fd5b8201836020820111156105a057600080fd5b803590602001918460018302840111640100000000831117156105c257600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290505050610ff1565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610654578082015181840152602081019050610639565b50505050905090810190601f1680156106815780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6106d1600480360360208110156106a557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611210565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6107556004803603602081101561072957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611297565b6040518082815260200191505060405180910390f35b6107736112af565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b61088a600480360360c08110156107cb57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919080359060200190929190803590602001909291908035906020019064010000000081111561084657600080fd5b82018360208201111561085857600080fd5b8035906020019184600183028401116401000000008311171561087a57600080fd5b90919293919293905050506112d3565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156108ca5780820151818401526020810190506108af565b50505050905090810190601f1680156108f75780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b60007f0000000000000000000000000000000000000000000000000000000000000000905090565b7f000000000000000000000000000000000000000000000000000000000000000061095781611689565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146109f7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260188152602001807f4f4e4c595f434f554e544552504152545f47415445574159000000000000000081525060200191505060405180910390fd5b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff1614610ab8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f4c32446169476174657761792f746f6b656e2d6e6f742d64616900000000000081525060200191505060405180910390fd5b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166340c10f1986866040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050600060405180830381600087803b158015610b5f57600080fd5b505af1158015610b73573d6000803e3d6000fd5b505050508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff167fc7f2e9c55c40a50fbc217dfc70cd39a222940dfa62145aa0ca49eb9535d4fcb2876040518082815260200191505060405180910390a450505050505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414610cd4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f4c32446169476174657761792f6e6f742d617574686f72697a6564000000000081525060200191505060405180910390fd5b60006001819055507f1cdde67b72a90f19919ac732a437ac2f7a10fc128d28c2a6e525d89ce5cd9d3a60405160405180910390a1565b60015481565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414610e0c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f4c32446169476174657761792f6e6f742d617574686f72697a6564000000000081525060200191505060405180910390fd5b60016000808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508073ffffffffffffffffffffffffffffffffffffffff167fdd0e34038ac38b2a1ce960229778ac48a8719bc900b6c4f8d0475c6e8b385a6060405160405180910390a250565b6060610ea886868660008088886112d3565b905095945050505050565b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414610f67576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f4c32446169476174657761792f6e6f742d617574686f72697a6564000000000081525060200191505060405180910390fd5b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508073ffffffffffffffffffffffffffffffffffffffff167f184450df2e323acec0ed3b5c7531b81f9b4cdef7914dfd4c0a4317416bb5251b60405160405180910390a250565b6060632e567b3660e01b86868686600087604051602001808360ff16815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561104e578082015181840152602081019050611033565b50505050905090810190601f16801561107b5780820380516001836020036101000a031916815260200191505b509350505050604051602081830303815290604052604051602401808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561116f578082015181840152602081019050611154565b50505050905090810190601f16801561119c5780820380516001836020036101000a031916815260200191505b509650505050505050604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff8381831617835250505050905080905095945050505050565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161461126e5760009050611292565b7f000000000000000000000000000000000000000000000000000000000000000090505b919050565b60006020528060005260406000206000915090505481565b7f000000000000000000000000000000000000000000000000000000000000000081565b6060600180541461134c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260138152602001807f4c32446169476174657761792f636c6f7365640000000000000000000000000081525060200191505060405180910390fd5b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff161461140d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f4c32446169476174657761792f746f6b656e2d6e6f742d64616900000000000081525060200191505060405180910390fd5b6000606061145e85858080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050506116a9565b9150915060008151146114bc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260278152602001806119fb6027913960400191505060405180910390fd5b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16639dc29fac838a6040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050600060405180830381600087803b15801561156357600080fd5b505af1158015611577573d6000803e3d6000fd5b5050505060006115b4837f00000000000000000000000000000000000000000000000000000000000000006115af8e878f8f89610ff1565b6117f7565b9050808a73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167f3073a74ecb728d10be779fe19a74a1428e20468f5b4d167bf9c73d9067847d738e60008e604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001838152602001828152602001935050505060405180910390a480604051602001808281526020019150506040516020818303038152906040529350505050979650505050505050565b600073111100000000000000000000000000000000111182019050919050565b600060607f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614156117eb5782806020019051604081101561171657600080fd5b81019080805190602001909291908051604051939291908464010000000082111561174057600080fd5b8382019150602082018581111561175657600080fd5b825186600182028301116401000000008211171561177357600080fd5b8083526020830192505050908051906020019080838360005b838110156117a757808201518184015260208101905061178c565b50505050905090810190601f1680156117d45780820380516001836020036101000a031916815260200191505b5060405250505081915080925081935050506117f2565b3391508290505b915091565b600080606473ffffffffffffffffffffffffffffffffffffffff1663928c169a85856040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561189a57808201518184015260208101905061187f565b50505050905090810190601f1680156118c75780820380516001836020036101000a031916815260200191505b509350505050602060405180830381600087803b1580156118e757600080fd5b505af11580156118fb573d6000803e3d6000fd5b505050506040513d602081101561191157600080fd5b81019080805190602001909291905050509050808473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167f2b986d32a0536b7e19baa48ab949fec7b903b7fad7730820b20632d100cc3a68866040518080602001828103825283818151815260200191508051906020019080838360005b838110156119b557808201518184015260208101905061199a565b50505050905090810190601f1680156119e25780820380516001836020036101000a031916815260200191505b509250505060405180910390a480915050939250505056fe4c32446169476174657761792f63616c6c2d686f6f6b2d646174612d6e6f742d616c6c6f776564a264697066735822122088254818854bb984380ae73fd497e3c1a73dbedb1dfbabb3eca5fe8a82026ba064736f6c634300060b003300000000000000000000000010e6593cdda8c58a1d0f14c5164b376352a55f2f0000000000000000000000009413ad42910c1ea60c737db5f58d1c504498a3cd000000000000000000000000d9e66a2f546880ea4d800f189d6f12cc15bff281000000000000000000000000da10009cbd5d07dd0cecc66161fc93d7c9000da1

Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)

00000000000000000000000010e6593cdda8c58a1d0f14c5164b376352a55f2f0000000000000000000000009413ad42910c1ea60c737db5f58d1c504498a3cd000000000000000000000000d9e66a2f546880ea4d800f189d6f12cc15bff281000000000000000000000000da10009cbd5d07dd0cecc66161fc93d7c9000da1

-----Decoded View---------------
Arg [0] : _l1Counterpart (address): 0x10e6593cdda8c58a1d0f14c5164b376352a55f2f
Arg [1] : _l2Router (address): 0x9413ad42910c1ea60c737db5f58d1c504498a3cd
Arg [2] : _l1Dai (address): 0xd9e66a2f546880ea4d800f189d6f12cc15bff281
Arg [3] : _l2Dai (address): 0xda10009cbd5d07dd0cecc66161fc93d7c9000da1

-----Encoded View---------------
4 Constructor Arguments found :
Arg [0] : 00000000000000000000000010e6593cdda8c58a1d0f14c5164b376352a55f2f
Arg [1] : 0000000000000000000000009413ad42910c1ea60c737db5f58d1c504498a3cd
Arg [2] : 000000000000000000000000d9e66a2f546880ea4d800f189d6f12cc15bff281
Arg [3] : 000000000000000000000000da10009cbd5d07dd0cecc66161fc93d7c9000da1


Deployed ByteCode Sourcemap

1009:3506:3:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4411:102;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;3573:362;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;1524:30;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;1966:72;;;:::i;:::-;;1637:25;;;:::i;:::-;;;;;;;;;;;;;;;;;;;1600:33;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;1490:30;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;1139:86;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;2042:211;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1229:86;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;3086:483;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3939:174;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;1094:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;1558:38;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;2257:825;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4411:102;4473:7;4495:13;4488:20;;4411:102;:::o;3573:362::-;3760:13;1327:31:2;1344:13;1327:16;:31::i;:::-;1313:45;;:10;:45;;;1305:82;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3800:5:3::1;3789:16;;:7;:16;;;3781:55;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;3852:5;3843:20;;;3864:2;3868:6;3843:32;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;3919:2;3887:43;;3913:4;3887:43;;3904:7;3887:43;;;3923:6;3887:43;;;;;;;;;;;;;;;;;;3573:362:::0;;;;;;;:::o;1524:30::-;;;:::o;1966:72::-;1370:1;1349:5;:17;1355:10;1349:17;;;;;;;;;;;;;;;;:22;1341:62;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2012:1:::1;2003:6;:10;;;;2025:8;;;;;;;;;;1966:72::o:0;1637:25::-;;;;:::o;1600:33::-;;;:::o;1490:30::-;;;:::o;1139:86::-;1370:1;1349:5;:17;1355:10;1349:17;;;;;;;;;;;;;;;;:22;1341:62;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1199:1:::1;1186:5;:10:::0;1192:3:::1;1186:10;;;;;;;;;;;;;;;:14;;;;1216:3;1211:9;;;;;;;;;;;;1139:86:::0;:::o;2042:211::-;2172:12;2199:49;2216:7;2225:2;2229:6;2237:1;2240;2243:4;;2199:16;:49::i;:::-;2192:56;;2042:211;;;;;;;:::o;1229:86::-;1370:1;1349:5;:17;1355:10;1349:17;;;;;;;;;;;;;;;;:22;1341:62;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1289:1:::1;1276:5:::0;:10:::1;1282:3;1276:10;;;;;;;;;;;;;;;:14;;;;1306:3;1301:9;;;;;;;;;;;;1229:86:::0;:::o;3086:483::-;3236:29;3322:48;;;3378:5;3391:4;3403:2;3413:6;3438:1;3441:4;3427:19;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3292:242;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3273:261;;3548:16;3541:23;;3086:483;;;;;;;:::o;3939:174::-;4021:7;4051:5;4040:16;;:7;:16;;;4036:54;;4081:1;4066:17;;;;4036:54;4103:5;4096:12;;3939:174;;;;:::o;1094:40::-;;;;;;;;;;;;;;;;;:::o;1558:38::-;;;:::o;2257:825::-;2445:16;2487:1;2477:6;;:11;2469:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2537:5;2526:16;;:7;:16;;;2518:55;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2581:12;2595:22;2621:23;2639:4;;2621:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:17;:23::i;:::-;2580:64;;;;2678:1;2658:9;:16;:21;2650:73;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2739:5;2730:20;;;2751:4;2757:6;2730:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2771:10;2784:114;2802:4;2814:13;2835:57;2855:7;2864:4;2870:2;2874:6;2882:9;2835:19;:57::i;:::-;2784:10;:114::i;:::-;2771:127;;3035:2;3031;2996:53;;3025:4;2996:53;;;3016:7;3039:1;3042:6;2996:53;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3074:2;3063:14;;;;;;;;;;;;;;;;;;;;;;;;;3056:21;;;;;2257:825;;;;;;;;;:::o;1538:146:2:-;1606:17;1437:42;1659:9;1651:27;1631:48;;1538:146;;;:::o;4117:290:3:-;4198:12;4212:22;4262:8;4248:22;;:10;:22;;;4244:159;;;4311:4;4300:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4280:54;;;;;;;;;;;4244:159;;;4362:10;4355:17;;4392:4;4380:16;;4244:159;4117:290;;;:::o;936:309:2:-;1035:7;1132:10;1160:3;1145:31;;;1177:2;1181:4;1145:41;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1132:54;;1215:2;1211;1198:26;;1205:4;1198:26;;;1219:4;1198:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1238:2;1231:9;;;936:309;;;;;:::o

Metadata Hash

88254818854bb984380ae73fd497e3c1a73dbedb1dfbabb3eca5fe8a82026ba0
Block Transaction Gas Used Reward
Age Block Fee Address BC Fee Address Voting Power Jailed Incoming
Block Uncle Number Difficulty Gas Used Reward
Loading