ETH Price: $2,355.12 (+1.62%)

Token

CRYPTOBUCKS (CBUCKS)
 

Overview

Max Total Supply

9,500,000,000 CBUCKS

Holders

35,867 (0.00%)

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 2 Decimals)

Balance
100 CBUCKS

Value
$0.00
0xc6f4ed55921e0b73c5b3a916f005d80216cf17da
Loading...
Loading
Loading...
Loading
Loading...
Loading

OVERVIEW

CBUCKS token contract has migrated to 0x0d2bb9d68dd4451a09ec94c05e20bd395022bd8e.

# Exchange Pair Price  24H Volume % Volume

Contract Source Code Verified (Exact Match)

Contract Name:
Token

Compiler Version
v0.5.3+commit.10d17f24

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity Multiple files format)

File 7 of 8: Token.sol
pragma solidity ^0.5.3;

// ----------------------------------------------------------------------------
// 'CRYPTOBUCKS' Token Contract
//
// Deployed To : 0x4d9ee34b7ee0d3cef04e5909c27a266e7eb14712
// Symbol      : CBUCKS
// Name        : CRYPTOBUCKS
// Total Supply: 10,000,000,000 CBUCKS
// Decimals    : 2
//
// (c) By 'ANONYMOUS' With 'CBUCKS' Symbol 2019.
//
// ----------------------------------------------------------------------------

// Interfaces
import { IERC20Token } from "./iERC20Token.sol";
// Libraries
import { SafeMath } from "./SafeMath.sol";
import { Whitelist } from "./Whitelist.sol";
import { Address } from "./Address.sol";
// Inherited Contracts
import { Pausable } from "./Pausable.sol";

contract Token is IERC20Token, Whitelist, Pausable {
  using SafeMath for uint256;
  using Address for address;

  string _name;
  string _symbol;
  uint256 _totalSupply;
  uint256 _decimals;
  uint256 _totalBurned;

  constructor () public {
    _name = "CRYPTOBUCKS";
    _symbol = "CBUCKS";
    _totalSupply = 1000000000000;
    _decimals = 2;
    _totalBurned = 0;
    balances[0xE43eBCb96564a6FB3B7A4AbbfD7008b415591b09] = _totalSupply;
    emit Transfer(address(this), 0xE43eBCb96564a6FB3B7A4AbbfD7008b415591b09, _totalSupply);
  }

  mapping(address => uint256) private balances;
  mapping(address => mapping(address => uint256)) private allowed;
  mapping(address => bool) private burners;

  event Burned(address indexed from, uint256 value, uint256 timestamp);
  event AssignedBurner(address indexed from, address indexed burner, uint256 timestamp);

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

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

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

  function decimals() external view returns (uint256) {
    return _decimals;
  }

  function balanceOf(address account) external view returns (uint256) {
    return balances[account];
  }

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

  function transfer(
    address recipient,
    uint256 amount
    ) external whenNotPaused onlyWhitelisted(msg.sender, recipient) validRecipient(recipient)
    validAmount(amount) validAddress(recipient) returns (bool) {
      balances[msg.sender] = balances[msg.sender].sub(amount);
      balances[recipient] = balances[recipient].add(amount);
      emit Transfer(msg.sender, recipient, amount);
  }

  function approve(
    address spender,
    uint256 amount
    ) external whenNotPaused validAddress(spender) validRecipient(spender)
    validAmount(amount) returns (bool) {
    allowed[msg.sender][spender] = allowed[msg.sender][spender].add(amount);
    emit Approval(msg.sender, spender, amount);
  }

  function transferFrom(
    address sender,
    address recipient,
    uint256 amount
    ) external whenNotPaused validAddress(recipient) validRecipient(recipient)
    validAmount(amount) returns (bool) {
      require(allowed[sender][msg.sender] >= amount, "Above spender allowance.");
      allowed[sender][msg.sender] = allowed[sender][msg.sender].sub(amount);
      balances[sender] = balances[sender].sub(amount);
      balances[recipient] = balances[recipient].add(amount);
      emit Transfer(sender, recipient, amount);
    }

  modifier validAddress(address _address) {
    require(_address != address(0), "Cannot send to address 0x0.");
    _;
  }

  modifier validAmount(uint256 _amount) {
    require(_amount > 0, "Amount must be greater than 0.");
    _;
  }

  modifier validRecipient(address _address) {
    require(msg.sender != _address, "Cannot send to yourself.");
    _;
  }

  // BURN FUNCTIONALITIES

  function totalBurned() external view returns (uint256) {
    return _totalBurned;
  }
  
  function addBurner(address _newBurner) external onlyOwner returns (bool) {
    require(burners[_newBurner] == false, "Address is already a burner.");
    burners[_newBurner] = true;
    emit AssignedBurner(msg.sender, _newBurner, now);
  }

  modifier onlyBurner() {
    require(burners[msg.sender] == true, "Sender is not a burner.");
    _;
  }

  function burn(
    uint256 _burnAmount
  ) external whenNotPaused onlyBurner returns (bool) {
      require(balances[msg.sender] >= _burnAmount, "Attempted to burn above balance.");
      balances[msg.sender] = balances[msg.sender].sub(_burnAmount);
      _totalSupply = _totalSupply.sub(_burnAmount);
      _totalBurned = _totalBurned.add(_burnAmount);
      emit Burned(msg.sender, _burnAmount, now);
  }
}

