ETH Price: $3,350.54 (-7.55%)
Gas: 26 Gwei

Token

Community Token (COM)
 

Overview

Max Total Supply

847,115.212576404974449464 COM

Holders

257 (0.00%)

Total Transfers

-

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

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

OVERVIEW

COM is a community-driven peer-to-peer currency that incentivizes skeptical investing and science-based research to weed out bad actors in the DeFi and cryptocurrency space.

# Exchange Pair Price  24H Volume % Volume

Contract Source Code Verified (Exact Match)

Contract Name:
COM

Compiler Version
v0.5.17+commit.d19bba13

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2020-07-26
*/

/**
 * official website https://communitytoken.network
*/

pragma solidity ^0.5.17;

interface IERC20 {
  function totalSupply() external view returns (uint256);
  function balanceOf(address who) external view returns (uint256);
  function allowance(address owner, address spender) external view returns (uint256);
  function transfer(address to, uint256 value) external returns (bool);
  function approve(address spender, uint256 value) external returns (bool);
  function transferFrom(address from, address to, uint256 value) external returns (bool);

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

library SafeMath {
  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;
  }

  function div(uint256 a, uint256 b) internal pure returns (uint256) {
    uint256 c = a / b;
    return c;
  }

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

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

  function ceil(uint256 a, uint256 m) internal pure returns (uint256) {
    uint256 c = add(a,m);
    uint256 d = sub(c,1);
    return mul(div(d,m),m);
  }
}

