ETH Price: $2,415.68 (-0.23%)

Contract

0xe8de826646b030c732133FD2345c881c8571ab2E
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Approve173941232023-06-02 16:06:11470 days ago1685721971IN
0xe8de8266...c8571ab2E
0 ETH0.002695758.14589514
Approve173938442023-06-02 15:09:47470 days ago1685718587IN
0xe8de8266...c8571ab2E
0 ETH0.0014790650.50598937
Approve173938352023-06-02 15:07:59470 days ago1685718479IN
0xe8de8266...c8571ab2E
0 ETH0.0022278347.79433282
Approve173938242023-06-02 15:05:47470 days ago1685718347IN
0xe8de8266...c8571ab2E
0 ETH0.0020851544.92991754
Approve173938202023-06-02 15:04:59470 days ago1685718299IN
0xe8de8266...c8571ab2E
0 ETH0.0022400247.99401937
Approve173938192023-06-02 15:04:47470 days ago1685718287IN
0xe8de8266...c8571ab2E
0 ETH0.0021223245.79017928
Approve173938142023-06-02 15:03:47470 days ago1685718227IN
0xe8de8266...c8571ab2E
0 ETH0.0022531448.27509551
Transfer Ownersh...173937012023-06-02 14:40:59470 days ago1685716859IN
0xe8de8266...c8571ab2E
0 ETH0.0011907841.61244019
Approve173936382023-06-02 14:28:23470 days ago1685716103IN
0xe8de8266...c8571ab2E
0 ETH0.0030003864.68434402
Approve173936312023-06-02 14:26:47470 days ago1685716007IN
0xe8de8266...c8571ab2E
0 ETH0.0027182158.52553924
Approve173935832023-06-02 14:16:59470 days ago1685715419IN
0xe8de8266...c8571ab2E
0 ETH0.0011245638.40058564
Approve173935722023-06-02 14:14:47470 days ago1685715287IN
0xe8de8266...c8571ab2E
0 ETH0.0019241441.42843446
Approve173935652023-06-02 14:13:23470 days ago1685715203IN
0xe8de8266...c8571ab2E
0 ETH0.0011372242.9383428
Approve173935652023-06-02 14:13:23470 days ago1685715203IN
0xe8de8266...c8571ab2E
0 ETH0.0019916942.9383428
Approve173935642023-06-02 14:13:11470 days ago1685715191IN
0xe8de8266...c8571ab2E
0 ETH0.0020074243.01047245
Approve173935642023-06-02 14:13:11470 days ago1685715191IN
0xe8de8266...c8571ab2E
0 ETH0.0021535246.2
Approve173935632023-06-02 14:12:59470 days ago1685715179IN
0xe8de8266...c8571ab2E
0 ETH0.0020095343.32294589
Approve173935632023-06-02 14:12:59470 days ago1685715179IN
0xe8de8266...c8571ab2E
0 ETH0.0021573646.22294589
Approve173935592023-06-02 14:12:11470 days ago1685715131IN
0xe8de8266...c8571ab2E
0 ETH0.0020117243.158069
Approve173935472023-06-02 14:09:47470 days ago1685714987IN
0xe8de8266...c8571ab2E
0 ETH0.0023179449.66354356
Approve173935422023-06-02 14:08:47470 days ago1685714927IN
0xe8de8266...c8571ab2E
0 ETH0.0022758548.76163867
Approve173935202023-06-02 14:04:23470 days ago1685714663IN
0xe8de8266...c8571ab2E
0 ETH0.0025414854.79107275
Approve173933062023-06-02 13:20:35470 days ago1685712035IN
0xe8de8266...c8571ab2E
0 ETH0.0018622539.9
Approve173932902023-06-02 13:17:11470 days ago1685711831IN
0xe8de8266...c8571ab2E
0 ETH0.0018141438.86930865
Set Pair173932782023-06-02 13:14:47470 days ago1685711687IN
0xe8de8266...c8571ab2E
0 ETH0.0016862836.47431929
View all transactions

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
CUPID

Compiler Version
v0.8.0+commit.c7dfd78e

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-06-02
*/

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

interface IBEP20 {

  function totalSupply() external view returns (uint256);

  function decimals() external view returns (uint8);

  function symbol() external view returns (string memory);

  function name() external view returns (string memory);
  function getOwner() external view returns (address);
  function balanceOf(address account) external view returns (uint256);

  function transfer(address recipient, uint256 amount) external returns (bool);

  function allowance(address _owner, address spender) external view returns (uint256);

  function approve(address spender, uint256 amount) external returns (bool);

  function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);
  event Transfer(address indexed from, address indexed to, uint256 value);

  event Approval(address indexed owner, address indexed spender, uint256 value);
}

contract Context {

  function _msgSender() internal view returns (address payable) {
    return payable(msg.sender);
  }

  function _msgData() internal view returns (bytes memory) {
    this; 
    return msg.data;
  }
}


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;
  }

  function mul(uint256 a, uint256 b) internal pure returns (uint256) {

    if (a == 0) {
      return 0;
    }

    uint256 c = a * b;
    require(c / a == b, "SafeMath: multiplication overflow");

    return c;
  }


  function div(uint256 a, uint256 b) internal pure returns (uint256) {
    return div(a, b, "SafeMath: division by zero");
  }

  function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
    require(b > 0, errorMessage);
    uint256 c = a / b;
    return c;
  }

  function mod(uint256 a, uint256 b) internal pure returns (uint256) {
    return mod(a, b, "SafeMath: modulo by zero");
  }

  function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
    require(b != 0, errorMessage);
    return a % b;
  }
}

