ETH Price: $3,396.80 (+2.43%)

Token

Veen (VEEN)
 

Overview

Max Total Supply

6,908,903,232.666667000000000001 VEEN

Holders

11,722 (0.00%)

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
522,650 VEEN

Value
$0.00
0xb7e07ef57d14c1635506de87180ac1254ef5d866
Loading...
Loading
Loading...
Loading
Loading...
Loading

OVERVIEW

Blockchain based data platform that provides fair rewards for user's data.

ICO Information

Token Distribution Date : Aug 14, 2018
Country : Singapore

# Exchange Pair Price  24H Volume % Volume

Contract Source Code Verified (Exact Match)

Contract Name:
Veen

Compiler Version
v0.4.24+commit.e67f0147

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2018-08-14
*/

pragma solidity ^0.4.18;

// File: contracts/SafeMath.sol

/*

    Copyright 2018, All rights reserved.
     _      _
    \ \    / / ___   ___  _ __
     \ \  / / / _ \ / _ \| '_ \
      \ \/ / |  __/|  __/| | | |
       \__/   \___| \___||_| |_|

    @title SafeMath
    @author OpenZeppelin
    @dev Math operations with safety checks that throw on error

 */
library SafeMath {

  /**
  * @dev Multiplies two numbers, throws on overflow.
  */
  function mul(uint256 a, uint256 b) internal pure returns (uint256) {
    if (a == 0) {
      return 0;
    }
    uint256 c = a * b;
    assert(c / a == b);
    return c;
  }

  /**
  * @dev Integer division of two numbers, truncating the quotient.
  */
  function div(uint256 a, uint256 b) internal pure 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;
  }

  /**
  * @dev Substracts two numbers, throws on overflow (i.e. if subtrahend is greater than minuend).
  */
  function sub(uint256 a, uint256 b) internal pure returns (uint256) {
    assert(b <= a);
    return a - b;
  }

  /**
  * @dev Adds two numbers, throws on overflow.
  */
  function add(uint256 a, uint256 b) internal pure returns (uint256) {
    uint256 c = a + b;
    assert(c >= a);
    return c;
  }
}

// File: contracts/Ownable.sol

/**
 * @title Ownable
 * @dev The Ownable contract has an owner address, and provides basic authorization control
 * functions, this simplifies the implementation of "user permissions".
 */

contract Ownable {
  address public owner;
  event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
  using SafeMath for uint256;
  uint256 public startdate;

  function Ownable() public {

    owner = msg.sender;
    startdate = now;
  }

  modifier onlyOwner() {
    require(msg.sender == owner);
    _;
  }

  function transferOwnership(address newOwner) public onlyOwner {
    require(newOwner != address(0));
    OwnershipTransferred(owner, newOwner);
    owner = newOwner;
  }


}

// File: contracts/Pausable.sol

/**
 * @title Pausable
 * @dev Base contract which allows children to implement an emergency stop mechanism.
 */
contract Pausable is Ownable {
  event Pause();
  event Unpause();
  mapping(address => uint256) private _lock_list_period;
  mapping(address => bool) private _lock_list;
  bool public paused = false;
  mapping(address => uint256) internal _balances;
  uint256 internal _tokenSupply;

  /**
   * @dev Modifier to make a function callable only when the contract is not paused.
   */
  modifier whenNotPaused() {
    require(!paused);
    _;
  }

  /**
   * @dev Modifier to make a function callable only when the contract is paused.
   */
  modifier whenPaused() {
    require(paused);
    _;
  }
  /**
   *
   */



  modifier isLockAddress() {
    check_lock_period(msg.sender);
    if(_lock_list[msg.sender]){
        revert();
    }

    _;

  }

  function check_lock_period(address check_address) {
      if(now > _lock_list_period[check_address] && _lock_list[check_address]){
        _lock_list[check_address] = false;
        _tokenSupply = _tokenSupply.add(_balances[check_address]);
      }

  }

  function check_period(address check_address) constant public returns(uint256){
      return _lock_list_period[check_address];

  }

  function check_lock(address check_address) constant public returns(bool){

      return _lock_list[check_address];

  }
  /**
   *
   */
  function set_lock_list(address lock_address, uint period) onlyOwner external {
      _lock_list_period[lock_address] = startdate + (period * 1 days);
      _lock_list[lock_address]  = true;
      _tokenSupply = _tokenSupply.sub(_balances[lock_address]);
  }

  /**
   * @dev called by the owner to pause, triggers stopped state
   */
  function pause() onlyOwner whenNotPaused public {
    paused = true;
    Pause();
  }
  /**
   * @dev called by the owner to unpause, returns to normal state
   */
  function unpause() onlyOwner whenPaused public {
    paused = false;
    Unpause();
  }
}