File 1 of 8: Address.sol
pragma solidity ^0.5.3;

/**
 * Utility library of inline functions on addresses
 */
library Address {
    /**
     * Returns whether the target address is a contract
     * @dev This function will return false if invoked during the constructor of a contract,
     * as the code is not actually created until after the constructor finishes.
     * @param account address of the account to check
     * @return whether the target address is a contract
     */
    function isContract(address account) internal view returns (bool) {
        uint256 size;
        // XXX Currently there is no better way to check if there is a contract in an address
        // than to check the size of the code at that address.
        // See https://ethereum.stackexchange.com/a/14016/36603
        // for more details about how this works.
        // TODO Check this again before the Serenity release, because all addresses will be
        // contracts then.
        // solhint-disable-next-line no-inline-assembly
        assembly { size := extcodesize(account) }
        return size > 0;
    }
}

File 2 of 8: iERC20Token.sol
pragma solidity ^0.5.3;

/**
 * @dev Interface of the ERC20 standard as defined in the EIP. Does not include
 * the optional functions; to access them see {ERC20Detailed}.
 */
interface IERC20Token {
    /**
     * @dev Returns the amount of tokens in existence.
     */
    function totalSupply() external view returns (uint256);

    /**
     * @dev Returns the amount of tokens owned by `account`.
     */
    function balanceOf(address account) external view returns (uint256);

    /**
     * @dev Moves `amount` tokens from the caller's account to `recipient`.
     *
     * Returns a boolean value indicating whether the operation succeeded.
     *
     * Emits a {Transfer} event.
     */
    function transfer(address recipient, uint256 amount) external returns (bool);

    /**
     * @dev Returns the remaining number of tokens that `spender` will be
     * allowed to spend on behalf of `owner` through {transferFrom}. This is
     * zero by default.
     *
     * This value changes when {approve} or {transferFrom} are called.
     */
    function allowance(address owner, address spender) external view returns (uint256);

    /**
     * @dev Sets `amount` as the allowance of `spender` over the caller's tokens.
     *
     * Returns a boolean value indicating whether the operation succeeded.
     *
     * IMPORTANT: Beware that changing an allowance with this method brings the risk
     * that someone may use both the old and the new allowance by unfortunate
     * transaction ordering. One possible solution to mitigate this race
     * condition is to first reduce the spender's allowance to 0 and set the
     * desired value afterwards:
     * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729
     *
     * Emits an {Approval} event.
     */
    function approve(address spender, uint256 amount) external returns (bool);

    /**
     * @dev Moves `amount` tokens from `sender` to `recipient` using the
     * allowance mechanism. `amount` is then deducted from the caller's
     * allowance.
     *
     * Returns a boolean value indicating whether the operation succeeded.
     *
     * Emits a {Transfer} event.
     */
    function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);

    /**
     * @dev Emitted when `value` tokens are moved from one account (`from`) to
     * another (`to`).
     *
     * Note that `value` may be zero.
     */
    event Transfer(address indexed from, address indexed to, uint256 value);

    /**
     * @dev Emitted when the allowance of a `spender` for an `owner` is set by
     * a call to {approve}. `value` is the new allowance.
     */
    event Approval(address indexed owner, address indexed spender, uint256 value);
}

File 3 of 8: Migrations.sol
pragma solidity >=0.4.21 <0.6.0;

contract Migrations {
  address public owner;
  uint public last_completed_migration;

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

  modifier restricted() {
    if (msg.sender == owner) _;
  }

  function setCompleted(uint completed) public restricted {
    last_completed_migration = completed;
  }

  function upgrade(address new_address) public restricted {
    Migrations upgraded = Migrations(new_address);
    upgraded.setCompleted(last_completed_migration);
  }
}

File 4 of 8: Ownable.sol
pragma solidity ^0.5.3;

contract Owned {
    address public owner;

    modifier onlyOwner {
        require(msg.sender == owner, "Only owner can perform transaction.");
        _;
    }

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

    function changeOwner(address _newOwner) public onlyOwner returns (bool success) {
        owner = _newOwner;
        return true;
    }
}

File 5 of 8: Pausable.sol
pragma solidity ^0.5.3;

import { Owned } from "./Ownable.sol";

contract Pausable is Owned{
    bool public isPaused;
    
    event Pause(address _owner, uint _timestamp);
    event Unpause(address _owner, uint _timestamp);
    
    modifier whenPaused {
        require(isPaused);
        _;
    }
    
    modifier whenNotPaused {
        require(!isPaused);
        _;
    }
    
    function pause() public onlyOwner whenNotPaused {
        isPaused = true;
        emit Pause(msg.sender, now);
    }
    
    function unpause() public onlyOwner whenPaused {
        isPaused = false;
        emit Unpause(msg.sender, now);
    }
}

File 6 of 8: SafeMath.sol
pragma solidity ^0.5.3;

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

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

        return c;
    }

    /**
     * @dev Integer division of two unsigned integers truncating the quotient, reverts on division by zero.
     */
    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        // Solidity only automatically asserts when dividing by 0
        require(b > 0);
        uint256 c = a / b;
        // assert(a == b * c + a % b); // There is no case in which this doesn't hold

        return c;
    }

    /**
     * @dev Subtracts two unsigned integers, reverts on overflow (i.e. if subtrahend is greater than minuend).
     */
    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        require(b <= a);
        uint256 c = a - b;

        return c;
    }

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

        return c;
    }

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

