ETH Price: $3,500.67 (-1.61%)
Gas: 19 Gwei

Token

 

Overview

Max Total Supply

0

Holders

0

Total Transfers

-

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-
Loading...
Loading
Loading...
Loading
Loading...
Loading

Click here to update the token information / general information
# Exchange Pair Price  24H Volume % Volume

Contract Source Code Verified (Exact Match)

Contract Name:
Vega_Staking_Bridge

Compiler Version
v0.8.1+commit.df193b15

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license
/**
 *Submitted for verification at Etherscan.io on 2021-09-02
*/

// SPDX-License-Identifier: MIT

pragma solidity 0.8.1;

/**
 * @dev Interface of the ERC20 standard as defined in the EIP.
 */
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);

    /**
     * @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);
}

/**
 * @dev Interface contains all of the events necessary for staking Vega token
 */
interface IStake {
  event Stake_Deposited(address indexed user, uint256 amount, bytes32 indexed vega_public_key);
  event Stake_Removed(address indexed user, uint256 amount, bytes32 indexed vega_public_key);
  event Stake_Transferred(address indexed from, uint256 amount, address indexed to, bytes32 indexed vega_public_key);

  /// @return the address of the token that is able to be staked
  function staking_token() external view returns (address);

  /// @param target Target address to check
  /// @param vega_public_key Target vega public key to check
  /// @return the number of tokens staked for that address->vega_public_key pair
  function stake_balance(address target, bytes32 vega_public_key) external view returns (uint256);


  /// @return total tokens staked on contract
  function total_staked() external view returns (uint256);
}

/// @title ERC20 Staking Bridge
/// @author Vega Protocol
/// @notice This contract manages the vesting of the Vega V2 ERC20 token
contract Vega_Staking_Bridge is IStake {
  address _staking_token;

  constructor(address token) {
    _staking_token = token;
  }

  /// @dev user => amount staked
  mapping(address => mapping(bytes32 => uint256)) stakes;

  /// @notice This stakes the given amount of tokens and credits them to the provided Vega public key
  /// @param amount Token amount to stake
  /// @param vega_public_key Target Vega public key to be credited with the stake
  /// @dev Emits Stake_Deposited event
  /// @dev User MUST run "approve" on token prior to running Stake
  function stake(uint256 amount, bytes32 vega_public_key) public {
    require(IERC20(_staking_token).transferFrom(msg.sender, address(this), amount));
    stakes[msg.sender][vega_public_key] += amount;
    emit Stake_Deposited(msg.sender, amount, vega_public_key);
  }

  /// @notice This removes specified amount of stake of available to user
  /// @dev Emits Stake_Removed event if successful
  /// @param amount Amount of tokens to remove from staking
  /// @param vega_public_key Target Vega public key from which to deduct stake
  function remove_stake(uint256 amount, bytes32 vega_public_key) public {
    stakes[msg.sender][vega_public_key] -= amount;
    require(IERC20(_staking_token).transfer(msg.sender, amount));
    emit Stake_Removed(msg.sender, amount, vega_public_key);
  }

  /// @notice This transfers all stake from the sender's address to the "new_address"
  /// @dev Emits Stake_Transfered event if successful
  /// @param amount Stake amount to transfer
  /// @param new_address Target ETH address to recieve the stake
  /// @param vega_public_key Target Vega public key to be credited with the transfer
  function transfer_stake(uint256 amount, address new_address, bytes32 vega_public_key) public {
    stakes[msg.sender][vega_public_key] -= amount;
    stakes[new_address][vega_public_key] += amount;
    emit Stake_Transferred(msg.sender, amount, new_address, vega_public_key);
  }

  /// @dev This is IStake.staking_token
  /// @return the address of the token that is able to be staked
  function staking_token() external override view returns (address) {
    return _staking_token;
  }

  /// @dev This is IStake.stake_balance
  /// @param target Target address to check
  /// @param vega_public_key Target vega public key to check
  /// @return the number of tokens staked for that address->vega_public_key pair
  function stake_balance(address target, bytes32 vega_public_key) external override view returns (uint256) {
    return  stakes[target][vega_public_key];
  }

  /// @dev This is IStake.total_staked
  /// @return total tokens staked on contract
  function total_staked() external override view returns (uint256) {
    return IERC20(_staking_token).balanceOf(address(this));
  }
}


