ETH Price: $3,992.86 (-0.00%)
Gas: 0.14 GWei

Contract

0xC626845BF4E6a5802Ef774dA0B3DfC6707F015F7

Overview

ETH Balance

Scroll LogoScroll LogoScroll Logo0.31918000001 ETH

ETH Value

$1,274.44 (@ $3,992.86/ETH)
Transaction Hash
Method
Block
From
To
0x6340de0051fdd24d5c95ed1657ea623c129b8bba4d6807906f805204cd5dcc28 -(pending)2024-12-02 14:31:505 days ago1733149910IN
0xC626845B...707F015F7
0.00105 ETH(Pending)(Pending)
0x552b23d78edc9c100c0e355c2f1947fa394761da90c1c63173e9942ca5932565 -(pending)2024-12-02 14:31:505 days ago1733149910IN
0xC626845B...707F015F7
0.00105 ETH(Pending)(Pending)
0x9500c641422e072267a47c8de9e034860eea4abf2a9dce859efac25741076295 -(pending)2024-12-02 14:31:505 days ago1733149910IN
0xC626845B...707F015F7
0.00105 ETH(Pending)(Pending)
0xdf63bdba12d8c5e2efa677c84dc62f8e23307c961925e7d2704c969fdba4d68e -(pending)2024-12-02 13:41:165 days ago1733146876IN
0xC626845B...707F015F7
0.00565 ETH(Pending)(Pending)
0xce192f6dd5c5470d369973ace8354946aa2ff96cc9b4acc68b7cce3b5b2e22f0 -(pending)2024-12-02 13:39:405 days ago1733146780IN
0xC626845B...707F015F7
0.0011 ETH(Pending)(Pending)
0xc9188904977e55c6a27a632f63f9b0e07e5a044e67b64135b7c6243176a7b605 -(pending)2024-10-24 18:07:1644 days ago1729793236IN
0xC626845B...707F015F7
0.0015 ETH(Pending)(Pending)
Deposit116843292024-12-06 4:07:372 days ago1733458057IN
0xC626845B...707F015F7
0.00128 ETH0.000009450.04123392
Deposit116241402024-12-03 23:55:134 days ago1733270113IN
0xC626845B...707F015F7
0.0006 ETH0.000011440.06
Deposit115863622024-12-02 14:35:095 days ago1733150109IN
0xC626845B...707F015F7
0.009986 ETH0.000015210.04307884
Deposit115863592024-12-02 14:35:075 days ago1733150107IN
0xC626845B...707F015F7
0.01038 ETH0.000016070.06507884
Deposit115863562024-12-02 14:35:045 days ago1733150104IN
0xC626845B...707F015F7
0.00075 ETH0.000016360.07438048
Deposit115863542024-12-02 14:35:025 days ago1733150102IN
0xC626845B...707F015F7
0.00075 ETH0.00001530.04488208
Deposit115862712024-12-02 14:31:315 days ago1733149891IN
0xC626845B...707F015F7
0.00165 ETH0.00001450.04968455
Deposit115862682024-12-02 14:31:295 days ago1733149889IN
0xC626845B...707F015F7
0.00095 ETH0.000014320.04491727
Deposit115862672024-12-02 14:31:295 days ago1733149889IN
0xC626845B...707F015F7
0.00135 ETH0.000014560.05095643
Deposit115862672024-12-02 14:31:295 days ago1733149889IN
0xC626845B...707F015F7
0.00108 ETH0.000015150.06653278
Deposit115862672024-12-02 14:31:295 days ago1733149889IN
0xC626845B...707F015F7
0.00295 ETH0.000014380.04653747
Deposit115862662024-12-02 14:31:275 days ago1733149887IN
0xC626845B...707F015F7
0.00158 ETH0.000014530.05041656
Deposit115862662024-12-02 14:31:275 days ago1733149887IN
0xC626845B...707F015F7
0 ETH0.00001550.05265221
Deposit115813122024-12-02 10:22:175 days ago1733134937IN
0xC626845B...707F015F7
0.00115 ETH0.000007070.04921987
Deposit115812972024-12-02 10:21:535 days ago1733134913IN
0xC626845B...707F015F7
0.00095 ETH0.000007320.05582072
Deposit115812972024-12-02 10:21:535 days ago1733134913IN
0xC626845B...707F015F7
0.00105 ETH0.000006870.04381654
Deposit115066762024-11-29 16:05:458 days ago1732896345IN
0xC626845B...707F015F7
0.00448 ETH0.000011830.05217426
Deposit115050172024-11-29 14:39:358 days ago1732891175IN
0xC626845B...707F015F7
0.00085 ETH0.000008710.04186621
Deposit115050172024-11-29 14:39:358 days ago1732891175IN
0xC626845B...707F015F7
0.02856067 ETH0.000010480.08863966
View all transactions