// File: contracts/ERC20Token.sol

/*

    Copyright 2018, All rights reserved.
     _      _
    \ \    / / ___   ___  _ __
     \ \  / / / _ \ / _ \| '_ \
      \ \/ / |  __/|  __/| | | |
       \__/   \___| \___||_| |_|

    @title Veen Token Contract.
    @description ERC-20 Interface

*/

interface ERC20Token {

    function allowance(address tokenOwner, address spender) public constant returns (uint remaining);
    function approve(address spender, uint tokens) public returns (bool success);
    function transferFrom(address from, address to, uint tokens) public returns (bool success);

    event Approval(address indexed tokenOwner, address indexed spender, uint tokens);
}

// File: contracts/ERC223.sol

interface ERC223 {

    function totalSupply() public constant returns (uint);
    function balanceOf(address who) public constant returns (uint);
    function transfer(address to, uint value) public returns (bool);

}

// File: contracts/Receiver_Interface.sol

/*
 * Contract that is working with ERC223 tokens
 */

 contract ContractReceiver {

    struct TKN {
        address sender;
        uint value;
        bytes data;
        bytes4 sig;
    }


    function tokenFallback(address _from, uint _value, bytes _data) public pure {
      TKN memory tkn;
      tkn.sender = _from;
      tkn.value = _value;
      tkn.data = _data;
      uint32 u = uint32(_data[3]) + (uint32(_data[2]) << 8) + (uint32(_data[1]) << 16) + (uint32(_data[0]) << 24);
      tkn.sig = bytes4(u);

      /* tkn variable is analogue of msg variable of Ether transaction
      *  tkn.sender is person who initiated this token transaction   (analogue of msg.sender)
      *  tkn.value the number of tokens that were sent   (analogue of msg.value)
      *  tkn.data is data of token transaction   (analogue of msg.data)
      *  tkn.sig is 4 bytes signature of function
      *  if data of token transaction is a function execution
      */
    }
}

// File: contracts/Veen.sol

/*
    Copyright 2018, All rights reserved.
     _      _
    \ \    / / ___   ___  _ __
     \ \  / / / _ \ / _ \| '_ \
      \ \/ / |  __/|  __/| | | |
       \__/   \___| \___||_| |_|

    @title Veen Token Contract.
    @description Veen token is a ERC20-compliant token.

*/

