Token ARTIC

 

Overview [ERC-20]

Max Total Supply:
100,000,000 ARTIC

Holders:
1,691

Transfers:
-

 
Loading
[ Download CSV Export  ] 
Loading
[ Download CSV Export  ] 
Loading

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

Contract Source Code Verified (Exact Match)

Contract Name:
ARTIC

Compiler Version
v0.8.0+commit.c7dfd78e

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license
/**
 *Submitted for verification at Etherscan.io on 2022-02-25
*/

// SPDX-License-Identifier: MIT

pragma solidity ^0.8.0;

contract OwnerHelper
{
    address public owner;
    address public manager;

    event ChangeOwner(address indexed _from, address indexed _to);
    event ChangeManager(address indexed _from, address indexed _to);

    modifier onlyOwner
    {
        require(msg.sender == owner, "ERROR: Not owner");
        _;
    }

    modifier onlyManagerAndOwner
    {
        require(msg.sender == manager || msg.sender == owner, "ERROR: Not manager and owner");
        _;
    }

    constructor()
    {
        owner = msg.sender;
    }

    function transferOwnership(address _to) onlyOwner public
    {
        require(_to != owner);
        require(_to != manager);
        require(_to != address(0x0));

        address from = owner;
        owner = _to;

        emit ChangeOwner(from, _to);
    }

    function transferManager(address _to) onlyOwner public
    {
        require(_to != owner);
        require(_to != manager);
        require(_to != address(0x0));

        address from = manager;
        manager = _to;

        emit ChangeManager(from, _to);
    }
}

abstract contract ERC20Interface
{
    event Transfer( address indexed _from, address indexed _to, uint _value);
    event Approval( address indexed _owner, address indexed _spender, uint _value);

    function totalSupply() view virtual public returns (uint _supply);
    function balanceOf( address _who ) virtual public view returns (uint _value);
    function transfer( address _to, uint _value) virtual public returns (bool _success);
    function approve( address _spender, uint _value ) virtual public returns (bool _success);
    function allowance( address _owner, address _spender ) virtual public view returns (uint _allowance);
    function transferFrom( address _from, address _to, uint _value) virtual public returns (bool _success);
}