Latest 25 internal transactions (View All)

Parent Transaction Hash Block From To
116843292024-12-06 4:07:372 days ago1733458057
0xC626845B...707F015F7
0.00128 ETH
116241402024-12-03 23:55:134 days ago1733270113
0xC626845B...707F015F7
0.0006 ETH
115863622024-12-02 14:35:095 days ago1733150109
0xC626845B...707F015F7
0.009986 ETH
115863592024-12-02 14:35:075 days ago1733150107
0xC626845B...707F015F7
0.01038 ETH
115863562024-12-02 14:35:045 days ago1733150104
0xC626845B...707F015F7
0.00075 ETH
115863542024-12-02 14:35:025 days ago1733150102
0xC626845B...707F015F7
0.00075 ETH
115862712024-12-02 14:31:315 days ago1733149891
0xC626845B...707F015F7
0.00165 ETH
115862682024-12-02 14:31:295 days ago1733149889
0xC626845B...707F015F7
0.00095 ETH
115862672024-12-02 14:31:295 days ago1733149889
0xC626845B...707F015F7
0.00135 ETH
115862672024-12-02 14:31:295 days ago1733149889
0xC626845B...707F015F7
0.00108 ETH
115862672024-12-02 14:31:295 days ago1733149889
0xC626845B...707F015F7
0.00295 ETH
115862662024-12-02 14:31:275 days ago1733149887
0xC626845B...707F015F7
0.00158 ETH
115813122024-12-02 10:22:175 days ago1733134937
0xC626845B...707F015F7
0.00115 ETH
115812972024-12-02 10:21:535 days ago1733134913
0xC626845B...707F015F7
0.00095 ETH
115812972024-12-02 10:21:535 days ago1733134913
0xC626845B...707F015F7
0.00105 ETH
115066762024-11-29 16:05:458 days ago1732896345
0xC626845B...707F015F7
0.00448 ETH
115050172024-11-29 14:39:358 days ago1732891175
0xC626845B...707F015F7
0.00085 ETH
115050172024-11-29 14:39:358 days ago1732891175
0xC626845B...707F015F7
0.02856067 ETH
114685602024-11-28 7:08:339 days ago1732777713
0xC626845B...707F015F7
0.00215 ETH
114685202024-11-28 7:06:299 days ago1732777589
0xC626845B...707F015F7
0.00148 ETH
114684892024-11-28 7:04:569 days ago1732777496
0xC626845B...707F015F7
0.03965 ETH
114684162024-11-28 7:01:109 days ago1732777270
0xC626845B...707F015F7
0.0312 ETH
114683702024-11-28 6:58:489 days ago1732777128
0xC626845B...707F015F7
0.00135 ETH
114683672024-11-28 6:58:399 days ago1732777119
0xC626845B...707F015F7
0.00098 ETH
114683272024-11-28 6:56:289 days ago1732776988
0xC626845B...707F015F7
0.00682 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
Depositor

Compiler Version
v0.8.18+commit.87f61d96

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license
/**
 *Submitted for verification at scrollscan.com on 2024-04-19
*/

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.18;

interface IERC20 {
  /**
   * @dev Returns the amount of tokens in existence.
   */
  function totalSupply() external view returns (uint256);

  /**
   * @dev Returns the amount of tokens owned by `account`.
  */
  function balanceOf(address account) external view returns (uint256);

  /**
   * @dev Moves `amount` tokens from the caller's account to `recipient`.
   *
   * Returns a boolean value indicating whether the operation succeeded.
   *
   * Emits a {Transfer} event.
  */
  function transfer(address recipient, uint256 amount) external returns (bool);
  function mint(address account, uint amount) external;
  /**
   * @dev Returns the remaining number of tokens that `spender` will be
   * allowed to spend on behalf of `owner` through {transferFrom}. This is
   * zero by default.
   *
   * This value changes when {approve} or {transferFrom} are called.
  */
  function allowance(address owner, address spender) external view returns (uint256);