contract Veen is ERC20Token, Pausable, ERC223{

    using SafeMath for uint;

    string public constant name = "Veen";
    string public constant symbol = "VEEN";
    uint8 public constant decimals = 18;

    uint private _totalSupply;

    mapping(address => mapping(address => uint256)) private _allowed;
    event MintedLog(address to, uint256 amount);
    event Transfer(address indexed from, address indexed to, uint value);


    function Veen() public {
        _tokenSupply = 0;
        _totalSupply = 15000000000 * (uint256(10) ** decimals);

    }

    function totalSupply() public constant returns (uint256) {
        return _tokenSupply;
    }

    function mint(address to, uint256 amount) onlyOwner public returns (bool){

        amount = amount * (uint256(10) ** decimals);
        if(_totalSupply + 1 > (_tokenSupply+amount)){
            _tokenSupply = _tokenSupply.add(amount);
            _balances[to]= _balances[to].add(amount);
            emit MintedLog(to, amount);
            return true;
        }

        return false;
    }

    function dist_list_set(address[] dist_list, uint256[] token_list) onlyOwner external{

        for(uint i=0; i < dist_list.length ;i++){
            transfer(dist_list[i],token_list[i]);
        }

    }
    function balanceOf(address tokenOwner) public constant returns (uint256 balance) {
        return _balances[tokenOwner];
    }

    function transfer(address to, uint tokens) whenNotPaused isLockAddress public returns(bool success){
    bytes memory empty;
    	if(isContract(to)) {
        	return transferToContract(to, tokens, empty);
    	}
    	else {
        	return transferToAddress(to, tokens, empty);
    	}
    }


    function approve(address spender, uint256 tokens) public returns (bool success) {

        if (tokens > 0 && balanceOf(msg.sender) >= tokens) {
            _allowed[msg.sender][spender] = tokens;
            emit Approval(msg.sender, spender, tokens);
            return true;
        }

        return false;
    }

    function allowance(address tokenOwner, address spender) public constant returns (uint remaining) {
        return _allowed[tokenOwner][spender];
    }

    function transferFrom(address from, address to, uint256 tokens) public returns (bool success) {
        if (tokens > 0 && balanceOf(from) >= tokens && _allowed[from][msg.sender] >= tokens) {
            _balances[from] = _balances[from].sub(tokens);
            _allowed[from][msg.sender] = _allowed[from][msg.sender].sub(tokens);
            _balances[to] = _balances[to].add(tokens);
            emit Transfer(msg.sender, to, tokens);
            return true;
        }
        return false;
    }

    function burn(uint256 tokens) public returns (bool success) {
        if ( tokens > 0 && balanceOf(msg.sender) >= tokens ) {
            _balances[msg.sender] = _balances[msg.sender].sub(tokens);
            _tokenSupply = _tokenSupply.sub(tokens);
            return true;
        }

        return false;
    }
  function transferToAddress(address _to, uint _value, bytes _data) private returns (bool success) {
    if (balanceOf(msg.sender) < _value) revert();
    _balances[msg.sender] = balanceOf(msg.sender).sub(_value);
    _balances[_to] = balanceOf(_to).add(_value);
    emit Transfer(msg.sender, _to, _value);
    return true;
  }

  //function that is called when transaction target is a contract
  function transferToContract(address _to, uint _value, bytes _data) private returns (bool success) {
    if (balanceOf(msg.sender) < _value) revert();
    _balances[msg.sender] = balanceOf(msg.sender).sub(_value);
    _balances[_to] = balanceOf(_to).add(_value);
    ContractReceiver receiver = ContractReceiver(_to);
    receiver.tokenFallback(msg.sender, _value, _data);
    emit Transfer(msg.sender, _to, _value);
    return true;
}



    function isContract(address _addr) view returns (bool is_contract){
      uint length;
      assembly {
            length := extcodesize(_addr)
      }
      return (length>0);
    }

    function () public payable {
        throw;

    }
}

Contract Security Audit

Contract ABI