contract ARTIC is ERC20Interface, OwnerHelper
{
    string public name;
    uint public decimals;
    string public symbol;

    uint constant private E18 = 1000000000000000000;
    uint constant private month = 2592000;

    // Total                                         100,000,000
    uint constant public maxTotalSupply           = 100000000 * E18;
    // Sale                                         10,000,000 (10%)
    uint constant public maxSaleSupply            = 10000000 * E18;
    // Marketing                                    25,000,000 (25%)
    uint constant public maxMktSupply             = 25000000 * E18;
    // Development                                  22,000,000 (22%)
    uint constant public maxDevSupply             = 22000000 * E18;
    // EcoSystem                                    20,000,000 (20%)
    uint constant public maxEcoSupply             = 20000000 * E18;
    // Legal & Compliance                           5,000,000 (5%)
    uint constant public maxLegalComplianceSupply = 5000000 * E18;
    // Team                                         5,000,000 (5%)
    uint constant public maxTeamSupply            = 5000000 * E18;
    // Advisors                                     3,000,000 (3%)
    uint constant public maxAdvisorSupply         = 3000000 * E18;
    // Reserve                                      10,000,000 (10%)
    uint constant public maxReserveSupply         = 10000000 * E18;

    // Lock
    uint constant public teamVestingSupply = 500000 * E18;
    uint constant public teamVestingLockDate =  12 * month;
    uint constant public teamVestingTime = 10;

    uint constant public advisorVestingSupply = 750000 * E18;
    uint constant public advisorVestingTime = 4;

    uint public totalTokenSupply;
    uint public tokenIssuedSale;
    uint public tokenIssuedMkt;
    uint public tokenIssuedDev;
    uint public tokenIssuedEco;
    uint public tokenIssuedLegalCompliance;
    uint public tokenIssuedTeam;
    uint public tokenIssuedAdv;
    uint public tokenIssuedRsv;

    uint public burnTokenSupply;

    mapping (address => uint) public balances;
    mapping (address => mapping ( address => uint )) public approvals;

    mapping (uint => uint) public tmVestingTimer;
    mapping (uint => uint) public tmVestingBalances;
    mapping (uint => uint) public advVestingTimer;
    mapping (uint => uint) public advVestingBalances;

    bool public tokenLock = true;
    bool public saleTime = true;
    uint public endSaleTime = 0;

    event SaleIssue(address indexed _to, uint _tokens);
    event DevIssue(address indexed _to, uint _tokens);
    event EcoIssue(address indexed _to, uint _tokens);
    event LegalComplianceIssue(address indexed _to, uint _tokens);
    event MktIssue(address indexed _to, uint _tokens);
    event RsvIssue(address indexed _to, uint _tokens);
    event TeamIssue(address indexed _to, uint _tokens);
    event AdvIssue(address indexed _to, uint _tokens);

    event Burn(address indexed _from, uint _tokens);

    event TokenUnlock(address indexed _to, uint _tokens);
    event EndSale(uint _date);

    constructor()
    {
        name        = "ARTIC";
        decimals    = 18;
        symbol      = "ARTIC";

        totalTokenSupply = maxTotalSupply;
        balances[owner] = totalTokenSupply;

        tokenIssuedSale     = 0;
        tokenIssuedDev      = 0;
        tokenIssuedEco      = 0;
        tokenIssuedLegalCompliance = 0;
        tokenIssuedMkt      = 0;
        tokenIssuedRsv      = 0;
        tokenIssuedTeam     = 0;
        tokenIssuedAdv      = 0;

        burnTokenSupply     = 0;

        require(maxTeamSupply == teamVestingSupply * teamVestingTime, "ERROR: MaxTeamSupply");
        require(maxAdvisorSupply == advisorVestingSupply * advisorVestingTime, "ERROR: MaxAdvisorSupply");
        require(maxTotalSupply == maxSaleSupply + maxDevSupply + maxEcoSupply + maxMktSupply + maxReserveSupply + maxTeamSupply + maxAdvisorSupply + maxLegalComplianceSupply, "ERROR: MaxTotalSupply");
    }

    function totalSupply() view override public returns (uint)
    {
        return totalTokenSupply;
    }

    function balanceOf(address _who) view override public returns (uint)
    {
        return balances[_who];
    }

    function transfer(address _to, uint _value) override public returns (bool)
    {
        require(isTransferable() == true);
        require(balances[msg.sender] >= _value);

        balances[msg.sender] = balances[msg.sender] - _value;
        balances[_to] = balances[_to] + _value;

        emit Transfer(msg.sender, _to, _value);

        return true;
    }

    function approve(address _spender, uint _value) override public returns (bool)
    {
        require(isTransferable() == true);
        require(balances[msg.sender] >= _value);

        approvals[msg.sender][_spender] = _value;

        emit Approval(msg.sender, _spender, _value);

        return true;
    }

    function allowance(address _owner, address _spender) view override public returns (uint)
    {
        return approvals[_owner][_spender];
    }

    function transferFrom(address _from, address _to, uint _value) override public returns (bool)
    {
        require(isTransferable() == true);
        require(balances[_from] >= _value);
        require(approvals[_from][msg.sender] >= _value);

        approvals[_from][msg.sender] = approvals[_from][msg.sender] - _value;
        balances[_from] = balances[_from] - _value;
        balances[_to]  = balances[_to] + _value;

        emit Transfer(_from, _to, _value);

        return true;
    }

    function saleIssue(address _to) onlyOwner public
    {
        require(tokenIssuedSale == 0);
        uint tokens = maxSaleSupply;

        balances[msg.sender] = balances[msg.sender] - tokens;

        balances[_to] = balances[_to] + tokens;

        tokenIssuedSale = tokenIssuedSale + tokens;

        emit SaleIssue(_to, tokens);
    }

    function devIssue(address _to) onlyOwner public
    {
        require(saleTime == false);
        require(tokenIssuedDev == 0);

        uint tokens = maxDevSupply;

        balances[msg.sender] = balances[msg.sender] - tokens;

        balances[_to] = balances[_to] + tokens;

        tokenIssuedDev = tokenIssuedDev + tokens;

        emit DevIssue(_to, tokens);
    }

    function ecoIssue(address _to) onlyOwner public
    {
        require(saleTime == false);
        require(tokenIssuedEco == 0);

        uint tokens = maxEcoSupply;

        balances[msg.sender] = balances[msg.sender] - tokens;

        balances[_to] = balances[_to] + tokens;

        tokenIssuedEco = tokenIssuedEco + tokens;

        emit EcoIssue(_to, tokens);
    }

    function mktIssue(address _to) onlyOwner public
    {
        require(saleTime == false);
        require(tokenIssuedMkt == 0);

        uint tokens = maxMktSupply;

        balances[msg.sender] = balances[msg.sender] - tokens;

        balances[_to] = balances[_to] + tokens;

        tokenIssuedMkt = tokenIssuedMkt + tokens;

        emit MktIssue(_to, tokens);
    }

    function legalComplianceIssue(address _to) onlyOwner public
    {
        require(saleTime == false);
        require(tokenIssuedLegalCompliance == 0);

        uint tokens = maxLegalComplianceSupply;

        balances[msg.sender] = balances[msg.sender] - tokens;

        balances[_to] = balances[_to] + tokens;

        tokenIssuedLegalCompliance = tokenIssuedLegalCompliance + tokens;

        emit LegalComplianceIssue(_to, tokens);
    }

    function rsvIssue(address _to) onlyOwner public
    {
        require(saleTime == false);
        require(tokenIssuedRsv == 0);

        uint tokens = maxReserveSupply;

        balances[msg.sender] = balances[msg.sender] - tokens;

        balances[_to] = balances[_to] + tokens;

        tokenIssuedRsv = tokenIssuedRsv + tokens;

        emit RsvIssue(_to, tokens);
    }

    function teamIssue(address _to, uint _time /* 몇 번째 지급인지 */) onlyOwner public
    {
        require(saleTime == false);
        require( _time < teamVestingTime);

        uint nowTime = block.timestamp;
        require( nowTime > tmVestingTimer[_time] );

        uint tokens = teamVestingSupply;

        require(tokens == tmVestingBalances[_time]);
        require(maxTeamSupply >= tokenIssuedTeam + tokens);

        balances[msg.sender] = balances[msg.sender] - tokens;

        balances[_to] = balances[_to] + tokens;
        tmVestingBalances[_time] = 0;

        tokenIssuedTeam = tokenIssuedTeam + tokens;

        emit TeamIssue(_to, tokens);
    }

    function advisorIssue(address _to, uint _time) onlyOwner public
    {
        require(saleTime == false);
        require( _time < advisorVestingTime);

        uint nowTime = block.timestamp;
        require( nowTime > advVestingTimer[_time] );

        uint tokens = advisorVestingSupply;

        require(tokens == advVestingBalances[_time]);
        require(maxAdvisorSupply >= tokenIssuedAdv + tokens);

        balances[msg.sender] = balances[msg.sender] - tokens;

        balances[_to] = balances[_to] + tokens;
        advVestingBalances[_time] = 0;

        tokenIssuedAdv = tokenIssuedAdv + tokens;

        emit AdvIssue(_to, tokens);
    }

    function isTransferable() private view returns (bool)
    {
        if(tokenLock == false)
        {
            return true;
        }
        else if(msg.sender == owner)
        {
            return true;
        }

        return false;
    }

    function setTokenUnlock() onlyManagerAndOwner public
    {
        require(tokenLock == true);
        require(saleTime == false);

        tokenLock = false;
    }

    function setTokenLock() onlyManagerAndOwner public
    {
        require(tokenLock == false);
        tokenLock = true;
    }

    function endSale() onlyOwner public
    {
        require(saleTime == true);
        require(maxSaleSupply == tokenIssuedSale);

        saleTime = false;

        uint nowTime = block.timestamp;
        endSaleTime = nowTime;

        for(uint i = 0; i < teamVestingTime; i++)
        {
            tmVestingTimer[i] = endSaleTime + teamVestingLockDate + (i * month);
            tmVestingBalances[i] = teamVestingSupply;
        }

        for(uint i = 0; i < advisorVestingTime; i++)
        {
            advVestingTimer[i] = endSaleTime + (3 * i * month);
            advVestingBalances[i] = advisorVestingSupply;
        }

        emit EndSale(endSaleTime);
    }

    function burnToken(uint _value) onlyManagerAndOwner public
    {
        uint tokens = _value * E18;

        require(balances[msg.sender] >= tokens);

        balances[msg.sender] = balances[msg.sender] - tokens;

        burnTokenSupply = burnTokenSupply + tokens;
        totalTokenSupply = totalTokenSupply - tokens;

        emit Burn(msg.sender, tokens);
    }

    function close() onlyOwner public
    {
        selfdestruct(payable(msg.sender));
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_to","type":"address"},{"indexed":false,"internalType":"uint256","name":"_tokens","type":"uint256"}],"name":"AdvIssue","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_owner","type":"address"},{"indexed":true,"internalType":"address","name":"_spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"_value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_from","type":"address"},{"indexed":false,"internalType":"uint256","name":"_tokens","type":"uint256"}],"name":"Burn","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_from","type":"address"},{"indexed":true,"internalType":"address","name":"_to","type":"address"}],"name":"ChangeManager","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_from","type":"address"},{"indexed":true,"internalType":"address","name":"_to","type":"address"}],"name":"ChangeOwner","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_to","type":"address"},{"indexed":false,"internalType":"uint256","name":"_tokens","type":"uint256"}],"name":"DevIssue","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_to","type":"address"},{"indexed":false,"internalType":"uint256","name":"_tokens","type":"uint256"}],"name":"EcoIssue","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_date","type":"uint256"}],"name":"EndSale","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_to","type":"address"},{"indexed":false,"internalType":"uint256","name":"_tokens","type":"uint256"}],"name":"LegalComplianceIssue","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_to","type":"address"},{"indexed":false,"internalType":"uint256","name":"_tokens","type":"uint256"}],"name":"MktIssue","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_to","type":"address"},{"indexed":false,"internalType":"uint256","name":"_tokens","type":"uint256"}],"name":"RsvIssue","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_to","type":"address"},{"indexed":false,"internalType":"uint256","name":"_tokens","type":"uint256"}],"name":"SaleIssue","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_to","type":"address"},{"indexed":false,"internalType":"uint256","name":"_tokens","type":"uint256"}],"name":"TeamIssue","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_to","type":"address"},{"indexed":false,"internalType":"uint256","name":"_tokens","type":"uint256"}],"name":"TokenUnlock","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_from","type":"address"},{"indexed":true,"internalType":"address","name":"_to","type":"address"},{"indexed":false,"internalType":"uint256","name":"_value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"advVestingBalances","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"advVestingTimer","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_to","type":"address"},{"internalType":"uint256","name":"_time","type":"uint256"}],"name":"advisorIssue","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"advisorVestingSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"advisorVestingTime","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_owner","type":"address"},{"internalType":"address","name":"_spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","type":"address"}],"name":"approvals","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_spender","type":"address"},{"internalType":"uint256","name":"_value","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_who","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"balances","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_value","type":"uint256"}],"name":"burnToken","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"burnTokenSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"close","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_to","type":"address"}],"name":"devIssue","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_to","type":"address"}],"name":"ecoIssue","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"endSale","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"endSaleTime","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_to","type":"address"}],"name":"legalComplianceIssue","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"manager","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxAdvisorSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxDevSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxEcoSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxLegalComplianceSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxMktSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxReserveSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxSaleSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxTeamSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxTotalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_to","type":"address"}],"name":"mktIssue","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_to","type":"address"}],"name":"rsvIssue","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_to","type":"address"}],"name":"saleIssue","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"saleTime","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"setTokenLock","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"setTokenUnlock","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_to","type":"address"},{"internalType":"uint256","name":"_time","type":"uint256"}],"name":"teamIssue","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"teamVestingLockDate","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"teamVestingSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"teamVestingTime","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"tmVestingBalances","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"tmVestingTimer","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tokenIssuedAdv","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tokenIssuedDev","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tokenIssuedEco","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tokenIssuedLegalCompliance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tokenIssuedMkt","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tokenIssuedRsv","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tokenIssuedSale","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tokenIssuedTeam","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tokenLock","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalTokenSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_to","type":"address"},{"internalType":"uint256","name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_from","type":"address"},{"internalType":"address","name":"_to","type":"address"},{"internalType":"uint256","name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_to","type":"address"}],"name":"transferManager","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_to","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"}]

