ETH Price: $3,405.78 (-0.96%)
Gas: 13 Gwei

Token

UnirisToken (UCO)
 

Overview

Max Total Supply

10,000,000,000 UCO

Holders

3,654 ( 0.027%)

Market

Price

$0.02 @ 0.000006 ETH (+11.33%)

Onchain Market Cap

$197,272,100.00

Circulating Supply Market Cap

$0.00

Other Info

Token Contract (WITH 18 Decimals)

Filtered by Token Holder
Uniswap V2: UCO
Balance
1,381,953.789123846964626295 UCO

Value
$27,262.09 ( ~8.0046 Eth) [0.0138%]
0xf898301c2807e99abaa39396a696d1202122d23e
Loading...
Loading
Loading...
Loading
Loading...
Loading

OVERVIEW

Archethic public blockchain is a layer 1 designed for global mass adoption. The consensus (ARCH) outperforms market standards in terms of scalability, security and energy-consumption with a native biometric identification and UTXO smart-contracts, finally providing a truly decentralized internet.

Market

Volume (24H):$21,410.00
Market Capitalization:$0.00
Circulating Supply:0.00 UCO
Market Data Source: Coinmarketcap

IEO Information

IEO Start Date :Jan 1, 2020  
IEO End Date :Mar 31, 2020  
IEO Price :$0.008   
Public Sale Allocation :38%  
Public Sale Vesting Period :No vesting Period  
Country :France  
Soft Cap: :$1500000  
Hard Cap: :$27900000  
Amount Raised :$1500000  
Token Distribution Date :Mar 31, 2020  

 

Private Sale Information

Private Sale Token Price :$0.006  
Private Sale Vesting Period: :No vesting Period  

# Exchange Pair Price  24H Volume % Volume

Contract Source Code Verified (Exact Match)

Contract Name:
UnirisToken

Compiler Version
v0.5.8+commit.23d335f2

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2019-12-13
*/

pragma solidity ^0.5.0;


interface IERC20 {
    
    function totalSupply() external view returns (uint256);

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

    
    function transfer(address recipient, uint256 amount) external returns (bool);

    
    function allowance(address owner, address spender) external view returns (uint256);

    
    function approve(address spender, uint256 amount) external returns (bool);

    
    function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);

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

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

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;
    }
}

library SafeMath {
    
    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        require(c >= a, "SafeMath: addition overflow");

        return c;
    }

    
    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        require(b <= a, "SafeMath: subtraction overflow");
        uint256 c = a - b;

        return c;
    }

    
    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        
        
        
        if (a == 0) {
            return 0;
        }

        uint256 c = a * b;
        require(c / a == b, "SafeMath: multiplication overflow");

        return c;
    }

    
    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        
        require(b > 0, "SafeMath: division by zero");
        uint256 c = a / b;
        

        return c;
    }

    
    function mod(uint256 a, uint256 b) internal pure returns (uint256) {
        require(b != 0, "SafeMath: modulo by zero");
        return a % b;
    }
}

contract ERC20 is IERC20 {
    using SafeMath for uint256;

    mapping (address => uint256) private _balances;

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

    uint256 private _totalSupply;

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

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

    
    function transfer(address recipient, uint256 amount) public returns (bool) {
        _transfer(msg.sender, recipient, amount);
        return true;
    }

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

    
    function approve(address spender, uint256 value) public returns (bool) {
        _approve(msg.sender, spender, value);
        return true;
    }

    
    function transferFrom(address sender, address recipient, uint256 amount) public returns (bool) {
        _transfer(sender, recipient, amount);
        _approve(sender, msg.sender, _allowances[sender][msg.sender].sub(amount));
        return true;
    }

    
    function increaseAllowance(address spender, uint256 addedValue) public returns (bool) {
        _approve(msg.sender, spender, _allowances[msg.sender][spender].add(addedValue));
        return true;
    }

    
    function decreaseAllowance(address spender, uint256 subtractedValue) public returns (bool) {
        _approve(msg.sender, spender, _allowances[msg.sender][spender].sub(subtractedValue));
        return true;
    }

    
    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);
    }

    
    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);
    }

     
    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);
    }

    
    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);
    }

    
    function _burnFrom(address account, uint256 amount) internal {
        _burn(account, amount);
        _approve(account, msg.sender, _allowances[account][msg.sender].sub(amount));
    }
}

library Roles {
    struct Role {
        mapping (address => bool) bearer;
    }

    
    function add(Role storage role, address account) internal {
        require(!has(role, account), "Roles: account already has role");
        role.bearer[account] = true;
    }

    
    function remove(Role storage role, address account) internal {
        require(has(role, account), "Roles: account does not have role");
        role.bearer[account] = false;
    }

    
    function has(Role storage role, address account) internal view returns (bool) {
        require(account != address(0), "Roles: account is the zero address");
        return role.bearer[account];
    }
}

