ETH Price: $2,606.26 (-0.58%)

Token

MiniApps (MAT)
 

Overview

Max Total Supply

10,624,482.461137533912144041 MAT

Holders

775

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Filtered by Token Holder
Ethplorer: Donate
Balance
0.812 MAT

Value
$0.00
0x0dE0BCb0703ff8F1aEb8C892eDbE692683bD8030
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:
MatBase

Compiler Version
v0.4.17+commit.bdeb9e52

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2017-10-17
*/

pragma solidity ^0.4.13;

library SafeMath {
  function mul(uint256 a, uint256 b) internal constant returns (uint256) {
    uint256 c = a * b;
    assert(a == 0 || c / a == b);
    return c;
  }

  function div(uint256 a, uint256 b) internal constant returns (uint256) {
    // assert(b > 0); // Solidity automatically throws when dividing by 0
    uint256 c = a / b;
    // assert(a == b * c + a % b); // There is no case in which this doesn't hold
    return c;
  }

  function sub(uint256 a, uint256 b) internal constant returns (uint256) {
    assert(b <= a);
    return a - b;
  }

  function add(uint256 a, uint256 b) internal constant returns (uint256) {
    uint256 c = a + b;
    assert(c >= a);
    return c;
  }
}

contract Ownable {
  address public owner;
  event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
  function Ownable() {
    owner = msg.sender;
  }
  modifier onlyOwner() {
    require(msg.sender == owner);
    _;
  }
  function transferOwnership(address newOwner) onlyOwner public {
    require(newOwner != address(0));
    OwnershipTransferred(owner, newOwner);
    owner = newOwner;
  }

}

contract ERC20Basic {
  uint256 public totalSupply;
  function balanceOf(address who) public constant returns (uint256);
  function transfer(address to, uint256 value) public returns (bool);
  event Transfer(address indexed from, address indexed to, uint256 value);
}

contract ERC20 is ERC20Basic {
  function allowance(address owner, address spender) public constant returns (uint256);
  function transferFrom(address from, address to, uint256 value) public returns (bool);
  function approve(address spender, uint256 value) public returns (bool);
  event Approval(address indexed owner, address indexed spender, uint256 value);
}

contract BasicToken is ERC20Basic, Ownable {
  using SafeMath for uint256;

  mapping(address => uint256) balances;

  bool transferAllowed = false;

  function setTransferAllowed(bool _transferAllowed) public onlyOwner {
    transferAllowed = _transferAllowed;
  }

  /**
  * @dev transfer token for a specified address
  * @param _to The address to transfer to.
  * @param _value The amount to be transferred.
  */
  function transfer(address _to, uint256 _value) public returns (bool) {
    require(_to != address(0));
    require(_value <= balances[msg.sender]);
    require(transferAllowed);

    // SafeMath.sub will throw if there is not enough balance.
    balances[msg.sender] = balances[msg.sender].sub(_value);
    balances[_to] = balances[_to].add(_value);
    Transfer(msg.sender, _to, _value);
    return true;
  }

  /**
  * @dev Gets the balance of the specified address.
  * @param _owner The address to query the the balance of.
  * @return An uint256 representing the amount owned by the passed address.
  */
  function balanceOf(address _owner) public constant returns (uint256 balance) {
    return balances[_owner];
  }
}
//StandardToken.sol
contract StandardToken is ERC20, BasicToken {
  using SafeMath for uint256;

  mapping (address => mapping (address => uint256)) internal allowed;


  /**
   * @dev Transfer tokens from one address to another
   * @param _from address The address which you want to send tokens from
   * @param _to address The address which you want to transfer to
   * @param _value uint256 the amount of tokens to be transferred
   */
  function transferFrom(address _from, address _to, uint256 _value) public returns (bool) {
    require(_to != address(0));
    require(_value <= balances[_from]);
    require(_value <= allowed[_from][msg.sender]);
    require(transferAllowed);

    balances[_from] = balances[_from].sub(_value);
    balances[_to] = balances[_to].add(_value);
    allowed[_from][msg.sender] = allowed[_from][msg.sender].sub(_value);
    Transfer(_from, _to, _value);
    return true;
  }

  /**
   * @dev Approve the passed address to spend the specified amount of tokens on behalf of msg.sender.
   *
   * 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
   * @param _spender The address which will spend the funds.
   * @param _value The amount of tokens to be spent.
   */
  function approve(address _spender, uint256 _value) public returns (bool) {
    require((_value == 0) || (allowed[msg.sender][_spender] == 0));
    allowed[msg.sender][_spender] = _value;
    Approval(msg.sender, _spender, _value);
    return true;
  }

  /**
   * @dev Function to check the amount of tokens that an owner allowed to a spender.
   * @param _owner address The address which owns the funds.
   * @param _spender address The address which will spend the funds.
   * @return A uint256 specifying the amount of tokens still available for the spender.
   */
  function allowance(address _owner, address _spender) public constant returns (uint256 remaining) {
    return allowed[_owner][_spender];
  }
}