  /**
   * @dev Sets `amount` as the allowance of `spender` over the caller's tokens.
   *
   * Returns a boolean value indicating whether the operation succeeded.
   *
   * IMPORTANT: Beware that changing an allowance with this method brings the risk
   * that someone may use both the old and the new allowance by unfortunate
   * transaction ordering. One possible solution to mitigate this race
   * condition is to first reduce the spender's allowance to 0 and set the
   * desired value afterwards:
   * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729
   *
   * Emits an {Approval} event.
  */
  function approve(address spender, uint256 amount) external returns (bool);

  /**
   * @dev Moves `amount` tokens from `sender` to `recipient` using the
   * allowance mechanism. `amount` is then deducted from the caller's
   * allowance.
   *
   * Returns a boolean value indicating whether the operation succeeded.
   *
   * Emits a {Transfer} event.
  */
  function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);

  /**
   * @dev Emitted when `value` tokens are moved from one account (`from`) to
   * another (`to`).
   *
   * Note that `value` may be zero.
  */
  event Transfer(address indexed from, address indexed to, uint256 value);

  /**
   * @dev Emitted when the allowance of a `spender` for an `owner` is set by
   * a call to {approve}. `value` is the new allowance.
  */
  event Approval(address indexed owner, address indexed spender, uint256 value);
}

library Address {
  /**
   * @dev Returns true if `account` is a contract.
   *
   * [IMPORTANT]
   * ====
   * It is unsafe to assume that an address for which this function returns
   * false is an externally-owned account (EOA) and not a contract.
   *
   * Among others, `isContract` will return false for the following 
   * types of addresses:
   *
   *  - an externally-owned account
   *  - a contract in construction
   *  - an address where a contract will be created
   *  - an address where a contract lived, but was destroyed
   * ====
  */
  function isContractt(address account) internal view returns (bool) {
    // This method relies on extcodesize, which returns 0 for contracts in
    // construction, since the code is only stored at the end of the
    // constructor execution.

    uint256 size;
    // solhint-disable-next-line no-inline-assembly
    assembly { size := extcodesize(account) }
    return size > 0;
  }

  /**
   * @dev Replacement for Solidity's `transfer`: sends `amount` wei to
   * `recipient`, forwarding all available gas and reverting on errors.
   *
   * https://eips.ethereum.org/EIPS/eip-1884[EIP1884] increases the gas cost
   * of certain opcodes, possibly making contracts go over the 2300 gas limit
   * imposed by `transfer`, making them unable to receive funds via
   * `transfer`. {sendValue} removes this limitation.
   *
   * https://diligence.consensys.net/posts/2019/09/stop-using-soliditys-transfer-now/[Learn more].
   *
   * IMPORTANT: because control is transferred to `recipient`, care must be
   * taken to not create reentrancy vulnerabilities. Consider using
   * {ReentrancyGuard} or the
   * https://solidity.readthedocs.io/en/v0.5.11/security-considerations.html#use-the-checks-effects-interactions-pattern[checks-effects-interactions pattern].
  *
  * _Available since v2.4.0._
  */
  function sendValue(address payable recipient, uint256 amount) internal {
    require(address(this).balance >= amount, "Address: insufficient balance");

    // solhint-disable-next-line avoid-low-level-calls, avoid-call-value
    (bool success, ) = recipient.call{ value: amount }("");
    require(success, "Address: unable to send value, recipient may have reverted");
  }
}

library SafeMath {
  function add(uint256 a, uint256 b) internal pure returns (uint256) {
    uint256 c = a + b;
    require(c >= a, "SafeMath: addition overflow");

    return c;
  }

  function sub(uint256 a, uint256 b) internal pure returns (uint256) {
    return sub(a, b, "SafeMath: subtraction overflow");
  }

  function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
    require(b <= a, errorMessage);
    uint256 c = a - b;

    return c;
  }
}