contract PauserRole {
    using Roles for Roles.Role;

    event PauserAdded(address indexed account);
    event PauserRemoved(address indexed account);

    Roles.Role private _pausers;

    constructor () internal {
        _addPauser(msg.sender);
    }

    modifier onlyPauser() {
        require(isPauser(msg.sender), "PauserRole: caller does not have the Pauser role");
        _;
    }

    function isPauser(address account) public view returns (bool) {
        return _pausers.has(account);
    }

    function addPauser(address account) public onlyPauser {
        _addPauser(account);
    }

    function renouncePauser() public {
        _removePauser(msg.sender);
    }

    function _addPauser(address account) internal {
        _pausers.add(account);
        emit PauserAdded(account);
    }

    function _removePauser(address account) internal {
        _pausers.remove(account);
        emit PauserRemoved(account);
    }
}

contract Pausable is PauserRole {
    
    event Paused(address account);

    
    event Unpaused(address account);

    bool private _paused;

    
    constructor () internal {
        _paused = false;
    }

    
    function paused() public view returns (bool) {
        return _paused;
    }

    
    modifier whenNotPaused() {
        require(!_paused, "Pausable: paused");
        _;
    }

    
    modifier whenPaused() {
        require(_paused, "Pausable: not paused");
        _;
    }

    
    function pause() public onlyPauser whenNotPaused {
        _paused = true;
        emit Paused(msg.sender);
    }

    
    function unpause() public onlyPauser whenPaused {
        _paused = false;
        emit Unpaused(msg.sender);
    }
}

contract ERC20Pausable is ERC20, Pausable {
    function transfer(address to, uint256 value) public whenNotPaused returns (bool) {
        return super.transfer(to, value);
    }

    function transferFrom(address from, address to, uint256 value) public whenNotPaused returns (bool) {
        return super.transferFrom(from, to, value);
    }

    function approve(address spender, uint256 value) public whenNotPaused returns (bool) {
        return super.approve(spender, value);
    }

    function increaseAllowance(address spender, uint addedValue) public whenNotPaused returns (bool) {
        return super.increaseAllowance(spender, addedValue);
    }

    function decreaseAllowance(address spender, uint subtractedValue) public whenNotPaused returns (bool) {
        return super.decreaseAllowance(spender, subtractedValue);
    }
}

contract UnirisToken is ERC20Pausable, ERC20Detailed {

  
  uint256 public constant funding_pool_supply = 3820000000000000000000000000;

  
  uint256 public constant deliverable_supply = 2360000000000000000000000000;

  
  uint256 public constant network_pool_supply = 1460000000000000000000000000;

  
  uint256 public constant enhancement_supply = 900000000000000000000000000;

  
  uint256 public constant team_supply = 560000000000000000000000000;

  
  uint256 public constant exch_pool_supply = 340000000000000000000000000;

  
  uint256 public constant marketing_supply = 340000000000000000000000000;

  
  uint256 public constant foundation_supply = 220000000000000000000000000;

  address public funding_pool_beneficiary;
  address public deliverables_beneficiary;
  address public network_pool_beneficiary;
  address public enhancement_beneficiary;
  address public team_beneficiary;
  address public exch_pool_beneficiary;
  address public marketing_beneficiary;
  address public foundation_beneficiary;

  modifier onlyUnlocked(address from, uint256 value) {
    
    
    require(from != enhancement_beneficiary, "Enhancement wallet is locked forever until mainnet");

    
    
    
    
    if (from == deliverables_beneficiary) {
      uint256 _delivered = deliverable_supply - balanceOf(deliverables_beneficiary);
      require(_delivered.add(value) <= deliverable_supply.mul(10).div(100), "Only 10% of the deliverable supply is unlocked before mainnet");
    }
    else if (from == network_pool_beneficiary) {
      uint256 _delivered = network_pool_supply - balanceOf(network_pool_beneficiary);
      require(_delivered.add(value) <= network_pool_supply.mul(10).div(100), "Only 10% of the network supply is unlocked before mainnet");
    }
    _;
  }

  constructor(
    address _funding_pool_beneficiary,
    address _deliverables_beneficiary,
    address _network_pool_beneficiary,
    address _enhancement_beneficiary,
    address _team_beneficiary,
    address _exch_pool_beneficiary,
    address _marketing_beneficiary,
    address _foundation_beneficiary
    ) public ERC20Detailed("UnirisToken", "UCO", 18) {

    require(_funding_pool_beneficiary != address(0), "Invalid funding pool beneficiary address");
    require(_deliverables_beneficiary != address(0), "Invalid deliverables beneficiary address");
    require(_network_pool_beneficiary != address(0), "Invalid network pool beneficiary address");
    require(_enhancement_beneficiary != address(0), "Invalid enhancement beneficiary address");
    require(_team_beneficiary != address(0), "Invalid team beneficiary address");
    require(_exch_pool_beneficiary != address(0), "Invalid exch pool beneficiary address");
    require(_marketing_beneficiary != address(0), "Invalid marketing beneficiary address");
    require(_foundation_beneficiary != address(0), "Invalid foundation beneficiary address");

    funding_pool_beneficiary = _funding_pool_beneficiary;
    deliverables_beneficiary = _deliverables_beneficiary;
    network_pool_beneficiary = _network_pool_beneficiary;
    enhancement_beneficiary = _enhancement_beneficiary;
    team_beneficiary = _team_beneficiary;
    exch_pool_beneficiary = _exch_pool_beneficiary;
    marketing_beneficiary = _marketing_beneficiary;
    foundation_beneficiary = _foundation_beneficiary;

    _mint(funding_pool_beneficiary, funding_pool_supply);
    _mint(deliverables_beneficiary, deliverable_supply);
    _mint(network_pool_beneficiary, network_pool_supply);
    _mint(enhancement_beneficiary, enhancement_supply);
    _mint(team_beneficiary, team_supply);
    _mint(exch_pool_beneficiary, exch_pool_supply);
    _mint(marketing_beneficiary, marketing_supply);
    _mint(foundation_beneficiary, foundation_supply);
  }

  function transfer(address _to, uint256 _value) public onlyUnlocked(msg.sender, _value) returns (bool success) {
    return super.transfer(_to, _value);
  }

  function transferFrom(address _from, address _to, uint256 _value) public onlyUnlocked(_from, _value) returns (bool success) {
    return super.transferFrom(_from, _to, _value);
  }
}

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":true,"inputs":[],"name":"exch_pool_beneficiary","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"network_pool_supply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"foundation_beneficiary","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"enhancement_beneficiary","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"team_beneficiary","outputs":[{"name":"","type":"address"}],"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":true,"inputs":[],"name":"team_supply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"unpause","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"account","type":"address"}],"name":"isPauser","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"exch_pool_supply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"paused","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"marketing_beneficiary","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"deliverable_supply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"deliverables_beneficiary","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"renouncePauser","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":true,"inputs":[],"name":"funding_pool_supply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"enhancement_supply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"account","type":"address"}],"name":"addPauser","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"pause","outputs":[],"payable":false,"stateMutability":"nonpayable","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":true,"inputs":[],"name":"foundation_supply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"funding_pool_beneficiary","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"owner","type":"address"},{"name":"spender","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"marketing_supply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"network_pool_beneficiary","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_funding_pool_beneficiary","type":"address"},{"name":"_deliverables_beneficiary","type":"address"},{"name":"_network_pool_beneficiary","type":"address"},{"name":"_enhancement_beneficiary","type":"address"},{"name":"_team_beneficiary","type":"address"},{"name":"_exch_pool_beneficiary","type":"address"},{"name":"_marketing_beneficiary","type":"address"},{"name":"_foundation_beneficiary","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"account","type":"address"}],"name":"Paused","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"account","type":"address"}],"name":"Unpaused","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"account","type":"address"}],"name":"PauserAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"account","type":"address"}],"name":"PauserRemoved","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"},{"indexed":true,"name":"spender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Approval","type":"event"}]