/**
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMWEMMMMMMMMMMMMMMMMMMMMMMMMMM...............MMMMMMMMMMMMM
MMMMMMLOVEMMMMMMMMMMMMMMMMMMMMMM...............MMMMMMMMMMMMM
MMMMMMMMMMHIXELMMMMMMMMMMMM....................MMMMMNNMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMM....................MMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMM88=........................+MMMMMMMMMM
MMMMMMMMMMMMMMMMM....................MMMMM...MMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMM....................MMMMM...MMMMMMMMMMMMMMM
MMMMMMMMMMMM.........................MM+..MMM....+MMMMMMMMMM
MMMMMMMMMNMM...................... ..MM?..MMM.. .+MMMMMMMMMM
MMMMNDDMM+........................+MM........MM..+MMMMMMMMMM
MMMMZ.............................+MM....................MMM
MMMMZ.............................+MM....................MMM
MMMMZ.............................+MM....................DDD
MMMMZ.............................+MM..ZMMMMMMMMMMMMMMMMMMMM
MMMMZ.............................+MM..ZMMMMMMMMMMMMMMMMMMMM
MM..............................MMZ....ZMMMMMMMMMMMMMMMMMMMM
MM............................MM.......ZMMMMMMMMMMMMMMMMMMMM
MM............................MM.......ZMMMMMMMMMMMMMMMMMMMM
MM......................ZMMMMM.......MMMMMMMMMMMMMMMMMMMMMMM
MM............... ......ZMMMMM.... ..MMMMMMMMMMMMMMMMMMMMMMM
MM...............MMMMM88~.........+MM..ZMMMMMMMMMMMMMMMMMMMM
MM.......$DDDDDDD.......$DDDDD..DDNMM..ZMMMMMMMMMMMMMMMMMMMM
MM.......$DDDDDDD.......$DDDDD..DDNMM..ZMMMMMMMMMMMMMMMMMMMM
MM.......ZMMMMMMM.......ZMMMMM..MMMMM..ZMMMMMMMMMMMMMMMMMMMM
MMMMMMMMM+.......MMMMM88NMMMMM..MMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMM+.......MMMMM88NMMMMM..MMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM*/

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"token","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":true,"internalType":"bytes32","name":"vega_public_key","type":"bytes32"}],"name":"Stake_Deposited","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":true,"internalType":"bytes32","name":"vega_public_key","type":"bytes32"}],"name":"Stake_Removed","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":true,"internalType":"bytes32","name":"vega_public_key","type":"bytes32"}],"name":"Stake_Transferred","type":"event"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"bytes32","name":"vega_public_key","type":"bytes32"}],"name":"remove_stake","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"bytes32","name":"vega_public_key","type":"bytes32"}],"name":"stake","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes32","name":"vega_public_key","type":"bytes32"}],"name":"stake_balance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"staking_token","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"total_staked","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"address","name":"new_address","type":"address"},{"internalType":"bytes32","name":"vega_public_key","type":"bytes32"}],"name":"transfer_stake","outputs":[],"stateMutability":"nonpayable","type":"function"}]