[{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"spender","type":"address"},{"name":"tokens","type":"uint256"}],"name":"approve","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_addr","type":"address"}],"name":"isContract","outputs":[{"name":"is_contract","type":"bool"}],"payable":false,"stateMutability":"view","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":"tokens","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"unpause","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"to","type":"address"},{"name":"amount","type":"uint256"}],"name":"mint","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"tokens","type":"uint256"}],"name":"burn","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"paused","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"lock_address","type":"address"},{"name":"period","type":"uint256"}],"name":"set_lock_list","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"tokenOwner","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"pause","outputs":[],"payable":false,"stateMutability":"nonpayable","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":false,"inputs":[{"name":"check_address","type":"address"}],"name":"check_lock_period","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"to","type":"address"},{"name":"tokens","type":"uint256"}],"name":"transfer","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"check_address","type":"address"}],"name":"check_period","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"startdate","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"tokenOwner","type":"address"},{"name":"spender","type":"address"}],"name":"allowance","outputs":[{"name":"remaining","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":"dist_list","type":"address[]"},{"name":"token_list","type":"uint256[]"}],"name":"dist_list_set","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"check_address","type":"address"}],"name":"check_lock","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"to","type":"address"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"MintedLog","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"},{"anonymous":false,"inputs":[],"name":"Pause","type":"event"},{"anonymous":false,"inputs":[],"name":"Unpause","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":"tokenOwner","type":"address"},{"indexed":true,"name":"spender","type":"address"},{"indexed":false,"name":"tokens","type":"uint256"}],"name":"Approval","type":"event"}]