60806040523480156200001157600080fd5b50604051610100806200393b83398101806040526101008110156200003557600080fd5b8101908080519060200190929190805190602001909291908051906020019092919080519060200190929190805190602001909291908051906020019092919080519060200190929190805190602001909291905050506040518060400160405280600b81526020017f556e69726973546f6b656e0000000000000000000000000000000000000000008152506040518060400160405280600381526020017f55434f000000000000000000000000000000000000000000000000000000000081525060126200010b33620009e760201b60201c565b6000600460006101000a81548160ff02191690831515021790555082600590805190602001906200013e92919062000e5f565b5081600690805190602001906200015792919062000e5f565b5080600760006101000a81548160ff021916908360ff160217905550505050600073ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff161415620001fe576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526028815260200180620038796028913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff16141562000286576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260288152602001806200380a6028913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614156200030e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526028815260200180620038c76028913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16141562000396576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526027815260200180620038ef6027913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614156200043a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f496e76616c6964207465616d2062656e6566696369617279206164647265737381525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415620004c2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526025815260200180620039166025913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156200054a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526025815260200180620038326025913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415620005d2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526026815260200180620038a16026913960400191505060405180910390fd5b87600760016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555086600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555085600960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555084600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555083600b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555082600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555081600d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506200081a600760019054906101000a900473ffffffffffffffffffffffffffffffffffffffff166b0c57d476f1d9e9de6c00000062000a4860201b60201c565b6200085a600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166b07a025705a712ea43800000062000a4860201b60201c565b6200089a600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166b04b7af069768bb3a3400000062000a4860201b60201c565b620008da600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166b02e87669c308736a0400000062000a4860201b60201c565b6200091a600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166b01cf389cd46047d03000000062000a4860201b60201c565b6200095a600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166b01193dcceea82b99d400000062000a4860201b60201c565b6200099a600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166b01193dcceea82b99d400000062000a4860201b60201c565b620009d9600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166ab5facfe5b81c365c00000062000a4860201b60201c565b505050505050505062000f0e565b62000a0281600362000c1260201b620022df1790919060201c565b8073ffffffffffffffffffffffffffffffffffffffff167f6719d08c1888103bea251a4ed56406bd0c3e69723c8a1686e017e7bbe159b6f860405160405180910390a250565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141562000aec576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f45524332303a206d696e7420746f20746865207a65726f20616464726573730081525060200191505060405180910390fd5b62000b088160025462000cf660201b62001ae61790919060201c565b60028190555062000b66816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205462000cf660201b62001ae61790919060201c565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35050565b62000c24828262000d7f60201b60201c565b1562000c98576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f526f6c65733a206163636f756e7420616c72656164792068617320726f6c650081525060200191505060405180910390fd5b60018260000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b60008082840190508381101562000d75576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141562000e08576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526022815260200180620038576022913960400191505060405180910390fd5b8260000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1062000ea257805160ff191683800117855562000ed3565b8280016001018555821562000ed3579182015b8281111562000ed257825182559160200191906001019062000eb5565b5b50905062000ee2919062000ee6565b5090565b62000f0b91905b8082111562000f0757600081600090555060010162000eed565b5090565b90565b6128ec8062000f1e6000396000f3fe608060405234801561001057600080fd5b50600436106101fb5760003560e01c8063621005d71161011a5780638456cb59116100ad578063a9059cbb1161007c578063a9059cbb146108c6578063adcde06f1461092c578063dd62ed3e14610976578063dee28f78146109ee578063fe28a81514610a0c576101fb565b80638456cb59146107b557806395d89b41146107bf578063a457c2d714610842578063a8942ed1146108a8576101fb565b806370a08231116100e957806370a08231146106dd57806370b86f2314610735578063767c2e2d1461075357806382dc1ec414610771576101fb565b8063621005d714610621578063680a8ca51461066b5780636cc5c0fd146106895780636ef8d66d146106d3576101fb565b80633695f71c116101925780633f4ba83a116101615780633f4ba83a1461057b57806346fbf68e1461058557806353d4edba146105e15780635c975abb146105ff576101fb565b80633695f71c1461046357806336ec6b8e146104ad57806339509351146104f75780633a34b6c61461055d576101fb565b80631c5e933f116101ce5780631c5e933f1461035157806323b872dd1461036f5780632f74c82e146103f5578063313ce5671461043f576101fb565b806306fdde0314610200578063095ea7b31461028357806312d8829f146102e957806318160ddd14610333575b600080fd5b610208610a56565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561024857808201518184015260208101905061022d565b50505050905090810190601f1680156102755780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102cf6004803603604081101561029957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610af8565b604051808215151515815260200191505060405180910390f35b6102f1610b8f565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b61033b610bb5565b6040518082815260200191505060405180910390f35b610359610bbf565b6040518082815260200191505060405180910390f35b6103db6004803603606081101561038557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610bcf565b604051808215151515815260200191505060405180910390f35b6103fd610ef9565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610447610f1f565b604051808260ff1660ff16815260200191505060405180910390f35b61046b610f36565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6104b5610f5c565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6105436004803603604081101561050d57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610f82565b604051808215151515815260200191505060405180910390f35b610565611019565b6040518082815260200191505060405180910390f35b610583611029565b005b6105c76004803603602081101561059b57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611189565b604051808215151515815260200191505060405180910390f35b6105e96111a6565b6040518082815260200191505060405180910390f35b6106076111b6565b604051808215151515815260200191505060405180910390f35b6106296111cd565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6106736111f3565b6040518082815260200191505060405180910390f35b610691611203565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6106db611229565b005b61071f600480360360208110156106f357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611234565b6040518082815260200191505060405180910390f35b61073d61127c565b6040518082815260200191505060405180910390f35b61075b61128c565b6040518082815260200191505060405180910390f35b6107b36004803603602081101561078757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061129c565b005b6107bd611306565b005b6107c7611467565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156108075780820151818401526020810190506107ec565b50505050905090810190601f1680156108345780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61088e6004803603604081101561085857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611509565b604051808215151515815260200191505060405180910390f35b6108b06115a0565b6040518082815260200191505060405180910390f35b610912600480360360408110156108dc57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506115af565b604051808215151515815260200191505060405180910390f35b6109346118d7565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6109d86004803603604081101561098c57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506118fd565b6040518082815260200191505060405180910390f35b6109f6611984565b6040518082815260200191505060405180910390f35b610a14611994565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b606060058054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610aee5780601f10610ac357610100808354040283529160200191610aee565b820191906000526020600020905b815481529060010190602001808311610ad157829003601f168201915b5050505050905090565b6000600460009054906101000a900460ff1615610b7d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f5061757361626c653a207061757365640000000000000000000000000000000081525060200191505060405180910390fd5b610b8783836119ba565b905092915050565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600254905090565b6b04b7af069768bb3a3400000081565b60008382600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610c7a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260328152602001806128096032913960400191505060405180910390fd5b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610db0576000610cfd600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16611234565b6b07a025705a712ea438000000039050610d406064610d32600a6b07a025705a712ea4380000006119d190919063ffffffff16565b611a5790919063ffffffff16565b610d538383611ae690919063ffffffff16565b1115610daa576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252603d815260200180612884603d913960400191505060405180910390fd5b50610ee3565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610ee2576000610e33600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16611234565b6b04b7af069768bb3a34000000039050610e766064610e68600a6b04b7af069768bb3a340000006119d190919063ffffffff16565b611a5790919063ffffffff16565b610e898383611ae690919063ffffffff16565b1115610ee0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252603981526020018061271a6039913960400191505060405180910390fd5b505b5b610eee868686611b6e565b925050509392505050565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600760009054906101000a900460ff16905090565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600460009054906101000a900460ff1615611007576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f5061757361626c653a207061757365640000000000000000000000000000000081525060200191505060405180910390fd5b6110118383611c07565b905092915050565b6b01cf389cd46047d03000000081565b61103233611189565b611087576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260308152602001806127536030913960400191505060405180910390fd5b600460009054906101000a900460ff16611109576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f5061757361626c653a206e6f742070617573656400000000000000000000000081525060200191505060405180910390fd5b6000600460006101000a81548160ff0219169083151502179055507f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa33604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a1565b600061119f826003611cac90919063ffffffff16565b9050919050565b6b01193dcceea82b99d400000081565b6000600460009054906101000a900460ff16905090565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6b07a025705a712ea43800000081565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b61123233611d8a565b565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6b0c57d476f1d9e9de6c00000081565b6b02e87669c308736a0400000081565b6112a533611189565b6112fa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260308152602001806127536030913960400191505060405180910390fd5b61130381611de4565b50565b61130f33611189565b611364576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260308152602001806127536030913960400191505060405180910390fd5b600460009054906101000a900460ff16156113e7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f5061757361626c653a207061757365640000000000000000000000000000000081525060200191505060405180910390fd5b6001600460006101000a81548160ff0219169083151502179055507f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a25833604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a1565b606060068054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156114ff5780601f106114d4576101008083540402835291602001916114ff565b820191906000526020600020905b8154815290600101906020018083116114e257829003601f168201915b5050505050905090565b6000600460009054906101000a900460ff161561158e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f5061757361626c653a207061757365640000000000000000000000000000000081525060200191505060405180910390fd5b6115988383611e3e565b905092915050565b6ab5facfe5b81c365c00000081565b60003382600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561165a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260328152602001806128096032913960400191505060405180910390fd5b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156117905760006116dd600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16611234565b6b07a025705a712ea4380000000390506117206064611712600a6b07a025705a712ea4380000006119d190919063ffffffff16565b611a5790919063ffffffff16565b6117338383611ae690919063ffffffff16565b111561178a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252603d815260200180612884603d913960400191505060405180910390fd5b506118c3565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156118c2576000611813600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16611234565b6b04b7af069768bb3a340000000390506118566064611848600a6b04b7af069768bb3a340000006119d190919063ffffffff16565b611a5790919063ffffffff16565b6118698383611ae690919063ffffffff16565b11156118c0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252603981526020018061271a6039913960400191505060405180910390fd5b505b5b6118cd8585611ee3565b9250505092915050565b600760019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6b01193dcceea82b99d400000081565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60006119c7338484611f7a565b6001905092915050565b6000808314156119e45760009050611a51565b60008284029050828482816119f557fe5b0414611a4c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260218152602001806127c66021913960400191505060405180910390fd5b809150505b92915050565b6000808211611ace576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525060200191505060405180910390fd5b6000828481611ad957fe5b0490508091505092915050565b600080828401905083811015611b64576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b6000600460009054906101000a900460ff1615611bf3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f5061757361626c653a207061757365640000000000000000000000000000000081525060200191505060405180910390fd5b611bfe848484612171565b90509392505050565b6000611ca23384611c9d85600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611ae690919063ffffffff16565b611f7a565b6001905092915050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611d33576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260228152602001806127e76022913960400191505060405180910390fd5b8260000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b611d9e81600361222290919063ffffffff16565b8073ffffffffffffffffffffffffffffffffffffffff167fcd265ebaf09df2871cc7bd4133404a235ba12eff2041bb89d9c714a2621c7c7e60405160405180910390a250565b611df88160036122df90919063ffffffff16565b8073ffffffffffffffffffffffffffffffffffffffff167f6719d08c1888103bea251a4ed56406bd0c3e69723c8a1686e017e7bbe159b6f860405160405180910390a250565b6000611ed93384611ed485600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546123ba90919063ffffffff16565b611f7a565b6001905092915050565b6000600460009054906101000a900460ff1615611f68576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f5061757361626c653a207061757365640000000000000000000000000000000081525060200191505060405180910390fd5b611f728383612443565b905092915050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415612000576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260248152602001806128606024913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415612086576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260228152602001806127836022913960400191505060405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040518082815260200191505060405180910390a3505050565b600061217e84848461245a565b612217843361221285600160008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546123ba90919063ffffffff16565b611f7a565b600190509392505050565b61222c8282611cac565b612281576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260218152602001806127a56021913960400191505060405180910390fd5b60008260000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b6122e98282611cac565b1561235c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f526f6c65733a206163636f756e7420616c72656164792068617320726f6c650081525060200191505060405180910390fd5b60018260000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b600082821115612432576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601e8152602001807f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525060200191505060405180910390fd5b600082840390508091505092915050565b600061245033848461245a565b6001905092915050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156124e0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602581526020018061283b6025913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415612566576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260238152602001806126f76023913960400191505060405180910390fd5b6125b7816000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546123ba90919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061264a816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611ae690919063ffffffff16565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a350505056fe45524332303a207472616e7366657220746f20746865207a65726f20616464726573734f6e6c7920313025206f6620746865206e6574776f726b20737570706c7920697320756e6c6f636b6564206265666f7265206d61696e6e6574506175736572526f6c653a2063616c6c657220646f6573206e6f742068617665207468652050617573657220726f6c6545524332303a20617070726f766520746f20746865207a65726f2061646472657373526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77526f6c65733a206163636f756e7420697320746865207a65726f2061646472657373456e68616e63656d656e742077616c6c6574206973206c6f636b656420666f726576657220756e74696c206d61696e6e657445524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f20616464726573734f6e6c7920313025206f66207468652064656c6976657261626c6520737570706c7920697320756e6c6f636b6564206265666f7265206d61696e6e6574a165627a7a72305820c5712b056949ac46c16de677041896df29dfaccc19584e53820b17f39421b8d40029496e76616c69642064656c6976657261626c65732062656e65666963696172792061646472657373496e76616c6964206d61726b6574696e672062656e65666963696172792061646472657373526f6c65733a206163636f756e7420697320746865207a65726f2061646472657373496e76616c69642066756e64696e6720706f6f6c2062656e65666963696172792061646472657373496e76616c696420666f756e646174696f6e2062656e65666963696172792061646472657373496e76616c6964206e6574776f726b20706f6f6c2062656e65666963696172792061646472657373496e76616c696420656e68616e63656d656e742062656e65666963696172792061646472657373496e76616c6964206578636820706f6f6c2062656e65666963696172792061646472657373000000000000000000000000c545528cb411aa971de48f5d375af27b685a7651000000000000000000000000ea9095614a40c34f2d6d62514a8b9305873e6763000000000000000000000000857ffe3a3f4d47c5459b215fd09ddd80ee0b2f00000000000000000000000000c3255e34f122f8e5ac055d308bf5898173212afc000000000000000000000000b4cf889f7f0c4de5c43dbb67c11b8f96b6cfbf910000000000000000000000002da4fddc9e610b1d5ae4340d20455d53c9481b12000000000000000000000000ebc52520ee81a0e87549ce193b3f5fc086eddc69000000000000000000000000a8b2134e17bd65427aea59d5b8aca22f3c181e97

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106101fb5760003560e01c8063621005d71161011a5780638456cb59116100ad578063a9059cbb1161007c578063a9059cbb146108c6578063adcde06f1461092c578063dd62ed3e14610976578063dee28f78146109ee578063fe28a81514610a0c576101fb565b80638456cb59146107b557806395d89b41146107bf578063a457c2d714610842578063a8942ed1146108a8576101fb565b806370a08231116100e957806370a08231146106dd57806370b86f2314610735578063767c2e2d1461075357806382dc1ec414610771576101fb565b8063621005d714610621578063680a8ca51461066b5780636cc5c0fd146106895780636ef8d66d146106d3576101fb565b80633695f71c116101925780633f4ba83a116101615780633f4ba83a1461057b57806346fbf68e1461058557806353d4edba146105e15780635c975abb146105ff576101fb565b80633695f71c1461046357806336ec6b8e146104ad57806339509351146104f75780633a34b6c61461055d576101fb565b80631c5e933f116101ce5780631c5e933f1461035157806323b872dd1461036f5780632f74c82e146103f5578063313ce5671461043f576101fb565b806306fdde0314610200578063095ea7b31461028357806312d8829f146102e957806318160ddd14610333575b600080fd5b610208610a56565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561024857808201518184015260208101905061022d565b50505050905090810190601f1680156102755780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102cf6004803603604081101561029957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610af8565b604051808215151515815260200191505060405180910390f35b6102f1610b8f565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b61033b610bb5565b6040518082815260200191505060405180910390f35b610359610bbf565b6040518082815260200191505060405180910390f35b6103db6004803603606081101561038557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610bcf565b604051808215151515815260200191505060405180910390f35b6103fd610ef9565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610447610f1f565b604051808260ff1660ff16815260200191505060405180910390f35b61046b610f36565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6104b5610f5c565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6105436004803603604081101561050d57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610f82565b604051808215151515815260200191505060405180910390f35b610565611019565b6040518082815260200191505060405180910390f35b610583611029565b005b6105c76004803603602081101561059b57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611189565b604051808215151515815260200191505060405180910390f35b6105e96111a6565b6040518082815260200191505060405180910390f35b6106076111b6565b604051808215151515815260200191505060405180910390f35b6106296111cd565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6106736111f3565b6040518082815260200191505060405180910390f35b610691611203565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6106db611229565b005b61071f600480360360208110156106f357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611234565b6040518082815260200191505060405180910390f35b61073d61127c565b6040518082815260200191505060405180910390f35b61075b61128c565b6040518082815260200191505060405180910390f35b6107b36004803603602081101561078757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061129c565b005b6107bd611306565b005b6107c7611467565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156108075780820151818401526020810190506107ec565b50505050905090810190601f1680156108345780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61088e6004803603604081101561085857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611509565b604051808215151515815260200191505060405180910390f35b6108b06115a0565b6040518082815260200191505060405180910390f35b610912600480360360408110156108dc57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506115af565b604051808215151515815260200191505060405180910390f35b6109346118d7565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6109d86004803603604081101561098c57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506118fd565b6040518082815260200191505060405180910390f35b6109f6611984565b6040518082815260200191505060405180910390f35b610a14611994565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b606060058054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610aee5780601f10610ac357610100808354040283529160200191610aee565b820191906000526020600020905b815481529060010190602001808311610ad157829003601f168201915b5050505050905090565b6000600460009054906101000a900460ff1615610b7d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f5061757361626c653a207061757365640000000000000000000000000000000081525060200191505060405180910390fd5b610b8783836119ba565b905092915050565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600254905090565b6b04b7af069768bb3a3400000081565b60008382600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610c7a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260328152602001806128096032913960400191505060405180910390fd5b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610db0576000610cfd600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16611234565b6b07a025705a712ea438000000039050610d406064610d32600a6b07a025705a712ea4380000006119d190919063ffffffff16565b611a5790919063ffffffff16565b610d538383611ae690919063ffffffff16565b1115610daa576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252603d815260200180612884603d913960400191505060405180910390fd5b50610ee3565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610ee2576000610e33600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16611234565b6b04b7af069768bb3a34000000039050610e766064610e68600a6b04b7af069768bb3a340000006119d190919063ffffffff16565b611a5790919063ffffffff16565b610e898383611ae690919063ffffffff16565b1115610ee0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252603981526020018061271a6039913960400191505060405180910390fd5b505b5b610eee868686611b6e565b925050509392505050565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600760009054906101000a900460ff16905090565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600460009054906101000a900460ff1615611007576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f5061757361626c653a207061757365640000000000000000000000000000000081525060200191505060405180910390fd5b6110118383611c07565b905092915050565b6b01cf389cd46047d03000000081565b61103233611189565b611087576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260308152602001806127536030913960400191505060405180910390fd5b600460009054906101000a900460ff16611109576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f5061757361626c653a206e6f742070617573656400000000000000000000000081525060200191505060405180910390fd5b6000600460006101000a81548160ff0219169083151502179055507f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa33604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a1565b600061119f826003611cac90919063ffffffff16565b9050919050565b6b01193dcceea82b99d400000081565b6000600460009054906101000a900460ff16905090565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6b07a025705a712ea43800000081565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b61123233611d8a565b565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6b0c57d476f1d9e9de6c00000081565b6b02e87669c308736a0400000081565b6112a533611189565b6112fa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260308152602001806127536030913960400191505060405180910390fd5b61130381611de4565b50565b61130f33611189565b611364576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260308152602001806127536030913960400191505060405180910390fd5b600460009054906101000a900460ff16156113e7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f5061757361626c653a207061757365640000000000000000000000000000000081525060200191505060405180910390fd5b6001600460006101000a81548160ff0219169083151502179055507f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a25833604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a1565b606060068054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156114ff5780601f106114d4576101008083540402835291602001916114ff565b820191906000526020600020905b8154815290600101906020018083116114e257829003601f168201915b5050505050905090565b6000600460009054906101000a900460ff161561158e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f5061757361626c653a207061757365640000000000000000000000000000000081525060200191505060405180910390fd5b6115988383611e3e565b905092915050565b6ab5facfe5b81c365c00000081565b60003382600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561165a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260328152602001806128096032913960400191505060405180910390fd5b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156117905760006116dd600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16611234565b6b07a025705a712ea4380000000390506117206064611712600a6b07a025705a712ea4380000006119d190919063ffffffff16565b611a5790919063ffffffff16565b6117338383611ae690919063ffffffff16565b111561178a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252603d815260200180612884603d913960400191505060405180910390fd5b506118c3565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156118c2576000611813600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16611234565b6b04b7af069768bb3a340000000390506118566064611848600a6b04b7af069768bb3a340000006119d190919063ffffffff16565b611a5790919063ffffffff16565b6118698383611ae690919063ffffffff16565b11156118c0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252603981526020018061271a6039913960400191505060405180910390fd5b505b5b6118cd8585611ee3565b9250505092915050565b600760019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6b01193dcceea82b99d400000081565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60006119c7338484611f7a565b6001905092915050565b6000808314156119e45760009050611a51565b60008284029050828482816119f557fe5b0414611a4c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260218152602001806127c66021913960400191505060405180910390fd5b809150505b92915050565b6000808211611ace576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525060200191505060405180910390fd5b6000828481611ad957fe5b0490508091505092915050565b600080828401905083811015611b64576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b6000600460009054906101000a900460ff1615611bf3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f5061757361626c653a207061757365640000000000000000000000000000000081525060200191505060405180910390fd5b611bfe848484612171565b90509392505050565b6000611ca23384611c9d85600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611ae690919063ffffffff16565b611f7a565b6001905092915050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611d33576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260228152602001806127e76022913960400191505060405180910390fd5b8260000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b611d9e81600361222290919063ffffffff16565b8073ffffffffffffffffffffffffffffffffffffffff167fcd265ebaf09df2871cc7bd4133404a235ba12eff2041bb89d9c714a2621c7c7e60405160405180910390a250565b611df88160036122df90919063ffffffff16565b8073ffffffffffffffffffffffffffffffffffffffff167f6719d08c1888103bea251a4ed56406bd0c3e69723c8a1686e017e7bbe159b6f860405160405180910390a250565b6000611ed93384611ed485600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546123ba90919063ffffffff16565b611f7a565b6001905092915050565b6000600460009054906101000a900460ff1615611f68576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f5061757361626c653a207061757365640000000000000000000000000000000081525060200191505060405180910390fd5b611f728383612443565b905092915050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415612000576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260248152602001806128606024913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415612086576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260228152602001806127836022913960400191505060405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040518082815260200191505060405180910390a3505050565b600061217e84848461245a565b612217843361221285600160008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546123ba90919063ffffffff16565b611f7a565b600190509392505050565b61222c8282611cac565b612281576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260218152602001806127a56021913960400191505060405180910390fd5b60008260000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b6122e98282611cac565b1561235c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f526f6c65733a206163636f756e7420616c72656164792068617320726f6c650081525060200191505060405180910390fd5b60018260000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b600082821115612432576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601e8152602001807f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525060200191505060405180910390fd5b600082840390508091505092915050565b600061245033848461245a565b6001905092915050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156124e0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602581526020018061283b6025913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415612566576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260238152602001806126f76023913960400191505060405180910390fd5b6125b7816000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546123ba90919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061264a816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611ae690919063ffffffff16565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a350505056fe45524332303a207472616e7366657220746f20746865207a65726f20616464726573734f6e6c7920313025206f6620746865206e6574776f726b20737570706c7920697320756e6c6f636b6564206265666f7265206d61696e6e6574506175736572526f6c653a2063616c6c657220646f6573206e6f742068617665207468652050617573657220726f6c6545524332303a20617070726f766520746f20746865207a65726f2061646472657373526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77526f6c65733a206163636f756e7420697320746865207a65726f2061646472657373456e68616e63656d656e742077616c6c6574206973206c6f636b656420666f726576657220756e74696c206d61696e6e657445524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f20616464726573734f6e6c7920313025206f66207468652064656c6976657261626c6520737570706c7920697320756e6c6f636b6564206265666f7265206d61696e6e6574a165627a7a72305820c5712b056949ac46c16de677041896df29dfaccc19584e53820b17f39421b8d40029

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