contract MatToken is Ownable, StandardToken {
  string public constant name = "MiniApps Token";
  string public constant symbol = "MAT";
  uint   public constant decimals = 18;
  
  // token units
  uint256 public constant MAT_UNIT = 10**uint256(decimals);
  uint256 constant MILLION_MAT = 10**6 * MAT_UNIT;
  uint256 constant THOUSAND_MAT = 10**3 * MAT_UNIT;

  // Token distribution: crowdsale - 50%, partners - 35%, team - 15%, total 20M  
  uint256 public constant MAT_CROWDSALE_SUPPLY_LIMIT = 10 * MILLION_MAT;
  uint256 public constant MAT_TEAM_SUPPLY_LIMIT = 7 * MILLION_MAT;
  uint256 public constant MAT_PARTNERS_SUPPLY_LIMIT = 3 * MILLION_MAT;
  uint256 public constant MAT_TOTAL_SUPPLY_LIMIT = MAT_CROWDSALE_SUPPLY_LIMIT + MAT_TEAM_SUPPLY_LIMIT + MAT_PARTNERS_SUPPLY_LIMIT;
}

contract MatBonus is MatToken {
  uint256 public constant TOTAL_SUPPLY_UPPER_BOUND = 14000 * THOUSAND_MAT;
  uint256 public constant TOTAL_SUPPLY_BOTTOM_BOUND = 11600 * THOUSAND_MAT;

  function calcBonus(uint256 tokens) internal returns (uint256){
    if (totalSupply <= TOTAL_SUPPLY_BOTTOM_BOUND)
      return tokens.mul(8).div(100);
    else if (totalSupply > TOTAL_SUPPLY_BOTTOM_BOUND && totalSupply <= TOTAL_SUPPLY_UPPER_BOUND)
      return tokens.mul(5).div(100);
    else
      return 0;
  }
}