File 8 of 8: Whitelist.sol
pragma solidity ^0.5.3;

import { Owned } from "./Ownable.sol";

contract Whitelist is Owned{
    
    bool public whitelistToggle = false;
    
    mapping(address => bool) whitelistedAccounts;
    
    modifier onlyWhitelisted(address from, address to) {
        if(whitelistToggle){
            require(whitelistedAccounts[from], "Sender account is not whitelisted");
            require(whitelistedAccounts[to], "Receiver account is not whitelisted");
        }
        _;
    }
    
    event Whitelisted(address account);
    event UnWhitelisted(address account);
    
    event ToggleWhitelist(address sender, uint timestamp);
    event UntoggleWhitelist(address sender, uint timestamp);
    
    function addWhitelist(address account) public onlyOwner returns(bool) {
        whitelistedAccounts[account] = true;
        emit Whitelisted(account);
    }
        
    function removeWhitelist(address account) public onlyOwner returns(bool) {
        whitelistedAccounts[account] = false;
        emit UnWhitelisted(account);
    }
    
    function toggle() external onlyOwner {
        whitelistToggle = true;
        emit ToggleWhitelist(msg.sender, now);
    }
    
    function untoggle() external onlyOwner {
        whitelistToggle = false;
        emit UntoggleWhitelist(msg.sender, now);
    }
    
    function isWhiteListed(address account) public view returns(bool){
        return whitelistedAccounts[account];
    }
    
}

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":"amount","type":"uint256"}],"name":"approve","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"sender","type":"address"},{"name":"recipient","type":"address"},{"name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"unpause","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"toggle","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_burnAmount","type":"uint256"}],"name":"burn","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"whitelistToggle","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"account","type":"address"}],"name":"isWhiteListed","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"account","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"account","type":"address"}],"name":"removeWhitelist","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"pause","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"untoggle","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"changeOwner","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"recipient","type":"address"},{"name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"isPaused","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalBurned","outputs":[{"name":"","type":"uint256"}],"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":false,"inputs":[{"name":"_newBurner","type":"address"}],"name":"addBurner","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"account","type":"address"}],"name":"addWhitelist","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":false,"name":"value","type":"uint256"},{"indexed":false,"name":"timestamp","type":"uint256"}],"name":"Burned","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"burner","type":"address"},{"indexed":false,"name":"timestamp","type":"uint256"}],"name":"AssignedBurner","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_owner","type":"address"},{"indexed":false,"name":"_timestamp","type":"uint256"}],"name":"Pause","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_owner","type":"address"},{"indexed":false,"name":"_timestamp","type":"uint256"}],"name":"Unpause","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"account","type":"address"}],"name":"Whitelisted","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"account","type":"address"}],"name":"UnWhitelisted","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"sender","type":"address"},{"indexed":false,"name":"timestamp","type":"uint256"}],"name":"ToggleWhitelist","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"sender","type":"address"},{"indexed":false,"name":"timestamp","type":"uint256"}],"name":"UntoggleWhitelist","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"}]