60806040526004805460ff1916905534801561001a57600080fd5b5060008054600160a060020a03191633178155426001556006556b3077b58d5d37839198000000600755610ebb806100536000396000f3006080604052600436106101325763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde038114610137578063095ea7b3146101c157806316279055146101f957806318160ddd1461021a57806323b872dd14610241578063313ce5671461026b5780633f4ba83a1461029657806340c10f19146102ad57806342966c68146102d15780635c975abb146102e957806364045c97146102fe57806370a08231146103225780638456cb59146103435780638da5cb5b1461035857806395d89b411461038957806399ce2ab81461039e578063a9059cbb146103bf578063bf5373dc146103e3578063cde9f2ea14610404578063dd62ed3e14610419578063f2fde38b14610440578063f474962414610461578063fc87bf151461048d575b600080fd5b34801561014357600080fd5b5061014c6104ae565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561018657818101518382015260200161016e565b50505050905090810190601f1680156101b35780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156101cd57600080fd5b506101e5600160a060020a03600435166024356104e5565b604080519115158252519081900360200190f35b34801561020557600080fd5b506101e5600160a060020a0360043516610573565b34801561022657600080fd5b5061022f61057b565b60408051918252519081900360200190f35b34801561024d57600080fd5b506101e5600160a060020a0360043581169060243516604435610581565b34801561027757600080fd5b506102806106e0565b6040805160ff9092168252519081900360200190f35b3480156102a257600080fd5b506102ab6106e5565b005b3480156102b957600080fd5b506101e5600160a060020a0360043516602435610742565b3480156102dd57600080fd5b506101e5600435610816565b3480156102f557600080fd5b506101e561088b565b34801561030a57600080fd5b506102ab600160a060020a0360043516602435610894565b34801561032e57600080fd5b5061022f600160a060020a0360043516610904565b34801561034f57600080fd5b506102ab61091f565b34801561036457600080fd5b5061036d61097e565b60408051600160a060020a039092168252519081900360200190f35b34801561039557600080fd5b5061014c61098d565b3480156103aa57600080fd5b506102ab600160a060020a03600435166109c4565b3480156103cb57600080fd5b506101e5600160a060020a0360043516602435610a4c565b3480156103ef57600080fd5b5061022f600160a060020a0360043516610aba565b34801561041057600080fd5b5061022f610ad5565b34801561042557600080fd5b5061022f600160a060020a0360043581169060243516610adb565b34801561044c57600080fd5b506102ab600160a060020a0360043516610b06565b34801561046d57600080fd5b506102ab6024600480358281019290820135918135918201910135610b9a565b34801561049957600080fd5b506101e5600160a060020a0360043516610c07565b60408051808201909152600481527f5665656e00000000000000000000000000000000000000000000000000000000602082015281565b600080821180156104fe5750816104fb33610904565b10155b1561056957336000818152600860209081526040808320600160a060020a03881680855290835292819020869055805186815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a350600161056d565b5060005b92915050565b6000903b1190565b60065490565b6000808211801561059a57508161059785610904565b10155b80156105c95750600160a060020a03841660009081526008602090815260408083203384529091529020548211155b156106d557600160a060020a0384166000908152600560205260409020546105f7908363ffffffff610c2516565b600160a060020a0385166000908152600560209081526040808320939093556008815282822033835290522054610634908363ffffffff610c2516565b600160a060020a038086166000908152600860209081526040808320338452825280832094909455918616815260059091522054610678908363ffffffff610c3716565b600160a060020a0384166000818152600560209081526040918290209390935580518581529051919233927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35060016106d9565b5060005b9392505050565b601281565b600054600160a060020a031633146106fc57600080fd5b60045460ff16151561070d57600080fd5b6004805460ff191690556040517f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b3390600090a1565b60008054600160a060020a0316331461075a57600080fd5b601260ff16600a0a82029150816006540160075460010111156105695760065461078a908363ffffffff610c3716565b600655600160a060020a0383166000908152600560205260409020546107b6908363ffffffff610c3716565b600160a060020a03841660008181526005602090815260409182902093909355805191825291810184905281517f5f98c4774888016b0aaebc40ab2028158e56c19845778ddf060f38ff0de6f4ee929181900390910190a150600161056d565b6000808211801561082f57508161082c33610904565b10155b156108825733600090815260056020526040902054610854908363ffffffff610c2516565b33600090815260056020526040902055600654610877908363ffffffff610c2516565b600655506001610886565b5060005b919050565b60045460ff1681565b600054600160a060020a031633146108ab57600080fd5b60018054600160a060020a038416600090815260026020908152604080832062015180870290940190935560038152828220805460ff191690941790935560059092529020546006546108fd91610c25565b6006555050565b600160a060020a031660009081526005602052604090205490565b600054600160a060020a0316331461093657600080fd5b60045460ff161561094657600080fd5b6004805460ff191660011790556040517f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff62590600090a1565b600054600160a060020a031681565b60408051808201909152600481527f5645454e00000000000000000000000000000000000000000000000000000000602082015281565b600160a060020a03811660009081526002602052604090205442118015610a035750600160a060020a03811660009081526003602052604090205460ff165b15610a4957600160a060020a0381166000908152600360209081526040808320805460ff191690556005909152902054600654610a459163ffffffff610c3716565b6006555b50565b60045460009060609060ff1615610a6257600080fd5b610a6b336109c4565b3360009081526003602052604090205460ff1615610a8857600080fd5b610a9184610573565b15610aa857610aa1848483610c46565b9150610ab3565b610aa1848483610def565b5092915050565b600160a060020a031660009081526002602052604090205490565b60015481565b600160a060020a03918216600090815260086020908152604080832093909416825291909152205490565b600054600160a060020a03163314610b1d57600080fd5b600160a060020a0381161515610b3257600080fd5b60008054604051600160a060020a03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a36000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60008054600160a060020a03163314610bb257600080fd5b5060005b83811015610c0057610bf7858583818110610bcd57fe5b90506020020135600160a060020a03168484848181101515610beb57fe5b90506020020135610a4c565b50600101610bb6565b5050505050565b600160a060020a031660009081526003602052604090205460ff1690565b600082821115610c3157fe5b50900390565b6000828201838110156106d957fe5b60008083610c5333610904565b1015610c5e57600080fd5b610c7784610c6b33610904565b9063ffffffff610c2516565b33600090815260056020526040902055610ca084610c9487610904565b9063ffffffff610c3716565b600160a060020a03861660008181526005602090815260408083209490945592517fc0ee0b8a0000000000000000000000000000000000000000000000000000000081523360048201818152602483018a90526060604484019081528951606485015289518c9850959663c0ee0b8a9693958c958c956084909101928601918190849084905b83811015610d3e578181015183820152602001610d26565b50505050905090810190601f168015610d6b5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015610d8c57600080fd5b505af1158015610da0573d6000803e3d6000fd5b5050604080518781529051600160a060020a03891693503392507fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a3506001949350505050565b600082610dfb33610904565b1015610e0657600080fd5b610e1383610c6b33610904565b33600090815260056020526040902055610e3083610c9486610904565b600160a060020a0385166000818152600560209081526040918290209390935580518681529051919233927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a350600193925050505600a165627a7a72305820774ddee1f786e93a9ee8d8e42a45fd71c3b1627270af7179a64059df0d43ba5e0029