contract MatBase is Ownable, MatToken, MatBonus {
 using SafeMath for uint256;
  
  uint256 public constant _START_DATE = 1508284800; //  Wednesday, 18-Oct-17 00:00:00 UTC in RFC 2822
  uint256 public constant _END_DATE = 1513641600; // Tuesday, 19-Dec-17 00:00:00 UTC in RFC 2822
  uint256 public constant CROWDSALE_PRICE = 100; // 100 MAT per ETH
  address public constant ICO_ADDRESS = 0x6075a5A0620861cfeF593a51A01aF0fF179168C7;
  address public constant PARTNERS_WALLET =  0x39467d5B39F1d24BC8479212CEd151ad469B0D7E;
  address public constant TEAM_WALLET = 0xe1d32147b08b2a7808026D4A94707E321ccc7150;

  // start and end timestamps where investments are allowed (both inclusive)
  uint256 public startTime;
  uint256 public endTime;
  function setStartTime(uint256 _startTime) onlyOwner
  {
    startTime = _startTime;
  }
  function setEndTime(uint256 _endTime) onlyOwner
  {
    endTime = _endTime;
  }

  // address  where funds are collected
  address public wallet;
  address public p_wallet;
  address public t_wallet;

  // total amount of raised money in wei
  uint256 public totalCollected;
  // how many token units a buyer gets per wei
  uint256 public rate;
  // @return true if crowdsale event has ended
  function hasEnded() public constant returns (bool) {
    return now > endTime;
  }
  event Mint(address indexed purchaser, uint256 amount);
  event Bonus(address indexed purchaser,uint256 amount);
  function mint(address _to, uint256 _tokens) internal returns (bool) {
    totalSupply = totalSupply.add(_tokens);
    require(totalSupply <= whiteListLimit);
    require(totalSupply <= MAT_TOTAL_SUPPLY_LIMIT);

    balances[_to] = balances[_to].add(_tokens);
    Mint(_to, _tokens);
    Transfer(0x0, _to, _tokens);
    return true;
  }
  // send ether to the fund collection wallet
  // override to create custom fund forwarding mechanisms
  function forwardFunds() internal {
    wallet.transfer(msg.value);
  }

  // @return true if the transaction can buy tokens
  function validPurchase() internal constant returns (bool) {
    bool withinPeriod = now >= startTime && now <= endTime;
    bool nonZeroPurchase = msg.value != 0;
    return withinPeriod && nonZeroPurchase;
  }
  /**
   * event for token purchase logging
   * @param purchaser who paid for the tokens
   * @param beneficiary who got the tokens
   * @param value weis paid for purchase
   * @param amountTokens amount of tokens purchased
   */
  event TokenPurchase(address indexed purchaser, address indexed beneficiary, uint256 value, uint256 amountTokens,
    string referral);

  // fallback function can be used to buy tokens
  function () payable {
    buyTokens(msg.sender);
  }

  // low level token purchase function
  function buyTokens(address beneficiary) public payable {
    buyTokensReferral(beneficiary, "");
  }

  // low level token purchase function
  function buyTokensReferral(address beneficiary, string referral) public payable {
    require(msg.value > 0);
    require(beneficiary != 0x0);
    require(validPurchase());

    uint256 weiAmount = msg.value;

    // calculate token amount to be created
    uint256 tokens = weiAmount.mul(rate);
    uint256 bonus = calcBonus(tokens);

    // update state
    totalCollected = totalCollected.add(weiAmount);

    if (!buyTokenWL(tokens)) mint(beneficiary, bonus);
    mint(beneficiary, tokens);
    TokenPurchase(msg.sender, beneficiary, weiAmount, tokens, referral);
    forwardFunds();
  }

//whitelist
  bool isWhitelistOn;
  uint256 public whiteListLimit;

  enum WLS {notlisted,listed,fulfilled}
  struct FundReservation {
    WLS status;
    uint256  reserved;
  }
  mapping ( address => FundReservation ) whitelist;

  function stopWhitelistReservetion() onlyOwner public { 
    whiteListLimit = MAT_TOTAL_SUPPLY_LIMIT; 
  }

  function setWhiteListStatus(bool _isWhitelistOn) onlyOwner public {
    isWhitelistOn = _isWhitelistOn;
  }

  function buyTokenWL(uint256 tokens) internal returns (bool)
  { 
    require(isWhitelistOn);
    require(now >= startTime);
    if (whitelist[msg.sender].status == WLS.listed) {
      uint256 reservation = whitelist[msg.sender].reserved;
      uint256 low = reservation.mul(9).div(10);
      uint256 upper = reservation.mul(11).div(10);
      
      if( low <= msg.value && msg.value <= upper) {
        whitelist[msg.sender].status == WLS.fulfilled;
        uint256 bonus = tokens / 10;
        mint(msg.sender, bonus);
        Bonus(msg.sender,bonus);
        return true;
      }
    }
    return false;
  }
  event White(address indexed to, uint256 reservation);
  function regWL(address wlmember, uint256 reservation) onlyOwner public returns (bool status)
  {
    require(now < endTime);
    require(whitelist[wlmember].status == WLS.notlisted);
    
    whitelist[wlmember].status = WLS.listed;
    whitelist[wlmember].reserved = reservation;
    
    whiteListLimit = whiteListLimit.sub(reservation.mul(CROWDSALE_PRICE).mul(11).div(10));
    White(wlmember,reservation);
    return true;
  }
  address public constant PRESALE_CONTRACT = 0x503FE694CE047eCB51952b79eCAB2A907Afe8ACd;
    /**
   * @dev presale token conversion 
   *
   * @param _to holder of presale tokens
   * @param _pretokens The amount of presale tokens to be spent.
   * @param _tokens The amount of presale tokens to be minted on crowdsale, the rest transfer from partners pool
   */
  function convert(address _to, uint256 _pretokens, uint256 _tokens) onlyOwner public returns (bool){
    require(now <= endTime);
    require(_to != address(0));
    require(_pretokens >=  _tokens);
    
    mint(_to, _tokens); //implicit transfer event
    
    uint256 theRest = _pretokens.sub(_tokens);
    require(balances[PARTNERS_WALLET] >= theRest);
    
    if (theRest > 0) {
      balances[PARTNERS_WALLET] = balances[PARTNERS_WALLET].sub(theRest);
      balances[_to] = balances[_to].add(theRest);
      Transfer(PARTNERS_WALLET, _to, theRest); //explicit transfer event
    }
    uint256 amount = _pretokens.div(rate);
    totalCollected = totalCollected.add(amount);
    return true;
  }
  function MatBase() {
    startTime = _START_DATE;
    endTime = _END_DATE;
    wallet = ICO_ADDRESS;
    rate = CROWDSALE_PRICE;
    p_wallet = PARTNERS_WALLET;
    t_wallet = TEAM_WALLET;
    balances[p_wallet] =  MAT_PARTNERS_SUPPLY_LIMIT;
    balances[t_wallet] = MAT_TEAM_SUPPLY_LIMIT;
    totalSupply = MAT_PARTNERS_SUPPLY_LIMIT + MAT_TEAM_SUPPLY_LIMIT;
    whiteListLimit = MAT_TOTAL_SUPPLY_LIMIT;
  }
}

Contract Security Audit

Contract ABI

[{"constant":false,"inputs":[],"name":"stopWhitelistReservetion","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"MAT_TEAM_SUPPLY_LIMIT","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"MAT_UNIT","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"TEAM_WALLET","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"TOTAL_SUPPLY_UPPER_BOUND","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"rate","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"endTime","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"PRESALE_CONTRACT","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_startTime","type":"uint256"}],"name":"setStartTime","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"wallet","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"t_wallet","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_pretokens","type":"uint256"},{"name":"_tokens","type":"uint256"}],"name":"convert","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"_END_DATE","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"MAT_PARTNERS_SUPPLY_LIMIT","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"startTime","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"TOTAL_SUPPLY_BOTTOM_BOUND","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_isWhitelistOn","type":"bool"}],"name":"setWhiteListStatus","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"MAT_CROWDSALE_SUPPLY_LIMIT","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"CROWDSALE_PRICE","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"_START_DATE","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_transferAllowed","type":"bool"}],"name":"setTransferAllowed","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_endTime","type":"uint256"}],"name":"setEndTime","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"p_wallet","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"whiteListLimit","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"beneficiary","type":"address"},{"name":"referral","type":"string"}],"name":"buyTokensReferral","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[],"name":"PARTNERS_WALLET","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"remaining","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalCollected","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"beneficiary","type":"address"}],"name":"buyTokens","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[],"name":"hasEnded","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ICO_ADDRESS","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"MAT_TOTAL_SUPPLY_LIMIT","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"wlmember","type":"address"},{"name":"reservation","type":"uint256"}],"name":"regWL","outputs":[{"name":"status","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":true,"name":"purchaser","type":"address"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"Mint","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"purchaser","type":"address"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"Bonus","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"purchaser","type":"address"},{"indexed":true,"name":"beneficiary","type":"address"},{"indexed":false,"name":"value","type":"uint256"},{"indexed":false,"name":"amountTokens","type":"uint256"},{"indexed":false,"name":"referral","type":"string"}],"name":"TokenPurchase","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"reservation","type":"uint256"}],"name":"White","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"},{"indexed":true,"name":"spender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Transfer","type":"event"}]