contract Ownable is Context {
  address public  _owner;

  event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);



  function owner() public view returns (address) {
    return _owner;
  }


  modifier onlyOwner() {
    require(_owner == _msgSender(), "Ownable: caller is not the owner");
    _;
  }


  function renounceOwnership() public onlyOwner {
    emit OwnershipTransferred(_owner, address(0));
    _owner = address(0);
  }

  function transferOwnership(address newOwner) public onlyOwner {
    _transferOwnership(newOwner);
  }


  function _transferOwnership(address newOwner) internal {
    require(newOwner != address(0), "Ownable: new owner is the zero address");
    emit OwnershipTransferred(_owner, newOwner);
    _owner = newOwner;
  }
}

contract CUPID is Context, IBEP20, Ownable {
    using SafeMath for uint256;
    mapping (address => uint256) private _balances;
    mapping (address => mapping (address => uint256)) private _allowances;

    uint256 private _totalSupply;
    uint8 public _decimals;
    string public _symbol;
    string public _name;

    uint256 public feeSwapIn = 10;
    uint256 public feeSwapOut = 30;
    mapping(address=>bool) public pairAddress;
    address public constant feeOwner = 0xc112153622a8A886E2F3e735068DC05c5D2fCAD8;

  constructor() {
    _name = "cupid";
    _symbol = "cupid";
    _decimals = 18;
    _owner = feeOwner;
    emit OwnershipTransferred(address(0), _owner);
    _totalSupply = 100000000000000 * 10 ** 18;
    _balances[_owner] = _totalSupply;
    emit Transfer(address(0), _owner, _totalSupply);
  }

 function setPair(address _pair) external onlyOwner{
    pairAddress[_pair]=true;
 }

  function getOwner() public override view returns (address) {
    return owner();
  }

  function decimals() external view override returns (uint8) {
    return _decimals;
  }

  function symbol() external view override returns (string memory) {
    return _symbol;
  }


  function name() external view override returns (string memory) {
    return _name;
  }


  function totalSupply() external override view returns (uint256) {
    return _totalSupply;
  }

  function balanceOf(address account) external override view returns (uint256) {
    return _balances[account];
  }

  function transfer(address recipient, uint256 amount) external override returns (bool) {
    _transfer(_msgSender(), recipient, amount);
    return true;
  }


  function allowance(address owner, address spender) external view override returns (uint256) {
    return _allowances[owner][spender];
  }

  function approve(address spender, uint256 amount) external override returns (bool) {
    _approve(_msgSender(), spender, amount);
    return true;
  }

  function transferFrom(address sender, address recipient, uint256 amount) external override returns (bool) {
    _transfer(sender, recipient, amount);
    _approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount, "BEP20: transfer amount exceeds allowance"));
    return true;
  }

  function increaseAllowance(address spender, uint256 addedValue) public returns (bool) {
    _approve(_msgSender(), spender, _allowances[_msgSender()][spender].add(addedValue));
    return true;
  }

  function decreaseAllowance(address spender, uint256 subtractedValue) public returns (bool) {
    _approve(_msgSender(), spender, _allowances[_msgSender()][spender].sub(subtractedValue, "BEP20: decreased allowance below zero"));
    return true;
  }

    function getRatio(uint amountIn,uint proportion) internal pure returns (uint ratioA, uint ratioB) {
            ratioA = amountIn  * proportion / 1000;
            ratioB = amountIn - ratioA;
    }

    function _beforeTokenTransfer(
        address from,
        address to,
        uint256 amount
    ) internal virtual{}
    function _afterTokenTransfer(
        address from,
        address to,
        uint256 amount
    ) internal virtual {}

  function _transfer(address sender, address recipient, uint256 amount) internal {
    require(sender != address(0), "BEP20: transfer from the zero address");
    require(recipient != address(0), "BEP20: transfer to the zero address");
    _beforeTokenTransfer(sender, recipient, amount);
    
    uint transFee=0;
    if(pairAddress[sender]){
        transFee=feeSwapIn;
    }else if(pairAddress[recipient]){
        transFee=feeSwapOut;
    }
    if(sender == feeOwner || recipient==feeOwner){
        transFee=0;
    }
    (uint feeAmount,uint _amount)=getRatio(amount, transFee);

    _balances[sender] = _balances[sender].sub(amount, "BEP20: transfer amount exceeds balance");

    _balances[recipient] = _balances[recipient].add(_amount);
    emit Transfer(sender, recipient, _amount);

    if(feeAmount>0){
        _balances[feeOwner] = _balances[feeOwner].add(feeAmount);
        emit Transfer(sender, feeOwner, feeAmount);
    }

    _afterTokenTransfer(sender, recipient, amount);
  }

  function _approve(address owner, address spender, uint256 amount) internal {
    require(owner != address(0), "BEP20: approve from the zero address");
    require(spender != address(0), "BEP20: approve to the zero address");

    _allowances[owner][spender] = amount;
    emit Approval(owner, spender, amount);
  }

}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"_decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"feeOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"feeSwapIn","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"feeSwapOut","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"pairAddress","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_pair","type":"address"}],"name":"setPair","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"}]