60806040526015805461ff001960ff199091166001171661010017905560006016553480156200002e57600080fd5b50600080546001600160a01b0319163317905560408051808201909152600580825264415254494360d81b60209092019182526200006f9160029162000317565b50601260035560408051808201909152600580825264415254494360d81b6020909201918252620000a39160049162000317565b50620000bc670de0b6b3a76400006305f5e1006200047d565b6005819055600080546001600160a01b03168152600f6020526040812091909155600681905560088190556009819055600a8181556007829055600d829055600b829055600c829055600e9190915562000122670de0b6b3a76400006207a1206200047d565b6200012e91906200047d565b62000145670de0b6b3a7640000624c4b406200047d565b146200016e5760405162461bcd60e51b81526004016200016590620003f4565b60405180910390fd5b600462000187670de0b6b3a7640000620b71b06200047d565b6200019391906200047d565b620001aa670de0b6b3a7640000622dc6c06200047d565b14620001ca5760405162461bcd60e51b81526004016200016590620003bd565b620001e1670de0b6b3a7640000624c4b406200047d565b620001f8670de0b6b3a7640000622dc6c06200047d565b6200020f670de0b6b3a7640000624c4b406200047d565b62000226670de0b6b3a7640000629896806200047d565b6200023e670de0b6b3a764000063017d78406200047d565b62000256670de0b6b3a76400006301312d006200047d565b6200026e670de0b6b3a764000063014fb1806200047d565b62000285670de0b6b3a7640000629896806200047d565b62000291919062000462565b6200029d919062000462565b620002a9919062000462565b620002b5919062000462565b620002c1919062000462565b620002cd919062000462565b620002d9919062000462565b620002f1670de0b6b3a76400006305f5e1006200047d565b14620003115760405162461bcd60e51b815260040162000165906200042b565b620004f2565b82805462000325906200049f565b90600052602060002090601f01602090048101928262000349576000855562000394565b82601f106200036457805160ff191683800117855562000394565b8280016001018555821562000394579182015b828111156200039457825182559160200191906001019062000377565b50620003a2929150620003a6565b5090565b5b80821115620003a25760008155600101620003a7565b60208082526017908201527f4552524f523a204d617841647669736f72537570706c79000000000000000000604082015260600190565b60208082526014908201527f4552524f523a204d61785465616d537570706c79000000000000000000000000604082015260600190565b60208082526015908201527f4552524f523a204d6178546f74616c537570706c790000000000000000000000604082015260600190565b60008219821115620004785762000478620004dc565b500190565b60008160001904831182151516156200049a576200049a620004dc565b500290565b600281046001821680620004b457607f821691505b60208210811415620004d657634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b611dcb80620005026000396000f3fe608060405234801561001057600080fd5b50600436106103995760003560e01c80636298124b116101e9578063b29418d51161010f578063de272835116100ad578063f1f5cfa41161007c578063f1f5cfa41461066c578063f2fde38b14610674578063fcdd04bf14610687578063fe3a5abe1461068f57610399565b8063de27283514610641578063de85a4a914610654578063dfcfe4df1461065c578063e718234d1461066457610399565b8063ba0e930a116100e9578063ba0e930a14610613578063cfa15bcd14610626578063cffb47cf146105f0578063dd62ed3e1461062e57610399565b8063b29418d5146105f0578063b35c7218146105f8578063b40433cd1461060057610399565b80638da5cb5b11610187578063a32ce11e11610156578063a32ce11e146105ba578063a4381450146105cd578063a711b664146105d5578063a9059cbb146105dd57610399565b80638da5cb5b1461059a5780638ece19f6146105a257806395d89b41146105aa57806398d9eea0146105b257610399565b806375d0281d116101c357806375d0281d1461056f5780637b47ec1a14610577578063843008591461058a5780638a4192b51461059257610399565b80636298124b146105415780636f7fc9891461054957806370a082311461055c57610399565b806327e235e3116102ce5780633da83adb1161026c5780634bea6a0f1161023b5780634bea6a0f1461050b5780634fb2cebe1461051e57806358371ccd146105265780635c3eee8d1461052e57610399565b80633da83adb146104db57806343d726d6146104ee578063481c6a75146104f65780634b2596c71461040c57610399565b80632d94e929116102a85780632d94e929146104b05780632f26927f146104c3578063313ce567146104cb578063380d831b146104d357610399565b806327e235e31461048257806328b238ff146104955780632ab4d052146104a857610399565b80631991785d1161033b578063206bc0a011610315578063206bc0a01461044c57806322b0aa471461045457806323b872dd1461045c57806324054d571461046f57610399565b80631991785d146104295780631ca8b6cb1461043c5780631dd9677d1461044457610399565b8063145ca08811610377578063145ca088146103f15780631596facb14610404578063163bc7301461040c57806318160ddd1461042157610399565b806306fdde031461039e578063095ea7b3146103bc57806309a74aff146103dc575b600080fd5b6103a6610697565b6040516103b39190611c1e565b60405180910390f35b6103cf6103ca366004611bbe565b610725565b6040516103b39190611c13565b6103ef6103ea366004611b30565b6107c4565b005b6103ef6103ff366004611b30565b6108ed565b6103cf610a01565b610414610a0f565b6040516103b39190611cd2565b610414610a27565b6103ef610437366004611b30565b610a2e565b610414610b41565b610414610b47565b610414610b4d565b610414610b53565b6103cf61046a366004611b83565b610b59565b61041461047d366004611be7565b610cc5565b610414610490366004611b30565b610cd7565b6104146104a3366004611be7565b610ce9565b610414610cfb565b6103ef6104be366004611b30565b610d11565b610414610e24565b610414610e2a565b6103ef610e30565b6103ef6104e9366004611b30565b610fdf565b6103ef6110dd565b6104fe61110a565b6040516103b39190611bff565b610414610519366004611be7565b611119565b61041461112b565b610414611131565b6103ef61053c366004611b30565b611137565b61041461124b565b6103ef610557366004611bbe565b611250565b61041461056a366004611b30565b6113e6565b610414611405565b6103ef610585366004611be7565b61141a565b6103ef61150b565b61041461157f565b6104fe611585565b6103ef611594565b6103a66115f2565b6104146115ff565b6104146105c8366004611b51565b611615565b610414611632565b610414611648565b6103cf6105eb366004611bbe565b61165d565b610414611728565b61041461173d565b61041461060e366004611be7565b611742565b6103ef610621366004611b30565b611754565b610414611819565b61041461063c366004611b51565b61181f565b6103ef61064f366004611bbe565b61184a565b6104146119d2565b6104146119d8565b6103cf6119ed565b6104146119f6565b6103ef610682366004611b30565b611a04565b610414611ac7565b610414611acd565b600280546106a490611d29565b80601f01602080910402602001604051908101604052809291908181526020018280546106d090611d29565b801561071d5780601f106106f25761010080835404028352916020019161071d565b820191906000526020600020905b81548152906001019060200180831161070057829003601f168201915b505050505081565b600061072f611ae3565b151560011461073d57600080fd5b336000908152600f602052604090205482111561075957600080fd5b3360008181526010602090815260408083206001600160a01b03881680855292529182902085905590519091907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906107b3908690611cd2565b60405180910390a350600192915050565b6000546001600160a01b031633146107f75760405162461bcd60e51b81526004016107ee90611c71565b60405180910390fd5b601554610100900460ff161561080c57600080fd5b6009541561081957600080fd5b6000610831670de0b6b3a76400006301312d00611cf3565b336000908152600f602052604090205490915061084f908290611d12565b336000908152600f6020526040808220929092556001600160a01b0384168152205461087c908290611cdb565b6001600160a01b0383166000908152600f60205260409020556009546108a3908290611cdb565b6009556040516001600160a01b038316907ffb82a38b8698912e57310737cb4c62e69bf4fd9b4ef22fd4d13fd7608bb6ed16906108e1908490611cd2565b60405180910390a25050565b6000546001600160a01b031633146109175760405162461bcd60e51b81526004016107ee90611c71565b601554610100900460ff161561092c57600080fd5b6007541561093957600080fd5b6000610951670de0b6b3a764000063017d7840611cf3565b336000908152600f602052604090205490915061096f908290611d12565b336000908152600f6020526040808220929092556001600160a01b0384168152205461099c908290611cdb565b6001600160a01b0383166000908152600f60205260409020556007546109c3908290611cdb565b6007556040516001600160a01b038316907f0c17226450db6e575fa6cef1e6c9972cb00d826dbd529639acc6bca7b663b3a9906108e1908490611cd2565b601554610100900460ff1681565b610a24670de0b6b3a7640000624c4b40611cf3565b81565b6005545b90565b6000546001600160a01b03163314610a585760405162461bcd60e51b81526004016107ee90611c71565b601554610100900460ff1615610a6d57600080fd5b600a5415610a7a57600080fd5b6000610a91670de0b6b3a7640000624c4b40611cf3565b336000908152600f6020526040902054909150610aaf908290611d12565b336000908152600f6020526040808220929092556001600160a01b03841681522054610adc908290611cdb565b6001600160a01b0383166000908152600f6020526040902055600a54610b03908290611cdb565b600a556040516001600160a01b038316907fe4b1ef194b45b0e288574a5e917879d47cd13e06bfccf8a51033ab4597e8410f906108e1908490611cd2565b60055481565b600a5481565b60065481565b600e5481565b6000610b63611ae3565b1515600114610b7157600080fd5b6001600160a01b0384166000908152600f6020526040902054821115610b9657600080fd5b6001600160a01b0384166000908152601060209081526040808320338452909152902054821115610bc657600080fd5b6001600160a01b0384166000908152601060209081526040808320338452909152902054610bf5908390611d12565b6001600160a01b0385166000818152601060209081526040808320338452825280832094909455918152600f9091522054610c31908390611d12565b6001600160a01b038086166000908152600f60205260408082209390935590851681522054610c61908390611cdb565b6001600160a01b038085166000818152600f602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610cb3908690611cd2565b60405180910390a35060019392505050565b60136020526000908152604090205481565b600f6020526000908152604090205481565b60116020526000908152604090205481565b610a24670de0b6b3a76400006305f5e100611cf3565b6000546001600160a01b03163314610d3b5760405162461bcd60e51b81526004016107ee90611c71565b601554610100900460ff1615610d5057600080fd5b600d5415610d5d57600080fd5b6000610d74670de0b6b3a764000062989680611cf3565b336000908152600f6020526040902054909150610d92908290611d12565b336000908152600f6020526040808220929092556001600160a01b03841681522054610dbf908290611cdb565b6001600160a01b0383166000908152600f6020526040902055600d54610de6908290611cdb565b600d556040516001600160a01b038316907faca354954677423ee264fe27e97d8a8ab13d9bc9b0820383bacaa6e462a19285906108e1908490611cd2565b60095481565b60035481565b6000546001600160a01b03163314610e5a5760405162461bcd60e51b81526004016107ee90611c71565b60155460ff610100909104161515600114610e7457600080fd5b600654610e8c670de0b6b3a764000062989680611cf3565b14610e9657600080fd5b6015805461ff001916905542601681905560005b600a811015610f2a57610ec062278d0082611cf3565b610ece62278d00600c611cf3565b601654610edb9190611cdb565b610ee59190611cdb565b600082815260116020526040902055610f09670de0b6b3a76400006207a120611cf3565b60008281526012602052604090205580610f2281611d64565b915050610eaa565b5060005b6004811015610fa25762278d00610f46826003611cf3565b610f509190611cf3565b601654610f5d9190611cdb565b600082815260136020526040902055610f81670de0b6b3a7640000620b71b0611cf3565b60008281526014602052604090205580610f9a81611d64565b915050610f2e565b507f94173af9e1cd5351395663e6a7838552ea54f5233d0c38bc46de5f4915b302bf601654604051610fd49190611cd2565b60405180910390a150565b6000546001600160a01b031633146110095760405162461bcd60e51b81526004016107ee90611c71565b6006541561101657600080fd5b600061102d670de0b6b3a764000062989680611cf3565b336000908152600f602052604090205490915061104b908290611d12565b336000908152600f6020526040808220929092556001600160a01b03841681522054611078908290611cdb565b6001600160a01b0383166000908152600f602052604090205560065461109f908290611cdb565b6006556040516001600160a01b038316907f07c5eb0c2da0dd34a57523f87ea471b21890f00a504311f9959b3fd2d8120864906108e1908490611cd2565b6000546001600160a01b031633146111075760405162461bcd60e51b81526004016107ee90611c71565b33ff5b6001546001600160a01b031681565b60146020526000908152604090205481565b600d5481565b60165481565b6000546001600160a01b031633146111615760405162461bcd60e51b81526004016107ee90611c71565b601554610100900460ff161561117657600080fd5b6008541561118357600080fd5b600061119b670de0b6b3a764000063014fb180611cf3565b336000908152600f60205260409020549091506111b9908290611d12565b336000908152600f6020526040808220929092556001600160a01b038416815220546111e6908290611cdb565b6001600160a01b0383166000908152600f602052604090205560085461120d908290611cdb565b6008556040516001600160a01b038316907f423b24fc1468543b83ba5fa3c1d3b8a9c95265103a9ef54b0eecdc33eac6c386906108e1908490611cd2565b600481565b6000546001600160a01b0316331461127a5760405162461bcd60e51b81526004016107ee90611c71565b601554610100900460ff161561128f57600080fd5b600a811061129c57600080fd5b600081815260116020526040902054429081116112b857600080fd5b60006112cf670de0b6b3a76400006207a120611cf3565b60008481526012602052604090205490915081146112ec57600080fd5b80600b546112fa9190611cdb565b61130f670de0b6b3a7640000624c4b40611cf3565b101561131a57600080fd5b336000908152600f6020526040902054611335908290611d12565b336000908152600f6020526040808220929092556001600160a01b03861681522054611362908290611cdb565b6001600160a01b0385166000908152600f60209081526040808320939093558582526012905290812055600b5461139a908290611cdb565b600b556040516001600160a01b038516907fb07ce9bd9a0d0e9adec838711c53cbe1430a690e9c520e9232dc9478dbd85f31906113d8908490611cd2565b60405180910390a250505050565b6001600160a01b0381166000908152600f60205260409020545b919050565b610a24670de0b6b3a76400006207a120611cf3565b6001546001600160a01b031633148061143d57506000546001600160a01b031633145b6114595760405162461bcd60e51b81526004016107ee90611c9b565b600061146d670de0b6b3a764000083611cf3565b336000908152600f602052604090205490915081111561148c57600080fd5b336000908152600f60205260409020546114a7908290611d12565b336000908152600f6020526040902055600e546114c5908290611cdb565b600e556005546114d6908290611d12565b60055560405133907fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5906108e1908490611cd2565b6001546001600160a01b031633148061152e57506000546001600160a01b031633145b61154a5760405162461bcd60e51b81526004016107ee90611c9b565b60155460ff16151560011461155e57600080fd5b601554610100900460ff161561157357600080fd5b6015805460ff19169055565b60085481565b6000546001600160a01b031681565b6001546001600160a01b03163314806115b757506000546001600160a01b031633145b6115d35760405162461bcd60e51b81526004016107ee90611c9b565b60155460ff16156115e357600080fd5b6015805460ff19166001179055565b600480546106a490611d29565b610a24670de0b6b3a764000063014fb180611cf3565b601060209081526000928352604080842090915290825290205481565b610a24670de0b6b3a764000063017d7840611cf3565b610a24670de0b6b3a7640000622dc6c0611cf3565b6000611667611ae3565b151560011461167557600080fd5b336000908152600f602052604090205482111561169157600080fd5b336000908152600f60205260409020546116ac908390611d12565b336000908152600f6020526040808220929092556001600160a01b038516815220546116d9908390611cdb565b6001600160a01b0384166000818152600f60205260409081902092909255905133907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906107b3908690611cd2565b610a24670de0b6b3a764000062989680611cf3565b600a81565b60126020526000908152604090205481565b6000546001600160a01b0316331461177e5760405162461bcd60e51b81526004016107ee90611c71565b6000546001600160a01b038281169116141561179957600080fd5b6001546001600160a01b03828116911614156117b457600080fd5b6001600160a01b0381166117c757600080fd5b600180546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f034ab062c9c6c8ddd60650a40372b1d413588174682d4ca1a4e53aa37589ab2d90600090a35050565b600b5481565b6001600160a01b03918216600090815260106020908152604080832093909416825291909152205490565b6000546001600160a01b031633146118745760405162461bcd60e51b81526004016107ee90611c71565b601554610100900460ff161561188957600080fd5b6004811061189657600080fd5b600081815260136020526040902054429081116118b257600080fd5b60006118c9670de0b6b3a7640000620b71b0611cf3565b60008481526014602052604090205490915081146118e657600080fd5b80600c546118f49190611cdb565b611909670de0b6b3a7640000622dc6c0611cf3565b101561191457600080fd5b336000908152600f602052604090205461192f908290611d12565b336000908152600f6020526040808220929092556001600160a01b0386168152205461195c908290611cdb565b6001600160a01b0385166000908152600f60209081526040808320939093558582526014905290812055600c54611994908290611cdb565b600c556040516001600160a01b038516907f56a6fddb955645d0f5363bcc838146414092bb86a5afedd1400dcf33cba5bad9906113d8908490611cd2565b60075481565b610a24670de0b6b3a7640000620b71b0611cf3565b60155460ff1681565b610a2462278d00600c611cf3565b6000546001600160a01b03163314611a2e5760405162461bcd60e51b81526004016107ee90611c71565b6000546001600160a01b0382811691161415611a4957600080fd5b6001546001600160a01b0382811691161415611a6457600080fd5b6001600160a01b038116611a7757600080fd5b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f9aecf86140d81442289f667eb72e1202a8fbb3478a686659952e145e853196569190a35050565b600c5481565b610a24670de0b6b3a76400006301312d00611cf3565b60155460009060ff16611af857506001610a2b565b6000546001600160a01b0316331415611b1357506001610a2b565b50600090565b80356001600160a01b038116811461140057600080fd5b600060208284031215611b41578081fd5b611b4a82611b19565b9392505050565b60008060408385031215611b63578081fd5b611b6c83611b19565b9150611b7a60208401611b19565b90509250929050565b600080600060608486031215611b97578081fd5b611ba084611b19565b9250611bae60208501611b19565b9150604084013590509250925092565b60008060408385031215611bd0578182fd5b611bd983611b19565b946020939093013593505050565b600060208284031215611bf8578081fd5b5035919050565b6001600160a01b0391909116815260200190565b901515815260200190565b6000602080835283518082850152825b81811015611c4a57858101830151858201604001528201611c2e565b81811115611c5b5783604083870101525b50601f01601f1916929092016040019392505050565b60208082526010908201526f22a92927a91d102737ba1037bbb732b960811b604082015260600190565b6020808252601c908201527f4552524f523a204e6f74206d616e6167657220616e64206f776e657200000000604082015260600190565b90815260200190565b60008219821115611cee57611cee611d7f565b500190565b6000816000190483118215151615611d0d57611d0d611d7f565b500290565b600082821015611d2457611d24611d7f565b500390565b600281046001821680611d3d57607f821691505b60208210811415611d5e57634e487b7160e01b600052602260045260246000fd5b50919050565b6000600019821415611d7857611d78611d7f565b5060010190565b634e487b7160e01b600052601160045260246000fdfea2646970667358221220ba81fa468599cc766d476d782d037bcf906c49e56c80c50d9b5592e88417b5aa64736f6c63430008000033