608060405234801561001057600080fd5b50604051610b58380380610b588339818101604052810190610032919061008d565b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550506100ff565b600081519050610087816100e8565b92915050565b60006020828403121561009f57600080fd5b60006100ad84828501610078565b91505092915050565b60006100c1826100c8565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6100f1816100b6565b81146100fc57600080fd5b50565b610a4a8061010e6000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c8063274abf34146100675780632dc7d74c1461009757806348c66e13146100b557806383c592cf146100d1578063af7568dd146100ed578063dd01ba0b1461010b575b600080fd5b610081600480360381019061007c91906106e0565b610127565b60405161008e9190610892565b60405180910390f35b61009f610182565b6040516100ac9190610817565b60405180910390f35b6100cf60048036038101906100ca919061076e565b6101ab565b005b6100eb60048036038101906100e691906107bd565b6102e4565b005b6100f5610456565b6040516101029190610892565b60405180910390f35b610125600480360381019061012091906107bd565b610507565b005b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002054905092915050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b82600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000838152602001908152602001600020600082825461020b9190610903565b9250508190555082600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000838152602001908152602001600020600082825461027291906108ad565b92505081905550808273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f296aca09e6f616abedcd9cd45ac378207310452b7a713289374fd1b35e2c2fbe866040516102d79190610892565b60405180910390a4505050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd3330856040518463ffffffff1660e01b815260040161034193929190610832565b602060405180830381600087803b15801561035b57600080fd5b505af115801561036f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610393919061071c565b61039c57600080fd5b81600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002060008282546103fc91906108ad565b92505081905550803373ffffffffffffffffffffffffffffffffffffffff167f9e3e33edf5dcded4adabc51b1266225d00fa41516bfcad69513fa4eca69519da8460405161044a9190610892565b60405180910390a35050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b81526004016104b29190610817565b60206040518083038186803b1580156104ca57600080fd5b505afa1580156104de573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105029190610745565b905090565b81600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002060008282546105679190610903565b9250508190555060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33846040518363ffffffff1660e01b81526004016105c9929190610869565b602060405180830381600087803b1580156105e357600080fd5b505af11580156105f7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061061b919061071c565b61062457600080fd5b803373ffffffffffffffffffffffffffffffffffffffff167fa131d16963736e4c641f27a7f82f2e350b5971e555ae06ae906892bbba0a09398460405161066b9190610892565b60405180910390a35050565b600081359050610686816109b8565b92915050565b60008151905061069b816109cf565b92915050565b6000813590506106b0816109e6565b92915050565b6000813590506106c5816109fd565b92915050565b6000815190506106da816109fd565b92915050565b600080604083850312156106f357600080fd5b600061070185828601610677565b9250506020610712858286016106a1565b9150509250929050565b60006020828403121561072e57600080fd5b600061073c8482850161068c565b91505092915050565b60006020828403121561075757600080fd5b6000610765848285016106cb565b91505092915050565b60008060006060848603121561078357600080fd5b6000610791868287016106b6565b93505060206107a286828701610677565b92505060406107b3868287016106a1565b9150509250925092565b600080604083850312156107d057600080fd5b60006107de858286016106b6565b92505060206107ef858286016106a1565b9150509250929050565b61080281610937565b82525050565b6108118161097f565b82525050565b600060208201905061082c60008301846107f9565b92915050565b600060608201905061084760008301866107f9565b61085460208301856107f9565b6108616040830184610808565b949350505050565b600060408201905061087e60008301856107f9565b61088b6020830184610808565b9392505050565b60006020820190506108a76000830184610808565b92915050565b60006108b88261097f565b91506108c38361097f565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156108f8576108f7610989565b5b828201905092915050565b600061090e8261097f565b91506109198361097f565b92508282101561092c5761092b610989565b5b828203905092915050565b60006109428261095f565b9050919050565b60008115159050919050565b6000819050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6109c181610937565b81146109cc57600080fd5b50565b6109d881610949565b81146109e357600080fd5b50565b6109ef81610955565b81146109fa57600080fd5b50565b610a068161097f565b8114610a1157600080fd5b5056fea26469706673582212206b33e3e443456e1fdcb04dca474d33e6008802f4d31ef8464a30604b516b197564736f6c63430008010033000000000000000000000000cb84d72e61e383767c4dfeb2d8ff7f4fb89abc6e

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106100625760003560e01c8063274abf34146100675780632dc7d74c1461009757806348c66e13146100b557806383c592cf146100d1578063af7568dd146100ed578063dd01ba0b1461010b575b600080fd5b610081600480360381019061007c91906106e0565b610127565b60405161008e9190610892565b60405180910390f35b61009f610182565b6040516100ac9190610817565b60405180910390f35b6100cf60048036038101906100ca919061076e565b6101ab565b005b6100eb60048036038101906100e691906107bd565b6102e4565b005b6100f5610456565b6040516101029190610892565b60405180910390f35b610125600480360381019061012091906107bd565b610507565b005b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002054905092915050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b82600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000838152602001908152602001600020600082825461020b9190610903565b9250508190555082600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000838152602001908152602001600020600082825461027291906108ad565b92505081905550808273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f296aca09e6f616abedcd9cd45ac378207310452b7a713289374fd1b35e2c2fbe866040516102d79190610892565b60405180910390a4505050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd3330856040518463ffffffff1660e01b815260040161034193929190610832565b602060405180830381600087803b15801561035b57600080fd5b505af115801561036f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610393919061071c565b61039c57600080fd5b81600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002060008282546103fc91906108ad565b92505081905550803373ffffffffffffffffffffffffffffffffffffffff167f9e3e33edf5dcded4adabc51b1266225d00fa41516bfcad69513fa4eca69519da8460405161044a9190610892565b60405180910390a35050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b81526004016104b29190610817565b60206040518083038186803b1580156104ca57600080fd5b505afa1580156104de573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105029190610745565b905090565b81600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002060008282546105679190610903565b9250508190555060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33846040518363ffffffff1660e01b81526004016105c9929190610869565b602060405180830381600087803b1580156105e357600080fd5b505af11580156105f7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061061b919061071c565b61062457600080fd5b803373ffffffffffffffffffffffffffffffffffffffff167fa131d16963736e4c641f27a7f82f2e350b5971e555ae06ae906892bbba0a09398460405161066b9190610892565b60405180910390a35050565b600081359050610686816109b8565b92915050565b60008151905061069b816109cf565b92915050565b6000813590506106b0816109e6565b92915050565b6000813590506106c5816109fd565b92915050565b6000815190506106da816109fd565b92915050565b600080604083850312156106f357600080fd5b600061070185828601610677565b9250506020610712858286016106a1565b9150509250929050565b60006020828403121561072e57600080fd5b600061073c8482850161068c565b91505092915050565b60006020828403121561075757600080fd5b6000610765848285016106cb565b91505092915050565b60008060006060848603121561078357600080fd5b6000610791868287016106b6565b93505060206107a286828701610677565b92505060406107b3868287016106a1565b9150509250925092565b600080604083850312156107d057600080fd5b60006107de858286016106b6565b92505060206107ef858286016106a1565b9150509250929050565b61080281610937565b82525050565b6108118161097f565b82525050565b600060208201905061082c60008301846107f9565b92915050565b600060608201905061084760008301866107f9565b61085460208301856107f9565b6108616040830184610808565b949350505050565b600060408201905061087e60008301856107f9565b61088b6020830184610808565b9392505050565b60006020820190506108a76000830184610808565b92915050565b60006108b88261097f565b91506108c38361097f565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156108f8576108f7610989565b5b828201905092915050565b600061090e8261097f565b91506109198361097f565b92508282101561092c5761092b610989565b5b828203905092915050565b60006109428261095f565b9050919050565b60008115159050919050565b6000819050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6109c181610937565b81146109cc57600080fd5b50565b6109d881610949565b81146109e357600080fd5b50565b6109ef81610955565b81146109fa57600080fd5b50565b610a068161097f565b8114610a1157600080fd5b5056fea26469706673582212206b33e3e443456e1fdcb04dca474d33e6008802f4d31ef8464a30604b516b197564736f6c63430008010033

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