608060405260008060146101000a81548160ff0219169083151502179055503480156200002b57600080fd5b50336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506040805190810160405280600b81526020017f43525950544f4255434b5300000000000000000000000000000000000000000081525060039080519060200190620000b9929190620001ff565b506040805190810160405280600681526020017f434255434b5300000000000000000000000000000000000000000000000000008152506004908051906020019062000107929190620001ff565b5064e8d4a51000600581905550600260068190555060006007819055506005546008600073e43ebcb96564a6fb3b7a4abbfd7008b415591b0973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555073e43ebcb96564a6fb3b7a4abbfd7008b415591b0973ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6005546040518082815260200191505060405180910390a3620002ae565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200024257805160ff191683800117855562000273565b8280016001018555821562000273579182015b828111156200027257825182559160200191906001019062000255565b5b50905062000282919062000286565b5090565b620002ab91905b80821115620002a75760008160009055506001016200028d565b5090565b90565b6126c680620002be6000396000f3fe608060405234801561001057600080fd5b506004361061016a576000357c01000000000000000000000000000000000000000000000000000000009004806378c8cda7116100e0578063a9059cbb11610099578063a9059cbb146105e3578063b187bd2614610649578063d89135cd1461066b578063dd62ed3e14610689578063f44637ba14610701578063f80f5dd51461075d5761016a565b806378c8cda71461044a5780638456cb59146104a65780638ccdcfc6146104b05780638da5cb5b146104ba57806395d89b4114610504578063a6f9dae1146105875761016a565b80633f4ba83a116101325780633f4ba83a1461031a57806340a3d2461461032457806342966c681461032e5780634c96f95a146103745780636f9170f61461039657806370a08231146103f25761016a565b806306fdde031461016f578063095ea7b3146101f257806318160ddd1461025857806323b872dd14610276578063313ce567146102fc575b600080fd5b6101776107b9565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101b757808201518184015260208101905061019c565b50505050905090810190601f1680156101e45780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61023e6004803603604081101561020857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061085b565b604051808215151515815260200191505060405180910390f35b610260610bba565b6040518082815260200191505060405180910390f35b6102e26004803603606081101561028c57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610bc4565b604051808215151515815260200191505060405180910390f35b610304611142565b6040518082815260200191505060405180910390f35b61032261114c565b005b61032c611296565b005b61035a6004803603602081101561034457600080fd5b81019080803590602001909291905050506113c5565b604051808215151515815260200191505060405180910390f35b61037c611688565b604051808215151515815260200191505060405180910390f35b6103d8600480360360208110156103ac57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061169b565b604051808215151515815260200191505060405180910390f35b6104346004803603602081101561040857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506116f1565b6040518082815260200191505060405180910390f35b61048c6004803603602081101561046057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061173a565b604051808215151515815260200191505060405180910390f35b6104ae6118a3565b005b6104b86119ee565b005b6104c2611b1c565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b61050c611b41565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561054c578082015181840152602081019050610531565b50505050905090810190601f1680156105795780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6105c96004803603602081101561059d57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611be3565b604051808215151515815260200191505060405180910390f35b61062f600480360360408110156105f957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611cd5565b604051808215151515815260200191505060405180910390f35b6106516121b1565b604051808215151515815260200191505060405180910390f35b6106736121c4565b6040518082815260200191505060405180910390f35b6106eb6004803603604081101561069f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506121ce565b6040518082815260200191505060405180910390f35b6107436004803603602081101561071757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612255565b604051808215151515815260200191505060405180910390f35b61079f6004803603602081101561077357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612488565b604051808215151515815260200191505060405180910390f35b606060038054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156108515780601f1061082657610100808354040283529160200191610851565b820191906000526020600020905b81548152906001019060200180831161083457829003601f168201915b5050505050905090565b6000600260009054906101000a900460ff1615151561087957600080fd5b82600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561091f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f43616e6e6f742073656e6420746f2061646472657373203078302e000000000081525060200191505060405180910390fd5b838073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515156109c4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260188152602001807f43616e6e6f742073656e6420746f20796f757273656c662e000000000000000081525060200191505060405180910390fd5b83600081111515610a3d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601e8152602001807f416d6f756e74206d7573742062652067726561746572207468616e20302e000081525060200191505060405180910390fd5b610acc85600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546125f090919063ffffffff16565b600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925876040518082815260200191505060405180910390a350505092915050565b6000600554905090565b6000600260009054906101000a900460ff16151515610be257600080fd5b82600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610c88576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f43616e6e6f742073656e6420746f2061646472657373203078302e000000000081525060200191505060405180910390fd5b838073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151515610d2d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260188152602001807f43616e6e6f742073656e6420746f20796f757273656c662e000000000000000081525060200191505060405180910390fd5b83600081111515610da6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601e8152602001807f416d6f756e74206d7573742062652067726561746572207468616e20302e000081525060200191505060405180910390fd5b84600960008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410151515610e9a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260188152602001807f41626f7665207370656e64657220616c6c6f77616e63652e000000000000000081525060200191505060405180910390fd5b610f2985600960008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461261190919063ffffffff16565b600960008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610ffb85600860008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461261190919063ffffffff16565b600860008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061109085600860008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546125f090919063ffffffff16565b600860008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508573ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef876040518082815260200191505060405180910390a35050509392505050565b6000600654905090565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156111f3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260238152602001806126786023913960400191505060405180910390fd5b600260009054906101000a900460ff16151561120e57600080fd5b6000600260006101000a81548160ff0219169083151502179055507fe3338c1c649986dbdcc0a34160c789b50eda42615d8768c5b7518b40af6a80b23342604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a1565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561133d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260238152602001806126786023913960400191505060405180910390fd5b6001600060146101000a81548160ff0219169083151502179055507ff227627cb39c815bb77f244f58827c5b94551ef0ded383a18f23950425d020773342604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a1565b6000600260009054906101000a900460ff161515156113e357600080fd5b60011515600a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615151415156114ab576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f53656e646572206973206e6f742061206275726e65722e00000000000000000081525060200191505060405180910390fd5b81600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410151515611562576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f417474656d7074656420746f206275726e2061626f76652062616c616e63652e81525060200191505060405180910390fd5b6115b482600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461261190919063ffffffff16565b600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061160c8260055461261190919063ffffffff16565b600581905550611627826007546125f090919063ffffffff16565b6007819055503373ffffffffffffffffffffffffffffffffffffffff167f23ff0e75edf108e3d0392d92e13e8c8a868ef19001bd49f9e94876dc46dff87f8342604051808381526020018281526020019250505060405180910390a2919050565b600060149054906101000a900460ff1681565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b6000600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156117e3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260238152602001806126786023913960400191505060405180910390fd5b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055507f7cdb51b0cc2e541ad7e9471c358de415f5dbaff6cca78e3393d445346c610c1b82604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a1919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561194a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260238152602001806126786023913960400191505060405180910390fd5b600260009054906101000a900460ff1615151561196657600080fd5b6001600260006101000a81548160ff0219169083151502179055507f0cc81ffa7ae14c1e9e3f3a07c8ba11c5ce48258aca115fb150d8aea6d3095bd73342604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a1565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611a95576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260238152602001806126786023913960400191505060405180910390fd5b60008060146101000a81548160ff0219169083151502179055507f0be306f026a048c530580fa13ffcf2937ded5f72e6d9acd02cdc4063562e1deb3342604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a1565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b606060048054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015611bd95780601f10611bae57610100808354040283529160200191611bd9565b820191906000526020600020905b815481529060010190602001808311611bbc57829003601f168201915b5050505050905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611c8c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260238152602001806126786023913960400191505060405180910390fd5b816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060019050919050565b6000600260009054906101000a900460ff16151515611cf357600080fd5b3383600060149054906101000a900460ff1615611e5357600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515611dae576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260218152602001806126346021913960400191505060405180910390fd5b600160008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515611e52576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260238152602001806126556023913960400191505060405180910390fd5b5b848073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151515611ef8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260188152602001807f43616e6e6f742073656e6420746f20796f757273656c662e000000000000000081525060200191505060405180910390fd5b84600081111515611f71576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601e8152602001807f416d6f756e74206d7573742062652067726561746572207468616e20302e000081525060200191505060405180910390fd5b86600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515612017576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f43616e6e6f742073656e6420746f2061646472657373203078302e000000000081525060200191505060405180910390fd5b61206987600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461261190919063ffffffff16565b600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506120fe87600860008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546125f090919063ffffffff16565b600860008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508773ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef896040518082815260200191505060405180910390a3505050505092915050565b600260009054906101000a900460ff1681565b6000600754905090565b6000600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156122fe576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260238152602001806126786023913960400191505060405180910390fd5b60001515600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615151415156123c6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601c8152602001807f4164647265737320697320616c72656164792061206275726e65722e0000000081525060200191505060405180910390fd5b6001600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f648a3e9a56420e48bd08490aa631633cb2616734219c6c50e44cbdb910f21258426040518082815260200191505060405180910390a3919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515612531576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260238152602001806126786023913960400191505060405180910390fd5b60018060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055507faab7954e9d246b167ef88aeddad35209ca2489d95a8aeb59e288d9b19fae5a5482604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a1919050565b600080828401905083811015151561260757600080fd5b8091505092915050565b600082821115151561262257600080fd5b60008284039050809150509291505056fe53656e646572206163636f756e74206973206e6f742077686974656c69737465645265636569766572206163636f756e74206973206e6f742077686974656c69737465644f6e6c79206f776e65722063616e20706572666f726d207472616e73616374696f6e2ea165627a7a723058204e6e416b59bd7e646f7ad978e0293b0b1216902b85ab3edc49c4c04d701776ca0029