000000000000000000000000c545528cb411aa971de48f5d375af27b685a7651000000000000000000000000ea9095614a40c34f2d6d62514a8b9305873e6763000000000000000000000000857ffe3a3f4d47c5459b215fd09ddd80ee0b2f00000000000000000000000000c3255e34f122f8e5ac055d308bf5898173212afc000000000000000000000000b4cf889f7f0c4de5c43dbb67c11b8f96b6cfbf910000000000000000000000002da4fddc9e610b1d5ae4340d20455d53c9481b12000000000000000000000000ebc52520ee81a0e87549ce193b3f5fc086eddc69000000000000000000000000a8b2134e17bd65427aea59d5b8aca22f3c181e97

-----Decoded View---------------
Arg [0] : _funding_pool_beneficiary (address): 0xC545528CB411aA971De48F5d375aF27B685a7651
Arg [1] : _deliverables_beneficiary (address): 0xEA9095614A40C34f2d6D62514a8B9305873E6763
Arg [2] : _network_pool_beneficiary (address): 0x857fFe3A3F4d47c5459b215Fd09Ddd80eE0B2f00
Arg [3] : _enhancement_beneficiary (address): 0xc3255E34F122f8E5Ac055d308Bf5898173212AfC
Arg [4] : _team_beneficiary (address): 0xb4cF889F7F0C4de5c43dbB67C11b8F96b6CfBf91
Arg [5] : _exch_pool_beneficiary (address): 0x2Da4fDdc9e610b1D5Ae4340d20455d53C9481b12
Arg [6] : _marketing_beneficiary (address): 0xEbC52520eE81A0E87549CE193b3f5fc086EddC69
Arg [7] : _foundation_beneficiary (address): 0xa8B2134E17Bd65427AeA59d5b8AcA22F3c181E97

-----Encoded View---------------
8 Constructor Arguments found :
Arg [0] : 000000000000000000000000c545528cb411aa971de48f5d375af27b685a7651
Arg [1] : 000000000000000000000000ea9095614a40c34f2d6d62514a8b9305873e6763
Arg [2] : 000000000000000000000000857ffe3a3f4d47c5459b215fd09ddd80ee0b2f00
Arg [3] : 000000000000000000000000c3255e34f122f8e5ac055d308bf5898173212afc
Arg [4] : 000000000000000000000000b4cf889f7f0c4de5c43dbb67c11b8f96b6cfbf91
Arg [5] : 0000000000000000000000002da4fddc9e610b1d5ae4340d20455d53c9481b12
Arg [6] : 000000000000000000000000ebc52520ee81a0e87549ce193b3f5fc086eddc69
Arg [7] : 000000000000000000000000a8b2134e17bd65427aea59d5b8aca22f3c181e97


Swarm Source

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