000000000000000000000000cb84d72e61e383767c4dfeb2d8ff7f4fb89abc6e

-----Decoded View---------------
Arg [0] : token (address): 0xcB84d72e61e383767C4DFEb2d8ff7f4FB89abc6e

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000cb84d72e61e383767c4dfeb2d8ff7f4fb89abc6e


Deployed Bytecode Sourcemap

3864:2838:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6317:157;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5981:100;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5585:283;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4437:271;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6567:132;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4982:257;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6317:157;6413:7;6437:6;:14;6444:6;6437:14;;;;;;;;;;;;;;;:31;6452:15;6437:31;;;;;;;;;;;;6429:39;;6317:157;;;;:::o;5981:100::-;6038:7;6061:14;;;;;;;;;;;6054:21;;5981:100;:::o;5585:283::-;5724:6;5685;:18;5692:10;5685:18;;;;;;;;;;;;;;;:35;5704:15;5685:35;;;;;;;;;;;;:45;;;;;;;:::i;:::-;;;;;;;;5777:6;5737;:19;5744:11;5737:19;;;;;;;;;;;;;;;:36;5757:15;5737:36;;;;;;;;;;;;:46;;;;;;;:::i;:::-;;;;;;;;5846:15;5833:11;5795:67;;5813:10;5795:67;;;5825:6;5795:67;;;;;;:::i;:::-;;;;;;;;5585:283;;;:::o;4437:271::-;4522:14;;;;;;;;;;4515:35;;;4551:10;4571:4;4578:6;4515:70;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4507:79;;;;;;4632:6;4593;:18;4600:10;4593:18;;;;;;;;;;;;;;;:35;4612:15;4593:35;;;;;;;;;;;;:45;;;;;;;:::i;:::-;;;;;;;;4686:15;4666:10;4650:52;;;4678:6;4650:52;;;;;;:::i;:::-;;;;;;;;4437:271;;:::o;6567:132::-;6623:7;6653:14;;;;;;;;;;;6646:32;;;6687:4;6646:47;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6639:54;;6567:132;:::o;4982:257::-;5098:6;5059;:18;5066:10;5059:18;;;;;;;;;;;;;;;:35;5078:15;5059:35;;;;;;;;;;;;:45;;;;;;;:::i;:::-;;;;;;;;5126:14;;;;;;;;;;5119:31;;;5151:10;5163:6;5119:51;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5111:60;;;;;;5217:15;5197:10;5183:50;;;5209:6;5183:50;;;;;;:::i;:::-;;;;;;;;4982:257;;:::o;7:139:1:-;;91:6;78:20;69:29;;107:33;134:5;107:33;:::i;:::-;59:87;;;;:::o;152:137::-;;237:6;231:13;222:22;;253:30;277:5;253:30;:::i;:::-;212:77;;;;:::o;295:139::-;;379:6;366:20;357:29;;395:33;422:5;395:33;:::i;:::-;347:87;;;;:::o;440:139::-;;524:6;511:20;502:29;;540:33;567:5;540:33;:::i;:::-;492:87;;;;:::o;585:143::-;;673:6;667:13;658:22;;689:33;716:5;689:33;:::i;:::-;648:80;;;;:::o;734:407::-;;;859:2;847:9;838:7;834:23;830:32;827:2;;;875:1;872;865:12;827:2;918:1;943:53;988:7;979:6;968:9;964:22;943:53;:::i;:::-;933:63;;889:117;1045:2;1071:53;1116:7;1107:6;1096:9;1092:22;1071:53;:::i;:::-;1061:63;;1016:118;817:324;;;;;:::o;1147:278::-;;1263:2;1251:9;1242:7;1238:23;1234:32;1231:2;;;1279:1;1276;1269:12;1231:2;1322:1;1347:61;1400:7;1391:6;1380:9;1376:22;1347:61;:::i;:::-;1337:71;;1293:125;1221:204;;;;:::o;1431:284::-;;1550:2;1538:9;1529:7;1525:23;1521:32;1518:2;;;1566:1;1563;1556:12;1518:2;1609:1;1634:64;1690:7;1681:6;1670:9;1666:22;1634:64;:::i;:::-;1624:74;;1580:128;1508:207;;;;:::o;1721:552::-;;;;1863:2;1851:9;1842:7;1838:23;1834:32;1831:2;;;1879:1;1876;1869:12;1831:2;1922:1;1947:53;1992:7;1983:6;1972:9;1968:22;1947:53;:::i;:::-;1937:63;;1893:117;2049:2;2075:53;2120:7;2111:6;2100:9;2096:22;2075:53;:::i;:::-;2065:63;;2020:118;2177:2;2203:53;2248:7;2239:6;2228:9;2224:22;2203:53;:::i;:::-;2193:63;;2148:118;1821:452;;;;;:::o;2279:407::-;;;2404:2;2392:9;2383:7;2379:23;2375:32;2372:2;;;2420:1;2417;2410:12;2372:2;2463:1;2488:53;2533:7;2524:6;2513:9;2509:22;2488:53;:::i;:::-;2478:63;;2434:117;2590:2;2616:53;2661:7;2652:6;2641:9;2637:22;2616:53;:::i;:::-;2606:63;;2561:118;2362:324;;;;;:::o;2692:118::-;2779:24;2797:5;2779:24;:::i;:::-;2774:3;2767:37;2757:53;;:::o;2816:118::-;2903:24;2921:5;2903:24;:::i;:::-;2898:3;2891:37;2881:53;;:::o;2940:222::-;;3071:2;3060:9;3056:18;3048:26;;3084:71;3152:1;3141:9;3137:17;3128:6;3084:71;:::i;:::-;3038:124;;;;:::o;3168:442::-;;3355:2;3344:9;3340:18;3332:26;;3368:71;3436:1;3425:9;3421:17;3412:6;3368:71;:::i;:::-;3449:72;3517:2;3506:9;3502:18;3493:6;3449:72;:::i;:::-;3531;3599:2;3588:9;3584:18;3575:6;3531:72;:::i;:::-;3322:288;;;;;;:::o;3616:332::-;;3775:2;3764:9;3760:18;3752:26;;3788:71;3856:1;3845:9;3841:17;3832:6;3788:71;:::i;:::-;3869:72;3937:2;3926:9;3922:18;3913:6;3869:72;:::i;:::-;3742:206;;;;;:::o;3954:222::-;;4085:2;4074:9;4070:18;4062:26;;4098:71;4166:1;4155:9;4151:17;4142:6;4098:71;:::i;:::-;4052:124;;;;:::o;4182:305::-;;4241:20;4259:1;4241:20;:::i;:::-;4236:25;;4275:20;4293:1;4275:20;:::i;:::-;4270:25;;4429:1;4361:66;4357:74;4354:1;4351:81;4348:2;;;4435:18;;:::i;:::-;4348:2;4479:1;4476;4472:9;4465:16;;4226:261;;;;:::o;4493:191::-;;4553:20;4571:1;4553:20;:::i;:::-;4548:25;;4587:20;4605:1;4587:20;:::i;:::-;4582:25;;4626:1;4623;4620:8;4617:2;;;4631:18;;:::i;:::-;4617:2;4676:1;4673;4669:9;4661:17;;4538:146;;;;:::o;4690:96::-;;4756:24;4774:5;4756:24;:::i;:::-;4745:35;;4735:51;;;:::o;4792:90::-;;4869:5;4862:13;4855:21;4844:32;;4834:48;;;:::o;4888:77::-;;4954:5;4943:16;;4933:32;;;:::o;4971:126::-;;5048:42;5041:5;5037:54;5026:65;;5016:81;;;:::o;5103:77::-;;5169:5;5158:16;;5148:32;;;:::o;5186:180::-;5234:77;5231:1;5224:88;5331:4;5328:1;5321:15;5355:4;5352:1;5345:15;5372:122;5445:24;5463:5;5445:24;:::i;:::-;5438:5;5435:35;5425:2;;5484:1;5481;5474:12;5425:2;5415:79;:::o;5500:116::-;5570:21;5585:5;5570:21;:::i;:::-;5563:5;5560:32;5550:2;;5606:1;5603;5596:12;5550:2;5540:76;:::o;5622:122::-;5695:24;5713:5;5695:24;:::i;:::-;5688:5;5685:35;5675:2;;5734:1;5731;5724:12;5675:2;5665:79;:::o;5750:122::-;5823:24;5841:5;5823:24;:::i;:::-;5816:5;5813:35;5803:2;;5862:1;5859;5852:12;5803:2;5793:79;:::o

Swarm Source

ipfs://6b33e3e443456e1fdcb04dca474d33e6008802f4d31ef8464a30604b516b1975
Loading...
Loading
[ Download: CSV Export  ]

A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.