Deployed Bytecode

0x608060405234801561001057600080fd5b506004361061016a576000357c01000000000000000000000000000000000000000000000000000000009004806378c8cda7116100e0578063a9059cbb11610099578063a9059cbb146105e3578063b187bd2614610649578063d89135cd1461066b578063dd62ed3e14610689578063f44637ba14610701578063f80f5dd51461075d5761016a565b806378c8cda71461044a5780638456cb59146104a65780638ccdcfc6146104b05780638da5cb5b146104ba57806395d89b4114610504578063a6f9dae1146105875761016a565b80633f4ba83a116101325780633f4ba83a1461031a57806340a3d2461461032457806342966c681461032e5780634c96f95a146103745780636f9170f61461039657806370a08231146103f25761016a565b806306fdde031461016f578063095ea7b3146101f257806318160ddd1461025857806323b872dd14610276578063313ce567146102fc575b600080fd5b6101776107b9565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101b757808201518184015260208101905061019c565b50505050905090810190601f1680156101e45780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61023e6004803603604081101561020857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061085b565b604051808215151515815260200191505060405180910390f35b610260610bba565b6040518082815260200191505060405180910390f35b6102e26004803603606081101561028c57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610bc4565b604051808215151515815260200191505060405180910390f35b610304611142565b6040518082815260200191505060405180910390f35b61032261114c565b005b61032c611296565b005b61035a6004803603602081101561034457600080fd5b81019080803590602001909291905050506113c5565b604051808215151515815260200191505060405180910390f35b61037c611688565b604051808215151515815260200191505060405180910390f35b6103d8600480360360208110156103ac57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061169b565b604051808215151515815260200191505060405180910390f35b6104346004803603602081101561040857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506116f1565b6040518082815260200191505060405180910390f35b61048c6004803603602081101561046057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061173a565b604051808215151515815260200191505060405180910390f35b6104ae6118a3565b005b6104b86119ee565b005b6104c2611b1c565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b61050c611b41565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561054c578082015181840152602081019050610531565b50505050905090810190601f1680156105795780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6105c96004803603602081101561059d57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611be3565b604051808215151515815260200191505060405180910390f35b61062f600480360360408110156105f957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611cd5565b604051808215151515815260200191505060405180910390f35b6106516121b1565b604051808215151515815260200191505060405180910390f35b6106736121c4565b6040518082815260200191505060405180910390f35b6106eb6004803603604081101561069f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506121ce565b6040518082815260200191505060405180910390f35b6107436004803603602081101561071757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612255565b604051808215151515815260200191505060405180910390f35b61079f6004803603602081101561077357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612488565b604051808215151515815260200191505060405180910390f35b606060038054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156108515780601f1061082657610100808354040283529160200191610851565b820191906000526020600020905b81548152906001019060200180831161083457829003601f168201915b5050505050905090565b6000600260009054906101000a900460ff1615151561087957600080fd5b82600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561091f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f43616e6e6f742073656e6420746f2061646472657373203078302e000000000081525060200191505060405180910390fd5b838073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515156109c4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260188152602001807f43616e6e6f742073656e6420746f20796f757273656c662e000000000000000081525060200191505060405180910390fd5b83600081111515610a3d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601e8152602001807f416d6f756e74206d7573742062652067726561746572207468616e20302e000081525060200191505060405180910390fd5b610acc85600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546125f090919063ffffffff16565b600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925876040518082815260200191505060405180910390a350505092915050565b6000600554905090565b6000600260009054906101000a900460ff16151515610be257600080fd5b82600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610c88576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f43616e6e6f742073656e6420746f2061646472657373203078302e000000000081525060200191505060405180910390fd5b838073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151515610d2d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260188152602001807f43616e6e6f742073656e6420746f20796f757273656c662e000000000000000081525060200191505060405180910390fd5b83600081111515610da6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601e8152602001807f416d6f756e74206d7573742062652067726561746572207468616e20302e000081525060200191505060405180910390fd5b84600960008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410151515610e9a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260188152602001807f41626f7665207370656e64657220616c6c6f77616e63652e000000000000000081525060200191505060405180910390fd5b610f2985600960008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461261190919063ffffffff16565b600960008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610ffb85600860008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461261190919063ffffffff16565b600860008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061109085600860008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546125f090919063ffffffff16565b600860008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508573ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef876040518082815260200191505060405180910390a35050509392505050565b6000600654905090565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156111f3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260238152602001806126786023913960400191505060405180910390fd5b600260009054906101000a900460ff16151561120e57600080fd5b6000600260006101000a81548160ff0219169083151502179055507fe3338c1c649986dbdcc0a34160c789b50eda42615d8768c5b7518b40af6a80b23342604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a1565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561133d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260238152602001806126786023913960400191505060405180910390fd5b6001600060146101000a81548160ff0219169083151502179055507ff227627cb39c815bb77f244f58827c5b94551ef0ded383a18f23950425d020773342604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a1565b6000600260009054906101000a900460ff161515156113e357600080fd5b60011515600a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615151415156114ab576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f53656e646572206973206e6f742061206275726e65722e00000000000000000081525060200191505060405180910390fd5b81600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410151515611562576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f417474656d7074656420746f206275726e2061626f76652062616c616e63652e81525060200191505060405180910390fd5b6115b482600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461261190919063ffffffff16565b600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061160c8260055461261190919063ffffffff16565b600581905550611627826007546125f090919063ffffffff16565b6007819055503373ffffffffffffffffffffffffffffffffffffffff167f23ff0e75edf108e3d0392d92e13e8c8a868ef19001bd49f9e94876dc46dff87f8342604051808381526020018281526020019250505060405180910390a2919050565b600060149054906101000a900460ff1681565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b6000600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156117e3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260238152602001806126786023913960400191505060405180910390fd5b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055507f7cdb51b0cc2e541ad7e9471c358de415f5dbaff6cca78e3393d445346c610c1b82604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a1919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561194a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260238152602001806126786023913960400191505060405180910390fd5b600260009054906101000a900460ff1615151561196657600080fd5b6001600260006101000a81548160ff0219169083151502179055507f0cc81ffa7ae14c1e9e3f3a07c8ba11c5ce48258aca115fb150d8aea6d3095bd73342604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a1565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611a95576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260238152602001806126786023913960400191505060405180910390fd5b60008060146101000a81548160ff0219169083151502179055507f0be306f026a048c530580fa13ffcf2937ded5f72e6d9acd02cdc4063562e1deb3342604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a1565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b606060048054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015611bd95780601f10611bae57610100808354040283529160200191611bd9565b820191906000526020600020905b815481529060010190602001808311611bbc57829003601f168201915b5050505050905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611c8c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260238152602001806126786023913960400191505060405180910390fd5b816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060019050919050565b6000600260009054906101000a900460ff16151515611cf357600080fd5b3383600060149054906101000a900460ff1615611e5357600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515611dae576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260218152602001806126346021913960400191505060405180910390fd5b600160008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515611e52576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260238152602001806126556023913960400191505060405180910390fd5b5b848073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151515611ef8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260188152602001807f43616e6e6f742073656e6420746f20796f757273656c662e000000000000000081525060200191505060405180910390fd5b84600081111515611f71576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601e8152602001807f416d6f756e74206d7573742062652067726561746572207468616e20302e000081525060200191505060405180910390fd5b86600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515612017576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f43616e6e6f742073656e6420746f2061646472657373203078302e000000000081525060200191505060405180910390fd5b61206987600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461261190919063ffffffff16565b600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506120fe87600860008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546125f090919063ffffffff16565b600860008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508773ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef896040518082815260200191505060405180910390a3505050505092915050565b600260009054906101000a900460ff1681565b6000600754905090565b6000600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156122fe576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260238152602001806126786023913960400191505060405180910390fd5b60001515600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615151415156123c6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601c8152602001807f4164647265737320697320616c72656164792061206275726e65722e0000000081525060200191505060405180910390fd5b6001600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f648a3e9a56420e48bd08490aa631633cb2616734219c6c50e44cbdb910f21258426040518082815260200191505060405180910390a3919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515612531576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260238152602001806126786023913960400191505060405180910390fd5b60018060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055507faab7954e9d246b167ef88aeddad35209ca2489d95a8aeb59e288d9b19fae5a5482604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a1919050565b600080828401905083811015151561260757600080fd5b8091505092915050565b600082821115151561262257600080fd5b60008284039050809150509291505056fe53656e646572206163636f756e74206973206e6f742077686974656c69737465645265636569766572206163636f756e74206973206e6f742077686974656c69737465644f6e6c79206f776e65722063616e20706572666f726d207472616e73616374696f6e2ea165627a7a723058204e6e416b59bd7e646f7ad978e0293b0b1216902b85ab3edc49c4c04d701776ca0029

