ETH Price: $3,325.16 (-4.11%)

Token

Wisdom (WISDOM)
 

Overview

Max Total Supply

2,000,000 WISDOM

Holders

7

Total Transfers

-

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 2 Decimals)

Loading...
Loading
Loading...
Loading
Loading...
Loading

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

Similar Match Source Code
This contract matches the deployed Bytecode of the Source Code for Contract 0xf92CaF96...1193B5aeE
The constructor portion of the code might be different and could alter the actual behaviour of the contract

Contract Name:
Wisdom

Compiler Version
v0.4.24+commit.e67f0147

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2019-08-06
*/

pragma solidity ^0.4.24;


library SafeMath {
  /**
  * @dev Multiplies two numbers, reverts on overflow.
  */
  function mul(uint256 a, uint256 b) internal pure returns (uint256) {
    // Gas optimization: this is cheaper than requiring 'a' not being zero, but the
    // benefit is lost if 'b' is also tested.
    // See: https://github.com/OpenZeppelin/openzeppelin-solidity/pull/522
    if (a == 0) {
      return 0;
    }

    uint256 c = a * b;
    require(c / a == b);

    return c;
  }

  /**
  * @dev Integer division of two numbers truncating the quotient, reverts on division by zero.
  */
  function div(uint256 a, uint256 b) internal pure returns (uint256) {
    require(b > 0); // Solidity only automatically asserts 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 Subtracts two numbers, reverts on overflow (i.e. if subtrahend is greater than minuend).
  */
  function sub(uint256 a, uint256 b) internal pure returns (uint256) {
    require(b <= a);
    uint256 c = a - b;

    return c;
  }

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

    return c;
  }

  /**
  * @dev Divides two numbers and returns the remainder (unsigned integer modulo),
  * reverts when dividing by zero.
  */
  function mod(uint256 a, uint256 b) internal pure returns (uint256) {
    require(b != 0);
    return a % b;
  }
}