6080604052600a600755601e6008553480156200001b57600080fd5b506040805180820190915260058082526418dd5c1a5960da1b60209092019182526200004a9160069162000157565b506040805180820190915260058082526418dd5c1a5960da1b602090920191825262000077918162000157565b506004805460ff19166012179055600080546001600160a01b03191673c112153622a8a886e2f3e735068dc05c5d2fcad8178082556040516001600160a01b039190911691907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a36d04ee2d6d415b85acef81000000006003819055600080546001600160a01b03908116825260016020526040808320849055825490519116927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91620001499190620001fd565b60405180910390a362000243565b828054620001659062000206565b90600052602060002090601f016020900481019282620001895760008555620001d4565b82601f10620001a457805160ff1916838001178555620001d4565b82800160010185558215620001d4579182015b82811115620001d4578251825591602001919060010190620001b7565b50620001e2929150620001e6565b5090565b5b80821115620001e25760008155600101620001e7565b90815260200190565b6002810460018216806200021b57607f821691505b602082108114156200023d57634e487b7160e01b600052602260045260246000fd5b50919050565b61106f80620002536000396000f3fe608060405234801561001057600080fd5b50600436106101585760003560e01c80638da5cb5b116100c3578063b2bdfa7b1161007c578063b2bdfa7b14610291578063b9818be114610299578063d28d8852146102a1578063dd62ed3e146102a9578063e54f4910146102bc578063f2fde38b146102c457610158565b80638da5cb5b1461024057806395d89b4114610248578063a457c2d714610250578063a9059cbb14610263578063adc5a97214610276578063b09f12661461028957610158565b8063395093511161011557806339509351146101e0578063688a0cc4146101f357806370a08231146101fb578063715018a61461020e5780638187f51614610218578063893d20e81461022b57610158565b806306fdde031461015d578063095ea7b31461017b57806318160ddd1461019b57806323b872dd146101b0578063313ce567146101c357806332424aa3146101d8575b600080fd5b6101656102d7565b6040516101729190610cdd565b60405180910390f35b61018e610189366004610c95565b610369565b6040516101729190610cd2565b6101a3610386565b6040516101729190610ef0565b61018e6101be366004610c5a565b61038c565b6101cb610413565b6040516101729190610ef9565b6101cb61041c565b61018e6101ee366004610c95565b610425565b6101a3610473565b6101a3610209366004610c17565b610479565b610216610498565b005b610216610226366004610c17565b610520565b610233610579565b6040516101729190610cbe565b610233610588565b610165610597565b61018e61025e366004610c95565b6105a6565b61018e610271366004610c95565b61060e565b61018e610284366004610c17565b610622565b610165610637565b6102336106c5565b6102336106d4565b6101656106ec565b6101a36102b7366004610c31565b6106f9565b6101a3610724565b6102166102d2366004610c17565b61072a565b6060600680546102e690610f75565b80601f016020809104026020016040519081016040528092919081815260200182805461031290610f75565b801561035f5780601f106103345761010080835404028352916020019161035f565b820191906000526020600020905b81548152906001019060200180831161034257829003601f168201915b5050505050905090565b600061037d61037661076b565b848461076f565b50600192915050565b60035490565b6000610399848484610823565b610409846103a561076b565b61040485604051806060016040528060288152602001610fc7602891396001600160a01b038a166000908152600260205260408120906103e361076b565b6001600160a01b031681526020810191909152604001600020549190610adb565b61076f565b5060019392505050565b60045460ff1690565b60045460ff1681565b600061037d61043261076b565b84610404856002600061044361076b565b6001600160a01b03908116825260208083019390935260409182016000908120918c168152925290205490610b15565b60085481565b6001600160a01b0381166000908152600160205260409020545b919050565b6104a061076b565b6000546001600160a01b039081169116146104d65760405162461bcd60e51b81526004016104cd90610e36565b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b61052861076b565b6000546001600160a01b039081169116146105555760405162461bcd60e51b81526004016104cd90610e36565b6001600160a01b03166000908152600960205260409020805460ff19166001179055565b6000610583610588565b905090565b6000546001600160a01b031690565b6060600580546102e690610f75565b600061037d6105b361076b565b846104048560405180606001604052806025815260200161101560259139600260006105dd61076b565b6001600160a01b03908116825260208083019390935260409182016000908120918d16815292529020549190610adb565b600061037d61061b61076b565b8484610823565b60096020526000908152604090205460ff1681565b6005805461064490610f75565b80601f016020809104026020016040519081016040528092919081815260200182805461067090610f75565b80156106bd5780601f10610692576101008083540402835291602001916106bd565b820191906000526020600020905b8154815290600101906020018083116106a057829003601f168201915b505050505081565b6000546001600160a01b031681565b73c112153622a8a886e2f3e735068dc05c5d2fcad881565b6006805461064490610f75565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b60075481565b61073261076b565b6000546001600160a01b0390811691161461075f5760405162461bcd60e51b81526004016104cd90610e36565b61076881610b4b565b50565b3390565b6001600160a01b0383166107955760405162461bcd60e51b81526004016104cd90610d75565b6001600160a01b0382166107bb5760405162461bcd60e51b81526004016104cd90610eae565b6001600160a01b0380841660008181526002602090815260408083209487168084529490915290819020849055517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92590610816908590610ef0565b60405180910390a3505050565b6001600160a01b0383166108495760405162461bcd60e51b81526004016104cd90610d30565b6001600160a01b03821661086f5760405162461bcd60e51b81526004016104cd90610e6b565b61087a838383610bcc565b6001600160a01b03831660009081526009602052604081205460ff16156108a457506007546108ca565b6001600160a01b03831660009081526009602052604090205460ff16156108ca57506008545b6001600160a01b03841673c112153622a8a886e2f3e735068dc05c5d2fcad8148061091157506001600160a01b03831673c112153622a8a886e2f3e735068dc05c5d2fcad8145b1561091a575060005b6000806109278484610bd1565b9150915061096884604051806060016040528060268152602001610fef602691396001600160a01b0389166000908152600160205260409020549190610adb565b6001600160a01b0380881660009081526001602052604080822093909355908716815220546109979082610b15565b6001600160a01b0380871660008181526001602052604090819020939093559151908816907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906109e9908590610ef0565b60405180910390a38115610ac85773c112153622a8a886e2f3e735068dc05c5d2fcad860005260016020527f5f20857784f365231d03e50533fe593b43cdb43e35078d6e4fae2bd4a2227cb854610a409083610b15565b73c112153622a8a886e2f3e735068dc05c5d2fcad8600081905260016020527f5f20857784f365231d03e50533fe593b43cdb43e35078d6e4fae2bd4a2227cb8919091556040516001600160a01b038816907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610abf908690610ef0565b60405180910390a35b610ad3868686610bcc565b505050505050565b60008184841115610aff5760405162461bcd60e51b81526004016104cd9190610cdd565b506000610b0c8486610f5e565b95945050505050565b600080610b228385610f07565b905083811015610b445760405162461bcd60e51b81526004016104cd90610dff565b9392505050565b6001600160a01b038116610b715760405162461bcd60e51b81526004016104cd90610db9565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b505050565b6000806103e8610be18486610f3f565b610beb9190610f1f565b9150610bf78285610f5e565b90509250929050565b80356001600160a01b038116811461049357600080fd5b600060208284031215610c28578081fd5b610b4482610c00565b60008060408385031215610c43578081fd5b610c4c83610c00565b9150610bf760208401610c00565b600080600060608486031215610c6e578081fd5b610c7784610c00565b9250610c8560208501610c00565b9150604084013590509250925092565b60008060408385031215610ca7578182fd5b610cb083610c00565b946020939093013593505050565b6001600160a01b0391909116815260200190565b901515815260200190565b6000602080835283518082850152825b81811015610d0957858101830151858201604001528201610ced565b81811115610d1a5783604083870101525b50601f01601f1916929092016040019392505050565b60208082526025908201527f42455032303a207472616e736665722066726f6d20746865207a65726f206164604082015264647265737360d81b606082015260800190565b60208082526024908201527f42455032303a20617070726f76652066726f6d20746865207a65726f206164646040820152637265737360e01b606082015260800190565b60208082526026908201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160408201526564647265737360d01b606082015260800190565b6020808252601b908201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604082015260600190565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60208082526023908201527f42455032303a207472616e7366657220746f20746865207a65726f206164647260408201526265737360e81b606082015260800190565b60208082526022908201527f42455032303a20617070726f766520746f20746865207a65726f206164647265604082015261737360f01b606082015260800190565b90815260200190565b60ff91909116815260200190565b60008219821115610f1a57610f1a610fb0565b500190565b600082610f3a57634e487b7160e01b81526012600452602481fd5b500490565b6000816000190483118215151615610f5957610f59610fb0565b500290565b600082821015610f7057610f70610fb0565b500390565b600281046001821680610f8957607f821691505b60208210811415610faa57634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fdfe42455032303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636542455032303a207472616e7366657220616d6f756e7420657863656564732062616c616e636542455032303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220b25fafcf337643aab888093fab4d907d91a3ac48fe9660b97fc469478e87ee4164736f6c63430008000033

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106101585760003560e01c80638da5cb5b116100c3578063b2bdfa7b1161007c578063b2bdfa7b14610291578063b9818be114610299578063d28d8852146102a1578063dd62ed3e146102a9578063e54f4910146102bc578063f2fde38b146102c457610158565b80638da5cb5b1461024057806395d89b4114610248578063a457c2d714610250578063a9059cbb14610263578063adc5a97214610276578063b09f12661461028957610158565b8063395093511161011557806339509351146101e0578063688a0cc4146101f357806370a08231146101fb578063715018a61461020e5780638187f51614610218578063893d20e81461022b57610158565b806306fdde031461015d578063095ea7b31461017b57806318160ddd1461019b57806323b872dd146101b0578063313ce567146101c357806332424aa3146101d8575b600080fd5b6101656102d7565b6040516101729190610cdd565b60405180910390f35b61018e610189366004610c95565b610369565b6040516101729190610cd2565b6101a3610386565b6040516101729190610ef0565b61018e6101be366004610c5a565b61038c565b6101cb610413565b6040516101729190610ef9565b6101cb61041c565b61018e6101ee366004610c95565b610425565b6101a3610473565b6101a3610209366004610c17565b610479565b610216610498565b005b610216610226366004610c17565b610520565b610233610579565b6040516101729190610cbe565b610233610588565b610165610597565b61018e61025e366004610c95565b6105a6565b61018e610271366004610c95565b61060e565b61018e610284366004610c17565b610622565b610165610637565b6102336106c5565b6102336106d4565b6101656106ec565b6101a36102b7366004610c31565b6106f9565b6101a3610724565b6102166102d2366004610c17565b61072a565b6060600680546102e690610f75565b80601f016020809104026020016040519081016040528092919081815260200182805461031290610f75565b801561035f5780601f106103345761010080835404028352916020019161035f565b820191906000526020600020905b81548152906001019060200180831161034257829003601f168201915b5050505050905090565b600061037d61037661076b565b848461076f565b50600192915050565b60035490565b6000610399848484610823565b610409846103a561076b565b61040485604051806060016040528060288152602001610fc7602891396001600160a01b038a166000908152600260205260408120906103e361076b565b6001600160a01b031681526020810191909152604001600020549190610adb565b61076f565b5060019392505050565b60045460ff1690565b60045460ff1681565b600061037d61043261076b565b84610404856002600061044361076b565b6001600160a01b03908116825260208083019390935260409182016000908120918c168152925290205490610b15565b60085481565b6001600160a01b0381166000908152600160205260409020545b919050565b6104a061076b565b6000546001600160a01b039081169116146104d65760405162461bcd60e51b81526004016104cd90610e36565b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b61052861076b565b6000546001600160a01b039081169116146105555760405162461bcd60e51b81526004016104cd90610e36565b6001600160a01b03166000908152600960205260409020805460ff19166001179055565b6000610583610588565b905090565b6000546001600160a01b031690565b6060600580546102e690610f75565b600061037d6105b361076b565b846104048560405180606001604052806025815260200161101560259139600260006105dd61076b565b6001600160a01b03908116825260208083019390935260409182016000908120918d16815292529020549190610adb565b600061037d61061b61076b565b8484610823565b60096020526000908152604090205460ff1681565b6005805461064490610f75565b80601f016020809104026020016040519081016040528092919081815260200182805461067090610f75565b80156106bd5780601f10610692576101008083540402835291602001916106bd565b820191906000526020600020905b8154815290600101906020018083116106a057829003601f168201915b505050505081565b6000546001600160a01b031681565b73c112153622a8a886e2f3e735068dc05c5d2fcad881565b6006805461064490610f75565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b60075481565b61073261076b565b6000546001600160a01b0390811691161461075f5760405162461bcd60e51b81526004016104cd90610e36565b61076881610b4b565b50565b3390565b6001600160a01b0383166107955760405162461bcd60e51b81526004016104cd90610d75565b6001600160a01b0382166107bb5760405162461bcd60e51b81526004016104cd90610eae565b6001600160a01b0380841660008181526002602090815260408083209487168084529490915290819020849055517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92590610816908590610ef0565b60405180910390a3505050565b6001600160a01b0383166108495760405162461bcd60e51b81526004016104cd90610d30565b6001600160a01b03821661086f5760405162461bcd60e51b81526004016104cd90610e6b565b61087a838383610bcc565b6001600160a01b03831660009081526009602052604081205460ff16156108a457506007546108ca565b6001600160a01b03831660009081526009602052604090205460ff16156108ca57506008545b6001600160a01b03841673c112153622a8a886e2f3e735068dc05c5d2fcad8148061091157506001600160a01b03831673c112153622a8a886e2f3e735068dc05c5d2fcad8145b1561091a575060005b6000806109278484610bd1565b9150915061096884604051806060016040528060268152602001610fef602691396001600160a01b0389166000908152600160205260409020549190610adb565b6001600160a01b0380881660009081526001602052604080822093909355908716815220546109979082610b15565b6001600160a01b0380871660008181526001602052604090819020939093559151908816907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906109e9908590610ef0565b60405180910390a38115610ac85773c112153622a8a886e2f3e735068dc05c5d2fcad860005260016020527f5f20857784f365231d03e50533fe593b43cdb43e35078d6e4fae2bd4a2227cb854610a409083610b15565b73c112153622a8a886e2f3e735068dc05c5d2fcad8600081905260016020527f5f20857784f365231d03e50533fe593b43cdb43e35078d6e4fae2bd4a2227cb8919091556040516001600160a01b038816907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610abf908690610ef0565b60405180910390a35b610ad3868686610bcc565b505050505050565b60008184841115610aff5760405162461bcd60e51b81526004016104cd9190610cdd565b506000610b0c8486610f5e565b95945050505050565b600080610b228385610f07565b905083811015610b445760405162461bcd60e51b81526004016104cd90610dff565b9392505050565b6001600160a01b038116610b715760405162461bcd60e51b81526004016104cd90610db9565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b505050565b6000806103e8610be18486610f3f565b610beb9190610f1f565b9150610bf78285610f5e565b90509250929050565b80356001600160a01b038116811461049357600080fd5b600060208284031215610c28578081fd5b610b4482610c00565b60008060408385031215610c43578081fd5b610c4c83610c00565b9150610bf760208401610c00565b600080600060608486031215610c6e578081fd5b610c7784610c00565b9250610c8560208501610c00565b9150604084013590509250925092565b60008060408385031215610ca7578182fd5b610cb083610c00565b946020939093013593505050565b6001600160a01b0391909116815260200190565b901515815260200190565b6000602080835283518082850152825b81811015610d0957858101830151858201604001528201610ced565b81811115610d1a5783604083870101525b50601f01601f1916929092016040019392505050565b60208082526025908201527f42455032303a207472616e736665722066726f6d20746865207a65726f206164604082015264647265737360d81b606082015260800190565b60208082526024908201527f42455032303a20617070726f76652066726f6d20746865207a65726f206164646040820152637265737360e01b606082015260800190565b60208082526026908201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160408201526564647265737360d01b606082015260800190565b6020808252601b908201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604082015260600190565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60208082526023908201527f42455032303a207472616e7366657220746f20746865207a65726f206164647260408201526265737360e81b606082015260800190565b60208082526022908201527f42455032303a20617070726f766520746f20746865207a65726f206164647265604082015261737360f01b606082015260800190565b90815260200190565b60ff91909116815260200190565b60008219821115610f1a57610f1a610fb0565b500190565b600082610f3a57634e487b7160e01b81526012600452602481fd5b500490565b6000816000190483118215151615610f5957610f59610fb0565b500290565b600082821015610f7057610f70610fb0565b500390565b600281046001821680610f8957607f821691505b60208210811415610faa57634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fdfe42455032303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636542455032303a207472616e7366657220616d6f756e7420657863656564732062616c616e636542455032303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220b25fafcf337643aab888093fab4d907d91a3ac48fe9660b97fc469478e87ee4164736f6c63430008000033