Deployed Bytecode Sourcemap

719:3919:5:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;719:3919:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1582:77;;;:::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;1582:77:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2558:302;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;2558:302:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;1748:85;;;:::i;:::-;;;;;;;;;;;;;;;;;;;2864:533;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;2864:533:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;1837:79;;;:::i;:::-;;;;;;;;;;;;;;;;;;;516:119:3;;;:::i;:::-;;1048:123:6;;;:::i;:::-;;4230:406:5;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;4230:406:5;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;103:35:6;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;1319:117;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1319:117:6;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;1920:103:5;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1920:103:5;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;875:163:6;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;875:163:6;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;389:117:3;;;:::i;:::-;;1181:128:6;;;:::i;:::-;;46:20:2;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;1663:81:5;;;:::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;1663:81:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;255:135:2;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;255:135:2;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;2155:399:5;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;2155:399:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;97:20:3;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;3789:85:5;;;:::i;:::-;;;;;;;;;;;;;;;;;;;2027:124;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;2027:124:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;3880:239;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;3880:239:5;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;704:157:6;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;704:157:6;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;1582:77:5;1621:13;1649:5;1642:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1582:77;:::o;2558:302::-;2724:4;352:8:3;;;;;;;;;;;351:9;343:18;;;;;;;;2658:7:5;3475:1;3455:22;;:8;:22;;;;3447:62;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2682:7;3709:8;3695:22;;:10;:22;;;;3687:59;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2707:6;3587:1;3577:7;:11;3569:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2767:40;2800:6;2767:7;:19;2775:10;2767:19;;;;;;;;;;;;;;;:28;2787:7;2767:28;;;;;;;;;;;;;;;;:32;;:40;;;;:::i;:::-;2736:7;:19;2744:10;2736:19;;;;;;;;;;;;;;;:28;2756:7;2736:28;;;;;;;;;;;;;;;:71;;;;2839:7;2818:37;;2827:10;2818:37;;;2848:6;2818:37;;;;;;;;;;;;;;;;;;3752:1;3515;371::3;2558:302:5;;;;:::o;1748:85::-;1794:7;1816:12;;1809:19;;1748:85;:::o;2864:533::-;3061:4;352:8:3;;;;;;;;;;;351:9;343:18;;;;;;;;2991:9:5;3475:1;3455:22;;:8;:22;;;;3447:62;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3017:9;3709:8;3695:22;;:10;:22;;;;3687:59;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3044:6;3587:1;3577:7;:11;3569:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3114:6;3083:7;:15;3091:6;3083:15;;;;;;;;;;;;;;;:27;3099:10;3083:27;;;;;;;;;;;;;;;;:37;;3075:74;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3187:39;3219:6;3187:7;:15;3195:6;3187:15;;;;;;;;;;;;;;;:27;3203:10;3187:27;;;;;;;;;;;;;;;;:31;;:39;;;;:::i;:::-;3157:7;:15;3165:6;3157:15;;;;;;;;;;;;;;;:27;3173:10;3157:27;;;;;;;;;;;;;;;:69;;;;3253:28;3274:6;3253:8;:16;3262:6;3253:16;;;;;;;;;;;;;;;;:20;;:28;;;;:::i;:::-;3234:8;:16;3243:6;3234:16;;;;;;;;;;;;;;;:47;;;;3311:31;3335:6;3311:8;:19;3320:9;3311:19;;;;;;;;;;;;;;;;:23;;:31;;;;:::i;:::-;3289:8;:19;3298:9;3289:19;;;;;;;;;;;;;;;:53;;;;3372:9;3355:35;;3364:6;3355:35;;;3383:6;3355:35;;;;;;;;;;;;;;;;;;3752:1;3515;371::3;2864:533:5;;;;;:::o;1837:79::-;1880:7;1902:9;;1895:16;;1837:79;:::o;516:119:3:-;124:5:2;;;;;;;;;;;110:19;;:10;:19;;;102:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;273:8:3;;;;;;;;;;;265:17;;;;;;;;584:5;573:8;;:16;;;;;;;;;;;;;;;;;;604:24;612:10;624:3;604:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;516:119::o;1048:123:6:-;124:5:2;;;;;;;;;;;110:19;;:10;:19;;;102:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1113:4:6;1095:15;;:22;;;;;;;;;;;;;;;;;;1132:32;1148:10;1160:3;1132:32;;;;;;;;;;;;;;;;;;;;;;;;;;;;1048:123::o;4230:406:5:-;4316:4;352:8:3;;;;;;;;;;;351:9;343:18;;;;;;;;4182:4:5;4159:27;;:7;:19;4167:10;4159:19;;;;;;;;;;;;;;;;;;;;;;;;;:27;;;4151:63;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4362:11;4338:8;:20;4347:10;4338:20;;;;;;;;;;;;;;;;:35;;4330:80;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4441:37;4466:11;4441:8;:20;4450:10;4441:20;;;;;;;;;;;;;;;;:24;;:37;;;;:::i;:::-;4418:8;:20;4427:10;4418:20;;;;;;;;;;;;;;;:60;;;;4501:29;4518:11;4501:12;;:16;;:29;;;;:::i;:::-;4486:12;:44;;;;4553:29;4570:11;4553:12;;:16;;:29;;;;:::i;:::-;4538:12;:44;;;;4602:10;4595:36;;;4614:11;4627:3;4595:36;;;;;;;;;;;;;;;;;;;;;;;;4230:406;;;:::o;103:35:6:-;;;;;;;;;;;;;:::o;1319:117::-;1379:4;1401:19;:28;1421:7;1401:28;;;;;;;;;;;;;;;;;;;;;;;;;1394:35;;1319:117;;;:::o;1920:103:5:-;1979:7;2001:8;:17;2010:7;2001:17;;;;;;;;;;;;;;;;1994:24;;1920:103;;;:::o;875:163:6:-;942:4;124:5:2;;;;;;;;;;;110:19;;:10;:19;;;102:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;989:5:6;958:19;:28;978:7;958:28;;;;;;;;;;;;;;;;:36;;;;;;;;;;;;;;;;;;1009:22;1023:7;1009:22;;;;;;;;;;;;;;;;;;;;;;875:163;;;:::o;389:117:3:-;124:5:2;;;;;;;;;;;110:19;;:10;:19;;;102:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;352:8:3;;;;;;;;;;;351:9;343:18;;;;;;;;458:4;447:8;;:15;;;;;;;;;;;;;;;;;;477:22;483:10;495:3;477:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;389:117::o;1181:128:6:-;124:5:2;;;;;;;;;;;110:19;;:10;:19;;;102:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1248:5:6;1230:15;;:23;;;;;;;;;;;;;;;;;;1268:34;1286:10;1298:3;1268:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;1181:128::o;46:20:2:-;;;;;;;;;;;;;:::o;1663:81:5:-;1704:13;1732:7;1725:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1663:81;:::o;255:135:2:-;321:12;124:5;;;;;;;;;;;110:19;;:10;:19;;;102:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;353:9;345:5;;:17;;;;;;;;;;;;;;;;;;379:4;372:11;;255:135;;;:::o;2155:399:5:-;2367:4;352:8:3;;;;;;;;;;;351:9;343:18;;;;;;;;2261:10:5;2273:9;268:15:6;;;;;;;;;;;265:200;;;306:19;:25;326:4;306:25;;;;;;;;;;;;;;;;;;;;;;;;;298:71;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;391:19;:23;411:2;391:23;;;;;;;;;;;;;;;;;;;;;;;;;383:71;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;265:200;2299:9:5;3709:8;3695:22;;:10;:22;;;;3687:59;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2326:6;3587:1;3577:7;:11;3569:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2347:9;3475:1;3455:22;;:8;:22;;;;3447:62;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2404:32;2429:6;2404:8;:20;2413:10;2404:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;2381:8;:20;2390:10;2381:20;;;;;;;;;;;;;;;:55;;;;2466:31;2490:6;2466:8;:19;2475:9;2466:19;;;;;;;;;;;;;;;;:23;;:31;;;;:::i;:::-;2444:8;:19;2453:9;2444:19;;;;;;;;;;;;;;;:53;;;;2531:9;2510:39;;2519:10;2510:39;;;2542:6;2510:39;;;;;;;;;;;;;;;;;;3629:1;3752;474::6;371::3;;2155:399:5;;;;:::o;97:20:3:-;;;;;;;;;;;;;:::o;3789:85:5:-;3835:7;3857:12;;3850:19;;3789:85;:::o;2027:124::-;2101:7;2123;:14;2131:5;2123:14;;;;;;;;;;;;;;;:23;2138:7;2123:23;;;;;;;;;;;;;;;;2116:30;;2027:124;;;;:::o;3880:239::-;3947:4;124:5:2;;;;;;;;;;;110:19;;:10;:19;;;102:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3990:5:5;3967:28;;:7;:19;3975:10;3967:19;;;;;;;;;;;;;;;;;;;;;;;;;:28;;;3959:69;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4056:4;4034:7;:19;4042:10;4034:19;;;;;;;;;;;;;;;;:26;;;;;;;;;;;;;;;;;;4098:10;4071:43;;4086:10;4071:43;;;4110:3;4071:43;;;;;;;;;;;;;;;;;;3880:239;;;:::o;704:157:6:-;768:4;124:5:2;;;;;;;;;;;110:19;;:10;:19;;;102:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;815:4:6;784:19;:28;804:7;784:28;;;;;;;;;;;;;;;;:35;;;;;;;;;;;;;;;;;;834:20;846:7;834:20;;;;;;;;;;;;;;;;;;;;;;704:157;;;:::o;1439:145:4:-;1497:7;1516:9;1532:1;1528;:5;1516:17;;1556:1;1551;:6;;1543:15;;;;;;;;1576:1;1569:8;;;1439:145;;;;:::o;1211:::-;1269:7;1301:1;1296;:6;;1288:15;;;;;;;;1313:9;1329:1;1325;:5;1313:17;;1348:1;1341:8;;;1211:145;;;;:::o

Swarm Source

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