contract Owned {
  constructor() public { owner = msg.sender; }

  address public owner;

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

interface IERC20 {

  function totalSupply() external view returns (uint256);

  function balanceOf(address who) external view returns (uint256);

  event Transfer(
    address indexed from,
    address indexed to,
    uint256 value
  );

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


contract ERC20 is IERC20 {
  using SafeMath for uint256;

  mapping (address => uint256) internal _balances;

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

  uint256 internal _totalSupply;

  /**
   * @dev See `IERC20.totalSupply`.
   */
  function totalSupply() public view returns (uint256) {
    return _totalSupply;
  }

  /**
   * @dev See `IERC20.balanceOf`.
   */
  function balanceOf(address account) public view returns (uint256) {
    return _balances[account];
  }


  /**
   * @dev See `IERC20.allowance`.
   */
  function allowance(address owner, address spender) public view returns (uint256) {
    return _allowances[owner][spender];
  }

  /**
   * @dev See `IERC20.approve`.
   *
   * Requirements:
   *
   * - `spender` cannot be the zero address.
   */
  function approve(address spender, uint256 value) public returns (bool) {
    _approve(msg.sender, spender, value);
    return true;
  }

  /**
   * @dev Atomically increases the allowance granted to `spender` by the caller.
   *
   * This is an alternative to `approve` that can be used as a mitigation for
   * problems described in `IERC20.approve`.
   *
   * Emits an `Approval` event indicating the updated allowance.
   *
   * Requirements:
   *
   * - `spender` cannot be the zero address.
   */
  function increaseAllowance(address spender, uint256 addedValue) public returns (bool) {
    _approve(msg.sender, spender, _allowances[msg.sender][spender].add(addedValue));
    return true;
  }

  /**
   * @dev Atomically decreases the allowance granted to `spender` by the caller.
   *
   * This is an alternative to `approve` that can be used as a mitigation for
   * problems described in `IERC20.approve`.
   *
   * Emits an `Approval` event indicating the updated allowance.
   *
   * Requirements:
   *
   * - `spender` cannot be the zero address.
   * - `spender` must have allowance for the caller of at least
   * `subtractedValue`.
   */
  function decreaseAllowance(address spender, uint256 subtractedValue) public returns (bool) {
    _approve(msg.sender, spender, _allowances[msg.sender][spender].sub(subtractedValue));
    return true;
  }

  /**
   * @dev Moves tokens `amount` from `sender` to `recipient`.
   *
   * This is internal function is equivalent to `transfer`, and can be used to
   * e.g. implement automatic token fees, slashing mechanisms, etc.
   *
   * Emits a `Transfer` event.
   *
   * Requirements:
   *
   * - `sender` cannot be the zero address.
   * - `recipient` cannot be the zero address.
   * - `sender` must have a balance of at least `amount`.
   */
  function _transfer(address sender, address recipient, uint256 amount) internal {
    require(sender != address(0), "ERC20: transfer from the zero address");
    require(recipient != address(0), "ERC20: transfer to the zero address");

    _balances[sender] = _balances[sender].sub(amount);
    _balances[recipient] = _balances[recipient].add(amount);
    emit Transfer(sender, recipient, amount);
  }

  /** @dev Creates `amount` tokens and assigns them to `account`, increasing
   * the total supply.
   *
   * Emits a `Transfer` event with `from` set to the zero address.
   *
   * Requirements
   *
   * - `to` cannot be the zero address.
   */
  function _mint(address account, uint256 amount) internal {
    require(account != address(0), "ERC20: mint to the zero address");

    _totalSupply = _totalSupply.add(amount);
    _balances[account] = _balances[account].add(amount);
    emit Transfer(address(0), account, amount);
  }

  /**
   * @dev Destoys `amount` tokens from `account`, reducing the
   * total supply.
   *
   * Emits a `Transfer` event with `to` set to the zero address.
   *
   * Requirements
   *
   * - `account` cannot be the zero address.
   * - `account` must have at least `amount` tokens.
   */
  function _burn(address account, uint256 value) internal {
    require(account != address(0), "ERC20: burn from the zero address");

    _totalSupply = _totalSupply.sub(value);
    _balances[account] = _balances[account].sub(value);
    emit Transfer(account, address(0), value);
  }

  /**
   * @dev Sets `amount` as the allowance of `spender` over the `owner`s tokens.
   *
   * This is internal function is equivalent to `approve`, and can be used to
   * e.g. set automatic allowances for certain subsystems, etc.
   *
   * Emits an `Approval` event.
   *
   * Requirements:
   *
   * - `owner` cannot be the zero address.
   * - `spender` cannot be the zero address.
   */
  function _approve(address owner, address spender, uint256 value) internal {
    require(owner != address(0), "ERC20: approve from the zero address");
    require(spender != address(0), "ERC20: approve to the zero address");

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

  /**
   * @dev Destoys `amount` tokens from `account`.`amount` is then deducted
   * from the caller's allowance.
   *
   * See `_burn` and `_approve`.
   */
  function _burnFrom(address account, uint256 amount) internal {
    _burn(account, amount);
    _approve(account, msg.sender, _allowances[account][msg.sender].sub(amount));
  }
}


contract Wisdom is ERC20, Owned {

  string public constant name = "Wisdom";
  string public constant symbol = "WISDOM";
  uint8 public constant decimals = 2;

  mapping(address => bool) _admins;
  mapping(address => bool) _locked;

  /**
   * Adds somebody as an admin. This method is allowed by owner only.
   */
  function addAdmin(address somebody) public onlyOwner {
    _admins[somebody] = true;
  }

  /**
   * Removes somebody from admin. This method is allowed by owner only.
   */
  function removeAdmin(address somebody) public onlyOwner {
    _admins[somebody] = false;
  }

  /**
   * Returns true if somebody is admin. Owner is always an admin.
   */
  function isAdmin(address somebody) public view returns(bool) {
    return _admins[somebody] || somebody == owner;
  }

  /**
   * Locks an address. This method is allowed by admins.
   *
   * Locked addresses can not transfer or burn.
   */
  function lock(address account) public {
    require(isAdmin(msg.sender));
    _locked[account] = true;
  }

  /**
   * Unlocks an address. This method is allowed by admins.
   */
  function unlock(address account) public {
    require(isAdmin(msg.sender));
    _locked[account] = false;
  }

  /**
   * Returns true if somebody is locked.
   */
  function isLocked(address somebody) public view returns(bool) {
    return _locked[somebody];
  }

  /**
   * Issues new amount of tokens to account. This method is allowed by admins.
   */
  function mint(address account, uint256 amount) public {
    require(isAdmin(msg.sender));
    _mint(account, amount);
  }

  /**
   * @dev Destroys `amount` tokens from sender.
   *
   * See `ERC20._burn`.
   */
  function burn(uint256 amount) public {
    require(!_locked[msg.sender]);
    _burn(msg.sender, amount);
  }

  /**
   * @dev See `ERC20._burnFrom`.
   */
  function burnFrom(address account, uint256 amount) public {
    require(!_locked[msg.sender]);
    require(!_locked[account]);
    _burnFrom(account, amount);
  }

  /**
   * @dev See `IERC20.transfer`.
   *
   * Requirements:
   *
   * - `recipient` cannot be the zero address.
   * - the caller must have a balance of at least `amount`.
   */
  function transfer(address recipient, uint256 amount) public returns (bool) {
    require(!_locked[msg.sender]);
    _transfer(msg.sender, recipient, amount);
    return true;
  }

  /**
   * @dev See `IERC20.transferFrom`.
   *
   * Emits an `Approval` event indicating the updated allowance. This is not
   * required by the EIP. See the note at the beginning of `ERC20`;
   *
   * Requirements:
   * - `sender` and `recipient` cannot be the zero address.
   * - `sender` must have a balance of at least `value`.
   * - the caller must have allowance for `sender`'s tokens of at least
   * `amount`.
   */
  function transferFrom(address sender, address recipient, uint256 amount) public returns (bool) {
    require(!_locked[msg.sender]);
    require(!_locked[sender]);
    _transfer(sender, recipient, amount);
    _approve(sender, msg.sender, _allowances[sender][msg.sender].sub(amount));
    return true;
  }
}

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":"value","type":"uint256"}],"name":"approve","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"somebody","type":"address"}],"name":"removeAdmin","outputs":[],"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":"sender","type":"address"},{"name":"recipient","type":"address"},{"name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"somebody","type":"address"}],"name":"isAdmin","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"account","type":"address"}],"name":"unlock","outputs":[],"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":"spender","type":"address"},{"name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"account","type":"address"},{"name":"amount","type":"uint256"}],"name":"mint","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"amount","type":"uint256"}],"name":"burn","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"somebody","type":"address"}],"name":"isLocked","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"somebody","type":"address"}],"name":"addAdmin","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"account","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"account","type":"address"},{"name":"amount","type":"uint256"}],"name":"burnFrom","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":"spender","type":"address"},{"name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"recipient","type":"address"},{"name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"owner","type":"address"},{"name":"spender","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"account","type":"address"}],"name":"lock","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"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":[{"indexed":true,"name":"owner","type":"address"},{"indexed":true,"name":"spender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Approval","type":"event"}]

608060405260038054600160a060020a03191633179055610e4f806100256000396000f30060806040526004361061011c5763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde038114610121578063095ea7b3146101ab5780631785f53c146101e357806318160ddd1461020657806323b872dd1461022d57806324d7806c146102575780632f6c493c14610278578063313ce5671461029957806339509351146102c457806340c10f19146102e857806342966c681461030c5780634a4fbeec14610324578063704802751461034557806370a082311461036657806379cc6790146103875780638da5cb5b146103ab57806395d89b41146103dc578063a457c2d7146103f1578063a9059cbb14610415578063dd62ed3e14610439578063f435f5a714610460575b600080fd5b34801561012d57600080fd5b50610136610481565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610170578181015183820152602001610158565b50505050905090810190601f16801561019d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156101b757600080fd5b506101cf600160a060020a03600435166024356104b8565b604080519115158252519081900360200190f35b3480156101ef57600080fd5b50610204600160a060020a03600435166104ce565b005b34801561021257600080fd5b5061021b610506565b60408051918252519081900360200190f35b34801561023957600080fd5b506101cf600160a060020a036004358116906024351660443561050c565b34801561026357600080fd5b506101cf600160a060020a03600435166105a4565b34801561028457600080fd5b50610204600160a060020a03600435166105de565b3480156102a557600080fd5b506102ae610613565b6040805160ff9092168252519081900360200190f35b3480156102d057600080fd5b506101cf600160a060020a0360043516602435610618565b3480156102f457600080fd5b50610204600160a060020a0360043516602435610654565b34801561031857600080fd5b50610204600435610676565b34801561033057600080fd5b506101cf600160a060020a03600435166106a0565b34801561035157600080fd5b50610204600160a060020a03600435166106be565b34801561037257600080fd5b5061021b600160a060020a03600435166106f9565b34801561039357600080fd5b50610204600160a060020a0360043516602435610714565b3480156103b757600080fd5b506103c0610761565b60408051600160a060020a039092168252519081900360200190f35b3480156103e857600080fd5b50610136610770565b3480156103fd57600080fd5b506101cf600160a060020a03600435166024356107a7565b34801561042157600080fd5b506101cf600160a060020a03600435166024356107e3565b34801561044557600080fd5b5061021b600160a060020a036004358116906024351661080b565b34801561046c57600080fd5b50610204600160a060020a0360043516610836565b60408051808201909152600681527f576973646f6d0000000000000000000000000000000000000000000000000000602082015281565b60006104c533848461086e565b50600192915050565b600354600160a060020a031633146104e557600080fd5b600160a060020a03166000908152600460205260409020805460ff19169055565b60025490565b3360009081526005602052604081205460ff161561052957600080fd5b600160a060020a03841660009081526005602052604090205460ff161561054f57600080fd5b61055a8484846109db565b600160a060020a03841660009081526001602090815260408083203380855292529091205461059a918691610595908663ffffffff610b9f16565b61086e565b5060019392505050565b600160a060020a03811660009081526004602052604081205460ff16806105d85750600354600160a060020a038381169116145b92915050565b6105e7336105a4565b15156105f257600080fd5b600160a060020a03166000908152600560205260409020805460ff19169055565b600281565b336000818152600160209081526040808320600160a060020a038716845290915281205490916104c5918590610595908663ffffffff610bb616565b61065d336105a4565b151561066857600080fd5b6106728282610bcf565b5050565b3360009081526005602052604090205460ff161561069357600080fd5b61069d3382610cc4565b50565b600160a060020a031660009081526005602052604090205460ff1690565b600354600160a060020a031633146106d557600080fd5b600160a060020a03166000908152600460205260409020805460ff19166001179055565b600160a060020a031660009081526020819052604090205490565b3360009081526005602052604090205460ff161561073157600080fd5b600160a060020a03821660009081526005602052604090205460ff161561075757600080fd5b6106728282610dde565b600354600160a060020a031681565b60408051808201909152600681527f574953444f4d0000000000000000000000000000000000000000000000000000602082015281565b336000818152600160209081526040808320600160a060020a038716845290915281205490916104c5918590610595908663ffffffff610b9f16565b3360009081526005602052604081205460ff161561080057600080fd5b6104c53384846109db565b600160a060020a03918216600090815260016020908152604080832093909416825291909152205490565b61083f336105a4565b151561084a57600080fd5b600160a060020a03166000908152600560205260409020805460ff19166001179055565b600160a060020a03831615156108f3576040805160e560020a62461bcd028152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f7265737300000000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b600160a060020a0382161515610979576040805160e560020a62461bcd02815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f7373000000000000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b600160a060020a03808416600081815260016020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b600160a060020a0383161515610a61576040805160e560020a62461bcd02815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f6472657373000000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b600160a060020a0382161515610ae7576040805160e560020a62461bcd02815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f6573730000000000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b600160a060020a038316600090815260208190526040902054610b10908263ffffffff610b9f16565b600160a060020a038085166000908152602081905260408082209390935590841681522054610b45908263ffffffff610bb616565b600160a060020a038084166000818152602081815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b60008083831115610baf57600080fd5b5050900390565b600082820183811015610bc857600080fd5b9392505050565b600160a060020a0382161515610c2f576040805160e560020a62461bcd02815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015290519081900360640190fd5b600254610c42908263ffffffff610bb616565b600255600160a060020a038216600090815260208190526040902054610c6e908263ffffffff610bb616565b600160a060020a0383166000818152602081815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b600160a060020a0382161515610d4a576040805160e560020a62461bcd02815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360448201527f7300000000000000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b600254610d5d908263ffffffff610b9f16565b600255600160a060020a038216600090815260208190526040902054610d89908263ffffffff610b9f16565b600160a060020a038316600081815260208181526040808320949094558351858152935191937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef929081900390910190a35050565b610de88282610cc4565b600160a060020a038216600090815260016020908152604080832033808552925290912054610672918491610595908563ffffffff610b9f165600a165627a7a72305820e7b48bae80fc542fbbfae15cb9195e157494d1cf7ac4763196e78dfc15fb48180029

Deployed Bytecode

0x60806040526004361061011c5763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde038114610121578063095ea7b3146101ab5780631785f53c146101e357806318160ddd1461020657806323b872dd1461022d57806324d7806c146102575780632f6c493c14610278578063313ce5671461029957806339509351146102c457806340c10f19146102e857806342966c681461030c5780634a4fbeec14610324578063704802751461034557806370a082311461036657806379cc6790146103875780638da5cb5b146103ab57806395d89b41146103dc578063a457c2d7146103f1578063a9059cbb14610415578063dd62ed3e14610439578063f435f5a714610460575b600080fd5b34801561012d57600080fd5b50610136610481565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610170578181015183820152602001610158565b50505050905090810190601f16801561019d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156101b757600080fd5b506101cf600160a060020a03600435166024356104b8565b604080519115158252519081900360200190f35b3480156101ef57600080fd5b50610204600160a060020a03600435166104ce565b005b34801561021257600080fd5b5061021b610506565b60408051918252519081900360200190f35b34801561023957600080fd5b506101cf600160a060020a036004358116906024351660443561050c565b34801561026357600080fd5b506101cf600160a060020a03600435166105a4565b34801561028457600080fd5b50610204600160a060020a03600435166105de565b3480156102a557600080fd5b506102ae610613565b6040805160ff9092168252519081900360200190f35b3480156102d057600080fd5b506101cf600160a060020a0360043516602435610618565b3480156102f457600080fd5b50610204600160a060020a0360043516602435610654565b34801561031857600080fd5b50610204600435610676565b34801561033057600080fd5b506101cf600160a060020a03600435166106a0565b34801561035157600080fd5b50610204600160a060020a03600435166106be565b34801561037257600080fd5b5061021b600160a060020a03600435166106f9565b34801561039357600080fd5b50610204600160a060020a0360043516602435610714565b3480156103b757600080fd5b506103c0610761565b60408051600160a060020a039092168252519081900360200190f35b3480156103e857600080fd5b50610136610770565b3480156103fd57600080fd5b506101cf600160a060020a03600435166024356107a7565b34801561042157600080fd5b506101cf600160a060020a03600435166024356107e3565b34801561044557600080fd5b5061021b600160a060020a036004358116906024351661080b565b34801561046c57600080fd5b50610204600160a060020a0360043516610836565b60408051808201909152600681527f576973646f6d0000000000000000000000000000000000000000000000000000602082015281565b60006104c533848461086e565b50600192915050565b600354600160a060020a031633146104e557600080fd5b600160a060020a03166000908152600460205260409020805460ff19169055565b60025490565b3360009081526005602052604081205460ff161561052957600080fd5b600160a060020a03841660009081526005602052604090205460ff161561054f57600080fd5b61055a8484846109db565b600160a060020a03841660009081526001602090815260408083203380855292529091205461059a918691610595908663ffffffff610b9f16565b61086e565b5060019392505050565b600160a060020a03811660009081526004602052604081205460ff16806105d85750600354600160a060020a038381169116145b92915050565b6105e7336105a4565b15156105f257600080fd5b600160a060020a03166000908152600560205260409020805460ff19169055565b600281565b336000818152600160209081526040808320600160a060020a038716845290915281205490916104c5918590610595908663ffffffff610bb616565b61065d336105a4565b151561066857600080fd5b6106728282610bcf565b5050565b3360009081526005602052604090205460ff161561069357600080fd5b61069d3382610cc4565b50565b600160a060020a031660009081526005602052604090205460ff1690565b600354600160a060020a031633146106d557600080fd5b600160a060020a03166000908152600460205260409020805460ff19166001179055565b600160a060020a031660009081526020819052604090205490565b3360009081526005602052604090205460ff161561073157600080fd5b600160a060020a03821660009081526005602052604090205460ff161561075757600080fd5b6106728282610dde565b600354600160a060020a031681565b60408051808201909152600681527f574953444f4d0000000000000000000000000000000000000000000000000000602082015281565b336000818152600160209081526040808320600160a060020a038716845290915281205490916104c5918590610595908663ffffffff610b9f16565b3360009081526005602052604081205460ff161561080057600080fd5b6104c53384846109db565b600160a060020a03918216600090815260016020908152604080832093909416825291909152205490565b61083f336105a4565b151561084a57600080fd5b600160a060020a03166000908152600560205260409020805460ff19166001179055565b600160a060020a03831615156108f3576040805160e560020a62461bcd028152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f7265737300000000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b600160a060020a0382161515610979576040805160e560020a62461bcd02815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f7373000000000000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b600160a060020a03808416600081815260016020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b600160a060020a0383161515610a61576040805160e560020a62461bcd02815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f6472657373000000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b600160a060020a0382161515610ae7576040805160e560020a62461bcd02815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f6573730000000000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b600160a060020a038316600090815260208190526040902054610b10908263ffffffff610b9f16565b600160a060020a038085166000908152602081905260408082209390935590841681522054610b45908263ffffffff610bb616565b600160a060020a038084166000818152602081815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b60008083831115610baf57600080fd5b5050900390565b600082820183811015610bc857600080fd5b9392505050565b600160a060020a0382161515610c2f576040805160e560020a62461bcd02815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015290519081900360640190fd5b600254610c42908263ffffffff610bb616565b600255600160a060020a038216600090815260208190526040902054610c6e908263ffffffff610bb616565b600160a060020a0383166000818152602081815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b600160a060020a0382161515610d4a576040805160e560020a62461bcd02815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360448201527f7300000000000000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b600254610d5d908263ffffffff610b9f16565b600255600160a060020a038216600090815260208190526040902054610d89908263ffffffff610b9f16565b600160a060020a038316600081815260208181526040808320949094558351858152935191937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef929081900390910190a35050565b610de88282610cc4565b600160a060020a038216600090815260016020908152604080832033808552925290912054610672918491610595908563ffffffff610b9f165600a165627a7a72305820e7b48bae80fc542fbbfae15cb9195e157494d1cf7ac4763196e78dfc15fb48180029

Deployed Bytecode Sourcemap

7490:3197:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7529:38;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7529:38:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:100:-1;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;7529:38:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2994:138;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;2994:138:0;-1:-1:-1;;;;;2994:138:0;;;;;;;;;;;;;;;;;;;;;;;;;8002:94;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;8002:94:0;-1:-1:-1;;;;;8002:94:0;;;;;;;2434:85;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2434:85:0;;;;;;;;;;;;;;;;;;;;10374:310;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;10374:310:0;-1:-1:-1;;;;;10374:310:0;;;;;;;;;;;;8183:119;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;8183:119:0;-1:-1:-1;;;;;8183:119:0;;;;;8624:112;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;8624:112:0;-1:-1:-1;;;;;8624:112:0;;;;;7617:34;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7617:34:0;;;;;;;;;;;;;;;;;;;;;;;3515:196;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;3515:196:0;-1:-1:-1;;;;;3515:196:0;;;;;;;8997:124;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;8997:124:0;-1:-1:-1;;;;;8997:124:0;;;;;;;9221:111;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;9221:111:0;;;;;8798:99;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;8798:99:0;-1:-1:-1;;;;;8798:99:0;;;;;7819:90;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;7819:90:0;-1:-1:-1;;;;;7819:90:0;;;;;2574:104;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;2574:104:0;-1:-1:-1;;;;;2574:104:0;;;;;9386:166;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;9386:166:0;-1:-1:-1;;;;;9386:166:0;;;;;;;1691:20;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1691:20:0;;;;;;;;-1:-1:-1;;;;;1691:20:0;;;;;;;;;;;;;;7572:40;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7572:40:0;;;;4184:206;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;4184:206:0;-1:-1:-1;;;;;4184:206:0;;;;;;;9747:182;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;9747:182:0;-1:-1:-1;;;;;9747:182:0;;;;;;;2735:128;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;2735:128:0;-1:-1:-1;;;;;2735:128:0;;;;;;;;;;8435:109;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;8435:109:0;-1:-1:-1;;;;;8435:109:0;;;;;7529:38;;;;;;;;;;;;;;;;;;;:::o;2994:138::-;3059:4;3072:36;3081:10;3093:7;3102:5;3072:8;:36::i;:::-;-1:-1:-1;3122:4:0;2994:138;;;;:::o;8002:94::-;1766:5;;-1:-1:-1;;;;;1766:5:0;1752:10;:19;1744:28;;;;;;-1:-1:-1;;;;;8065:17:0;8085:5;8065:17;;;:7;:17;;;;;:25;;-1:-1:-1;;8065:25:0;;;8002:94::o;2434:85::-;2501:12;;2434:85;:::o;10374:310::-;10493:10;10463:4;10485:19;;;:7;:19;;;;;;;;10484:20;10476:29;;;;;;-1:-1:-1;;;;;10521:15:0;;;;;;:7;:15;;;;;;;;10520:16;10512:25;;;;;;10544:36;10554:6;10562:9;10573:6;10544:9;:36::i;:::-;-1:-1:-1;;;;;10616:19:0;;;;;;:11;:19;;;;;;;;10604:10;10616:31;;;;;;;;;10587:73;;10596:6;;10616:43;;10652:6;10616:43;:35;:43;:::i;:::-;10587:8;:73::i;:::-;-1:-1:-1;10674:4:0;10374:310;;;;;:::o;8183:119::-;-1:-1:-1;;;;;8258:17:0;;8238:4;8258:17;;;:7;:17;;;;;;;;;:38;;-1:-1:-1;8291:5:0;;-1:-1:-1;;;;;8279:17:0;;;8291:5;;8279:17;8258:38;8251:45;8183:119;-1:-1:-1;;8183:119:0:o;8624:112::-;8679:19;8687:10;8679:7;:19::i;:::-;8671:28;;;;;;;;-1:-1:-1;;;;;8706:16:0;8725:5;8706:16;;;:7;:16;;;;;:24;;-1:-1:-1;;8706:24:0;;;8624:112::o;7617:34::-;7650:1;7617:34;:::o;3515:196::-;3617:10;3595:4;3638:23;;;:11;:23;;;;;;;;-1:-1:-1;;;;;3638:32:0;;;;;;;;;;3595:4;;3608:79;;3629:7;;3638:48;;3675:10;3638:48;:36;:48;:::i;8997:124::-;9066:19;9074:10;9066:7;:19::i;:::-;9058:28;;;;;;;;9093:22;9099:7;9108:6;9093:5;:22::i;:::-;8997:124;;:::o;9221:111::-;9282:10;9274:19;;;;:7;:19;;;;;;;;9273:20;9265:29;;;;;;9301:25;9307:10;9319:6;9301:5;:25::i;:::-;9221:111;:::o;8798:99::-;-1:-1:-1;;;;;8874:17:0;8854:4;8874:17;;;:7;:17;;;;;;;;;8798:99::o;7819:90::-;1766:5;;-1:-1:-1;;;;;1766:5:0;1752:10;:19;1744:28;;;;;;-1:-1:-1;;;;;7879:17:0;;;;;:7;:17;;;;;:24;;-1:-1:-1;;7879:24:0;7899:4;7879:24;;;7819:90::o;2574:104::-;-1:-1:-1;;;;;2654:18:0;2631:7;2654:18;;;;;;;;;;;;2574:104::o;9386:166::-;9468:10;9460:19;;;;:7;:19;;;;;;;;9459:20;9451:29;;;;;;-1:-1:-1;;;;;9496:16:0;;;;;;:7;:16;;;;;;;;9495:17;9487:26;;;;;;9520;9530:7;9539:6;9520:9;:26::i;1691:20::-;;;-1:-1:-1;;;;;1691:20:0;;:::o;7572:40::-;;;;;;;;;;;;;;;;;;;:::o;4184:206::-;4291:10;4269:4;4312:23;;;:11;:23;;;;;;;;-1:-1:-1;;;;;4312:32:0;;;;;;;;;;4269:4;;4282:84;;4303:7;;4312:53;;4349:15;4312:53;:36;:53;:::i;9747:182::-;9846:10;9816:4;9838:19;;;:7;:19;;;;;;;;9837:20;9829:29;;;;;;9865:40;9875:10;9887:9;9898:6;9865:9;:40::i;2735:128::-;-1:-1:-1;;;;;2830:18:0;;;2807:7;2830:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;2735:128::o;8435:109::-;8488:19;8496:10;8488:7;:19::i;:::-;8480:28;;;;;;;;-1:-1:-1;;;;;8515:16:0;;;;;:7;:16;;;;;:23;;-1:-1:-1;;8515:23:0;8534:4;8515:23;;;8435:109::o;6815:317::-;-1:-1:-1;;;;;6904:19:0;;;;6896:68;;;;;-1:-1:-1;;;;;6896:68:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;6979:21:0;;;;6971:68;;;;;-1:-1:-1;;;;;6971:68:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7048:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:35;;;7095:31;;;;;;;;;;;;;;;;;6815:317;;;:::o;4850:407::-;-1:-1:-1;;;;;4944:20:0;;;;4936:70;;;;;-1:-1:-1;;;;;4936:70:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;5021:23:0;;;;5013:71;;;;;-1:-1:-1;;;;;5013:71:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;5113:17:0;;:9;:17;;;;;;;;;;;:29;;5135:6;5113:29;:21;:29;:::i;:::-;-1:-1:-1;;;;;5093:17:0;;;:9;:17;;;;;;;;;;;:49;;;;5172:20;;;;;;;:32;;5197:6;5172:32;:24;:32;:::i;:::-;-1:-1:-1;;;;;5149:20:0;;;:9;:20;;;;;;;;;;;;:55;;;;5216:35;;;;;;;5149:20;;5216:35;;;;;;;;;;;;;4850:407;;;:::o;1022:136::-;1080:7;;1104:6;;;;1096:15;;;;;;-1:-1:-1;;1130:5:0;;;1022:136::o;1226:::-;1284:7;1312:5;;;1332:6;;;;1324:15;;;;;;1355:1;1226:136;-1:-1:-1;;;1226:136:0:o;5518:290::-;-1:-1:-1;;;;;5590:21:0;;;;5582:65;;;;;-1:-1:-1;;;;;5582:65:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;5671:12;;:24;;5688:6;5671:24;:16;:24;:::i;:::-;5656:12;:39;-1:-1:-1;;;;;5723:18:0;;:9;:18;;;;;;;;;;;:30;;5746:6;5723:30;:22;:30;:::i;:::-;-1:-1:-1;;;;;5702:18:0;;:9;:18;;;;;;;;;;;:51;;;;5765:37;;;;;;;5702:18;;:9;;5765:37;;;;;;;;;;5518:290;;:::o;6115:288::-;-1:-1:-1;;;;;6186:21:0;;;;6178:67;;;;;-1:-1:-1;;;;;6178:67:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6269:12;;:23;;6286:5;6269:23;:16;:23;:::i;:::-;6254:12;:38;-1:-1:-1;;;;;6320:18:0;;:9;:18;;;;;;;;;;;:29;;6343:5;6320:29;:22;:29;:::i;:::-;-1:-1:-1;;;;;6299:18:0;;:9;:18;;;;;;;;;;;:50;;;;6361:36;;;;;;;6299:9;;6361:36;;;;;;;;;;;6115:288;;:::o;7303:178::-;7371:22;7377:7;7386:6;7371:5;:22::i;:::-;-1:-1:-1;;;;;7430:20:0;;;;;;:11;:20;;;;;;;;7418:10;7430:32;;;;;;;;;7400:75;;7409:7;;7430:44;;7467:6;7430:44;:36;:44;:::i

Swarm Source

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