60606040526003805460ff19169055341561001957600080fd5b60018054600160a060020a03338116600160a060020a0319928316179092556359e69980600555635a385680600655600780548216736075a5a0620861cfef593a51a01af0ff179168c71790556064600b556008805482167339467d5b39f1d24bc8479212ced151ad469b0d7e17908190556009805490921673e1d32147b08b2a7808026d4a94707e321ccc715017825582166000908152600260205260408082206a027b46536c66c8e300000090559154909216825281206a05ca4ec2a79a7f6700000090556a084595161401484a00000090556a108b2a2c28029094000000600d556115ab8061010c6000396000f3006060604052361561020c5763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166301bbc3f5811461021757806306fdde031461022a57806308753085146102b4578063095ea7b3146102d957806318160ddd1461030f57806323b872dd146103225780632a46d0791461034a5780632b905bf61461035d5780632be5e93a1461038c5780632c4e722e1461039f578063313ce567146103b25780633197cbb6146103c557806337ff2506146103d85780633e0a322d146103eb578063521eb2731461040157806356c290b8146104145780636310c7221461042757806370a082311461044c578063752551c91461046b578063783932371461047e57806378e97925146104915780638da5cb5b146104a457806395d89b41146104b75780639b21929a146104ca5780639b27bf3a146104dd5780639d1eb451146104f5578063a86416e214610508578063a9059cbb1461051b578063ab5aa3021461053d578063b3942cbd14610550578063ccb98ffc14610568578063ce99151e1461057e578063d244059a14610591578063d8ac1bb3146105a4578063dd1aa549146105f8578063dd62ed3e1461060b578063e29eb83614610630578063ec8ac4d814610643578063ecb70fb714610657578063f02895e41461066a578063f28b824e1461067d578063f2fde38b14610690578063f9c811f1146106af575b610215336106d1565b005b341561022257600080fd5b6102156106ec565b341561023557600080fd5b61023d610718565b60405160208082528190810183818151815260200191508051906020019080838360005b83811015610279578082015183820152602001610261565b50505050905090810190601f1680156102a65780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156102bf57600080fd5b6102c761074f565b60405190815260200160405180910390f35b34156102e457600080fd5b6102fb600160a060020a036004351660243561075e565b604051901515815260200160405180910390f35b341561031a57600080fd5b6102c7610804565b341561032d57600080fd5b6102fb600160a060020a036004358116906024351660443561080a565b341561035557600080fd5b6102c761098b565b341561036857600080fd5b610370610997565b604051600160a060020a03909116815260200160405180910390f35b341561039757600080fd5b6102c76109af565b34156103aa57600080fd5b6102c76109be565b34156103bd57600080fd5b6102c76109c4565b34156103d057600080fd5b6102c76109c9565b34156103e357600080fd5b6103706109cf565b34156103f657600080fd5b6102156004356109e7565b341561040c57600080fd5b610370610a07565b341561041f57600080fd5b610370610a16565b341561043257600080fd5b6102fb600160a060020a0360043516602435604435610a25565b341561045757600080fd5b6102c7600160a060020a0360043516610c15565b341561047657600080fd5b6102c7610c34565b341561048957600080fd5b6102c7610c3c565b341561049c57600080fd5b6102c7610c4b565b34156104af57600080fd5b610370610c51565b34156104c257600080fd5b61023d610c60565b34156104d557600080fd5b6102c7610c97565b34156104e857600080fd5b6102156004351515610ca6565b341561050057600080fd5b6102c7610cd4565b341561051357600080fd5b6102c7610ce3565b341561052657600080fd5b6102fb600160a060020a0360043516602435610ce8565b341561054857600080fd5b6102c7610de2565b341561055b57600080fd5b6102156004351515610dea565b341561057357600080fd5b610215600435610e18565b341561058957600080fd5b610370610e38565b341561059c57600080fd5b6102c7610e47565b61021560048035600160a060020a03169060446024803590810190830135806020601f82018190048102016040519081016040528181529291906020840183838082843750949650610e4d95505050505050565b341561060357600080fd5b610370610fb3565b341561061657600080fd5b6102c7600160a060020a0360043581169060243516610fcb565b341561063b57600080fd5b6102c7610ff6565b610215600160a060020a03600435166106d1565b341561066257600080fd5b6102fb610ffc565b341561067557600080fd5b610370611004565b341561068857600080fd5b6102c761101c565b341561069b57600080fd5b610215600160a060020a036004351661102b565b34156106ba57600080fd5b6102fb600160a060020a03600435166024356110c6565b6106e981602060405190810160405260008152610e4d565b50565b60015433600160a060020a0390811691161461070757600080fd5b6a108b2a2c28029094000000600d55565b60408051908101604052600e81527f4d696e694170707320546f6b656e000000000000000000000000000000000000602082015281565b6a05ca4ec2a79a7f6700000081565b60008115806107905750600160a060020a03338116600090815260046020908152604080832093871683529290522054155b151561079b57600080fd5b600160a060020a03338116600081815260046020908152604080832094881680845294909152908190208590557f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a350600192915050565b60005481565b6000600160a060020a038316151561082157600080fd5b600160a060020a03841660009081526002602052604090205482111561084657600080fd5b600160a060020a038085166000908152600460209081526040808320339094168352929052205482111561087957600080fd5b60035460ff16151561088a57600080fd5b600160a060020a0384166000908152600260205260409020546108b3908363ffffffff6111d416565b600160a060020a0380861660009081526002602052604080822093909355908516815220546108e8908363ffffffff6111e616565b600160a060020a03808516600090815260026020908152604080832094909455878316825260048152838220339093168252919091522054610930908363ffffffff6111d416565b600160a060020a03808616600081815260046020908152604080832033861684529091529081902093909355908516916000805160206115608339815191529085905190815260200160405180910390a35060019392505050565b670de0b6b3a764000081565b73e1d32147b08b2a7808026d4a94707e321ccc715081565b6a0b949d854f34fece00000081565b600b5481565b601281565b60065481565b73503fe694ce047ecb51952b79ecab2a907afe8acd81565b60015433600160a060020a03908116911614610a0257600080fd5b600555565b600754600160a060020a031681565b600954600160a060020a031681565b6001546000908190819033600160a060020a03908116911614610a4757600080fd5b600654421115610a5657600080fd5b600160a060020a0386161515610a6b57600080fd5b83851015610a7857600080fd5b610a8286856111fc565b50610a93858563ffffffff6111d416565b7339467d5b39f1d24bc8479212ced151ad469b0d7e60005260026020527feb7af94d777e7a65b80f0fbc0979d371239d45320477c2d2b5141271d64371275490925082901015610ae257600080fd5b6000821115610bdc577339467d5b39f1d24bc8479212ced151ad469b0d7e60005260026020527feb7af94d777e7a65b80f0fbc0979d371239d45320477c2d2b5141271d643712754610b3a908363ffffffff6111d416565b60026020527feb7af94d777e7a65b80f0fbc0979d371239d45320477c2d2b5141271d643712755600160a060020a03861660009081526040902054610b85908363ffffffff6111e616565b600160a060020a0387166000818152600260205260409081902092909255907339467d5b39f1d24bc8479212ced151ad469b0d7e906000805160206115608339815191529085905190815260200160405180910390a35b600b54610bf090869063ffffffff6112f016565b600a54909150610c06908263ffffffff6111e616565b600a5550600195945050505050565b600160a060020a0381166000908152600260205260409020545b919050565b635a38568081565b6a027b46536c66c8e300000081565b60055481565b600154600160a060020a031681565b60408051908101604052600381527f4d41540000000000000000000000000000000000000000000000000000000000602082015281565b6a099865429215f7b200000081565b60015433600160a060020a03908116911614610cc157600080fd5b600c805460ff1916911515919091179055565b6a084595161401484a00000081565b606481565b6000600160a060020a0383161515610cff57600080fd5b600160a060020a033316600090815260026020526040902054821115610d2457600080fd5b60035460ff161515610d3557600080fd5b600160a060020a033316600090815260026020526040902054610d5e908363ffffffff6111d416565b600160a060020a033381166000908152600260205260408082209390935590851681522054610d93908363ffffffff6111e616565b600160a060020a0380851660008181526002602052604090819020939093559133909116906000805160206115608339815191529085905190815260200160405180910390a350600192915050565b6359e6998081565b60015433600160a060020a03908116911614610e0557600080fd5b6003805460ff1916911515919091179055565b60015433600160a060020a03908116911614610e3357600080fd5b600655565b600854600160a060020a031681565b600d5481565b6000808034819011610e5e57600080fd5b600160a060020a0385161515610e7357600080fd5b610e7b611307565b1515610e8657600080fd5b600b54349350610e9d90849063ffffffff61133716565b9150610ea88261135b565b600a54909150610ebe908463ffffffff6111e616565b600a55610eca826113dc565b1515610edc57610eda85826111fc565b505b610ee685836111fc565b5084600160a060020a031633600160a060020a03167fad7639fed4cff8f0323c3df489587b0139b4e1d902d441752ba7dcb69b1b80118585886040518084815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610f68578082015183820152602001610f50565b50505050905090810190601f168015610f955780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a3610fac611529565b5050505050565b7339467d5b39f1d24bc8479212ced151ad469b0d7e81565b600160a060020a03918216600090815260046020908152604080832093909416825291909152205490565b600a5481565b600654421190565b736075a5a0620861cfef593a51a01af0ff179168c781565b6a108b2a2c2802909400000081565b60015433600160a060020a0390811691161461104657600080fd5b600160a060020a038116151561105b57600080fd5b600154600160a060020a0380831691167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60015460009033600160a060020a039081169116146110e457600080fd5b60065442106110f257600080fd5b600160a060020a0383166000908152600e602052604081205460ff16600281111561111957fe5b1461112357600080fd5b600160a060020a0383166000908152600e60205260409020805460ff1916600190811782550182905561118b61117c600a611170600b611164876064611337565b9063ffffffff61133716565b9063ffffffff6112f016565b600d549063ffffffff6111d416565b600d55600160a060020a0383167f1ce1e1b8edef5e7a8c34dc1574b0a1c10c30000fbcec735c6f16a1d0ccfe24c88360405190815260200160405180910390a250600192915050565b6000828211156111e057fe5b50900390565b6000828201838110156111f557fe5b9392505050565b60008054611210908363ffffffff6111e616565b6000819055600d5490111561122457600080fd5b6000546a108b2a2c2802909400000090111561123f57600080fd5b600160a060020a038316600090815260026020526040902054611268908363ffffffff6111e616565b600160a060020a0384166000818152600260205260409081902092909255907f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d41213968859084905190815260200160405180910390a282600160a060020a031660006000805160206115608339815191528460405190815260200160405180910390a350600192915050565b60008082848115156112fe57fe5b04949350505050565b6000806000600554421015801561132057506006544211155b9150503415158180156113305750805b9250505090565b6000828202831580611353575082848281151561135057fe5b04145b15156111f557fe5b600080546a099865429215f7b2000000901161138e57611387606461117084600863ffffffff61133716565b9050610c2f565b6000546a099865429215f7b2000000901180156113b957506000546a0b949d854f34fece0000009011155b156113d457611387606461117084600563ffffffff61133716565b506000610c2f565b600c54600090819081908190819060ff1615156113f857600080fd5b60055442101561140757600080fd5b6001600160a060020a0333166000908152600e602052604090205460ff16600281111561143057fe5b141561151b57600160a060020a0333166000908152600e6020526040902060010154935061146a600a61117086600963ffffffff61133716565b9250611482600a61117086600b63ffffffff61133716565b91503483111580156114945750813411155b1561151b576002600160a060020a0333166000908152600e602052604090205460ff1660028111156114c257fe5b5050600a860490506114d433826111fc565b5033600160a060020a03167f98dcaeced95369821fc42e6b1e87d724bad86c549e4d6f1b69cc88eeb11543878260405190815260200160405180910390a260019450611520565b600094505b50505050919050565b600754600160a060020a03163480156108fc0290604051600060405180830381858888f19350505050151561155d57600080fd5b5600ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa165627a7a7230582005bd84fb419cd6b5d2c61ae851e1580b024a41e193134ec826189c6bd804b7da0029