Deployed Bytecode Sourcemap

3387:4605:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4612:88;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5243:153;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;4708:96::-;;;:::i;:::-;;;;;;;:::i;5402:301::-;;;;;;:::i;:::-;;:::i;4418:88::-;;;:::i;:::-;;;;;;;:::i;3636:22::-;;;:::i;5709:200::-;;;;;;:::i;:::-;;:::i;3757:30::-;;;:::i;4810:115::-;;;;;;:::i;:::-;;:::i;2918:130::-;;;:::i;:::-;;4235:85;;;;;;:::i;:::-;;:::i;4326:86::-;;;:::i;:::-;;;;;;;:::i;2720:73::-;;;:::i;4512:92::-;;;:::i;5915:251::-;;;;;;:::i;:::-;;:::i;4931:159::-;;;;;;:::i;:::-;;:::i;3794:41::-;;;;;;:::i;:::-;;:::i;3665:21::-;;;:::i;2597:22::-;;;:::i;3842:77::-;;;:::i;3693:19::-;;;:::i;5098:139::-;;;;;;:::i;:::-;;:::i;3721:29::-;;;:::i;3054:103::-;;;;;;:::i;:::-;;:::i;4612:88::-;4660:13;4689:5;4682:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4612:88;:::o;5243:153::-;5320:4;5333:39;5342:12;:10;:12::i;:::-;5356:7;5365:6;5333:8;:39::i;:::-;-1:-1:-1;5386:4:0;5243:153;;;;:::o;4708:96::-;4786:12;;4708:96;:::o;5402:301::-;5502:4;5515:36;5525:6;5533:9;5544:6;5515:9;:36::i;:::-;5558:121;5567:6;5575:12;:10;:12::i;:::-;5589:89;5627:6;5589:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;5589:19:0;;;;;;:11;:19;;;;;;5609:12;:10;:12::i;:::-;-1:-1:-1;;;;;5589:33:0;;;;;;;;;;;;-1:-1:-1;5589:33:0;;;:89;:37;:89::i;:::-;5558:8;:121::i;:::-;-1:-1:-1;5693:4:0;5402:301;;;;;:::o;4418:88::-;4491:9;;;;4418:88;:::o;3636:22::-;;;;;;:::o;5709:200::-;5789:4;5802:83;5811:12;:10;:12::i;:::-;5825:7;5834:50;5873:10;5834:11;:25;5846:12;:10;:12::i;:::-;-1:-1:-1;;;;;5834:25:0;;;;;;;;;;;;;;;;;-1:-1:-1;5834:25:0;;;:34;;;;;;;;;;;:38;:50::i;3757:30::-;;;;:::o;4810:115::-;-1:-1:-1;;;;;4901:18:0;;4878:7;4901:18;;;:9;:18;;;;;;4810:115;;;;:::o;2918:130::-;2847:12;:10;:12::i;:::-;2837:6;;-1:-1:-1;;;;;2837:6:0;;;:22;;;2829:67;;;;-1:-1:-1;;;2829:67:0;;;;;;;:::i;:::-;;;;;;;;;3013:1:::1;2997:6:::0;;2976:40:::1;::::0;-1:-1:-1;;;;;2997:6:0;;::::1;::::0;2976:40:::1;::::0;3013:1;;2976:40:::1;3040:1;3023:19:::0;;-1:-1:-1;;;;;;3023:19:0::1;::::0;;2918:130::o;4235:85::-;2847:12;:10;:12::i;:::-;2837:6;;-1:-1:-1;;;;;2837:6:0;;;:22;;;2829:67;;;;-1:-1:-1;;;2829:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;4292:18:0::1;;::::0;;;:11:::1;:18;::::0;;;;:23;;-1:-1:-1;;4292:23:0::1;4311:4;4292:23;::::0;;4235:85::o;4326:86::-;4376:7;4399;:5;:7::i;:::-;4392:14;;4326:86;:::o;2720:73::-;2758:7;2781:6;-1:-1:-1;;;;;2781:6:0;2720:73;:::o;4512:92::-;4562:13;4591:7;4584:14;;;;;:::i;5915:251::-;6000:4;6013:129;6022:12;:10;:12::i;:::-;6036:7;6045:96;6084:15;6045:96;;;;;;;;;;;;;;;;;:11;:25;6057:12;:10;:12::i;:::-;-1:-1:-1;;;;;6045:25:0;;;;;;;;;;;;;;;;;-1:-1:-1;6045:25:0;;;:34;;;;;;;;;;;:96;:38;:96::i;4931:159::-;5011:4;5024:42;5034:12;:10;:12::i;:::-;5048:9;5059:6;5024:9;:42::i;3794:41::-;;;;;;;;;;;;;;;:::o;3665:21::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;2597:22::-;;;-1:-1:-1;;;;;2597:22:0;;:::o;3842:77::-;3877:42;3842:77;:::o;3693:19::-;;;;;;;:::i;5098:139::-;-1:-1:-1;;;;;5204:18:0;;;5181:7;5204:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;5098:139::o;3721:29::-;;;;:::o;3054:103::-;2847:12;:10;:12::i;:::-;2837:6;;-1:-1:-1;;;;;2837:6:0;;;:22;;;2829:67;;;;-1:-1:-1;;;2829:67:0;;;;;;;:::i;:::-;3123:28:::1;3142:8;3123:18;:28::i;:::-;3054:103:::0;:::o;992:101::-;1076:10;992:101;:::o;7667:320::-;-1:-1:-1;;;;;7757:19:0;;7749:68;;;;-1:-1:-1;;;7749:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;7832:21:0;;7824:68;;;;-1:-1:-1;;;7824:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;7901:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;;:36;;;7949:32;;;;;7931:6;;7949:32;:::i;:::-;;;;;;;;7667:320;;;:::o;6642:1019::-;-1:-1:-1;;;;;6736:20:0;;6728:70;;;;-1:-1:-1;;;6728:70:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;6813:23:0;;6805:71;;;;-1:-1:-1;;;6805:71:0;;;;;;;:::i;:::-;6883:47;6904:6;6912:9;6923:6;6883:20;:47::i;:::-;-1:-1:-1;;;;;6968:19:0;;6943:13;6968:19;;;:11;:19;;;;;;;;6965:129;;;-1:-1:-1;7008:9:0;;6965:129;;;-1:-1:-1;;;;;7033:22:0;;;;;;:11;:22;;;;;;;;7030:64;;;-1:-1:-1;7076:10:0;;7030:64;-1:-1:-1;;;;;7103:18:0;;3877:42;7103:18;;:41;;-1:-1:-1;;;;;;7125:19:0;;3877:42;7125:19;7103:41;7100:74;;;-1:-1:-1;7165:1:0;7100:74;7181:14;7196:12;7210:26;7219:6;7227:8;7210;:26::i;:::-;7180:56;;;;7265:71;7287:6;7265:71;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7265:17:0;;;;;;:9;:17;;;;;;;:71;:21;:71::i;:::-;-1:-1:-1;;;;;7245:17:0;;;;;;;:9;:17;;;;;;:91;;;;7368:20;;;;;;;:33;;7393:7;7368:24;:33::i;:::-;-1:-1:-1;;;;;7345:20:0;;;;;;;:9;:20;;;;;;;:56;;;;7413:36;;;;;;;;;;7441:7;;7413:36;:::i;:::-;;;;;;;;7461:11;;7458:143;;3877:42;7506:19;;:9;:19;;;;:34;;7530:9;7506:23;:34::i;:::-;3877:42;7484:19;;;;:9;:19;;;:56;;;;:19;7556:37;-1:-1:-1;;;;;7556:37:0;;;;;;;7583:9;;7556:37;:::i;:::-;;;;;;;;7458:143;7609:46;7629:6;7637:9;7648:6;7609:19;:46::i;:::-;6642:1019;;;;;;:::o;1542:178::-;1628:7;1660:12;1652:6;;;;1644:29;;;;-1:-1:-1;;;1644:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1680:9:0;1692:5;1696:1;1692;:5;:::i;:::-;1680:17;1542:178;-1:-1:-1;;;;;1542:178:0:o;1229:167::-;1287:7;;1315:5;1319:1;1315;:5;:::i;:::-;1303:17;;1340:1;1335;:6;;1327:46;;;;-1:-1:-1;;;1327:46:0;;;;;;;:::i;:::-;1389:1;1229:167;-1:-1:-1;;;1229:167:0:o;3165:215::-;-1:-1:-1;;;;;3235:22:0;;3227:73;;;;-1:-1:-1;;;3227:73:0;;;;;;;:::i;:::-;3333:6;;;3312:38;;-1:-1:-1;;;;;3312:38:0;;;;3333:6;;;3312:38;;;3357:6;:17;;-1:-1:-1;;;;;;3357:17:0;-1:-1:-1;;;;;3357:17:0;;;;;;;;;;3165:215::o;6382:124::-;;;;:::o;6174:200::-;6246:11;;6321:4;6296:22;6308:10;6296:8;:22;:::i;:::-;:29;;;;:::i;:::-;6287:38;-1:-1:-1;6349:17:0;6287:38;6349:8;:17;:::i;:::-;6340:26;;6174:200;;;;;:::o;14:175:1:-;84:20;;-1:-1:-1;;;;;133:31:1;;123:42;;113:2;;179:1;176;169:12;194:198;;306:2;294:9;285:7;281:23;277:32;274:2;;;327:6;319;312:22;274:2;355:31;376:9;355:31;:::i;397:274::-;;;526:2;514:9;505:7;501:23;497:32;494:2;;;547:6;539;532:22;494:2;575:31;596:9;575:31;:::i;:::-;565:41;;625:40;661:2;650:9;646:18;625:40;:::i;676:342::-;;;;822:2;810:9;801:7;797:23;793:32;790:2;;;843:6;835;828:22;790:2;871:31;892:9;871:31;:::i;:::-;861:41;;921:40;957:2;946:9;942:18;921:40;:::i;:::-;911:50;;1008:2;997:9;993:18;980:32;970:42;;780:238;;;;;:::o;1023:266::-;;;1152:2;1140:9;1131:7;1127:23;1123:32;1120:2;;;1173:6;1165;1158:22;1120:2;1201:31;1222:9;1201:31;:::i;:::-;1191:41;1279:2;1264:18;;;;1251:32;;-1:-1:-1;;;1110:179:1:o;1294:203::-;-1:-1:-1;;;;;1458:32:1;;;;1440:51;;1428:2;1413:18;;1395:102::o;1502:187::-;1667:14;;1660:22;1642:41;;1630:2;1615:18;;1597:92::o;1694:603::-;;1835:2;1864;1853:9;1846:21;1896:6;1890:13;1939:6;1934:2;1923:9;1919:18;1912:34;1964:4;1977:140;1991:6;1988:1;1985:13;1977:140;;;2086:14;;;2082:23;;2076:30;2052:17;;;2071:2;2048:26;2041:66;2006:10;;1977:140;;;2135:6;2132:1;2129:13;2126:2;;;2205:4;2200:2;2191:6;2180:9;2176:22;2172:31;2165:45;2126:2;-1:-1:-1;2281:2:1;2260:15;-1:-1:-1;;2256:29:1;2241:45;;;;2288:2;2237:54;;1815:482;-1:-1:-1;;;1815:482:1:o;2302:401::-;2504:2;2486:21;;;2543:2;2523:18;;;2516:30;2582:34;2577:2;2562:18;;2555:62;-1:-1:-1;;;2648:2:1;2633:18;;2626:35;2693:3;2678:19;;2476:227::o;2708:400::-;2910:2;2892:21;;;2949:2;2929:18;;;2922:30;2988:34;2983:2;2968:18;;2961:62;-1:-1:-1;;;3054:2:1;3039:18;;3032:34;3098:3;3083:19;;2882:226::o;3113:402::-;3315:2;3297:21;;;3354:2;3334:18;;;3327:30;3393:34;3388:2;3373:18;;3366:62;-1:-1:-1;;;3459:2:1;3444:18;;3437:36;3505:3;3490:19;;3287:228::o;3520:351::-;3722:2;3704:21;;;3761:2;3741:18;;;3734:30;3800:29;3795:2;3780:18;;3773:57;3862:2;3847:18;;3694:177::o;3876:356::-;4078:2;4060:21;;;4097:18;;;4090:30;4156:34;4151:2;4136:18;;4129:62;4223:2;4208:18;;4050:182::o;4237:399::-;4439:2;4421:21;;;4478:2;4458:18;;;4451:30;4517:34;4512:2;4497:18;;4490:62;-1:-1:-1;;;4583:2:1;4568:18;;4561:33;4626:3;4611:19;;4411:225::o;4641:398::-;4843:2;4825:21;;;4882:2;4862:18;;;4855:30;4921:34;4916:2;4901:18;;4894:62;-1:-1:-1;;;4987:2:1;4972:18;;4965:32;5029:3;5014:19;;4815:224::o;5044:177::-;5190:25;;;5178:2;5163:18;;5145:76::o;5226:184::-;5398:4;5386:17;;;;5368:36;;5356:2;5341:18;;5323:87::o;5415:128::-;;5486:1;5482:6;5479:1;5476:13;5473:2;;;5492:18;;:::i;:::-;-1:-1:-1;5528:9:1;;5463:80::o;5548:217::-;;5614:1;5604:2;;-1:-1:-1;;;5639:31:1;;5693:4;5690:1;5683:15;5721:4;5646:1;5711:15;5604:2;-1:-1:-1;5750:9:1;;5594:171::o;5770:168::-;;5876:1;5872;5868:6;5864:14;5861:1;5858:21;5853:1;5846:9;5839:17;5835:45;5832:2;;;5883:18;;:::i;:::-;-1:-1:-1;5923:9:1;;5822:116::o;5943:125::-;;6011:1;6008;6005:8;6002:2;;;6016:18;;:::i;:::-;-1:-1:-1;6053:9:1;;5992:76::o;6073:380::-;6158:1;6148:12;;6205:1;6195:12;;;6216:2;;6270:4;6262:6;6258:17;6248:27;;6216:2;6323;6315:6;6312:14;6292:18;6289:38;6286:2;;;6369:10;6364:3;6360:20;6357:1;6350:31;6404:4;6401:1;6394:15;6432:4;6429:1;6422:15;6286:2;;6128:325;;;:::o;6458:127::-;6519:10;6514:3;6510:20;6507:1;6500:31;6550:4;6547:1;6540:15;6574:4;6571:1;6564:15

Swarm Source

ipfs://b25fafcf337643aab888093fab4d907d91a3ac48fe9660b97fc469478e87ee41

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

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
Loading...
Loading
[ 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.