Deployed Bytecode

0x6080604052600436106101325763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde038114610137578063095ea7b3146101c157806316279055146101f957806318160ddd1461021a57806323b872dd14610241578063313ce5671461026b5780633f4ba83a1461029657806340c10f19146102ad57806342966c68146102d15780635c975abb146102e957806364045c97146102fe57806370a08231146103225780638456cb59146103435780638da5cb5b1461035857806395d89b411461038957806399ce2ab81461039e578063a9059cbb146103bf578063bf5373dc146103e3578063cde9f2ea14610404578063dd62ed3e14610419578063f2fde38b14610440578063f474962414610461578063fc87bf151461048d575b600080fd5b34801561014357600080fd5b5061014c6104ae565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561018657818101518382015260200161016e565b50505050905090810190601f1680156101b35780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156101cd57600080fd5b506101e5600160a060020a03600435166024356104e5565b604080519115158252519081900360200190f35b34801561020557600080fd5b506101e5600160a060020a0360043516610573565b34801561022657600080fd5b5061022f61057b565b60408051918252519081900360200190f35b34801561024d57600080fd5b506101e5600160a060020a0360043581169060243516604435610581565b34801561027757600080fd5b506102806106e0565b6040805160ff9092168252519081900360200190f35b3480156102a257600080fd5b506102ab6106e5565b005b3480156102b957600080fd5b506101e5600160a060020a0360043516602435610742565b3480156102dd57600080fd5b506101e5600435610816565b3480156102f557600080fd5b506101e561088b565b34801561030a57600080fd5b506102ab600160a060020a0360043516602435610894565b34801561032e57600080fd5b5061022f600160a060020a0360043516610904565b34801561034f57600080fd5b506102ab61091f565b34801561036457600080fd5b5061036d61097e565b60408051600160a060020a039092168252519081900360200190f35b34801561039557600080fd5b5061014c61098d565b3480156103aa57600080fd5b506102ab600160a060020a03600435166109c4565b3480156103cb57600080fd5b506101e5600160a060020a0360043516602435610a4c565b3480156103ef57600080fd5b5061022f600160a060020a0360043516610aba565b34801561041057600080fd5b5061022f610ad5565b34801561042557600080fd5b5061022f600160a060020a0360043581169060243516610adb565b34801561044c57600080fd5b506102ab600160a060020a0360043516610b06565b34801561046d57600080fd5b506102ab6024600480358281019290820135918135918201910135610b9a565b34801561049957600080fd5b506101e5600160a060020a0360043516610c07565b60408051808201909152600481527f5665656e00000000000000000000000000000000000000000000000000000000602082015281565b600080821180156104fe5750816104fb33610904565b10155b1561056957336000818152600860209081526040808320600160a060020a03881680855290835292819020869055805186815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a350600161056d565b5060005b92915050565b6000903b1190565b60065490565b6000808211801561059a57508161059785610904565b10155b80156105c95750600160a060020a03841660009081526008602090815260408083203384529091529020548211155b156106d557600160a060020a0384166000908152600560205260409020546105f7908363ffffffff610c2516565b600160a060020a0385166000908152600560209081526040808320939093556008815282822033835290522054610634908363ffffffff610c2516565b600160a060020a038086166000908152600860209081526040808320338452825280832094909455918616815260059091522054610678908363ffffffff610c3716565b600160a060020a0384166000818152600560209081526040918290209390935580518581529051919233927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35060016106d9565b5060005b9392505050565b601281565b600054600160a060020a031633146106fc57600080fd5b60045460ff16151561070d57600080fd5b6004805460ff191690556040517f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b3390600090a1565b60008054600160a060020a0316331461075a57600080fd5b601260ff16600a0a82029150816006540160075460010111156105695760065461078a908363ffffffff610c3716565b600655600160a060020a0383166000908152600560205260409020546107b6908363ffffffff610c3716565b600160a060020a03841660008181526005602090815260409182902093909355805191825291810184905281517f5f98c4774888016b0aaebc40ab2028158e56c19845778ddf060f38ff0de6f4ee929181900390910190a150600161056d565b6000808211801561082f57508161082c33610904565b10155b156108825733600090815260056020526040902054610854908363ffffffff610c2516565b33600090815260056020526040902055600654610877908363ffffffff610c2516565b600655506001610886565b5060005b919050565b60045460ff1681565b600054600160a060020a031633146108ab57600080fd5b60018054600160a060020a038416600090815260026020908152604080832062015180870290940190935560038152828220805460ff191690941790935560059092529020546006546108fd91610c25565b6006555050565b600160a060020a031660009081526005602052604090205490565b600054600160a060020a0316331461093657600080fd5b60045460ff161561094657600080fd5b6004805460ff191660011790556040517f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff62590600090a1565b600054600160a060020a031681565b60408051808201909152600481527f5645454e00000000000000000000000000000000000000000000000000000000602082015281565b600160a060020a03811660009081526002602052604090205442118015610a035750600160a060020a03811660009081526003602052604090205460ff165b15610a4957600160a060020a0381166000908152600360209081526040808320805460ff191690556005909152902054600654610a459163ffffffff610c3716565b6006555b50565b60045460009060609060ff1615610a6257600080fd5b610a6b336109c4565b3360009081526003602052604090205460ff1615610a8857600080fd5b610a9184610573565b15610aa857610aa1848483610c46565b9150610ab3565b610aa1848483610def565b5092915050565b600160a060020a031660009081526002602052604090205490565b60015481565b600160a060020a03918216600090815260086020908152604080832093909416825291909152205490565b600054600160a060020a03163314610b1d57600080fd5b600160a060020a0381161515610b3257600080fd5b60008054604051600160a060020a03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a36000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60008054600160a060020a03163314610bb257600080fd5b5060005b83811015610c0057610bf7858583818110610bcd57fe5b90506020020135600160a060020a03168484848181101515610beb57fe5b90506020020135610a4c565b50600101610bb6565b5050505050565b600160a060020a031660009081526003602052604090205460ff1690565b600082821115610c3157fe5b50900390565b6000828201838110156106d957fe5b60008083610c5333610904565b1015610c5e57600080fd5b610c7784610c6b33610904565b9063ffffffff610c2516565b33600090815260056020526040902055610ca084610c9487610904565b9063ffffffff610c3716565b600160a060020a03861660008181526005602090815260408083209490945592517fc0ee0b8a0000000000000000000000000000000000000000000000000000000081523360048201818152602483018a90526060604484019081528951606485015289518c9850959663c0ee0b8a9693958c958c956084909101928601918190849084905b83811015610d3e578181015183820152602001610d26565b50505050905090810190601f168015610d6b5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015610d8c57600080fd5b505af1158015610da0573d6000803e3d6000fd5b5050604080518781529051600160a060020a03891693503392507fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a3506001949350505050565b600082610dfb33610904565b1015610e0657600080fd5b610e1383610c6b33610904565b33600090815260056020526040902055610e3083610c9486610904565b600160a060020a0385166000818152600560209081526040918290209390935580518681529051919233927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a350600193925050505600a165627a7a72305820774ddee1f786e93a9ee8d8e42a45fd71c3b1627270af7179a64059df0d43ba5e0029

Swarm Source

bzzr://774ddee1f786e93a9ee8d8e42a45fd71c3b1627270af7179a64059df0d43ba5e
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.