library SafeERC20 {
  using Address for address;
  using SafeMath for uint256;

  bytes4 private constant SELECTOR = bytes4(keccak256(bytes('transfer(address,uint256)')));

  function safeTransfer(IERC20 token, address to, uint256 value) internal {
    (bool success, bytes memory data) = address(token).call(abi.encodeWithSelector(SELECTOR, to, value));
    require(success && (data.length == 0 || abi.decode(data, (bool))), 'SafeERC20: TRANSFER_FAILED');
  }
  // function safeTransfer(IERC20 token, address to, uint256 value) internal {
  //     callOptionalReturn(token, abi.encodeWithSelector(token.transfer.selector, to, value));
  // }

  function safeTransferFrom(IERC20 token, address from, address to, uint256 value) internal {
    callOptionalReturn(token, abi.encodeWithSelector(token.transferFrom.selector, from, to, value));
  }

  function safeApprove(IERC20 token, address spender, uint256 value) internal {
    // safeApprove should only be called when setting an initial allowance,
    // or when resetting it to zero. To increase and decrease it, use
    // 'safeIncreaseAllowance' and 'safeDecreaseAllowance'
    // solhint-disable-next-line max-line-length
    require((value == 0) || (token.allowance(address(this), spender) == 0),
            "SafeERC20: approve from non-zero to non-zero allowance"
           );
           callOptionalReturn(token, abi.encodeWithSelector(token.approve.selector, spender, value));
  }

  function safeIncreaseAllowance(IERC20 token, address spender, uint256 value) internal {
    uint256 newAllowance = token.allowance(address(this), spender).add(value);
    callOptionalReturn(token, abi.encodeWithSelector(token.approve.selector, spender, newAllowance));
  }

  function safeDecreaseAllowance(IERC20 token, address spender, uint256 value) internal {
    uint256 newAllowance = token.allowance(address(this), spender).sub(value, "SafeERC20: decreased allowance below zero");
    callOptionalReturn(token, abi.encodeWithSelector(token.approve.selector, spender, newAllowance));
  }

  /**
   * @dev Imitates a Solidity high-level call (i.e. a regular function call to a contract), relaxing the requirement
   * on the return value: the return value is optional (but if data is returned, it must not be false).
  * @param token The token targeted by the call.
  * @param data The call data (encoded using abi.encode or one of its variants).
  */
  function callOptionalReturn(IERC20 token, bytes memory data) private {
    // We need to perform a low level call here, to bypass Solidity's return data size checking mechanism, since
    // we're implementing it ourselves.

    // A Solidity high level call has three parts:
    //  1. The target address is checked to verify it contains contract code
    //  2. The call itself is made, and success asserted
    //  3. The return value is decoded, which in turn checks the size of the returned data.
    // solhint-disable-next-line max-line-length
    require(address(token).isContractt(), "SafeERC20: call to non-contract");

    // solhint-disable-next-line avoid-low-level-calls
    (bool success, bytes memory returndata) = address(token).call(data);
    require(success, "SafeERC20: low-level call failed");

    if (returndata.length > 0) { // Return data is optional
      // solhint-disable-next-line max-line-length
      require(abi.decode(returndata, (bool)), "SafeERC20: ERC20 operation did not succeed");
    }
  }
}