contract ERC20Detailed is IERC20 {

  string private _name;
  string private _symbol;
  uint8 private _decimals;

  constructor(string memory name, string memory symbol, uint8 decimals) public {
    _name = name;
    _symbol = symbol;
    _decimals = decimals;
  }

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

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

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

contract COM is ERC20Detailed {

  using SafeMath for uint256;
  mapping (address => uint256) private _balances;
  mapping (address => mapping (address => uint256)) private _allowed;

  string constant tokenName     = "Community Token";
  string constant tokenSymbol   = "COM";
  uint8  constant tokenDecimals = 18;
  uint256 _totalSupply          = 1000000000000000000000000;
  uint256 constant noFee        = 10000000000000000001;

  //2254066
  //uint256 constant startBlock            = 8074686; //2%
  uint256 constant heightEnd20Percent    = 10328752; //1%
  uint256 constant heightEnd10Percent    = 12582818; //0.5%
  uint256 constant heightEnd05Percent    = 14836884; //0.25%

  constructor() public payable ERC20Detailed(tokenName, tokenSymbol, tokenDecimals) {
    _mint(msg.sender, _totalSupply);
  }

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

  function balanceOf(address owner) public view returns (uint256) {
    return _balances[owner];
  }

  function allowance(address owner, address spender) public view returns (uint256) {
    return _allowed[owner][spender];
  }

    function findPercent(uint256 value) public view returns (uint256)  {
        //uint256 roundValue = value.ceil(basePercent);
        uint256 currentRate = returnRate();
        uint256 onePercent  = value.div(currentRate);
        return onePercent;
    }

    function returnRate() public view returns(uint256) {
        if                                       ( block.number < heightEnd20Percent)  return 50;  
        if (block.number >= heightEnd20Percent  && block.number < heightEnd10Percent)  return 100; 
        if (block.number >= heightEnd10Percent  && block.number < heightEnd05Percent)  return 200; 
        if (block.number >= heightEnd05Percent)                                        return 400;
    }



  function transfer(address to, uint256 value) public returns (bool) {
    require(value <= _balances[msg.sender]);
    require(to != address(0));
    
    if (value < noFee) {
        _transferBurnNo(to,value);
    } else {
        _transferBurnYes(to,value);
    }

    return true;
  }


  function _transferBurnYes(address to, uint256 value) internal {
    require(value <= _balances[msg.sender]);
    require(to != address(0));
    require(value >= noFee);

    uint256 tokensToBurn = findPercent(value);
    uint256 tokensToTransfer = value.sub(tokensToBurn);

    _balances[msg.sender] = _balances[msg.sender].sub(value);
    _balances[to] = _balances[to].add(tokensToTransfer);

    _totalSupply = _totalSupply.sub(tokensToBurn);

    emit Transfer(msg.sender, to, tokensToTransfer);
    emit Transfer(msg.sender, address(0), tokensToBurn);
  }

  function _transferBurnNo(address to, uint256 value) internal {
    require(value <= _balances[msg.sender]);
    require(to != address(0));
    require(value < noFee);

    _balances[msg.sender] = _balances[msg.sender].sub(value);
    _balances[to] = _balances[to].add(value);

    emit Transfer(msg.sender, to, value);
  }

  function approve(address spender, uint256 value) public returns (bool) {
    require(spender != address(0));
    _allowed[msg.sender][spender] = value;
    emit Approval(msg.sender, spender, value);
    return true;
  }

  function transferFrom(address from, address to, uint256 value) public returns (bool) {
    require(value <= _balances[from]);
    require(value <= _allowed[from][msg.sender]);
    require(to != address(0));

    if (value < noFee) {
        _transferFromBurnNo(from, to, value);
    } else {
        _transferFromBurnYes(from, to, value);
    }

    return true;
  }

function _transferFromBurnYes(address from, address to, uint256 value) internal {
    require(value <= _balances[from]);
    require(value <= _allowed[from][msg.sender]);
    require(to != address(0));
    require(value >= noFee);

    _balances[from] = _balances[from].sub(value);

    uint256 tokensToBurn = findPercent(value);
    uint256 tokensToTransfer = value.sub(tokensToBurn);

    _balances[to] = _balances[to].add(tokensToTransfer);
    _totalSupply = _totalSupply.sub(tokensToBurn);

    _allowed[from][msg.sender] = _allowed[from][msg.sender].sub(value);

    emit Transfer(from, to, tokensToTransfer);
    emit Transfer(from, address(0), tokensToBurn);

  }

function _transferFromBurnNo(address from, address to, uint256 value) internal {
    require(value <= _balances[from]);
    require(value <= _allowed[from][msg.sender]);
    require(to != address(0));
    require(value < noFee);


    _balances[from] = _balances[from].sub(value);
    _balances[to]   = _balances[to].add(value);

    _allowed[from][msg.sender] = _allowed[from][msg.sender].sub(value);

    emit Transfer(from, to, value);

  }

  function increaseAllowance(address spender, uint256 addedValue) public returns (bool) {
    require(spender != address(0));
    _allowed[msg.sender][spender] = (_allowed[msg.sender][spender].add(addedValue));
    emit Approval(msg.sender, spender, _allowed[msg.sender][spender]);
    return true;
  }

  function decreaseAllowance(address spender, uint256 subtractedValue) public returns (bool) {
    require(spender != address(0));
    _allowed[msg.sender][spender] = (_allowed[msg.sender][spender].sub(subtractedValue));
    emit Approval(msg.sender, spender, _allowed[msg.sender][spender]);
    return true;
  }

  function _mint(address account, uint256 amount) internal {
    require(amount != 0);
    _balances[account] = _balances[account].add(amount);
    emit Transfer(address(0), account, amount);
  }

  function burn(uint256 amount) external {
    _burn(msg.sender, amount);
  }

  function _burn(address account, uint256 amount) internal {
    require(amount != 0);
    require(amount <= _balances[account]);
    _totalSupply = _totalSupply.sub(amount);
    _balances[account] = _balances[account].sub(amount);
    emit Transfer(account, address(0), amount);
  }

  function burnFrom(address account, uint256 amount) external {
    require(amount <= _allowed[account][msg.sender]);
    _allowed[account][msg.sender] = _allowed[account][msg.sender].sub(amount);
    _burn(account, amount);
  }
}

Contract Security Audit

Contract ABI

[{"inputs":[],"payable":true,"stateMutability":"payable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"constant":true,"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"owner","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"burn","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"burnFrom","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"internalType":"uint256","name":"value","type":"uint256"}],"name":"findPercent","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"returnRate","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"}]

608060405269d3c21bcecceda10000006005556040518060400160405280600f81526020017f436f6d6d756e69747920546f6b656e00000000000000000000000000000000008152506040518060400160405280600381526020017f434f4d000000000000000000000000000000000000000000000000000000000081525060128260009080519060200190620000989291906200021c565b508160019080519060200190620000b19291906200021c565b5080600260006101000a81548160ff021916908360ff160217905550505050620000e433600554620000ea60201b60201c565b620002cb565b6000811415620000f957600080fd5b6200015281600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054620001ff60201b62001a631790919060201c565b600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35050565b6000808284019050838110156200021257fe5b8091505092915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200025f57805160ff191683800117855562000290565b8280016001018555821562000290579182015b828111156200028f57825182559160200191906001019062000272565b5b5090506200029f9190620002a3565b5090565b620002c891905b80821115620002c4576000816000905550600101620002aa565b5090565b90565b61215a80620002db6000396000f3fe608060405234801561001057600080fd5b50600436106100f55760003560e01c806370a082311161009757806399702507116100665780639970250714610486578063a457c2d7146104c8578063a9059cbb1461052e578063dd62ed3e14610594576100f5565b806370a082311461033f57806379cc6790146103975780637c2ffbb3146103e557806395d89b4114610403576100f5565b806323b872dd116100d357806323b872dd14610201578063313ce5671461028757806339509351146102ab57806342966c6814610311576100f5565b806306fdde03146100fa578063095ea7b31461017d57806318160ddd146101e3575b600080fd5b61010261060c565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610142578082015181840152602081019050610127565b50505050905090810190601f16801561016f5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101c96004803603604081101561019357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506106ae565b604051808215151515815260200191505060405180910390f35b6101eb6107d9565b6040518082815260200191505060405180910390f35b61026d6004803603606081101561021757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506107e3565b604051808215151515815260200191505060405180910390f35b61028f61092b565b604051808260ff1660ff16815260200191505060405180910390f35b6102f7600480360360408110156102c157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610942565b604051808215151515815260200191505060405180910390f35b61033d6004803603602081101561032757600080fd5b8101908080359060200190929190505050610b77565b005b6103816004803603602081101561035557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610b84565b6040518082815260200191505060405180910390f35b6103e3600480360360408110156103ad57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610bcd565b005b6103ed610d73565b6040518082815260200191505060405180910390f35b61040b610de7565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561044b578082015181840152602081019050610430565b50505050905090810190601f1680156104785780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6104b26004803603602081101561049c57600080fd5b8101908080359060200190929190505050610e89565b6040518082815260200191505060405180910390f35b610514600480360360408110156104de57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610eb7565b604051808215151515815260200191505060405180910390f35b61057a6004803603604081101561054457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506110ec565b604051808215151515815260200191505060405180910390f35b6105f6600480360360408110156105aa57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506111a8565b6040518082815260200191505060405180910390f35b606060008054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156106a45780601f10610679576101008083540402835291602001916106a4565b820191906000526020600020905b81548152906001019060200180831161068757829003601f168201915b5050505050905090565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156106e957600080fd5b81600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b6000600554905090565b6000600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482111561083157600080fd5b600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548211156108ba57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156108f457600080fd5b678ac7230489e800018210156109145761090f84848461122f565b610920565b61091f8484846115f5565b5b600190509392505050565b6000600260009054906101000a900460ff16905090565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561097d57600080fd5b610a0c82600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611a6390919063ffffffff16565b600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a36001905092915050565b610b813382611a7f565b50565b6000600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054811115610c5657600080fd5b610ce581600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611bf390919063ffffffff16565b600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610d6f8282611a7f565b5050565b6000629d9ab0431015610d895760329050610de4565b629d9ab04310158015610d9e575062bfffa243105b15610dac5760649050610de4565b62bfffa24310158015610dc1575062e2649443105b15610dcf5760c89050610de4565b62e264944310610de3576101909050610de4565b5b90565b606060018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610e7f5780601f10610e5457610100808354040283529160200191610e7f565b820191906000526020600020905b815481529060010190602001808311610e6257829003601f168201915b5050505050905090565b600080610e94610d73565b90506000610eab8285611c0a90919063ffffffff16565b90508092505050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610ef257600080fd5b610f8182600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611bf390919063ffffffff16565b600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a36001905092915050565b6000600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482111561113a57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561117457600080fd5b678ac7230489e800018210156111935761118e8383611c23565b61119e565b61119d8383611e50565b5b6001905092915050565b6000600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205481111561127b57600080fd5b600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205481111561130457600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561133e57600080fd5b678ac7230489e80001811061135257600080fd5b6113a481600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611bf390919063ffffffff16565b600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061143981600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611a6390919063ffffffff16565b600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061150b81600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611bf390919063ffffffff16565b600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3505050565b600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205481111561164157600080fd5b600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548111156116ca57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561170457600080fd5b678ac7230489e8000181101561171957600080fd5b61176b81600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611bf390919063ffffffff16565b600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555060006117b982610e89565b905060006117d08284611bf390919063ffffffff16565b905061182481600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611a6390919063ffffffff16565b600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061187c82600554611bf390919063ffffffff16565b60058190555061191183600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611bf390919063ffffffff16565b600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a35050505050565b600080828401905083811015611a7557fe5b8091505092915050565b6000811415611a8d57600080fd5b600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054811115611ad957600080fd5b611aee81600554611bf390919063ffffffff16565b600581905550611b4681600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611bf390919063ffffffff16565b600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35050565b600082821115611bff57fe5b818303905092915050565b600080828481611c1657fe5b0490508091505092915050565b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054811115611c6f57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611ca957600080fd5b678ac7230489e800018110611cbd57600080fd5b611d0f81600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611bf390919063ffffffff16565b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611da481600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611a6390919063ffffffff16565b600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35050565b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054811115611e9c57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611ed657600080fd5b678ac7230489e80001811015611eeb57600080fd5b6000611ef682610e89565b90506000611f0d8284611bf390919063ffffffff16565b9050611f6183600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611bf390919063ffffffff16565b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611ff681600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611a6390919063ffffffff16565b600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061204e82600554611bf390919063ffffffff16565b6005819055508373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a35050505056fea265627a7a7231582081a931e51f5b9147fc9933db742f9ad6b238650a834bc8dbb5918d3fea2ef84d64736f6c63430005110032

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106100f55760003560e01c806370a082311161009757806399702507116100665780639970250714610486578063a457c2d7146104c8578063a9059cbb1461052e578063dd62ed3e14610594576100f5565b806370a082311461033f57806379cc6790146103975780637c2ffbb3146103e557806395d89b4114610403576100f5565b806323b872dd116100d357806323b872dd14610201578063313ce5671461028757806339509351146102ab57806342966c6814610311576100f5565b806306fdde03146100fa578063095ea7b31461017d57806318160ddd146101e3575b600080fd5b61010261060c565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610142578082015181840152602081019050610127565b50505050905090810190601f16801561016f5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101c96004803603604081101561019357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506106ae565b604051808215151515815260200191505060405180910390f35b6101eb6107d9565b6040518082815260200191505060405180910390f35b61026d6004803603606081101561021757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506107e3565b604051808215151515815260200191505060405180910390f35b61028f61092b565b604051808260ff1660ff16815260200191505060405180910390f35b6102f7600480360360408110156102c157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610942565b604051808215151515815260200191505060405180910390f35b61033d6004803603602081101561032757600080fd5b8101908080359060200190929190505050610b77565b005b6103816004803603602081101561035557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610b84565b6040518082815260200191505060405180910390f35b6103e3600480360360408110156103ad57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610bcd565b005b6103ed610d73565b6040518082815260200191505060405180910390f35b61040b610de7565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561044b578082015181840152602081019050610430565b50505050905090810190601f1680156104785780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6104b26004803603602081101561049c57600080fd5b8101908080359060200190929190505050610e89565b6040518082815260200191505060405180910390f35b610514600480360360408110156104de57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610eb7565b604051808215151515815260200191505060405180910390f35b61057a6004803603604081101561054457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506110ec565b604051808215151515815260200191505060405180910390f35b6105f6600480360360408110156105aa57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506111a8565b6040518082815260200191505060405180910390f35b606060008054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156106a45780601f10610679576101008083540402835291602001916106a4565b820191906000526020600020905b81548152906001019060200180831161068757829003601f168201915b5050505050905090565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156106e957600080fd5b81600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b6000600554905090565b6000600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482111561083157600080fd5b600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548211156108ba57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156108f457600080fd5b678ac7230489e800018210156109145761090f84848461122f565b610920565b61091f8484846115f5565b5b600190509392505050565b6000600260009054906101000a900460ff16905090565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561097d57600080fd5b610a0c82600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611a6390919063ffffffff16565b600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a36001905092915050565b610b813382611a7f565b50565b6000600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054811115610c5657600080fd5b610ce581600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611bf390919063ffffffff16565b600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610d6f8282611a7f565b5050565b6000629d9ab0431015610d895760329050610de4565b629d9ab04310158015610d9e575062bfffa243105b15610dac5760649050610de4565b62bfffa24310158015610dc1575062e2649443105b15610dcf5760c89050610de4565b62e264944310610de3576101909050610de4565b5b90565b606060018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610e7f5780601f10610e5457610100808354040283529160200191610e7f565b820191906000526020600020905b815481529060010190602001808311610e6257829003601f168201915b5050505050905090565b600080610e94610d73565b90506000610eab8285611c0a90919063ffffffff16565b90508092505050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610ef257600080fd5b610f8182600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611bf390919063ffffffff16565b600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a36001905092915050565b6000600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482111561113a57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561117457600080fd5b678ac7230489e800018210156111935761118e8383611c23565b61119e565b61119d8383611e50565b5b6001905092915050565b6000600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205481111561127b57600080fd5b600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205481111561130457600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561133e57600080fd5b678ac7230489e80001811061135257600080fd5b6113a481600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611bf390919063ffffffff16565b600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061143981600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611a6390919063ffffffff16565b600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061150b81600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611bf390919063ffffffff16565b600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3505050565b600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205481111561164157600080fd5b600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548111156116ca57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561170457600080fd5b678ac7230489e8000181101561171957600080fd5b61176b81600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611bf390919063ffffffff16565b600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555060006117b982610e89565b905060006117d08284611bf390919063ffffffff16565b905061182481600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611a6390919063ffffffff16565b600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061187c82600554611bf390919063ffffffff16565b60058190555061191183600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611bf390919063ffffffff16565b600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a35050505050565b600080828401905083811015611a7557fe5b8091505092915050565b6000811415611a8d57600080fd5b600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054811115611ad957600080fd5b611aee81600554611bf390919063ffffffff16565b600581905550611b4681600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611bf390919063ffffffff16565b600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35050565b600082821115611bff57fe5b818303905092915050565b600080828481611c1657fe5b0490508091505092915050565b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054811115611c6f57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611ca957600080fd5b678ac7230489e800018110611cbd57600080fd5b611d0f81600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611bf390919063ffffffff16565b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611da481600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611a6390919063ffffffff16565b600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35050565b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054811115611e9c57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611ed657600080fd5b678ac7230489e80001811015611eeb57600080fd5b6000611ef682610e89565b90506000611f0d8284611bf390919063ffffffff16565b9050611f6183600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611bf390919063ffffffff16565b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611ff681600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611a6390919063ffffffff16565b600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061204e82600554611bf390919063ffffffff16565b6005819055508373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a35050505056fea265627a7a7231582081a931e51f5b9147fc9933db742f9ad6b238650a834bc8dbb5918d3fea2ef84d64736f6c63430005110032

Deployed Bytecode Sourcemap

2010:6342:0:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2010:6342:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1759:76;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1759:76:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5139:224;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;5139:224:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;2847:85;;;:::i;:::-;;;;;;;;;;;;;;;;;;;5369:378;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;5369:378:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;1927:76;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;6908:305;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;6908:305:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;7743:77;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;7743:77:0;;;;;;;;;;;;;;;;;:::i;:::-;;2938:100;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;2938:100:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;8119:230;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;8119:230:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;3445:462;;;:::i;:::-;;;;;;;;;;;;;;;;;;;1841:80;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1841:80:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3177:260;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;3177:260:0;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;7219:315;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;7219:315:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;3917:297;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;3917:297:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;3044:125;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;3044:125:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;1759:76;1795:13;1824:5;1817:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1759:76;:::o;5139:224::-;5204:4;5244:1;5225:21;;:7;:21;;;;5217:30;;;;;;5286:5;5254:8;:20;5263:10;5254:20;;;;;;;;;;;;;;;:29;5275:7;5254:29;;;;;;;;;;;;;;;:37;;;;5324:7;5303:36;;5312:10;5303:36;;;5333:5;5303:36;;;;;;;;;;;;;;;;;;5353:4;5346:11;;5139:224;;;;:::o;2847:85::-;2891:7;2914:12;;2907:19;;2847:85;:::o;5369:378::-;5448:4;5478:9;:15;5488:4;5478:15;;;;;;;;;;;;;;;;5469:5;:24;;5461:33;;;;;;5518:8;:14;5527:4;5518:14;;;;;;;;;;;;;;;:26;5533:10;5518:26;;;;;;;;;;;;;;;;5509:5;:35;;5501:44;;;;;;5574:1;5560:16;;:2;:16;;;;5552:25;;;;;;2431:20;5590:5;:13;5586:136;;;5616:36;5636:4;5642:2;5646:5;5616:19;:36::i;:::-;5586:136;;;5677:37;5698:4;5704:2;5708:5;5677:20;:37::i;:::-;5586:136;5737:4;5730:11;;5369:378;;;;;:::o;1927:76::-;1967:5;1988:9;;;;;;;;;;;1981:16;;1927:76;:::o;6908:305::-;6988:4;7028:1;7009:21;;:7;:21;;;;7001:30;;;;;;7071:45;7105:10;7071:8;:20;7080:10;7071:20;;;;;;;;;;;;;;;:29;7092:7;7071:29;;;;;;;;;;;;;;;;:33;;:45;;;;:::i;:::-;7038:8;:20;7047:10;7038:20;;;;;;;;;;;;;;;:29;7059:7;7038:29;;;;;;;;;;;;;;;:79;;;;7150:7;7129:60;;7138:10;7129:60;;;7159:8;:20;7168:10;7159:20;;;;;;;;;;;;;;;:29;7180:7;7159:29;;;;;;;;;;;;;;;;7129:60;;;;;;;;;;;;;;;;;;7203:4;7196:11;;6908:305;;;;:::o;7743:77::-;7789:25;7795:10;7807:6;7789:5;:25::i;:::-;7743:77;:::o;2938:100::-;2993:7;3016:9;:16;3026:5;3016:16;;;;;;;;;;;;;;;;3009:23;;2938:100;;;:::o;8119:230::-;8204:8;:17;8213:7;8204:17;;;;;;;;;;;;;;;:29;8222:10;8204:29;;;;;;;;;;;;;;;;8194:6;:39;;8186:48;;;;;;8273:41;8307:6;8273:8;:17;8282:7;8273:17;;;;;;;;;;;;;;;:29;8291:10;8273:29;;;;;;;;;;;;;;;;:33;;:41;;;;:::i;:::-;8241:8;:17;8250:7;8241:17;;;;;;;;;;;;;;;:29;8259:10;8241:29;;;;;;;;;;;;;;;:73;;;;8321:22;8327:7;8336:6;8321:5;:22::i;:::-;8119:230;;:::o;3445:462::-;3487:7;2572:8;3550:12;:33;3507:88;;;3593:2;3586:9;;;;3507:88;2572:8;3612:12;:34;;:72;;;;;2631:8;3651:12;:33;3612:72;3608:89;;;3694:3;3687:10;;;;3608:89;2631:8;3713:12;:34;;:72;;;;;2692:8;3752:12;:33;3713:72;3709:89;;;3795:3;3788:10;;;;3709:89;2692:8;3814:12;:34;3810:89;;3896:3;3889:10;;;;3810:89;3445:462;;:::o;1841:80::-;1879:13;1908:7;1901:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1841:80;:::o;3177:260::-;3234:7;3312:19;3334:12;:10;:12::i;:::-;3312:34;;3357:18;3379:22;3389:11;3379:5;:9;;:22;;;;:::i;:::-;3357:44;;3419:10;3412:17;;;;3177:260;;;:::o;7219:315::-;7304:4;7344:1;7325:21;;:7;:21;;;;7317:30;;;;;;7387:50;7421:15;7387:8;:20;7396:10;7387:20;;;;;;;;;;;;;;;:29;7408:7;7387:29;;;;;;;;;;;;;;;;:33;;:50;;;;:::i;:::-;7354:8;:20;7363:10;7354:20;;;;;;;;;;;;;;;:29;7375:7;7354:29;;;;;;;;;;;;;;;:84;;;;7471:7;7450:60;;7459:10;7450:60;;;7480:8;:20;7489:10;7480:20;;;;;;;;;;;;;;;:29;7501:7;7480:29;;;;;;;;;;;;;;;;7450:60;;;;;;;;;;;;;;;;;;7524:4;7517:11;;7219:315;;;;:::o;3917:297::-;3978:4;4008:9;:21;4018:10;4008:21;;;;;;;;;;;;;;;;3999:5;:30;;3991:39;;;;;;4059:1;4045:16;;:2;:16;;;;4037:25;;;;;;2431:20;4079:5;:13;4075:114;;;4105:25;4121:2;4124:5;4105:15;:25::i;:::-;4075:114;;;4155:26;4172:2;4175:5;4155:16;:26::i;:::-;4075:114;4204:4;4197:11;;3917:297;;;;:::o;3044:125::-;3116:7;3139:8;:15;3148:5;3139:15;;;;;;;;;;;;;;;:24;3155:7;3139:24;;;;;;;;;;;;;;;;3132:31;;3044:125;;;;:::o;6445:457::-;6548:9;:15;6558:4;6548:15;;;;;;;;;;;;;;;;6539:5;:24;;6531:33;;;;;;6588:8;:14;6597:4;6588:14;;;;;;;;;;;;;;;:26;6603:10;6588:26;;;;;;;;;;;;;;;;6579:5;:35;;6571:44;;;;;;6644:1;6630:16;;:2;:16;;;;6622:25;;;;;;2431:20;6662:5;:13;6654:22;;;;;;6705:26;6725:5;6705:9;:15;6715:4;6705:15;;;;;;;;;;;;;;;;:19;;:26;;;;:::i;:::-;6687:9;:15;6697:4;6687:15;;;;;;;;;;;;;;;:44;;;;6756:24;6774:5;6756:9;:13;6766:2;6756:13;;;;;;;;;;;;;;;;:17;;:24;;;;:::i;:::-;6738:9;:13;6748:2;6738:13;;;;;;;;;;;;;;;:42;;;;6818:37;6849:5;6818:8;:14;6827:4;6818:14;;;;;;;;;;;;;;;:26;6833:10;6818:26;;;;;;;;;;;;;;;;:30;;:37;;;;:::i;:::-;6789:8;:14;6798:4;6789:14;;;;;;;;;;;;;;;:26;6804:10;6789:26;;;;;;;;;;;;;;;:66;;;;6884:2;6869:25;;6878:4;6869:25;;;6888:5;6869:25;;;;;;;;;;;;;;;;;;6445:457;;;:::o;5751:690::-;5855:9;:15;5865:4;5855:15;;;;;;;;;;;;;;;;5846:5;:24;;5838:33;;;;;;5895:8;:14;5904:4;5895:14;;;;;;;;;;;;;;;:26;5910:10;5895:26;;;;;;;;;;;;;;;;5886:5;:35;;5878:44;;;;;;5951:1;5937:16;;:2;:16;;;;5929:25;;;;;;2431:20;5969:5;:14;;5961:23;;;;;;6011:26;6031:5;6011:9;:15;6021:4;6011:15;;;;;;;;;;;;;;;;:19;;:26;;;;:::i;:::-;5993:9;:15;6003:4;5993:15;;;;;;;;;;;;;;;:44;;;;6046:20;6069:18;6081:5;6069:11;:18::i;:::-;6046:41;;6094:24;6121:23;6131:12;6121:5;:9;;:23;;;;:::i;:::-;6094:50;;6169:35;6187:16;6169:9;:13;6179:2;6169:13;;;;;;;;;;;;;;;;:17;;:35;;;;:::i;:::-;6153:9;:13;6163:2;6153:13;;;;;;;;;;;;;;;:51;;;;6226:30;6243:12;6226;;:16;;:30;;;;:::i;:::-;6211:12;:45;;;;6294:37;6325:5;6294:8;:14;6303:4;6294:14;;;;;;;;;;;;;;;:26;6309:10;6294:26;;;;;;;;;;;;;;;;:30;;:37;;;;:::i;:::-;6265:8;:14;6274:4;6265:14;;;;;;;;;;;;;;;:26;6280:10;6265:26;;;;;;;;;;;;;;;:66;;;;6360:2;6345:36;;6354:4;6345:36;;;6364:16;6345:36;;;;;;;;;;;;;;;;;;6416:1;6393:40;;6402:4;6393:40;;;6420:12;6393:40;;;;;;;;;;;;;;;;;;5751:690;;;;;:::o;1176:133::-;1234:7;1250:9;1266:1;1262;:5;1250:17;;1286:1;1281;:6;;1274:14;;;;1302:1;1295:8;;;1176:133;;;;:::o;7826:287::-;7908:1;7898:6;:11;;7890:20;;;;;;7935:9;:18;7945:7;7935:18;;;;;;;;;;;;;;;;7925:6;:28;;7917:37;;;;;;7976:24;7993:6;7976:12;;:16;;:24;;;;:::i;:::-;7961:12;:39;;;;8028:30;8051:6;8028:9;:18;8038:7;8028:18;;;;;;;;;;;;;;;;:22;;:30;;;;:::i;:::-;8007:9;:18;8017:7;8007:18;;;;;;;;;;;;;;;:51;;;;8096:1;8070:37;;8079:7;8070:37;;;8100:6;8070:37;;;;;;;;;;;;;;;;;;7826:287;;:::o;1057:113::-;1115:7;1143:1;1138;:6;;1131:14;;;;1163:1;1159;:5;1152:12;;1057:113;;;;:::o;939:112::-;997:7;1013:9;1029:1;1025;:5;;;;;;1013:17;;1044:1;1037:8;;;939:112;;;;:::o;4802:331::-;4887:9;:21;4897:10;4887:21;;;;;;;;;;;;;;;;4878:5;:30;;4870:39;;;;;;4938:1;4924:16;;:2;:16;;;;4916:25;;;;;;2431:20;4956:5;:13;4948:22;;;;;;5003:32;5029:5;5003:9;:21;5013:10;5003:21;;;;;;;;;;;;;;;;:25;;:32;;;;:::i;:::-;4979:9;:21;4989:10;4979:21;;;;;;;;;;;;;;;:56;;;;5058:24;5076:5;5058:9;:13;5068:2;5058:13;;;;;;;;;;;;;;;;:17;;:24;;;;:::i;:::-;5042:9;:13;5052:2;5042:13;;;;;;;;;;;;;;;:40;;;;5117:2;5096:31;;5105:10;5096:31;;;5121:5;5096:31;;;;;;;;;;;;;;;;;;4802:331;;:::o;4222:574::-;4308:9;:21;4318:10;4308:21;;;;;;;;;;;;;;;;4299:5;:30;;4291:39;;;;;;4359:1;4345:16;;:2;:16;;;;4337:25;;;;;;2431:20;4377:5;:14;;4369:23;;;;;;4401:20;4424:18;4436:5;4424:11;:18::i;:::-;4401:41;;4449:24;4476:23;4486:12;4476:5;:9;;:23;;;;:::i;:::-;4449:50;;4532:32;4558:5;4532:9;:21;4542:10;4532:21;;;;;;;;;;;;;;;;:25;;:32;;;;:::i;:::-;4508:9;:21;4518:10;4508:21;;;;;;;;;;;;;;;:56;;;;4587:35;4605:16;4587:9;:13;4597:2;4587:13;;;;;;;;;;;;;;;;:17;;:35;;;;:::i;:::-;4571:9;:13;4581:2;4571:13;;;;;;;;;;;;;;;:51;;;;4646:30;4663:12;4646;;:16;;:30;;;;:::i;:::-;4631:12;:45;;;;4711:2;4690:42;;4699:10;4690:42;;;4715:16;4690:42;;;;;;;;;;;;;;;;;;4773:1;4744:46;;4753:10;4744:46;;;4777:12;4744:46;;;;;;;;;;;;;;;;;;4222:574;;;;:::o

Swarm Source

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