Deployed ByteCode Sourcemap

1945:11273:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1999:18;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6682:319;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;8431:384::-;;;;;;:::i;:::-;;:::i;:::-;;8823;;;;;;:::i;:::-;;:::i;4442:27::-;;;:::i;2940:61::-;;;:::i;:::-;;;;;;;:::i;6067:106::-;;;:::i;9215:456::-;;;;;;:::i;:::-;;:::i;3720:28::-;;;:::i;3888:38::-;;;:::i;3755:27::-;;;:::i;4035:::-;;;:::i;7164:508::-;;;;;;:::i;:::-;;:::i;4298:45::-;;;;;;:::i;:::-;;:::i;4071:41::-;;;;;;:::i;:::-;;:::i;4193:44::-;;;;;;:::i;:::-;;:::i;2246:63::-;;;:::i;9679:388::-;;;;;;:::i;:::-;;:::i;3855:26::-;;;:::i;2024:20::-;;;:::i;12037:693::-;;;:::i;7680:351::-;;;;;;:::i;:::-;;:::i;13124:91::-;;;:::i;118:22::-;;;:::i;:::-;;;;;;;:::i;4350:48::-;;;;;;:::i;:::-;;:::i;4000:26::-;;;:::i;4476:27::-;;;:::i;8039:384::-;;;;;;:::i;:::-;;:::i;3668:43::-;;;:::i;10075:692::-;;;;;;:::i;:::-;;:::i;6181:114::-;;;;;;:::i;:::-;;:::i;3434:53::-;;;:::i;12738:378::-;;;;;;:::i;:::-;;:::i;11722:170::-;;;:::i;3822:26::-;;;:::i;91:20::-;;;:::i;11900:129::-;;;:::i;2051:20::-;;;:::i;2664:62::-;;;:::i;4119:65::-;;;;;;:::i;:::-;;:::i;2525:62::-;;;:::i;3212:61::-;;;:::i;6303:371::-;;;;;;:::i;:::-;;:::i;2386:62::-;;;:::i;3555:41::-;;;:::i;4244:47::-;;;;;;:::i;:::-;;:::i;900:274::-;;;;;;:::i;:::-;;:::i;3933:27::-;;;:::i;7009:147::-;;;;;;:::i;:::-;;:::i;10775:673::-;;;;;;:::i;:::-;;:::i;3789:26::-;;;:::i;3605:56::-;;;:::i;4407:28::-;;;:::i;3494:54::-;;;:::i;622:270::-;;;;;;:::i;:::-;;:::i;3967:26::-;;;:::i;2803:62::-;;;:::i;1999:18::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;6682:319::-;6755:4;6785:16;:14;:16::i;:::-;:24;;6805:4;6785:24;6777:33;;;;;;6838:10;6829:20;;;;:8;:20;;;;;;:30;-1:-1:-1;6829:30:0;6821:39;;;;;;6883:10;6873:21;;;;:9;:21;;;;;;;;-1:-1:-1;;;;;6873:31:0;;;;;;;;;;;:40;;;6931:38;;6873:31;;6883:10;6931:38;;;;6907:6;;6931:38;:::i;:::-;;;;;;;;-1:-1:-1;6989:4:0;6682:319;;;;:::o;8431:384::-;346:5;;-1:-1:-1;;;;;346:5:0;332:10;:19;324:48;;;;-1:-1:-1;;;324:48:0;;;;;;;:::i;:::-;;;;;;;;;8503:8:::1;::::0;::::1;::::0;::::1;;;:17;8495:26;;;::::0;::::1;;8540:14;::::0;:19;8532:28:::1;;;::::0;::::1;;8573:11;2851:14;2108:19;2851:8;:14;:::i;:::-;8644:10;8635:20;::::0;;;:8:::1;:20;::::0;;;;;8573:26;;-1:-1:-1;8635:29:0::1;::::0;8573:26;;8635:29:::1;:::i;:::-;8621:10;8612:20;::::0;;;:8:::1;:20;::::0;;;;;:52;;;;-1:-1:-1;;;;;8693:13:0;::::1;::::0;;;;:22:::1;::::0;8709:6;;8693:22:::1;:::i;:::-;-1:-1:-1::0;;;;;8677:13:0;::::1;;::::0;;;:8:::1;:13;::::0;;;;:38;8745:14:::1;::::0;:23:::1;::::0;8762:6;;8745:23:::1;:::i;:::-;8728:14;:40:::0;8786:21:::1;::::0;-1:-1:-1;;;;;8786:21:0;::::1;::::0;::::1;::::0;::::1;::::0;8800:6;;8786:21:::1;:::i;:::-;;;;;;;;383:1;8431:384:::0;:::o;8823:::-;346:5;;-1:-1:-1;;;;;346:5:0;332:10;:19;324:48;;;;-1:-1:-1;;;324:48:0;;;;;;;:::i;:::-;8895:8:::1;::::0;::::1;::::0;::::1;;;:17;8887:26;;;::::0;::::1;;8932:14;::::0;:19;8924:28:::1;;;::::0;::::1;;8965:11;2573:14;2108:19;2573:8;:14;:::i;:::-;9036:10;9027:20;::::0;;;:8:::1;:20;::::0;;;;;8965:26;;-1:-1:-1;9027:29:0::1;::::0;8965:26;;9027:29:::1;:::i;:::-;9013:10;9004:20;::::0;;;:8:::1;:20;::::0;;;;;:52;;;;-1:-1:-1;;;;;9085:13:0;::::1;::::0;;;;:22:::1;::::0;9101:6;;9085:22:::1;:::i;:::-;-1:-1:-1::0;;;;;9069:13:0;::::1;;::::0;;;:8:::1;:13;::::0;;;;:38;9137:14:::1;::::0;:23:::1;::::0;9154:6;;9137:23:::1;:::i;:::-;9120:14;:40:::0;9178:21:::1;::::0;-1:-1:-1;;;;;9178:21:0;::::1;::::0;::::1;::::0;::::1;::::0;9192:6;;9178:21:::1;:::i;4442:27::-:0;;;;;;;;;:::o;2940:61::-;2988:13;2108:19;2988:7;:13;:::i;:::-;2940:61;:::o;6067:106::-;6149:16;;6067:106;;:::o;9215:456::-;346:5;;-1:-1:-1;;;;;346:5:0;332:10;:19;324:48;;;;-1:-1:-1;;;324:48:0;;;;;;;:::i;:::-;9299:8:::1;::::0;::::1;::::0;::::1;;;:17;9291:26;;;::::0;::::1;;9336;::::0;:31;9328:40:::1;;;::::0;::::1;;9381:11;2988:13;2108:19;2988:7;:13;:::i;:::-;9464:10;9455:20;::::0;;;:8:::1;:20;::::0;;;;;9381:38;;-1:-1:-1;9455:29:0::1;::::0;9381:38;;9455:29:::1;:::i;:::-;9441:10;9432:20;::::0;;;:8:::1;:20;::::0;;;;;:52;;;;-1:-1:-1;;;;;9513:13:0;::::1;::::0;;;;:22:::1;::::0;9529:6;;9513:22:::1;:::i;:::-;-1:-1:-1::0;;;;;9497:13:0;::::1;;::::0;;;:8:::1;:13;::::0;;;;:38;9577:26:::1;::::0;:35:::1;::::0;9606:6;;9577:35:::1;:::i;:::-;9548:26;:64:::0;9630:33:::1;::::0;-1:-1:-1;;;;;9630:33:0;::::1;::::0;::::1;::::0;::::1;::::0;9656:6;;9630:33:::1;:::i;3720:28::-:0;;;;:::o;3888:38::-;;;;:::o;3755:27::-;;;;:::o;4035:::-;;;;:::o;7164:508::-;7252:4;7282:16;:14;:16::i;:::-;:24;;7302:4;7282:24;7274:33;;;;;;-1:-1:-1;;;;;7326:15:0;;;;;;:8;:15;;;;;;:25;-1:-1:-1;7326:25:0;7318:34;;;;;;-1:-1:-1;;;;;7371:16:0;;;;;;:9;:16;;;;;;;;7388:10;7371:28;;;;;;;;:38;-1:-1:-1;7371:38:0;7363:47;;;;;;-1:-1:-1;;;;;7454:16:0;;;;;;:9;:16;;;;;;;;7471:10;7454:28;;;;;;;;:37;;7485:6;;7454:37;:::i;:::-;-1:-1:-1;;;;;7423:16:0;;;;;;:9;:16;;;;;;;;7440:10;7423:28;;;;;;;:68;;;;7520:15;;;:8;:15;;;;;:24;;7538:6;;7520:24;:::i;:::-;-1:-1:-1;;;;;7502:15:0;;;;;;;:8;:15;;;;;;:42;;;;7572:13;;;;;;;:22;;7588:6;;7572:22;:::i;:::-;-1:-1:-1;;;;;7555:13:0;;;;;;;:8;:13;;;;;;;:39;;;;7612:28;;;;;;;;;;7633:6;;7612:28;:::i;:::-;;;;;;;;-1:-1:-1;7660:4:0;7164:508;;;;;:::o;4298:45::-;;;;;;;;;;;;;:::o;4071:41::-;;;;;;;;;;;;;:::o;4193:44::-;;;;;;;;;;;;;:::o;2246:63::-;2294:15;2108:19;2294:9;:15;:::i;9679:388::-;346:5;;-1:-1:-1;;;;;346:5:0;332:10;:19;324:48;;;;-1:-1:-1;;;324:48:0;;;;;;;:::i;:::-;9751:8:::1;::::0;::::1;::::0;::::1;;;:17;9743:26;;;::::0;::::1;;9788:14;::::0;:19;9780:28:::1;;;::::0;::::1;;9821:11;3398:14;2108:19;3398:8;:14;:::i;:::-;9896:10;9887:20;::::0;;;:8:::1;:20;::::0;;;;;9821:30;;-1:-1:-1;9887:29:0::1;::::0;9821:30;;9887:29:::1;:::i;:::-;9873:10;9864:20;::::0;;;:8:::1;:20;::::0;;;;;:52;;;;-1:-1:-1;;;;;9945:13:0;::::1;::::0;;;;:22:::1;::::0;9961:6;;9945:22:::1;:::i;:::-;-1:-1:-1::0;;;;;9929:13:0;::::1;;::::0;;;:8:::1;:13;::::0;;;;:38;9997:14:::1;::::0;:23:::1;::::0;10014:6;;9997:23:::1;:::i;:::-;9980:14;:40:::0;10038:21:::1;::::0;-1:-1:-1;;;;;10038:21:0;::::1;::::0;::::1;::::0;::::1;::::0;10052:6;;10038:21:::1;:::i;3855:26::-:0;;;;:::o;2024:20::-;;;;:::o;12037:693::-;346:5;;-1:-1:-1;;;;;346:5:0;332:10;:19;324:48;;;;-1:-1:-1;;;324:48:0;;;;;;;:::i;:::-;12097:8:::1;::::0;::::1;;::::0;;::::1;;:16;;:8;:16;12089:25;;;::::0;::::1;;12150:15;::::0;2434:14:::1;2108:19;2434:8;:14;:::i;:::-;12133:32;12125:41;;;::::0;::::1;;12179:8;:16:::0;;-1:-1:-1;;12179:16:0::1;::::0;;12223:15:::1;12249:11;:21:::0;;;12190:5:::1;12283:200;3594:2;12299:1;:19;12283:200;;;12406:9;2164:7;12406:1:::0;:9:::1;:::i;:::-;3538:10;2164:7;3538:2;:10;:::i;:::-;12369:11;;:33;;;;:::i;:::-;:47;;;;:::i;:::-;12349:17;::::0;;;:14:::1;:17;::::0;;;;:67;3475:12:::1;2108:19;3475:6;:12;:::i;:::-;12431:20;::::0;;;:17:::1;:20;::::0;;;;:40;12449:1;12320:3:::1;12449:1:::0;12320:3:::1;:::i;:::-;;;;12283:200;;;;12499:6;12495:190;3710:1;12511;:22;12495:190;;;2164:7;12600:5;12604:1:::0;12600::::1;:5;:::i;:::-;:13;;;;:::i;:::-;12585:11;;:29;;;;:::i;:::-;12564:18;::::0;;;:15:::1;:18;::::0;;;;:50;3649:12:::1;2108:19;3649:6;:12;:::i;:::-;12629:21;::::0;;;:18:::1;:21;::::0;;;;:44;12648:1;12535:3:::1;12648:1:::0;12535:3:::1;:::i;:::-;;;;12495:190;;;;12702:20;12710:11;;12702:20;;;;;;:::i;:::-;;;;;;;;383:1;12037:693::o:0;7680:351::-;346:5;;-1:-1:-1;;;;;346:5:0;332:10;:19;324:48;;;;-1:-1:-1;;;324:48:0;;;;;;;:::i;:::-;7753:15:::1;::::0;:20;7745:29:::1;;;::::0;::::1;;7785:11;2434:14;2108:19;2434:8;:14;:::i;:::-;7857:10;7848:20;::::0;;;:8:::1;:20;::::0;;;;;7785:27;;-1:-1:-1;7848:29:0::1;::::0;7785:27;;7848:29:::1;:::i;:::-;7834:10;7825:20;::::0;;;:8:::1;:20;::::0;;;;;:52;;;;-1:-1:-1;;;;;7906:13:0;::::1;::::0;;;;:22:::1;::::0;7922:6;;7906:22:::1;:::i;:::-;-1:-1:-1::0;;;;;7890:13:0;::::1;;::::0;;;:8:::1;:13;::::0;;;;:38;7959:15:::1;::::0;:24:::1;::::0;7977:6;;7959:24:::1;:::i;:::-;7941:15;:42:::0;8001:22:::1;::::0;-1:-1:-1;;;;;8001:22:0;::::1;::::0;::::1;::::0;::::1;::::0;8016:6;;8001:22:::1;:::i;13124:91::-:0;346:5;;-1:-1:-1;;;;;346:5:0;332:10;:19;324:48;;;;-1:-1:-1;;;324:48:0;;;;;;;:::i;:::-;13195:10:::1;13174:33;118:22:::0;;;-1:-1:-1;;;;;118:22:0;;:::o;4350:48::-;;;;;;;;;;;;;:::o;4000:26::-;;;;:::o;4476:27::-;;;;:::o;8039:384::-;346:5;;-1:-1:-1;;;;;346:5:0;332:10;:19;324:48;;;;-1:-1:-1;;;324:48:0;;;;;;;:::i;:::-;8111:8:::1;::::0;::::1;::::0;::::1;;;:17;8103:26;;;::::0;::::1;;8148:14;::::0;:19;8140:28:::1;;;::::0;::::1;;8181:11;2712:14;2108:19;2712:8;:14;:::i;:::-;8252:10;8243:20;::::0;;;:8:::1;:20;::::0;;;;;8181:26;;-1:-1:-1;8243:29:0::1;::::0;8181:26;;8243:29:::1;:::i;:::-;8229:10;8220:20;::::0;;;:8:::1;:20;::::0;;;;;:52;;;;-1:-1:-1;;;;;8301:13:0;::::1;::::0;;;;:22:::1;::::0;8317:6;;8301:22:::1;:::i;:::-;-1:-1:-1::0;;;;;8285:13:0;::::1;;::::0;;;:8:::1;:13;::::0;;;;:38;8353:14:::1;::::0;:23:::1;::::0;8370:6;;8353:23:::1;:::i;:::-;8336:14;:40:::0;8394:21:::1;::::0;-1:-1:-1;;;;;8394:21:0;::::1;::::0;::::1;::::0;::::1;::::0;8408:6;;8394:21:::1;:::i;3668:43::-:0;3710:1;3668:43;:::o;10075:692::-;346:5;;-1:-1:-1;;;;;346:5:0;332:10;:19;324:48;;;;-1:-1:-1;;;324:48:0;;;;;;;:::i;:::-;10190:8:::1;::::0;::::1;::::0;::::1;;;:17;10182:26;;;::::0;::::1;;3594:2;10228:5;:23;10219:33;;;::::0;::::1;;10265:12;10325:21:::0;;;:14:::1;:21;::::0;;;;;10280:15:::1;::::0;10315:31;::::1;10306:42;;;::::0;::::1;;10361:11;3475:12;2108:19;3475:6;:12;:::i;:::-;10423:24;::::0;;;:17:::1;:24;::::0;;;;;10361:31;;-1:-1:-1;10413:34:0;::::1;10405:43;;;::::0;::::1;;10502:6;10484:15;;:24;;;;:::i;:::-;3124:13;2108:19;3124:7;:13;:::i;:::-;10467:41;;10459:50;;;::::0;::::1;;10554:10;10545:20;::::0;;;:8:::1;:20;::::0;;;;;:29:::1;::::0;10568:6;;10545:29:::1;:::i;:::-;10531:10;10522:20;::::0;;;:8:::1;:20;::::0;;;;;:52;;;;-1:-1:-1;;;;;10603:13:0;::::1;::::0;;;;:22:::1;::::0;10619:6;;10603:22:::1;:::i;:::-;-1:-1:-1::0;;;;;10587:13:0;::::1;;::::0;;;:8:::1;:13;::::0;;;;;;;:38;;;;10636:24;;;:17:::1;:24:::0;;;;;:28;10695:15:::1;::::0;:24:::1;::::0;10713:6;;10695:24:::1;:::i;:::-;10677:15;:42:::0;10737:22:::1;::::0;-1:-1:-1;;;;;10737:22:0;::::1;::::0;::::1;::::0;::::1;::::0;10752:6;;10737:22:::1;:::i;:::-;;;;;;;;383:1;;10075:692:::0;;:::o;6181:114::-;-1:-1:-1;;;;;6273:14:0;;6244:4;6273:14;;;:8;:14;;;;;;6181:114;;;;:::o;3434:53::-;3475:12;2108:19;3475:6;:12;:::i;12738:378::-;467:7;;-1:-1:-1;;;;;467:7:0;453:10;:21;;:44;;-1:-1:-1;492:5:0;;-1:-1:-1;;;;;492:5:0;478:10;:19;453:44;445:85;;;;-1:-1:-1;;;445:85:0;;;;;;;:::i;:::-;12813:11:::1;12827:12;2108:19;12827:6:::0;:12:::1;:::i;:::-;12869:10;12860:20;::::0;;;:8:::1;:20;::::0;;;;;12813:26;;-1:-1:-1;12860:30:0;-1:-1:-1;12860:30:0::1;12852:39;;;::::0;::::1;;12936:10;12927:20;::::0;;;:8:::1;:20;::::0;;;;;:29:::1;::::0;12950:6;;12927:29:::1;:::i;:::-;12913:10;12904:20;::::0;;;:8:::1;:20;::::0;;;;:52;12987:15:::1;::::0;:24:::1;::::0;13005:6;;12987:24:::1;:::i;:::-;12969:15;:42:::0;13041:16:::1;::::0;:25:::1;::::0;13060:6;;13041:25:::1;:::i;:::-;13022:16;:44:::0;13084:24:::1;::::0;13089:10:::1;::::0;13084:24:::1;::::0;::::1;::::0;13101:6;;13084:24:::1;:::i;11722:170::-:0;467:7;;-1:-1:-1;;;;;467:7:0;453:10;:21;;:44;;-1:-1:-1;492:5:0;;-1:-1:-1;;;;;492:5:0;478:10;:19;453:44;445:85;;;;-1:-1:-1;;;445:85:0;;;;;;;:::i;:::-;11799:9:::1;::::0;::::1;;:17;;:9:::0;:17:::1;11791:26;;;::::0;::::1;;11836:8;::::0;::::1;::::0;::::1;;;:17;11828:26;;;::::0;::::1;;11867:9;:17:::0;;-1:-1:-1;;11867:17:0::1;::::0;;11722:170::o;3822:26::-;;;;:::o;91:20::-;;;-1:-1:-1;;;;;91:20:0;;:::o;11900:129::-;467:7;;-1:-1:-1;;;;;467:7:0;453:10;:21;;:44;;-1:-1:-1;492:5:0;;-1:-1:-1;;;;;492:5:0;478:10;:19;453:44;445:85;;;;-1:-1:-1;;;445:85:0;;;;;;;:::i;:::-;11975:9:::1;::::0;::::1;;:18;11967:27;;;::::0;::::1;;12005:9;:16:::0;;-1:-1:-1;;12005:16:0::1;12017:4;12005:16;::::0;;11900:129::o;2051:20::-;;;;;;;:::i;2664:62::-;2712:14;2108:19;2712:8;:14;:::i;4119:65::-;;;;;;;;;;;;;;;;;;;;;;;;:::o;2525:62::-;2573:14;2108:19;2573:8;:14;:::i;3212:61::-;3260:13;2108:19;3260:7;:13;:::i;6303:371::-;6372:4;6402:16;:14;:16::i;:::-;:24;;6422:4;6402:24;6394:33;;;;;;6455:10;6446:20;;;;:8;:20;;;;;;:30;-1:-1:-1;6446:30:0;6438:39;;;;;;6522:10;6513:20;;;;:8;:20;;;;;;:29;;6536:6;;6513:29;:::i;:::-;6499:10;6490:20;;;;:8;:20;;;;;;:52;;;;-1:-1:-1;;;;;6569:13:0;;;;;;:22;;6585:6;;6569:22;:::i;:::-;-1:-1:-1;;;;;6553:13:0;;;;;;:8;:13;;;;;;;:38;;;;6609:33;;6618:10;;6609:33;;;;6635:6;;6609:33;:::i;2386:62::-;2434:14;2108:19;2434:8;:14;:::i;3555:41::-;3594:2;3555:41;:::o;4244:47::-;;;;;;;;;;;;;:::o;900:274::-;346:5;;-1:-1:-1;;;;;346:5:0;332:10;:19;324:48;;;;-1:-1:-1;;;324:48:0;;;;;;;:::i;:::-;986:5:::1;::::0;-1:-1:-1;;;;;979:12:0;;::::1;986:5:::0;::::1;979:12;;971:21;;;::::0;::::1;;1018:7;::::0;-1:-1:-1;;;;;1011:14:0;;::::1;1018:7:::0;::::1;1011:14;;1003:23;;;::::0;::::1;;-1:-1:-1::0;;;;;1045:19:0;::::1;1037:28;;;::::0;::::1;;1093:7;::::0;;-1:-1:-1;;;;;1111:13:0;;::::1;-1:-1:-1::0;;;;;;1111:13:0;::::1;::::0;::::1;::::0;;;1142:24:::1;::::0;1093:7;::::1;::::0;1111:13;1093:7;;1142:24:::1;::::0;1078:12:::1;::::0;1142:24:::1;383:1;900:274:::0;:::o;3933:27::-;;;;:::o;7009:147::-;-1:-1:-1;;;;;7121:17:0;;;7092:4;7121:17;;;:9;:17;;;;;;;;:27;;;;;;;;;;;;;7009:147::o;10775:673::-;346:5;;-1:-1:-1;;;;;346:5:0;332:10;:19;324:48;;;;-1:-1:-1;;;324:48:0;;;;;;;:::i;:::-;10863:8:::1;::::0;::::1;::::0;::::1;;;:17;10855:26;;;::::0;::::1;;3710:1;10901:5;:26;10892:36;;;::::0;::::1;;10941:12;11001:22:::0;;;:15:::1;:22;::::0;;;;;10956:15:::1;::::0;10991:32;::::1;10982:43;;;::::0;::::1;;11038:11;3649:12;2108:19;3649:6;:12;:::i;:::-;11103:25;::::0;;;:18:::1;:25;::::0;;;;;11038:34;;-1:-1:-1;11093:35:0;::::1;11085:44;;;::::0;::::1;;11185:6;11168:14;;:23;;;;:::i;:::-;3260:13;2108:19;3260:7;:13;:::i;:::-;11148:43;;11140:52;;;::::0;::::1;;11237:10;11228:20;::::0;;;:8:::1;:20;::::0;;;;;:29:::1;::::0;11251:6;;11228:29:::1;:::i;:::-;11214:10;11205:20;::::0;;;:8:::1;:20;::::0;;;;;:52;;;;-1:-1:-1;;;;;11286:13:0;::::1;::::0;;;;:22:::1;::::0;11302:6;;11286:22:::1;:::i;:::-;-1:-1:-1::0;;;;;11270:13:0;::::1;;::::0;;;:8:::1;:13;::::0;;;;;;;:38;;;;11319:25;;;:18:::1;:25:::0;;;;;:29;11378:14:::1;::::0;:23:::1;::::0;11395:6;;11378:23:::1;:::i;:::-;11361:14;:40:::0;11419:21:::1;::::0;-1:-1:-1;;;;;11419:21:0;::::1;::::0;::::1;::::0;::::1;::::0;11433:6;;11419:21:::1;:::i;3789:26::-:0;;;;:::o;3605:56::-;3649:12;2108:19;3649:6;:12;:::i;4407:28::-;;;;;;:::o;3494:54::-;3538:10;2164:7;3538:2;:10;:::i;622:270::-;346:5;;-1:-1:-1;;;;;346:5:0;332:10;:19;324:48;;;;-1:-1:-1;;;324:48:0;;;;;;;:::i;:::-;710:5:::1;::::0;-1:-1:-1;;;;;703:12:0;;::::1;710:5:::0;::::1;703:12;;695:21;;;::::0;::::1;;742:7;::::0;-1:-1:-1;;;;;735:14:0;;::::1;742:7:::0;::::1;735:14;;727:23;;;::::0;::::1;;-1:-1:-1::0;;;;;769:19:0;::::1;761:28;;;::::0;::::1;;802:12;817:5:::0;;-1:-1:-1;;;;;833:11:0;;::::1;-1:-1:-1::0;;;;;;833:11:0;::::1;::::0;::::1;::::0;;862:22:::1;::::0;817:5;;;::::1;::::0;;;862:22:::1;::::0;802:12;862:22:::1;383:1;622:270:::0;:::o;3967:26::-;;;;:::o;2803:62::-;2851:14;2108:19;2851:8;:14;:::i;11456:258::-;11529:9;;11504:4;;11529:9;;11526:156;;-1:-1:-1;11580:4:0;11573:11;;11526:156;11628:5;;-1:-1:-1;;;;;11628:5:0;11614:10;:19;11611:71;;;-1:-1:-1;11666:4:0;11659:11;;11611:71;-1:-1:-1;11701:5:0;11456:258;:::o;14:175:1:-;84:20;;-1:-1:-1;;;;;133:31:1;;123:42;;113:2;;179:1;176;169:12;194:198;;306:2;294:9;285:7;281:23;277:32;274:2;;;327:6;319;312:22;274:2;355:31;376:9;355:31;:::i;:::-;345:41;264:128;-1:-1:-1;;;264:128:1:o;397:274::-;;;526:2;514:9;505:7;501:23;497:32;494:2;;;547:6;539;532:22;494:2;575:31;596:9;575:31;:::i;:::-;565:41;;625:40;661:2;650:9;646:18;625:40;:::i;:::-;615:50;;484:187;;;;;:::o;676:342::-;;;;822:2;810:9;801:7;797:23;793:32;790:2;;;843:6;835;828:22;790:2;871:31;892:9;871:31;:::i;:::-;861:41;;921:40;957:2;946:9;942:18;921:40;:::i;:::-;911:50;;1008:2;997:9;993:18;980:32;970:42;;780:238;;;;;:::o;1023:266::-;;;1152:2;1140:9;1131:7;1127:23;1123:32;1120:2;;;1173:6;1165;1158:22;1120:2;1201:31;1222:9;1201:31;:::i;:::-;1191:41;1279:2;1264:18;;;;1251:32;;-1:-1:-1;;;1110:179:1:o;1294:190::-;;1406:2;1394:9;1385:7;1381:23;1377:32;1374:2;;;1427:6;1419;1412:22;1374:2;-1:-1:-1;1455:23:1;;1364:120;-1:-1:-1;1364:120:1:o;1489:203::-;-1:-1:-1;;;;;1653:32:1;;;;1635:51;;1623:2;1608:18;;1590:102::o;1697:187::-;1862:14;;1855:22;1837:41;;1825:2;1810:18;;1792:92::o;1889:603::-;;2030:2;2059;2048:9;2041:21;2091:6;2085:13;2134:6;2129:2;2118:9;2114:18;2107:34;2159:4;2172:140;2186:6;2183:1;2180:13;2172:140;;;2281:14;;;2277:23;;2271:30;2247:17;;;2266:2;2243:26;2236:66;2201:10;;2172:140;;;2330:6;2327:1;2324:13;2321:2;;;2400:4;2395:2;2386:6;2375:9;2371:22;2367:31;2360:45;2321:2;-1:-1:-1;2476:2:1;2455:15;-1:-1:-1;;2451:29:1;2436:45;;;;2483:2;2432:54;;2010:482;-1:-1:-1;;;2010:482:1:o;2497:340::-;2699:2;2681:21;;;2738:2;2718:18;;;2711:30;-1:-1:-1;;;2772:2:1;2757:18;;2750:46;2828:2;2813:18;;2671:166::o;2842:352::-;3044:2;3026:21;;;3083:2;3063:18;;;3056:30;3122;3117:2;3102:18;;3095:58;3185:2;3170:18;;3016:178::o;3199:177::-;3345:25;;;3333:2;3318:18;;3300:76::o;3381:128::-;;3452:1;3448:6;3445:1;3442:13;3439:2;;;3458:18;;:::i;:::-;-1:-1:-1;3494:9:1;;3429:80::o;3514:168::-;;3620:1;3616;3612:6;3608:14;3605:1;3602:21;3597:1;3590:9;3583:17;3579:45;3576:2;;;3627:18;;:::i;:::-;-1:-1:-1;3667:9:1;;3566:116::o;3687:125::-;;3755:1;3752;3749:8;3746:2;;;3760:18;;:::i;:::-;-1:-1:-1;3797:9:1;;3736:76::o;3817:380::-;3902:1;3892:12;;3949:1;3939:12;;;3960:2;;4014:4;4006:6;4002:17;3992:27;;3960:2;4067;4059:6;4056:14;4036:18;4033:38;4030:2;;;4113:10;4108:3;4104:20;4101:1;4094:31;4148:4;4145:1;4138:15;4176:4;4173:1;4166:15;4030:2;;3872:325;;;:::o;4202:135::-;;-1:-1:-1;;4262:17:1;;4259:2;;;4282:18;;:::i;:::-;-1:-1:-1;4329:1:1;4318:13;;4249:88::o;4342:127::-;4403:10;4398:3;4394:20;4391:1;4384:31;4434:4;4431:1;4424:15;4458:4;4455:1;4448:15

Swarm Source

ipfs://ba81fa468599cc766d476d782d037bcf906c49e56c80c50d9b5592e88417b5aa

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.