contract Depositor {
      using SafeERC20 for IERC20;

      error NotOwnerError();
      error LengthError();
      error ZeroAddressError();
      error AmountError();
      error TargetError();
      error CallError();

      event Deposit(
        address indexed user,
        address indexed token,
        address indexed maker,
        string target,
        uint amount,
        uint destination,
        uint channel,
        uint timestamp
      );

      constructor() {
      }

      receive() external payable {
      }

      function isOwltoDepositor() public pure returns (bool) {
        return true;
      }

      function deposit(
        string memory target,
        address token,
        address maker,
        uint amount,
        uint destination,
        uint channel
      ) external payable {
        if (bytes(target).length == 0) {
          revert TargetError();
        }
        if (token == address(0)) {
          if (msg.value != amount) {
            revert AmountError();
          }
          (bool ok,) = maker.call{value: amount}("");
          if (!ok) {
            revert CallError();
          }
        } else {
          IERC20(token).safeTransferFrom(msg.sender, maker, amount);
        }

        emit Deposit(msg.sender, token, maker, target, amount, destination, channel, block.timestamp);
      }

}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"AmountError","type":"error"},{"inputs":[],"name":"CallError","type":"error"},{"inputs":[],"name":"LengthError","type":"error"},{"inputs":[],"name":"NotOwnerError","type":"error"},{"inputs":[],"name":"TargetError","type":"error"},{"inputs":[],"name":"ZeroAddressError","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":true,"internalType":"address","name":"token","type":"address"},{"indexed":true,"internalType":"address","name":"maker","type":"address"},{"indexed":false,"internalType":"string","name":"target","type":"string"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"destination","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"channel","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"Deposit","type":"event"},{"inputs":[{"internalType":"string","name":"target","type":"string"},{"internalType":"address","name":"token","type":"address"},{"internalType":"address","name":"maker","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"destination","type":"uint256"},{"internalType":"uint256","name":"channel","type":"uint256"}],"name":"deposit","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"isOwltoDepositor","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"pure","type":"function"},{"stateMutability":"payable","type":"receive"}]

608060405234801561001057600080fd5b506105a6806100206000396000f3fe60806040526004361061002d5760003560e01c8063c09bcfbb14610039578063fc1806381461005a57600080fd5b3661003457005b600080fd5b34801561004557600080fd5b50604080516001815290519081900360200190f35b61006d6100683660046103ca565b61006f565b005b85516000036100915760405163235381a360e11b815260040160405180910390fd5b6001600160a01b038516610139578234146100bf57604051634ff64a9f60e01b815260040160405180910390fd5b6000846001600160a01b03168460405160006040518083038185875af1925050503d806000811461010c576040519150601f19603f3d011682016040523d82523d6000602084013e610111565b606091505b505090508061013357604051630d93a8fd60e31b815260040160405180910390fd5b5061014e565b61014e6001600160a01b0386163386866101b3565b836001600160a01b0316856001600160a01b0316336001600160a01b03167f5a62eae4bbcf3c383f506c8fbc0ffb6b54738018ddd42a887d202d95e5f0124789878787426040516101a39594939291906104dc565b60405180910390a4505050505050565b604080516001600160a01b0385811660248301528416604482015260648082018490528251808303909101815260849091019091526020810180516001600160e01b03166323b872dd60e01b17905261020d908590610213565b50505050565b6001600160a01b0382163b61026f5760405162461bcd60e51b815260206004820152601f60248201527f5361666545524332303a2063616c6c20746f206e6f6e2d636f6e74726163740060448201526064015b60405180910390fd5b600080836001600160a01b03168360405161028a919061052b565b6000604051808303816000865af19150503d80600081146102c7576040519150601f19603f3d011682016040523d82523d6000602084013e6102cc565b606091505b50915091508161031e5760405162461bcd60e51b815260206004820181905260248201527f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c65646044820152606401610266565b80511561020d57808060200190518101906103399190610547565b61020d5760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401610266565b634e487b7160e01b600052604160045260246000fd5b80356001600160a01b03811681146103c557600080fd5b919050565b60008060008060008060c087890312156103e357600080fd5b863567ffffffffffffffff808211156103fb57600080fd5b818901915089601f83011261040f57600080fd5b81358181111561042157610421610398565b604051601f8201601f19908116603f0116810190838211818310171561044957610449610398565b816040528281528c602084870101111561046257600080fd5b82602086016020830137600060208483010152809a505050505050610489602088016103ae565b9450610497604088016103ae565b9350606087013592506080870135915060a087013590509295509295509295565b60005b838110156104d35781810151838201526020016104bb565b50506000910152565b60a08152600086518060a08401526104fb8160c0850160208b016104b8565b60208301969096525060408101939093526060830191909152608082015260c0601f909201601f19160101919050565b6000825161053d8184602087016104b8565b9190910192915050565b60006020828403121561055957600080fd5b8151801515811461056957600080fd5b939250505056fea2646970667358221220cf51ff794ae9f98bf3da506dc3aa6e00705e4a93d6a60b2203b635da8b014cfe64736f6c63430008120033

Deployed Bytecode

0x60806040526004361061002d5760003560e01c8063c09bcfbb14610039578063fc1806381461005a57600080fd5b3661003457005b600080fd5b34801561004557600080fd5b50604080516001815290519081900360200190f35b61006d6100683660046103ca565b61006f565b005b85516000036100915760405163235381a360e11b815260040160405180910390fd5b6001600160a01b038516610139578234146100bf57604051634ff64a9f60e01b815260040160405180910390fd5b6000846001600160a01b03168460405160006040518083038185875af1925050503d806000811461010c576040519150601f19603f3d011682016040523d82523d6000602084013e610111565b606091505b505090508061013357604051630d93a8fd60e31b815260040160405180910390fd5b5061014e565b61014e6001600160a01b0386163386866101b3565b836001600160a01b0316856001600160a01b0316336001600160a01b03167f5a62eae4bbcf3c383f506c8fbc0ffb6b54738018ddd42a887d202d95e5f0124789878787426040516101a39594939291906104dc565b60405180910390a4505050505050565b604080516001600160a01b0385811660248301528416604482015260648082018490528251808303909101815260849091019091526020810180516001600160e01b03166323b872dd60e01b17905261020d908590610213565b50505050565b6001600160a01b0382163b61026f5760405162461bcd60e51b815260206004820152601f60248201527f5361666545524332303a2063616c6c20746f206e6f6e2d636f6e74726163740060448201526064015b60405180910390fd5b600080836001600160a01b03168360405161028a919061052b565b6000604051808303816000865af19150503d80600081146102c7576040519150601f19603f3d011682016040523d82523d6000602084013e6102cc565b606091505b50915091508161031e5760405162461bcd60e51b815260206004820181905260248201527f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c65646044820152606401610266565b80511561020d57808060200190518101906103399190610547565b61020d5760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401610266565b634e487b7160e01b600052604160045260246000fd5b80356001600160a01b03811681146103c557600080fd5b919050565b60008060008060008060c087890312156103e357600080fd5b863567ffffffffffffffff808211156103fb57600080fd5b818901915089601f83011261040f57600080fd5b81358181111561042157610421610398565b604051601f8201601f19908116603f0116810190838211818310171561044957610449610398565b816040528281528c602084870101111561046257600080fd5b82602086016020830137600060208483010152809a505050505050610489602088016103ae565b9450610497604088016103ae565b9350606087013592506080870135915060a087013590509295509295509295565b60005b838110156104d35781810151838201526020016104bb565b50506000910152565b60a08152600086518060a08401526104fb8160c0850160208b016104b8565b60208301969096525060408101939093526060830191909152608082015260c0601f909201601f19160101919050565b6000825161053d8184602087016104b8565b9190910192915050565b60006020828403121561055957600080fd5b8151801515811461056957600080fd5b939250505056fea2646970667358221220cf51ff794ae9f98bf3da506dc3aa6e00705e4a93d6a60b2203b635da8b014cfe64736f6c63430008120033

Deployed Bytecode Sourcemap

8945:1412:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9515:87;;;;;;;;;;-1:-1:-1;9515:87:0;;;9588:4;154:41:1;;9515:87:0;;;;;;142:2:1;9515:87:0;;;9612:740;;;;;;:::i;:::-;;:::i;:::-;;;9827:6;9821:20;9845:1;9821:25;9817:76;;9868:13;;-1:-1:-1;;;9868:13:0;;;;;;;;;;;9817:76;-1:-1:-1;;;;;9907:19:0;;9903:334;;9958:6;9945:9;:19;9941:74;;9988:13;;-1:-1:-1;;;9988:13:0;;;;;;;;;;;9941:74;10028:7;10040:5;-1:-1:-1;;;;;10040:10:0;10058:6;10040:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10027:42;;;10087:2;10082:56;;10113:11;;-1:-1:-1;;;10113:11:0;;;;;;;;;;;10082:56;9928:221;9903:334;;;10168:57;-1:-1:-1;;;;;10168:30:0;;10199:10;10211:5;10218:6;10168:30;:57::i;:::-;10281:5;-1:-1:-1;;;;;10254:88:0;10274:5;-1:-1:-1;;;;;10254:88:0;10262:10;-1:-1:-1;;;;;10254:88:0;;10288:6;10296;10304:11;10317:7;10326:15;10254:88;;;;;;;;;;:::i;:::-;;;;;;;;9612:740;;;;;;:::o;6095:198::-;6218:68;;;-1:-1:-1;;;;;3225:15:1;;;6218:68:0;;;3207:34:1;3277:15;;3257:18;;;3250:43;3309:18;;;;3302:34;;;6218:68:0;;;;;;;;;;3142:18:1;;;;6218:68:0;;;;;;;;-1:-1:-1;;;;;6218:68:0;-1:-1:-1;;;6218:68:0;;;6192:95;;6211:5;;6192:18;:95::i;:::-;6095:198;;;;:::o;7885:1049::-;-1:-1:-1;;;;;8457:26:0;;3544:20;8449:72;;;;-1:-1:-1;;;8449:72:0;;3549:2:1;8449:72:0;;;3531:21:1;3588:2;3568:18;;;3561:30;3627:33;3607:18;;;3600:61;3678:18;;8449:72:0;;;;;;;;;8587:12;8601:23;8636:5;-1:-1:-1;;;;;8628:19:0;8648:4;8628:25;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8586:67;;;;8668:7;8660:52;;;;-1:-1:-1;;;8660:52:0;;4201:2:1;8660:52:0;;;4183:21:1;;;4220:18;;;4213:30;4279:34;4259:18;;;4252:62;4331:18;;8660:52:0;3999:356:1;8660:52:0;8725:17;;:21;8721:208;;8855:10;8844:30;;;;;;;;;;;;:::i;:::-;8836:85;;;;-1:-1:-1;;;8836:85:0;;4844:2:1;8836:85:0;;;4826:21:1;4883:2;4863:18;;;4856:30;4922:34;4902:18;;;4895:62;-1:-1:-1;;;4973:18:1;;;4966:40;5023:19;;8836:85:0;4642:406:1;206:127;267:10;262:3;258:20;255:1;248:31;298:4;295:1;288:15;322:4;319:1;312:15;338:173;406:20;;-1:-1:-1;;;;;455:31:1;;445:42;;435:70;;501:1;498;491:12;435:70;338:173;;;:::o;516:1287::-;630:6;638;646;654;662;670;723:3;711:9;702:7;698:23;694:33;691:53;;;740:1;737;730:12;691:53;780:9;767:23;809:18;850:2;842:6;839:14;836:34;;;866:1;863;856:12;836:34;904:6;893:9;889:22;879:32;;949:7;942:4;938:2;934:13;930:27;920:55;;971:1;968;961:12;920:55;1007:2;994:16;1029:2;1025;1022:10;1019:36;;;1035:18;;:::i;:::-;1110:2;1104:9;1078:2;1164:13;;-1:-1:-1;;1160:22:1;;;1184:2;1156:31;1152:40;1140:53;;;1208:18;;;1228:22;;;1205:46;1202:72;;;1254:18;;:::i;:::-;1294:10;1290:2;1283:22;1329:2;1321:6;1314:18;1371:7;1364:4;1359:2;1355;1351:11;1347:22;1344:35;1341:55;;;1392:1;1389;1382:12;1341:55;1452:2;1445:4;1441:2;1437:13;1430:4;1422:6;1418:17;1405:50;1499:1;1492:4;1487:2;1479:6;1475:15;1471:26;1464:37;1520:6;1510:16;;;;;;;1545:40;1579:4;1568:9;1564:20;1545:40;:::i;:::-;1535:50;;1604:38;1638:2;1627:9;1623:18;1604:38;:::i;:::-;1594:48;;1689:2;1678:9;1674:18;1661:32;1651:42;;1740:3;1729:9;1725:19;1712:33;1702:43;;1792:3;1781:9;1777:19;1764:33;1754:43;;516:1287;;;;;;;;:::o;2018:250::-;2103:1;2113:113;2127:6;2124:1;2121:13;2113:113;;;2203:11;;;2197:18;2184:11;;;2177:39;2149:2;2142:10;2113:113;;;-1:-1:-1;;2260:1:1;2242:16;;2235:27;2018:250::o;2273:689::-;2534:3;2523:9;2516:22;2497:4;2567:6;2561:13;2611:6;2605:3;2594:9;2590:19;2583:35;2627:82;2702:6;2696:3;2685:9;2681:19;2674:4;2666:6;2662:17;2627:82;:::i;:::-;2812:4;2797:20;;2790:36;;;;-1:-1:-1;2857:2:1;2842:18;;2835:34;;;;2900:2;2885:18;;2878:34;;;;2943:3;2928:19;;2921:35;2777:3;2770:2;2749:15;;;-1:-1:-1;;2745:29:1;2730:45;2726:55;;;-1:-1:-1;2273:689:1:o;3707:287::-;3836:3;3874:6;3868:13;3890:66;3949:6;3944:3;3937:4;3929:6;3925:17;3890:66;:::i;:::-;3972:16;;;;;3707:287;-1:-1:-1;;3707:287:1:o;4360:277::-;4427:6;4480:2;4468:9;4459:7;4455:23;4451:32;4448:52;;;4496:1;4493;4486:12;4448:52;4528:9;4522:16;4581:5;4574:13;4567:21;4560:5;4557:32;4547:60;;4603:1;4600;4593:12;4547:60;4626:5;4360:277;-1:-1:-1;;;4360:277:1:o

Swarm Source

ipfs://cf51ff794ae9f98bf3da506dc3aa6e00705e4a93d6a60b2203b635da8b014cfe

Block Transaction Gas Used Reward
view all blocks sequenced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.