Deployed Bytecode

0x6060604052361561020c5763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166301bbc3f5811461021757806306fdde031461022a57806308753085146102b4578063095ea7b3146102d957806318160ddd1461030f57806323b872dd146103225780632a46d0791461034a5780632b905bf61461035d5780632be5e93a1461038c5780632c4e722e1461039f578063313ce567146103b25780633197cbb6146103c557806337ff2506146103d85780633e0a322d146103eb578063521eb2731461040157806356c290b8146104145780636310c7221461042757806370a082311461044c578063752551c91461046b578063783932371461047e57806378e97925146104915780638da5cb5b146104a457806395d89b41146104b75780639b21929a146104ca5780639b27bf3a146104dd5780639d1eb451146104f5578063a86416e214610508578063a9059cbb1461051b578063ab5aa3021461053d578063b3942cbd14610550578063ccb98ffc14610568578063ce99151e1461057e578063d244059a14610591578063d8ac1bb3146105a4578063dd1aa549146105f8578063dd62ed3e1461060b578063e29eb83614610630578063ec8ac4d814610643578063ecb70fb714610657578063f02895e41461066a578063f28b824e1461067d578063f2fde38b14610690578063f9c811f1146106af575b610215336106d1565b005b341561022257600080fd5b6102156106ec565b341561023557600080fd5b61023d610718565b60405160208082528190810183818151815260200191508051906020019080838360005b83811015610279578082015183820152602001610261565b50505050905090810190601f1680156102a65780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156102bf57600080fd5b6102c761074f565b60405190815260200160405180910390f35b34156102e457600080fd5b6102fb600160a060020a036004351660243561075e565b604051901515815260200160405180910390f35b341561031a57600080fd5b6102c7610804565b341561032d57600080fd5b6102fb600160a060020a036004358116906024351660443561080a565b341561035557600080fd5b6102c761098b565b341561036857600080fd5b610370610997565b604051600160a060020a03909116815260200160405180910390f35b341561039757600080fd5b6102c76109af565b34156103aa57600080fd5b6102c76109be565b34156103bd57600080fd5b6102c76109c4565b34156103d057600080fd5b6102c76109c9565b34156103e357600080fd5b6103706109cf565b34156103f657600080fd5b6102156004356109e7565b341561040c57600080fd5b610370610a07565b341561041f57600080fd5b610370610a16565b341561043257600080fd5b6102fb600160a060020a0360043516602435604435610a25565b341561045757600080fd5b6102c7600160a060020a0360043516610c15565b341561047657600080fd5b6102c7610c34565b341561048957600080fd5b6102c7610c3c565b341561049c57600080fd5b6102c7610c4b565b34156104af57600080fd5b610370610c51565b34156104c257600080fd5b61023d610c60565b34156104d557600080fd5b6102c7610c97565b34156104e857600080fd5b6102156004351515610ca6565b341561050057600080fd5b6102c7610cd4565b341561051357600080fd5b6102c7610ce3565b341561052657600080fd5b6102fb600160a060020a0360043516602435610ce8565b341561054857600080fd5b6102c7610de2565b341561055b57600080fd5b6102156004351515610dea565b341561057357600080fd5b610215600435610e18565b341561058957600080fd5b610370610e38565b341561059c57600080fd5b6102c7610e47565b61021560048035600160a060020a03169060446024803590810190830135806020601f82018190048102016040519081016040528181529291906020840183838082843750949650610e4d95505050505050565b341561060357600080fd5b610370610fb3565b341561061657600080fd5b6102c7600160a060020a0360043581169060243516610fcb565b341561063b57600080fd5b6102c7610ff6565b610215600160a060020a03600435166106d1565b341561066257600080fd5b6102fb610ffc565b341561067557600080fd5b610370611004565b341561068857600080fd5b6102c761101c565b341561069b57600080fd5b610215600160a060020a036004351661102b565b34156106ba57600080fd5b6102fb600160a060020a03600435166024356110c6565b6106e981602060405190810160405260008152610e4d565b50565b60015433600160a060020a0390811691161461070757600080fd5b6a108b2a2c28029094000000600d55565b60408051908101604052600e81527f4d696e694170707320546f6b656e000000000000000000000000000000000000602082015281565b6a05ca4ec2a79a7f6700000081565b60008115806107905750600160a060020a03338116600090815260046020908152604080832093871683529290522054155b151561079b57600080fd5b600160a060020a03338116600081815260046020908152604080832094881680845294909152908190208590557f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a350600192915050565b60005481565b6000600160a060020a038316151561082157600080fd5b600160a060020a03841660009081526002602052604090205482111561084657600080fd5b600160a060020a038085166000908152600460209081526040808320339094168352929052205482111561087957600080fd5b60035460ff16151561088a57600080fd5b600160a060020a0384166000908152600260205260409020546108b3908363ffffffff6111d416565b600160a060020a0380861660009081526002602052604080822093909355908516815220546108e8908363ffffffff6111e616565b600160a060020a03808516600090815260026020908152604080832094909455878316825260048152838220339093168252919091522054610930908363ffffffff6111d416565b600160a060020a03808616600081815260046020908152604080832033861684529091529081902093909355908516916000805160206115608339815191529085905190815260200160405180910390a35060019392505050565b670de0b6b3a764000081565b73e1d32147b08b2a7808026d4a94707e321ccc715081565b6a0b949d854f34fece00000081565b600b5481565b601281565b60065481565b73503fe694ce047ecb51952b79ecab2a907afe8acd81565b60015433600160a060020a03908116911614610a0257600080fd5b600555565b600754600160a060020a031681565b600954600160a060020a031681565b6001546000908190819033600160a060020a03908116911614610a4757600080fd5b600654421115610a5657600080fd5b600160a060020a0386161515610a6b57600080fd5b83851015610a7857600080fd5b610a8286856111fc565b50610a93858563ffffffff6111d416565b7339467d5b39f1d24bc8479212ced151ad469b0d7e60005260026020527feb7af94d777e7a65b80f0fbc0979d371239d45320477c2d2b5141271d64371275490925082901015610ae257600080fd5b6000821115610bdc577339467d5b39f1d24bc8479212ced151ad469b0d7e60005260026020527feb7af94d777e7a65b80f0fbc0979d371239d45320477c2d2b5141271d643712754610b3a908363ffffffff6111d416565b60026020527feb7af94d777e7a65b80f0fbc0979d371239d45320477c2d2b5141271d643712755600160a060020a03861660009081526040902054610b85908363ffffffff6111e616565b600160a060020a0387166000818152600260205260409081902092909255907339467d5b39f1d24bc8479212ced151ad469b0d7e906000805160206115608339815191529085905190815260200160405180910390a35b600b54610bf090869063ffffffff6112f016565b600a54909150610c06908263ffffffff6111e616565b600a5550600195945050505050565b600160a060020a0381166000908152600260205260409020545b919050565b635a38568081565b6a027b46536c66c8e300000081565b60055481565b600154600160a060020a031681565b60408051908101604052600381527f4d41540000000000000000000000000000000000000000000000000000000000602082015281565b6a099865429215f7b200000081565b60015433600160a060020a03908116911614610cc157600080fd5b600c805460ff1916911515919091179055565b6a084595161401484a00000081565b606481565b6000600160a060020a0383161515610cff57600080fd5b600160a060020a033316600090815260026020526040902054821115610d2457600080fd5b60035460ff161515610d3557600080fd5b600160a060020a033316600090815260026020526040902054610d5e908363ffffffff6111d416565b600160a060020a033381166000908152600260205260408082209390935590851681522054610d93908363ffffffff6111e616565b600160a060020a0380851660008181526002602052604090819020939093559133909116906000805160206115608339815191529085905190815260200160405180910390a350600192915050565b6359e6998081565b60015433600160a060020a03908116911614610e0557600080fd5b6003805460ff1916911515919091179055565b60015433600160a060020a03908116911614610e3357600080fd5b600655565b600854600160a060020a031681565b600d5481565b6000808034819011610e5e57600080fd5b600160a060020a0385161515610e7357600080fd5b610e7b611307565b1515610e8657600080fd5b600b54349350610e9d90849063ffffffff61133716565b9150610ea88261135b565b600a54909150610ebe908463ffffffff6111e616565b600a55610eca826113dc565b1515610edc57610eda85826111fc565b505b610ee685836111fc565b5084600160a060020a031633600160a060020a03167fad7639fed4cff8f0323c3df489587b0139b4e1d902d441752ba7dcb69b1b80118585886040518084815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610f68578082015183820152602001610f50565b50505050905090810190601f168015610f955780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a3610fac611529565b5050505050565b7339467d5b39f1d24bc8479212ced151ad469b0d7e81565b600160a060020a03918216600090815260046020908152604080832093909416825291909152205490565b600a5481565b600654421190565b736075a5a0620861cfef593a51a01af0ff179168c781565b6a108b2a2c2802909400000081565b60015433600160a060020a0390811691161461104657600080fd5b600160a060020a038116151561105b57600080fd5b600154600160a060020a0380831691167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60015460009033600160a060020a039081169116146110e457600080fd5b60065442106110f257600080fd5b600160a060020a0383166000908152600e602052604081205460ff16600281111561111957fe5b1461112357600080fd5b600160a060020a0383166000908152600e60205260409020805460ff1916600190811782550182905561118b61117c600a611170600b611164876064611337565b9063ffffffff61133716565b9063ffffffff6112f016565b600d549063ffffffff6111d416565b600d55600160a060020a0383167f1ce1e1b8edef5e7a8c34dc1574b0a1c10c30000fbcec735c6f16a1d0ccfe24c88360405190815260200160405180910390a250600192915050565b6000828211156111e057fe5b50900390565b6000828201838110156111f557fe5b9392505050565b60008054611210908363ffffffff6111e616565b6000819055600d5490111561122457600080fd5b6000546a108b2a2c2802909400000090111561123f57600080fd5b600160a060020a038316600090815260026020526040902054611268908363ffffffff6111e616565b600160a060020a0384166000818152600260205260409081902092909255907f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d41213968859084905190815260200160405180910390a282600160a060020a031660006000805160206115608339815191528460405190815260200160405180910390a350600192915050565b60008082848115156112fe57fe5b04949350505050565b6000806000600554421015801561132057506006544211155b9150503415158180156113305750805b9250505090565b6000828202831580611353575082848281151561135057fe5b04145b15156111f557fe5b600080546a099865429215f7b2000000901161138e57611387606461117084600863ffffffff61133716565b9050610c2f565b6000546a099865429215f7b2000000901180156113b957506000546a0b949d854f34fece0000009011155b156113d457611387606461117084600563ffffffff61133716565b506000610c2f565b600c54600090819081908190819060ff1615156113f857600080fd5b60055442101561140757600080fd5b6001600160a060020a0333166000908152600e602052604090205460ff16600281111561143057fe5b141561151b57600160a060020a0333166000908152600e6020526040902060010154935061146a600a61117086600963ffffffff61133716565b9250611482600a61117086600b63ffffffff61133716565b91503483111580156114945750813411155b1561151b576002600160a060020a0333166000908152600e602052604090205460ff1660028111156114c257fe5b5050600a860490506114d433826111fc565b5033600160a060020a03167f98dcaeced95369821fc42e6b1e87d724bad86c549e4d6f1b69cc88eeb11543878260405190815260200160405180910390a260019450611520565b600094505b50505050919050565b600754600160a060020a03163480156108fc0290604051600060405180830381858888f19350505050151561155d57600080fd5b5600ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa165627a7a7230582005bd84fb419cd6b5d2c61ae851e1580b024a41e193134ec826189c6bd804b7da0029

Swarm Source

bzzr://05bd84fb419cd6b5d2c61ae851e1580b024a41e193134ec826189c6bd804b7da
Loading...
Loading
Loading...
Loading
[ Download: CSV Export  ]
[ 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.