ETH Price: $2,308.65 (+0.06%)

Token

Universe Finance (UFC)
 

Overview

Max Total Supply

5,600,000 UFC

Holders

497

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 0 Decimals)

Balance
424 UFC

Value
$0.00
0xdd0c2ffc215cc10d32acf98b42a4f29c0f4ca1d6
Loading...
Loading
Loading...
Loading
Loading...
Loading

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

Contract Source Code Verified (Exact Match)

Contract Name:
UniversalFinance

Compiler Version
v0.6.6+commit.6c089d02

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, GNU GPLv2 license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2020-11-08
*/

/**
 *Submitted for verification at Etherscan.io on 2020-11-06
*/

pragma solidity ^0.6.0;

contract UniversalFinance {
   
   /**
   * using safemath for uint256
    */
     using SafeMath for uint256;

   

    event onWithdraw(
        address indexed customerAddress,
        uint256 ethereumWithdrawn
    );
   
    /**
    events for transfer
     */

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

    /**
    * Approved Events
     */

    event Approved(
        address indexed spender,
        address indexed recipient,
        uint256 tokens
    );

    /**
    * buy Event
     */

     event Buy(
         address buyer,
         uint256 tokensTransfered
     );
   
   /**
    * sell Event
     */

     event Sell(
         address seller,
         uint256 calculatedEtherTransfer
     );
     
     event Reward(
       address indexed to,
       uint256 rewardAmount,
       uint256 level
    );

   /** configurable variables
   *  name it should be decided on constructor
    */
    string public tokenName;

    /** configurable variables
   *  symbol it should be decided on constructor
    */

    string public tokenSymbol;
   
    /** configurable variables
   *  decimal it should be decided on constructor
    */

    uint8 internal decimal;

    /** configurable variables
 
   
    /**
    * owner address
     */

     address public owner;

     /**
     current price
      */
    uint256 internal ethDecimal = 1000000000000000000;
    uint256 public currentPrice;
    uint256 public initialPrice = 10000000000000;
    uint256 public initialPriceIncrement = 0;
    uint256 public basePrice = 400;
    /**
    totalSupply
     */

    uint256 public _totalSupply;
   
    uint256 public _circulatedSupply = 0;
    uint256 public basePrice1 = 10000000000000;
    uint256 public basePrice2 = 250000000000000;
    uint256 public basePrice3 = 450000000000000;
    uint256 public basePrice4 = 800000000000000;
    uint256 public basePrice5 = 1375000000000000;
    uint256 public basePrice6 = 2750000000000000;
    uint256 public basePrice7 = 4500000000000000;
    uint256 public basePrice8 = 8250000000000000;
    uint256 public basePrice9 = 13250000000000000;
    uint256 public basePrice10 = 20500000000000000;
    uint256 public basePrice11 = 32750000000000000;
    uint256 public basePrice12 = 56250000000000000;
    uint256 public basePrice13 = 103750000000000000;
    uint256 public basePrice14 = 179750000000000000;
    uint256 public basePrice15 = 298350000000000000;
    uint256 public basePrice16 = 533350000000000000;
    uint256 public basePrice17 = 996250000000000000;
    uint256 public basePrice18 = 1780750000000000000;
    uint256 public basePrice19 = 2983350000000000000;
    uint256 public basePrice20 = 5108000000000000000;
    uint256 public basePrice21 = 8930500000000000000;
    uint256 public basePrice22 = 15136500000000000000;
   
   
       
         

   mapping(address => uint256) private tokenBalances;
   mapping(address => uint256) private allTimeTokenBal;

//   mapping (address => mapping (address => uint256 )) private _allowances;
   mapping(address => address) public genTree;
//   mapping(address => uint256) internal rewardBalanceLedger_;
//   mapping (address => mapping (uint256 => uint256 )) private levelCommission;

    /**
    modifier for checking onlyOwner
     */

     modifier onlyOwner() {
         require(msg.sender == owner,"Caller is not the owner");
         _;
     }

    constructor(string memory _tokenName, string  memory _tokenSymbol, uint256 totalSupply) public
    {
        //sonk = msg.sender;
       
        /**
        * set owner value msg.sender
         */
        owner = msg.sender;

        /**
        * set name for contract
         */

         tokenName = _tokenName;

         /**
        * set symbol for contract
         */

        /**
        * set decimals
         */

         decimal = 0;

         /**
         set tokenSymbol
          */

        tokenSymbol =  _tokenSymbol;

         /**
         set Current Price
          */

          currentPrice = initialPrice + initialPriceIncrement;

         
          _totalSupply = totalSupply;
          //_mint(owner,_totalSupply);

       
    }
   
    function geAllTimeTokenBalane(address _hodl) external view returns(uint256) {
            return allTimeTokenBal[_hodl];
     }
   
    /*function getRewardBalane(address _hodl) external view returns(uint256) {
            return rewardBalanceLedger_[_hodl];
     }*/
   
   function taxDeduction(uint256 incomingEther) public pure returns(uint256)  {
         
        uint256 deduction = incomingEther * 22500/100000;
        return deduction;
         
    }
   
    function getTaxedEther(uint256 incomingEther) public pure returns(uint256)  {
         
        uint256 deduction = incomingEther * 22500/100000;
        uint256 taxedEther = incomingEther - deduction;
        return taxedEther;
         
    }
   
   function etherToToken(uint256 incomingEther) public view returns(uint256)  {
         
        uint256 deduction = incomingEther * 22500/100000;
        uint256 taxedEther = incomingEther - deduction;
        uint256 tokenToTransfer = taxedEther.div(currentPrice);
        return tokenToTransfer;
         
    }
   
   
    function tokenToEther(uint256 tokenToSell) public view returns(uint256)  {
         
        uint256 convertedEther = tokenToSell * (currentPrice - (currentPrice/100));
        return convertedEther;
         
    }
   
   
    function transferEther(address payable receiver,uint256 _value) external onlyOwner returns (bool) {
        require(msg.sender == owner, 'You are not owner');
        receiver.transfer(_value);
        return true;
     }
     
     
    /**
    get TokenName
     */
    function name() public view returns(string memory) {
        return tokenName;
    }

    /**
    get symbol
     */

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

     /**
     get decimals
      */

      function decimals() public view returns(uint8){
            return decimal;
      }
     
      /**
      getTotalsupply of contract
       */

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

    /**
    * balance of of token hodl.
     */

     function balanceOf(address _hodl) external view returns(uint256) {
            return tokenBalances[_hodl];
     }

    /**
    get current price
     */

     function getCurrentPrice() external view returns(uint256) {
         return currentPrice;
     }

     /**
     * update current price
     * notice this is only done by owner  
      */

      function updateCurrentPrice(uint256 _newPrice) external onlyOwner returns (bool) {
          currentPrice = _newPrice;
          return true;
      }
      
     
     
     /*function contractAddress() public view returns(address) {
         return address(this);
     }*/

     /* function levelWiseBalance(address _hodl, uint256 level) external view returns (uint256) {
        return levelCommission[_hodl][level];
      }*/
      /**
      buy Tokens from Ethereum.
       */

     function buy(address _referredBy) external payable returns (bool) {
         require(_referredBy != msg.sender, "Self reference not allowed");
        /* if(_referredBy == msg.sender){
             return false;
         }else{
         if(tokenBalances[msg.sender] > 5000){
             return false;
         }
         else{*/
         address buyer = msg.sender;
         uint256 etherValue = msg.value;
         uint256 circulation = etherValue.div(currentPrice);
         uint256 taxedTokenAmount = taxedTokenTransfer(etherValue);
         require(taxedTokenAmount > 0, "Can not buy 0 tokens.");
         require(taxedTokenAmount <= 5000, "Maximum Buying Reached.");
         require(taxedTokenAmount.add(allTimeTokenBal[msg.sender]) <= 5000, "Maximum Buying Reached.");
         genTree[msg.sender] = _referredBy;
         _mint(buyer,taxedTokenAmount,circulation);
         emit Buy(buyer,taxedTokenAmount);
         return true;
         /*}
         }*/
     }
     
     receive() external payable {
         require((allTimeTokenBal[msg.sender] + msg.value) <= 5000, "Maximum Buying Reached.");
         genTree[msg.sender] = address(0);
         address buyer = msg.sender;
         uint256 etherValue = msg.value;
         uint256 actualTokenQty = etherValue.div(currentPrice);
         uint256 calculatedTokens = taxedTokenTransfer(etherValue);
         require(calculatedTokens <= 5000, "Maximum Buying Reached.");
         _mint(buyer,calculatedTokens,actualTokenQty);
         emit Buy(buyer,calculatedTokens);
         
     }
     
     function priceAlgoBuy(uint256 tokenQty) internal{
         if(_circulatedSupply >= 0 && _circulatedSupply <= 600000){
             currentPrice = basePrice1;
             basePrice1 = currentPrice;
         }
         if(_circulatedSupply > 600000 && _circulatedSupply <= 1100000){
             initialPriceIncrement = tokenQty*300000000;
             currentPrice = basePrice2 + initialPriceIncrement;
             basePrice2 = currentPrice;
         }
         if(_circulatedSupply > 1100000 && _circulatedSupply <= 1550000){
             initialPriceIncrement = tokenQty*450000000;
             currentPrice = basePrice3 + initialPriceIncrement;
             basePrice3 = currentPrice;
         }
         if(_circulatedSupply > 1550000 && _circulatedSupply <= 1960000){
             initialPriceIncrement = tokenQty*675000000;
             currentPrice = basePrice4 + initialPriceIncrement;
             basePrice4 = currentPrice;
         }if(_circulatedSupply > 1960000 && _circulatedSupply <= 2310000){
             initialPriceIncrement = tokenQty*2350000000;
             currentPrice = basePrice5 + initialPriceIncrement;
             basePrice5 = currentPrice;
         }
         if(_circulatedSupply > 2310000 && _circulatedSupply <= 2640000){
             initialPriceIncrement = tokenQty*3025000000;
             currentPrice = basePrice6 + initialPriceIncrement;
             basePrice6 = currentPrice;
         }
         if(_circulatedSupply > 2640000 && _circulatedSupply <= 2950000){
             initialPriceIncrement = tokenQty*5725000000;
             currentPrice = basePrice7 + initialPriceIncrement;
             basePrice7 = currentPrice;
         }
         if(_circulatedSupply > 2950000 && _circulatedSupply <= 3240000){
             initialPriceIncrement = tokenQty*8525000000;
             currentPrice = basePrice8 + initialPriceIncrement;
             basePrice8 = currentPrice;
         }
         
         if(_circulatedSupply > 3240000 && _circulatedSupply <= 3510000){
             initialPriceIncrement = tokenQty*13900000000;
             currentPrice = basePrice9 + initialPriceIncrement;
             basePrice9 = currentPrice;
             
         }if(_circulatedSupply > 3510000 && _circulatedSupply <= 3770000){
             initialPriceIncrement = tokenQty*20200000000;
             currentPrice = basePrice10 + initialPriceIncrement;
             basePrice10 = currentPrice;
             
         }if(_circulatedSupply > 3770000 && _circulatedSupply <= 4020000){
             initialPriceIncrement = tokenQty*50000000000;
             currentPrice = basePrice11 + initialPriceIncrement;
             basePrice11 = currentPrice;
             
         }if(_circulatedSupply > 4020000 && _circulatedSupply <= 4260000){
             initialPriceIncrement = tokenQty*133325000000;
             currentPrice = basePrice12 + initialPriceIncrement;
             basePrice12 = currentPrice;
             
         }if(_circulatedSupply > 4260000 && _circulatedSupply <= 4490000){
             initialPriceIncrement = tokenQty*239125000000;
             currentPrice = basePrice13 + initialPriceIncrement;
             basePrice13 = currentPrice;
             
         }
         if(_circulatedSupply > 4490000 && _circulatedSupply <= 4700000){
             initialPriceIncrement = tokenQty*394050000000;
             currentPrice = basePrice14 + initialPriceIncrement;
             basePrice14 = currentPrice;
             
         }
         if(_circulatedSupply > 4700000 && _circulatedSupply <= 4900000){
             initialPriceIncrement = tokenQty*689500000000;
             currentPrice = basePrice15 + initialPriceIncrement;
             basePrice15 = currentPrice;
             
         }
         if(_circulatedSupply > 4900000 && _circulatedSupply <= 5080000){
             initialPriceIncrement = tokenQty*1465275000000;
             currentPrice = basePrice16 + initialPriceIncrement;
             basePrice16 = currentPrice;
             
         }
         
          if(_circulatedSupply > 5080000 && _circulatedSupply <= 5220000){
             initialPriceIncrement = tokenQty*3158925000000;
             currentPrice = basePrice17 + initialPriceIncrement;
             basePrice17 = currentPrice;
             
         }
         
          if(_circulatedSupply > 5220000 && _circulatedSupply <= 5350000){
             initialPriceIncrement = tokenQty*5726925000000;
             currentPrice = basePrice18 + initialPriceIncrement;
             basePrice18 = currentPrice;
             
         }
         
          if(_circulatedSupply > 5350000 && _circulatedSupply <= 5460000){
             initialPriceIncrement = tokenQty*13108175000000;
             currentPrice = basePrice19 + initialPriceIncrement;
             basePrice19 = currentPrice;
             
         }
         
          if(_circulatedSupply > 5460000 && _circulatedSupply <= 5540000){
             initialPriceIncrement = tokenQty*34687500000000;
             currentPrice = basePrice20 + initialPriceIncrement;
             basePrice20 = currentPrice;
             
         }
         if(_circulatedSupply > 5540000 && _circulatedSupply <= 5580000){
             initialPriceIncrement = tokenQty*120043750000000;
             currentPrice = basePrice21 + initialPriceIncrement;
             basePrice21 = currentPrice;
             
         }
         if(_circulatedSupply > 5580000 && _circulatedSupply <= 5600000){
             initialPriceIncrement = tokenQty*404100000000000;
             currentPrice = basePrice22 + initialPriceIncrement;
             basePrice22 = currentPrice;
         }
     }
     
     
      function priceAlgoSell(uint256 tokenQty) internal{
         if(_circulatedSupply >= 0 && _circulatedSupply < 600000){
             initialPriceIncrement = tokenQty*300000;
             currentPrice = basePrice1 - initialPriceIncrement;
             basePrice1 = currentPrice;
         }
         if(_circulatedSupply >= 600000 && _circulatedSupply <= 1100000){
             initialPriceIncrement = tokenQty*300000000;
             currentPrice = basePrice2 - initialPriceIncrement;
             basePrice2 = currentPrice;
         }
         if(_circulatedSupply > 1100000 && _circulatedSupply <= 1550000){
             initialPriceIncrement = tokenQty*450000000;
             currentPrice = basePrice3 - initialPriceIncrement;
             basePrice3 = currentPrice;
         }
         if(_circulatedSupply > 1550000 && _circulatedSupply <= 1960000){
             initialPriceIncrement = tokenQty*675000000;
             currentPrice = basePrice4 - initialPriceIncrement;
             basePrice4 = currentPrice;
         }if(_circulatedSupply > 1960000 && _circulatedSupply <= 2310000){
             initialPriceIncrement = tokenQty*2350000000;
             currentPrice = basePrice5 - initialPriceIncrement;
             basePrice5 = currentPrice;
         }
         if(_circulatedSupply > 2310000 && _circulatedSupply <= 2640000){
             initialPriceIncrement = tokenQty*3025000000;
             currentPrice = basePrice6 - initialPriceIncrement;
             basePrice6 = currentPrice;
         }
         if(_circulatedSupply > 2640000 && _circulatedSupply <= 2950000){
             initialPriceIncrement = tokenQty*5725000000;
             currentPrice = basePrice7 - initialPriceIncrement;
             basePrice7 = currentPrice;
         }
         if(_circulatedSupply > 2950000 && _circulatedSupply <= 3240000){
             initialPriceIncrement = tokenQty*8525000000;
             currentPrice = basePrice8 - initialPriceIncrement;
             basePrice8 = currentPrice;
         }
         
         if(_circulatedSupply > 3240000 && _circulatedSupply <= 3510000){
             initialPriceIncrement = tokenQty*13900000000;
             currentPrice = basePrice9 - initialPriceIncrement;
             basePrice9 = currentPrice;
             
         }if(_circulatedSupply > 3510000 && _circulatedSupply <= 3770000){
             initialPriceIncrement = tokenQty*20200000000;
             currentPrice = basePrice10 - initialPriceIncrement;
             basePrice10 = currentPrice;
             
         }if(_circulatedSupply > 3770000 && _circulatedSupply <= 4020000){
             initialPriceIncrement = tokenQty*50000000000;
             currentPrice = basePrice11 - initialPriceIncrement;
             basePrice11 = currentPrice;
             
         }if(_circulatedSupply > 4020000 && _circulatedSupply <= 4260000){
             initialPriceIncrement = tokenQty*133325000000;
             currentPrice = basePrice12 - initialPriceIncrement;
             basePrice12 = currentPrice;
             
         }if(_circulatedSupply > 4260000 && _circulatedSupply <= 4490000){
             initialPriceIncrement = tokenQty*239125000000;
             currentPrice = basePrice13 - initialPriceIncrement;
             basePrice13 = currentPrice;
             
         }
         if(_circulatedSupply > 4490000 && _circulatedSupply <= 4700000){
             initialPriceIncrement = tokenQty*394050000000;
             currentPrice = basePrice14 - initialPriceIncrement;
             basePrice14 = currentPrice;
             
         }
         if(_circulatedSupply > 4700000 && _circulatedSupply <= 4900000){
             initialPriceIncrement = tokenQty*689500000000;
             currentPrice = basePrice15 - initialPriceIncrement;
             basePrice15 = currentPrice;
             
         }
         if(_circulatedSupply > 4900000 && _circulatedSupply <= 5080000){
             initialPriceIncrement = tokenQty*1465275000000;
             currentPrice = basePrice16 - initialPriceIncrement;
             basePrice16 = currentPrice;
             
         }
         
          if(_circulatedSupply > 5080000 && _circulatedSupply <= 5220000){
             initialPriceIncrement = tokenQty*3158925000000;
             currentPrice = basePrice17 - initialPriceIncrement;
             basePrice17 = currentPrice;
             
         }
         
          if(_circulatedSupply > 5220000 && _circulatedSupply <= 5350000){
             initialPriceIncrement = tokenQty*5726925000000;
             currentPrice = basePrice18 - initialPriceIncrement;
             basePrice18 = currentPrice;
             
         }
         
          if(_circulatedSupply > 5350000 && _circulatedSupply <= 5460000){
             initialPriceIncrement = tokenQty*13108175000000;
             currentPrice = basePrice19 - initialPriceIncrement;
             basePrice19 = currentPrice;
             
         }
         
          if(_circulatedSupply > 5460000 && _circulatedSupply <= 5540000){
             initialPriceIncrement = tokenQty*34687500000000;
             currentPrice = basePrice20 - initialPriceIncrement;
             basePrice20 = currentPrice;
             
         }
         if(_circulatedSupply > 5540000 && _circulatedSupply <= 5580000){
             initialPriceIncrement = tokenQty*120043750000000;
             currentPrice = basePrice21 - initialPriceIncrement;
             basePrice21 = currentPrice;
             
         }
         if(_circulatedSupply > 5580000 && _circulatedSupply <= 5600000){
             initialPriceIncrement = tokenQty*404100000000000;
             currentPrice = basePrice22 - initialPriceIncrement;
             basePrice22 = currentPrice;
         }
     }
     
     
   /* function distributeRewards(uint256 _amountToDistribute, address _idToDistribute)
    internal
    {
       
        for(uint256 i=0; i<15; i++)
        {
            address referrer = genTree[_idToDistribute];
            uint256 holdingAmount = ((currentPrice/ethDecimal) * basePrice) *tokenBalances[referrer];
            if(referrer != address(0))
            {
                if(i == 0 && holdingAmount>=100){
                    rewardBalanceLedger_[referrer] += (_amountToDistribute*percent_[0]/10000);
                    levelCommission[referrer][i+1].add(_amountToDistribute*percent_[0]/10000);
                }else if((i == 1) && holdingAmount>=200){
                    rewardBalanceLedger_[referrer] += (_amountToDistribute*percent_[1]/10000);
                    levelCommission[referrer][i+1].add(_amountToDistribute*percent_[1]/10000);
                }else if((i == 2) && holdingAmount>=200){
                    rewardBalanceLedger_[referrer] += (_amountToDistribute*percent_[2]/10000);
                    levelCommission[referrer][i+1].add(_amountToDistribute*percent_[2]/10000);
                }else if((i == 3) && holdingAmount>=300){
                    rewardBalanceLedger_[referrer] += (_amountToDistribute*percent_[3]/10000);
                    levelCommission[referrer][i+1].add(_amountToDistribute*percent_[3]/10000);
                }else if((i >= 4 && i<= 9) && holdingAmount>=300){
                    rewardBalanceLedger_[referrer] += (_amountToDistribute*percent_[4]/10000);
                    levelCommission[referrer][i+1].add(_amountToDistribute*percent_[4]/10000);
                }else if((i >= 10 && i<= 12) && holdingAmount>=400){
                    rewardBalanceLedger_[referrer] += (_amountToDistribute*percent_[5]/10000);
                    levelCommission[referrer][i+1].add(_amountToDistribute*percent_[5]/10000);
                }else if((i >= 13 && i<15) && holdingAmount>=500){
                    rewardBalanceLedger_[referrer] += (_amountToDistribute*percent_[6]/10000);
                    levelCommission[referrer][i+1].add(_amountToDistribute*percent_[6]/10000);
                }else{
                   
                }
               
                _idToDistribute = referrer;
                //emit Reward(referrer,(_amountToDistribute*_amountToDistribute[i]*100)/10,i);
            }else{
               
            }
        }
       
    }*/

    /**
    calculation logic for buy function
     */

     function taxedTokenTransfer(uint256 incomingEther) internal view returns(uint256) {
            uint256 deduction = incomingEther * 22500/100000;
            uint256 taxedEther = incomingEther - deduction;
            uint256 tokenToTransfer = taxedEther.div(currentPrice);
            return tokenToTransfer;
     }

     /**
     * sell method for ether.
      */

     function sell(uint256 tokenToSell) external returns(bool){
          require(_circulatedSupply > 0, "no circulated tokens");
          require(tokenToSell > 0, "can not sell 0 token");
          require(tokenToSell <= tokenBalances[msg.sender], "not enough tokens to transact");
          require(tokenToSell.add(_circulatedSupply) <= _totalSupply, "exceeded total supply");
          uint256 convertedEthers = etherValueTransfer(tokenToSell);
          msg.sender.transfer(convertedEthers);
          _burn(msg.sender,tokenToSell);
          emit Sell(msg.sender,convertedEthers);
          return true;
     }
     
     
     

     function etherValueTransfer(uint256 tokenToSell) internal view returns(uint256) {
         uint256 convertedEther = tokenToSell * (currentPrice - currentPrice/100);
        return convertedEther;
     }


    function accumulatedEther() external onlyOwner view returns (uint256) {
        return address(this).balance;
    }
   
    /**
     * @dev Moves tokens `amount` from `sender` to `recipient`.
     *
     * This is internal function is equivalent to {transfer}, and can be used to
     * e.g. implement automatic token fees, slashing mechanisms, etc.
     *
     * Emits a {Transfer} event.
     *
     * Requirements:
     *
     * - `sender` cannot be the zero address.
     * - `recipient` cannot be the zero address.
     * - `sender` must have a balance of at least `amount`.
     */

    function _transfer(address sender, address recipient, uint256 amount) internal virtual {
        require(sender != address(0), "ERC20: transfer from the zero address");
        require(recipient != address(0), "ERC20: transfer to the zero address");
        emit Transfer(sender, recipient, amount);
        tokenBalances[sender] = tokenBalances[sender].sub(amount, "ERC20: transfer amount exceeds balance");
        tokenBalances[recipient] = tokenBalances[recipient].add(amount);
    }

   
     /*function _approve(address spender, address recipient, uint256 amount) internal virtual {
        require(owner != address(0), "ERC20: approve from the zero address");
        require(spender != address(0), "ERC20: approve to the zero address");
        _allowances[spender][recipient] = amount;
        emit Approved(spender, recipient, amount);
    }*/


    /** @dev Creates `amount` tokens and assigns them to `account`, increasing
     * the total supply.
     *
     * Emits a {Transfer} event with `from` set to the zero address.
     *
     * Requirements
     *
     * - `to` cannot be the zero address.
     */

    function _mint(address account, uint256 amount, uint256 circulation) internal  {
        require(account != address(0), "ERC20: mint to the zero address");
       /* if(account == owner){
            emit Transfer(address(0), account, amount);
            tokenBalances[owner] = tokenBalances[owner].add(amount);
        }else{*/
            emit Transfer(address(this), account, amount);
            tokenBalances[account] = tokenBalances[account].add(amount);
            allTimeTokenBal[account] = allTimeTokenBal[account].add(amount);
            _circulatedSupply = _circulatedSupply.add(circulation);
            priceAlgoBuy(circulation);
        /*}*/
       
    }

    /**
     * @dev Destroys `amount` tokens from `account`, reducing the
     * total supply.
     *
     * Emits a {Transfer} event with `to` set to the zero address.
     *
     * Requirements
     *
     * - `account` cannot be the zero address.
     * - `account` must have at least `amount` tokens.
     */

    function _burn(address account, uint256 amount) internal {
        require(account != address(0), "ERC20: burn from the zero address");
        emit Transfer(account, address(this), amount);
        tokenBalances[account] = tokenBalances[account].sub(amount);
        //tokenBalances[owner] = tokenBalances[owner].add(amount);
        _circulatedSupply = _circulatedSupply.sub(amount);
        allTimeTokenBal[account] = allTimeTokenBal[account].sub(amount);
        priceAlgoSell(amount);
    }

    function _msgSender() internal view returns (address ){
        return msg.sender;
    }
 
}


library SafeMath {
    /**
     * @dev Returns the addition of two unsigned integers, reverting on
     * overflow.
     *
     * Counterpart to Solidity's `+` operator.
     *
     * Requirements:
     *
     * - Addition cannot overflow.
     */
    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        require(c >= a, "SafeMath: addition overflow");

        return c;
    }

    /**
     * @dev Returns the subtraction of two unsigned integers, reverting on
     * overflow (when the result is negative).
     *
     * Counterpart to Solidity's `-` operator.
     *
     * Requirements:
     *
     * - Subtraction cannot overflow.
     */
    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return sub(a, b, "SafeMath: subtraction overflow");
    }

    /**
     * @dev Returns the subtraction of two unsigned integers, reverting with custom message on
     * overflow (when the result is negative).
     *
     * Counterpart to Solidity's `-` operator.
     *
     * Requirements:
     *
     * - Subtraction cannot overflow.
     */
    function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b <= a, errorMessage);
        uint256 c = a - b;

        return c;
    }

    /**
     * @dev Returns the multiplication of two unsigned integers, reverting on
     * overflow.
     *
     * Counterpart to Solidity's `*` operator.
     *
     * Requirements:
     *
     * - Multiplication cannot 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-contracts/pull/522
        if (a == 0) {
            return 0;
        }

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

        return c;
    }

    /**
     * @dev Returns the integer division of two unsigned integers. Reverts on
     * division by zero. The result is rounded towards zero.
     *
     * Counterpart to Solidity's `/` operator. Note: this function uses a
     * `revert` opcode (which leaves remaining gas untouched) while Solidity
     * uses an invalid opcode to revert (consuming all remaining gas).
     *
     * Requirements:
     *
     * - The divisor cannot be zero.
     */
    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return div(a, b, "SafeMath: division by zero");
    }

    /**
     * @dev Returns the integer division of two unsigned integers. Reverts with custom message on
     * division by zero. The result is rounded towards zero.
     *
     * Counterpart to Solidity's `/` operator. Note: this function uses a
     * `revert` opcode (which leaves remaining gas untouched) while Solidity
     * uses an invalid opcode to revert (consuming all remaining gas).
     *
     * Requirements:
     *
     * - The divisor cannot be zero.
     */
    function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b > 0, errorMessage);
        uint256 c = a / b;
        // assert(a == b * c + a % b); // There is no case in which this doesn't hold

        return c;
    }

    /**
     * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo),
     * Reverts when dividing by zero.
     *
     * Counterpart to Solidity's `%` operator. This function uses a `revert`
     * opcode (which leaves remaining gas untouched) while Solidity uses an
     * invalid opcode to revert (consuming all remaining gas).
     *
     * Requirements:
     *
     * - The divisor cannot be zero.
     */
    function mod(uint256 a, uint256 b) internal pure returns (uint256) {
        return mod(a, b, "SafeMath: modulo by zero");
    }

    /**
     * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo),
     * Reverts with custom message when dividing by zero.
     *
     * Counterpart to Solidity's `%` operator. This function uses a `revert`
     * opcode (which leaves remaining gas untouched) while Solidity uses an
     * invalid opcode to revert (consuming all remaining gas).
     *
     * Requirements:
     *
     * - The divisor cannot be zero.
     */
    function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b != 0, errorMessage);
        return a % b;
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"string","name":"_tokenName","type":"string"},{"internalType":"string","name":"_tokenSymbol","type":"string"},{"internalType":"uint256","name":"totalSupply","type":"uint256"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":true,"internalType":"address","name":"recipient","type":"address"},{"indexed":false,"internalType":"uint256","name":"tokens","type":"uint256"}],"name":"Approved","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"buyer","type":"address"},{"indexed":false,"internalType":"uint256","name":"tokensTransfered","type":"uint256"}],"name":"Buy","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"rewardAmount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"level","type":"uint256"}],"name":"Reward","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"seller","type":"address"},{"indexed":false,"internalType":"uint256","name":"calculatedEtherTransfer","type":"uint256"}],"name":"Sell","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":"tokens","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"customerAddress","type":"address"},{"indexed":false,"internalType":"uint256","name":"ethereumWithdrawn","type":"uint256"}],"name":"onWithdraw","type":"event"},{"inputs":[],"name":"_circulatedSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"accumulatedEther","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_hodl","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"basePrice","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"basePrice1","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"basePrice10","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"basePrice11","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"basePrice12","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"basePrice13","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"basePrice14","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"basePrice15","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"basePrice16","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"basePrice17","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"basePrice18","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"basePrice19","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"basePrice2","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"basePrice20","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"basePrice21","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"basePrice22","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"basePrice3","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"basePrice4","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"basePrice5","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"basePrice6","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"basePrice7","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"basePrice8","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"basePrice9","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_referredBy","type":"address"}],"name":"buy","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"currentPrice","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"incomingEther","type":"uint256"}],"name":"etherToToken","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_hodl","type":"address"}],"name":"geAllTimeTokenBalane","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"genTree","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCurrentPrice","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"incomingEther","type":"uint256"}],"name":"getTaxedEther","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"initialPrice","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"initialPriceIncrement","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","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":"uint256","name":"tokenToSell","type":"uint256"}],"name":"sell","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"incomingEther","type":"uint256"}],"name":"taxDeduction","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"tokenName","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tokenSymbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenToSell","type":"uint256"}],"name":"tokenToEther","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address payable","name":"receiver","type":"address"},{"internalType":"uint256","name":"_value","type":"uint256"}],"name":"transferEther","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_newPrice","type":"uint256"}],"name":"updateCurrentPrice","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

6080604052670de0b6b3a76400006003556509184e72a000600555600060065561019060075560006009556509184e72a000600a5565e35fa931a000600b5566019945ca262000600c556602d79883d20000600d556604e28e2290f000600e556609c51c4521e000600f55660ffcb9e57d4000601055661d4f54cf65a000601155662f12ce074620006012556648d4a431e54000601355667459f39464e00060145566c7d713b49da00060155567017098134772600060165567027e99ac32606000601755670423f3be88bce000601855670766d6ffcaf46000601955670dd36418bd7ba000601a556718b67eb0afc6e000601b55672966fd04bea96000601c556746e342efc8b20000601d55677bef826f26a04000601e5567d20fa68daab34000601f553480156200013157600080fd5b50604051620037ae380380620037ae833981810160405260608110156200015757600080fd5b81019080805160405193929190846401000000008211156200017857600080fd5b838201915060208201858111156200018f57600080fd5b8251866001820283011164010000000082111715620001ad57600080fd5b8083526020830192505050908051906020019080838360005b83811015620001e3578082015181840152602081019050620001c6565b50505050905090810190601f168015620002115780820380516001836020036101000a031916815260200191505b50604052602001805160405193929190846401000000008211156200023557600080fd5b838201915060208201858111156200024c57600080fd5b82518660018202830111640100000000821117156200026a57600080fd5b8083526020830192505050908051906020019080838360005b83811015620002a057808201518184015260208101905062000283565b50505050905090810190601f168015620002ce5780820380516001836020036101000a031916815260200191505b506040526020018051906020019092919050505033600260016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555082600090805190602001906200033b9291906200038e565b506000600260006101000a81548160ff021916908360ff1602179055508160019080519060200190620003709291906200038e565b5060065460055401600481905550806008819055505050506200043d565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620003d157805160ff191683800117855562000402565b8280016001018555821562000402579182015b8281111562000401578251825591602001919060010190620003e4565b5b50905062000411919062000415565b5090565b6200043a91905b80821115620004365760008160009055506001016200041c565b5090565b90565b613361806200044d6000396000f3fe6080604052600436106102975760003560e01c80638b142bb01161015a578063c7876ea4116100c1578063e66de0731161007a578063e66de07314610f8b578063eb91d37e14610fda578063ed106e7514611005578063f088d54714611030578063f1ed99381461108c578063f5e39cd6146110b7576104f8565b8063c7876ea414610e3d578063cc2c1bbd14610e68578063d6e5053514610e93578063e095f81414610ebe578063e321bf7714610f0d578063e4849b3214610f38576104f8565b80639998aeaf116101135780639998aeaf14610cb15780639b5aaebf14610cdc5780639d1b464a14610d6d578063aad7390d14610d98578063b6f5749314610de7578063b7cf5fac14610e12576104f8565b80638b142bb014610ae45780638ba0b15f14610b0f5780638bb4842414610b3a5780638da5cb5b14610b9f5780638fd9780414610bf657806395d89b4114610c21576104f8565b80635201d1af116101fe5780637b61c320116101b75780637b61c320146109555780637dd1a25c146109e55780637fc6686e14610a10578063814ab1bc14610a63578063850684c714610a8e578063890dad4b14610ab9576104f8565b80635201d1af146107b45780635da6058e146107df578063696feca91461080a5780636c02a931146108355780636f4df459146108c557806370a08231146108f0576104f8565b8063313ce56711610250578063313ce567146106ac5780633150cd33146106dd578063391dddf5146107085780633eaaf86b146107335780633fadfd6b1461075e578063448bda8014610789576104f8565b806305b1137b146104fd57806306fdde031461057057806318160ddd146106005780631d0806ae1461062b5780631e5a0bc61461065657806327d7f99314610681576104f8565b366104f85761138834602160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054011115610355576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f4d6178696d756d20427579696e6720526561636865642e00000000000000000081525060200191505060405180910390fd5b6000602260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000339050600034905060006103f56004548361110690919063ffffffff16565b9050600061040283611150565b905061138881111561047c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f4d6178696d756d20427579696e6720526561636865642e00000000000000000081525060200191505060405180910390fd5b610487848284611191565b7fe3d4187f6ca4248660cc0ac8b8056515bac4a8132be2eca31d6d0cc170722a7e8482604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a150505050005b600080fd5b34801561050957600080fd5b506105566004803603604081101561052057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506113ec565b604051808215151515815260200191505060405180910390f35b34801561057c57600080fd5b506105856115c5565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156105c55780820151818401526020810190506105aa565b50505050905090810190601f1680156105f25780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561060c57600080fd5b50610615611667565b6040518082815260200191505060405180910390f35b34801561063757600080fd5b50610640611671565b6040518082815260200191505060405180910390f35b34801561066257600080fd5b5061066b611677565b6040518082815260200191505060405180910390f35b34801561068d57600080fd5b5061069661167d565b6040518082815260200191505060405180910390f35b3480156106b857600080fd5b506106c1611683565b604051808260ff1660ff16815260200191505060405180910390f35b3480156106e957600080fd5b506106f261169a565b6040518082815260200191505060405180910390f35b34801561071457600080fd5b5061071d6116a0565b6040518082815260200191505060405180910390f35b34801561073f57600080fd5b506107486116a6565b6040518082815260200191505060405180910390f35b34801561076a57600080fd5b506107736116ac565b6040518082815260200191505060405180910390f35b34801561079557600080fd5b5061079e6116b2565b6040518082815260200191505060405180910390f35b3480156107c057600080fd5b506107c96116b8565b6040518082815260200191505060405180910390f35b3480156107eb57600080fd5b506107f46116be565b6040518082815260200191505060405180910390f35b34801561081657600080fd5b5061081f6116c4565b6040518082815260200191505060405180910390f35b34801561084157600080fd5b5061084a6116ca565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561088a57808201518184015260208101905061086f565b50505050905090810190601f1680156108b75780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156108d157600080fd5b506108da611768565b6040518082815260200191505060405180910390f35b3480156108fc57600080fd5b5061093f6004803603602081101561091357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061176e565b6040518082815260200191505060405180910390f35b34801561096157600080fd5b5061096a6117b7565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156109aa57808201518184015260208101905061098f565b50505050905090810190601f1680156109d75780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156109f157600080fd5b506109fa611855565b6040518082815260200191505060405180910390f35b348015610a1c57600080fd5b50610a4960048036036020811015610a3357600080fd5b8101908080359060200190929190505050611920565b604051808215151515815260200191505060405180910390f35b348015610a6f57600080fd5b50610a786119f5565b6040518082815260200191505060405180910390f35b348015610a9a57600080fd5b50610aa36119fb565b6040518082815260200191505060405180910390f35b348015610ac557600080fd5b50610ace611a01565b6040518082815260200191505060405180910390f35b348015610af057600080fd5b50610af9611a07565b6040518082815260200191505060405180910390f35b348015610b1b57600080fd5b50610b24611a0d565b6040518082815260200191505060405180910390f35b348015610b4657600080fd5b50610b8960048036036020811015610b5d57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611a13565b6040518082815260200191505060405180910390f35b348015610bab57600080fd5b50610bb4611a5c565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610c0257600080fd5b50610c0b611a82565b6040518082815260200191505060405180910390f35b348015610c2d57600080fd5b50610c36611a88565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610c76578082015181840152602081019050610c5b565b50505050905090810190601f168015610ca35780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b348015610cbd57600080fd5b50610cc6611b2a565b6040518082815260200191505060405180910390f35b348015610ce857600080fd5b50610d2b60048036036020811015610cff57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611b30565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610d7957600080fd5b50610d82611b63565b6040518082815260200191505060405180910390f35b348015610da457600080fd5b50610dd160048036036020811015610dbb57600080fd5b8101908080359060200190929190505050611b69565b6040518082815260200191505060405180910390f35b348015610df357600080fd5b50610dfc611b8a565b6040518082815260200191505060405180910390f35b348015610e1e57600080fd5b50610e27611b90565b6040518082815260200191505060405180910390f35b348015610e4957600080fd5b50610e52611b96565b6040518082815260200191505060405180910390f35b348015610e7457600080fd5b50610e7d611b9c565b6040518082815260200191505060405180910390f35b348015610e9f57600080fd5b50610ea8611ba2565b6040518082815260200191505060405180910390f35b348015610eca57600080fd5b50610ef760048036036020811015610ee157600080fd5b8101908080359060200190929190505050611ba8565b6040518082815260200191505060405180910390f35b348015610f1957600080fd5b50610f22611be9565b6040518082815260200191505060405180910390f35b348015610f4457600080fd5b50610f7160048036036020811015610f5b57600080fd5b8101908080359060200190929190505050611bef565b604051808215151515815260200191505060405180910390f35b348015610f9757600080fd5b50610fc460048036036020811015610fae57600080fd5b8101908080359060200190929190505050611ef2565b6040518082815260200191505060405180910390f35b348015610fe657600080fd5b50610fef611f11565b6040518082815260200191505060405180910390f35b34801561101157600080fd5b5061101a611f1b565b6040518082815260200191505060405180910390f35b6110726004803603602081101561104657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611f21565b604051808215151515815260200191505060405180910390f35b34801561109857600080fd5b506110a16122ad565b6040518082815260200191505060405180910390f35b3480156110c357600080fd5b506110f0600480360360208110156110da57600080fd5b81019080803590602001909291905050506122b3565b6040518082815260200191505060405180910390f35b600061114883836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506122da565b905092915050565b600080620186a06157e484028161116357fe5b0490506000818403905060006111846004548361110690919063ffffffff16565b9050809350505050919050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611234576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f45524332303a206d696e7420746f20746865207a65726f20616464726573730081525060200191505060405180910390fd5b8273ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36112eb82602060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546123a090919063ffffffff16565b602060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061138082602160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546123a090919063ffffffff16565b602160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506113d8816009546123a090919063ffffffff16565b6009819055506113e781612428565b505050565b6000600260019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146114b1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f43616c6c6572206973206e6f7420746865206f776e657200000000000000000081525060200191505060405180910390fd5b600260019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611574576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260118152602001807f596f7520617265206e6f74206f776e657200000000000000000000000000000081525060200191505060405180910390fd5b8273ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f193505050501580156115ba573d6000803e3d6000fd5b506001905092915050565b606060008054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561165d5780601f106116325761010080835404028352916020019161165d565b820191906000526020600020905b81548152906001019060200180831161164057829003601f168201915b5050505050905090565b6000600854905090565b60055481565b60105481565b60115481565b6000600260009054906101000a900460ff16905090565b601d5481565b60145481565b60085481565b60095481565b60175481565b60195481565b600d5481565b601b5481565b60008054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156117605780601f1061173557610100808354040283529160200191611760565b820191906000526020600020905b81548152906001019060200180831161174357829003601f168201915b505050505081565b600b5481565b6000602060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60018054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561184d5780601f106118225761010080835404028352916020019161184d565b820191906000526020600020905b81548152906001019060200180831161183057829003601f168201915b505050505081565b6000600260019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461191a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f43616c6c6572206973206e6f7420746865206f776e657200000000000000000081525060200191505060405180910390fd5b47905090565b6000600260019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146119e5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f43616c6c6572206973206e6f7420746865206f776e657200000000000000000081525060200191505060405180910390fd5b8160048190555060019050919050565b600e5481565b601c5481565b601f5481565b60135481565b601e5481565b6000602160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600260019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600c5481565b606060018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015611b205780601f10611af557610100808354040283529160200191611b20565b820191906000526020600020905b815481529060010190602001808311611b0357829003601f168201915b5050505050905090565b60155481565b60226020528060005260406000206000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60045481565b600080606460045481611b7857fe5b04600454038302905080915050919050565b600f5481565b60185481565b60075481565b60125481565b601a5481565b600080620186a06157e4840281611bbb57fe5b049050600081840390506000611bdc6004548361110690919063ffffffff16565b9050809350505050919050565b60165481565b60008060095411611c68576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f6e6f2063697263756c6174656420746f6b656e7300000000000000000000000081525060200191505060405180910390fd5b60008211611cde576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f63616e206e6f742073656c6c203020746f6b656e00000000000000000000000081525060200191505060405180910390fd5b602060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054821115611d93576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601d8152602001807f6e6f7420656e6f75676820746f6b656e7320746f207472616e7361637400000081525060200191505060405180910390fd5b600854611dab600954846123a090919063ffffffff16565b1115611e1f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f657863656564656420746f74616c20737570706c79000000000000000000000081525060200191505060405180910390fd5b6000611e2a836129dd565b90503373ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015611e72573d6000803e3d6000fd5b50611e7d33846129fe565b7f5e5e995ce3133561afceaa51a9a154d5db228cd7525d34df5185582c18d3df093382604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a16001915050919050565b600080620186a06157e4840281611f0557fe5b04905080915050919050565b6000600454905090565b600a5481565b60003373ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611fc5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f53656c66207265666572656e6365206e6f7420616c6c6f77656400000000000081525060200191505060405180910390fd5b600033905060003490506000611fe66004548361110690919063ffffffff16565b90506000611ff383611150565b90506000811161206b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f43616e206e6f7420627579203020746f6b656e732e000000000000000000000081525060200191505060405180910390fd5b6113888111156120e3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f4d6178696d756d20427579696e6720526561636865642e00000000000000000081525060200191505060405180910390fd5b611388612138602160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054836123a090919063ffffffff16565b11156121ac576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f4d6178696d756d20427579696e6720526561636865642e00000000000000000081525060200191505060405180910390fd5b85602260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550612235848284611191565b7fe3d4187f6ca4248660cc0ac8b8056515bac4a8132be2eca31d6d0cc170722a7e8482604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a16001945050505050919050565b60065481565b600080620186a06157e48402816122c657fe5b049050600081840390508092505050919050565b60008083118290612386576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561234b578082015181840152602081019050612330565b50505050905090810190601f1680156123785780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50600083858161239257fe5b049050809150509392505050565b60008082840190508381101561241e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b6000600954101580156124405750620927c060095411155b1561245857600a54600481905550600454600a819055505b620927c060095411801561247157506210c8e060095411155b1561249a576311e1a3008102600681905550600654600b5401600481905550600454600b819055505b6210c8e06009541180156124b357506217a6b060095411155b156124dc57631ad274808102600681905550600654600c5401600481905550600454600c819055505b6217a6b06009541180156124f55750621de84060095411155b1561251e5763283baec08102600681905550600654600d5401600481905550600454600d819055505b621de840600954118015612537575062233f7060095411155b1561256057638c1227808102600681905550600654600e5401600481905550600454600e819055505b62233f7060095411801561257957506228488060095411155b156125a25763b44dd6408102600681905550600654600f5401600481905550600454600f819055505b622848806009541180156125bb5750622d037060095411155b156125e5576401553c91408102600681905550600654601054016004819055506004546010819055505b622d03706009541180156125fe57506231704060095411155b15612628576401fc212d408102600681905550600654601154016004819055506004546011819055505b62317040600954118015612641575062358ef060095411155b1561266b5764033c812b008102600681905550600654601254016004819055506004546012819055505b62358ef060095411801561268457506239869060095411155b156126ae576404b4038a008102600681905550600654601354016004819055506004546013819055505b623986906009541180156126c75750623d572060095411155b156126f157640ba43b74008102600681905550600654601454016004819055506004546014819055505b623d572060095411801561270a5750624100a060095411155b1561273457641f0aca0d408102600681905550600654601554016004819055506004546015819055505b624100a060095411801561274d57506244831060095411155b15612777576437acf5ef408102600681905550600654601654016004819055506004546016819055505b6244831060095411801561279057506247b76060095411155b156127ba57645bbf35d4808102600681905550600654601754016004819055506004546017819055505b6247b7606009541180156127d35750624ac4a060095411155b156127fd5764a089670f008102600681905550600654601854016004819055506004546018819055505b624ac4a06009541180156128165750624d83c060095411155b1561284157650155293224c08102600681905550600654601954016004819055506004546019819055505b624d83c060095411801561285a5750624fa6a060095411155b15612885576502df7e9a3d408102600681905550600654601a5401600481905550600454601a819055505b624fa6a060095411801561289e57506251a27060095411155b156128c95765053567548d408102600681905550600654601b5401600481905550600454601b819055505b6251a2706009541180156128e257506253502060095411155b1561290d57650bebfc1d51c08102600681905550600654601c5401600481905550600454601c819055505b625350206009541180156129265750625488a060095411155b1561295157651f8c501d9b008102600681905550600654601d5401600481905550600454601d819055505b625488a060095411801561296a5750625524e060095411155b1561299557656d2ddd1385808102600681905550600654601e5401600481905550600454601e819055505b625524e06009541180156129ae57506255730060095411155b156129da5766016f86dcf428008102600681905550600654601f5401600481905550600454601f819055505b50565b6000806064600454816129ec57fe5b04600454038302905080915050919050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415612a84576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602181526020018061330b6021913960400191505060405180910390fd5b3073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3612b3b81602060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612c3b90919063ffffffff16565b602060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612b9381600954612c3b90919063ffffffff16565b600981905550612beb81602160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612c3b90919063ffffffff16565b602160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612c3781612c85565b5050565b6000612c7d83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061324a565b905092915050565b600060095410158015612c9c5750620927c0600954105b15612cc457620493e08102600681905550600654600a5403600481905550600454600a819055505b620927c060095410158015612cde57506210c8e060095411155b15612d07576311e1a3008102600681905550600654600b5403600481905550600454600b819055505b6210c8e0600954118015612d2057506217a6b060095411155b15612d4957631ad274808102600681905550600654600c5403600481905550600454600c819055505b6217a6b0600954118015612d625750621de84060095411155b15612d8b5763283baec08102600681905550600654600d5403600481905550600454600d819055505b621de840600954118015612da4575062233f7060095411155b15612dcd57638c1227808102600681905550600654600e5403600481905550600454600e819055505b62233f70600954118015612de657506228488060095411155b15612e0f5763b44dd6408102600681905550600654600f5403600481905550600454600f819055505b62284880600954118015612e285750622d037060095411155b15612e52576401553c91408102600681905550600654601054036004819055506004546010819055505b622d0370600954118015612e6b57506231704060095411155b15612e95576401fc212d408102600681905550600654601154036004819055506004546011819055505b62317040600954118015612eae575062358ef060095411155b15612ed85764033c812b008102600681905550600654601254036004819055506004546012819055505b62358ef0600954118015612ef157506239869060095411155b15612f1b576404b4038a008102600681905550600654601354036004819055506004546013819055505b62398690600954118015612f345750623d572060095411155b15612f5e57640ba43b74008102600681905550600654601454036004819055506004546014819055505b623d5720600954118015612f775750624100a060095411155b15612fa157641f0aca0d408102600681905550600654601554036004819055506004546015819055505b624100a0600954118015612fba57506244831060095411155b15612fe4576437acf5ef408102600681905550600654601654036004819055506004546016819055505b62448310600954118015612ffd57506247b76060095411155b1561302757645bbf35d4808102600681905550600654601754036004819055506004546017819055505b6247b7606009541180156130405750624ac4a060095411155b1561306a5764a089670f008102600681905550600654601854036004819055506004546018819055505b624ac4a06009541180156130835750624d83c060095411155b156130ae57650155293224c08102600681905550600654601954036004819055506004546019819055505b624d83c06009541180156130c75750624fa6a060095411155b156130f2576502df7e9a3d408102600681905550600654601a5403600481905550600454601a819055505b624fa6a060095411801561310b57506251a27060095411155b156131365765053567548d408102600681905550600654601b5403600481905550600454601b819055505b6251a27060095411801561314f57506253502060095411155b1561317a57650bebfc1d51c08102600681905550600654601c5403600481905550600454601c819055505b625350206009541180156131935750625488a060095411155b156131be57651f8c501d9b008102600681905550600654601d5403600481905550600454601d819055505b625488a06009541180156131d75750625524e060095411155b1561320257656d2ddd1385808102600681905550600654601e5403600481905550600454601e819055505b625524e060095411801561321b57506255730060095411155b156132475766016f86dcf428008102600681905550600654601f5403600481905550600454601f819055505b50565b60008383111582906132f7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b838110156132bc5780820151818401526020810190506132a1565b50505050905090810190601f1680156132e95780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b506000838503905080915050939250505056fe45524332303a206275726e2066726f6d20746865207a65726f2061646472657373a264697066735822122092237360f3de7686b676a858f3f02642d674fcc0ac39125ec6a34e1a6c4b696f64736f6c63430006060033000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000005573000000000000000000000000000000000000000000000000000000000000000010556e6976657273652046696e616e63650000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000035546430000000000000000000000000000000000000000000000000000000000

Deployed Bytecode

0x6080604052600436106102975760003560e01c80638b142bb01161015a578063c7876ea4116100c1578063e66de0731161007a578063e66de07314610f8b578063eb91d37e14610fda578063ed106e7514611005578063f088d54714611030578063f1ed99381461108c578063f5e39cd6146110b7576104f8565b8063c7876ea414610e3d578063cc2c1bbd14610e68578063d6e5053514610e93578063e095f81414610ebe578063e321bf7714610f0d578063e4849b3214610f38576104f8565b80639998aeaf116101135780639998aeaf14610cb15780639b5aaebf14610cdc5780639d1b464a14610d6d578063aad7390d14610d98578063b6f5749314610de7578063b7cf5fac14610e12576104f8565b80638b142bb014610ae45780638ba0b15f14610b0f5780638bb4842414610b3a5780638da5cb5b14610b9f5780638fd9780414610bf657806395d89b4114610c21576104f8565b80635201d1af116101fe5780637b61c320116101b75780637b61c320146109555780637dd1a25c146109e55780637fc6686e14610a10578063814ab1bc14610a63578063850684c714610a8e578063890dad4b14610ab9576104f8565b80635201d1af146107b45780635da6058e146107df578063696feca91461080a5780636c02a931146108355780636f4df459146108c557806370a08231146108f0576104f8565b8063313ce56711610250578063313ce567146106ac5780633150cd33146106dd578063391dddf5146107085780633eaaf86b146107335780633fadfd6b1461075e578063448bda8014610789576104f8565b806305b1137b146104fd57806306fdde031461057057806318160ddd146106005780631d0806ae1461062b5780631e5a0bc61461065657806327d7f99314610681576104f8565b366104f85761138834602160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054011115610355576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f4d6178696d756d20427579696e6720526561636865642e00000000000000000081525060200191505060405180910390fd5b6000602260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000339050600034905060006103f56004548361110690919063ffffffff16565b9050600061040283611150565b905061138881111561047c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f4d6178696d756d20427579696e6720526561636865642e00000000000000000081525060200191505060405180910390fd5b610487848284611191565b7fe3d4187f6ca4248660cc0ac8b8056515bac4a8132be2eca31d6d0cc170722a7e8482604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a150505050005b600080fd5b34801561050957600080fd5b506105566004803603604081101561052057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506113ec565b604051808215151515815260200191505060405180910390f35b34801561057c57600080fd5b506105856115c5565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156105c55780820151818401526020810190506105aa565b50505050905090810190601f1680156105f25780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561060c57600080fd5b50610615611667565b6040518082815260200191505060405180910390f35b34801561063757600080fd5b50610640611671565b6040518082815260200191505060405180910390f35b34801561066257600080fd5b5061066b611677565b6040518082815260200191505060405180910390f35b34801561068d57600080fd5b5061069661167d565b6040518082815260200191505060405180910390f35b3480156106b857600080fd5b506106c1611683565b604051808260ff1660ff16815260200191505060405180910390f35b3480156106e957600080fd5b506106f261169a565b6040518082815260200191505060405180910390f35b34801561071457600080fd5b5061071d6116a0565b6040518082815260200191505060405180910390f35b34801561073f57600080fd5b506107486116a6565b6040518082815260200191505060405180910390f35b34801561076a57600080fd5b506107736116ac565b6040518082815260200191505060405180910390f35b34801561079557600080fd5b5061079e6116b2565b6040518082815260200191505060405180910390f35b3480156107c057600080fd5b506107c96116b8565b6040518082815260200191505060405180910390f35b3480156107eb57600080fd5b506107f46116be565b6040518082815260200191505060405180910390f35b34801561081657600080fd5b5061081f6116c4565b6040518082815260200191505060405180910390f35b34801561084157600080fd5b5061084a6116ca565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561088a57808201518184015260208101905061086f565b50505050905090810190601f1680156108b75780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156108d157600080fd5b506108da611768565b6040518082815260200191505060405180910390f35b3480156108fc57600080fd5b5061093f6004803603602081101561091357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061176e565b6040518082815260200191505060405180910390f35b34801561096157600080fd5b5061096a6117b7565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156109aa57808201518184015260208101905061098f565b50505050905090810190601f1680156109d75780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156109f157600080fd5b506109fa611855565b6040518082815260200191505060405180910390f35b348015610a1c57600080fd5b50610a4960048036036020811015610a3357600080fd5b8101908080359060200190929190505050611920565b604051808215151515815260200191505060405180910390f35b348015610a6f57600080fd5b50610a786119f5565b6040518082815260200191505060405180910390f35b348015610a9a57600080fd5b50610aa36119fb565b6040518082815260200191505060405180910390f35b348015610ac557600080fd5b50610ace611a01565b6040518082815260200191505060405180910390f35b348015610af057600080fd5b50610af9611a07565b6040518082815260200191505060405180910390f35b348015610b1b57600080fd5b50610b24611a0d565b6040518082815260200191505060405180910390f35b348015610b4657600080fd5b50610b8960048036036020811015610b5d57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611a13565b6040518082815260200191505060405180910390f35b348015610bab57600080fd5b50610bb4611a5c565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610c0257600080fd5b50610c0b611a82565b6040518082815260200191505060405180910390f35b348015610c2d57600080fd5b50610c36611a88565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610c76578082015181840152602081019050610c5b565b50505050905090810190601f168015610ca35780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b348015610cbd57600080fd5b50610cc6611b2a565b6040518082815260200191505060405180910390f35b348015610ce857600080fd5b50610d2b60048036036020811015610cff57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611b30565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610d7957600080fd5b50610d82611b63565b6040518082815260200191505060405180910390f35b348015610da457600080fd5b50610dd160048036036020811015610dbb57600080fd5b8101908080359060200190929190505050611b69565b6040518082815260200191505060405180910390f35b348015610df357600080fd5b50610dfc611b8a565b6040518082815260200191505060405180910390f35b348015610e1e57600080fd5b50610e27611b90565b6040518082815260200191505060405180910390f35b348015610e4957600080fd5b50610e52611b96565b6040518082815260200191505060405180910390f35b348015610e7457600080fd5b50610e7d611b9c565b6040518082815260200191505060405180910390f35b348015610e9f57600080fd5b50610ea8611ba2565b6040518082815260200191505060405180910390f35b348015610eca57600080fd5b50610ef760048036036020811015610ee157600080fd5b8101908080359060200190929190505050611ba8565b6040518082815260200191505060405180910390f35b348015610f1957600080fd5b50610f22611be9565b6040518082815260200191505060405180910390f35b348015610f4457600080fd5b50610f7160048036036020811015610f5b57600080fd5b8101908080359060200190929190505050611bef565b604051808215151515815260200191505060405180910390f35b348015610f9757600080fd5b50610fc460048036036020811015610fae57600080fd5b8101908080359060200190929190505050611ef2565b6040518082815260200191505060405180910390f35b348015610fe657600080fd5b50610fef611f11565b6040518082815260200191505060405180910390f35b34801561101157600080fd5b5061101a611f1b565b6040518082815260200191505060405180910390f35b6110726004803603602081101561104657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611f21565b604051808215151515815260200191505060405180910390f35b34801561109857600080fd5b506110a16122ad565b6040518082815260200191505060405180910390f35b3480156110c357600080fd5b506110f0600480360360208110156110da57600080fd5b81019080803590602001909291905050506122b3565b6040518082815260200191505060405180910390f35b600061114883836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506122da565b905092915050565b600080620186a06157e484028161116357fe5b0490506000818403905060006111846004548361110690919063ffffffff16565b9050809350505050919050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611234576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f45524332303a206d696e7420746f20746865207a65726f20616464726573730081525060200191505060405180910390fd5b8273ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36112eb82602060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546123a090919063ffffffff16565b602060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061138082602160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546123a090919063ffffffff16565b602160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506113d8816009546123a090919063ffffffff16565b6009819055506113e781612428565b505050565b6000600260019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146114b1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f43616c6c6572206973206e6f7420746865206f776e657200000000000000000081525060200191505060405180910390fd5b600260019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611574576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260118152602001807f596f7520617265206e6f74206f776e657200000000000000000000000000000081525060200191505060405180910390fd5b8273ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f193505050501580156115ba573d6000803e3d6000fd5b506001905092915050565b606060008054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561165d5780601f106116325761010080835404028352916020019161165d565b820191906000526020600020905b81548152906001019060200180831161164057829003601f168201915b5050505050905090565b6000600854905090565b60055481565b60105481565b60115481565b6000600260009054906101000a900460ff16905090565b601d5481565b60145481565b60085481565b60095481565b60175481565b60195481565b600d5481565b601b5481565b60008054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156117605780601f1061173557610100808354040283529160200191611760565b820191906000526020600020905b81548152906001019060200180831161174357829003601f168201915b505050505081565b600b5481565b6000602060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60018054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561184d5780601f106118225761010080835404028352916020019161184d565b820191906000526020600020905b81548152906001019060200180831161183057829003601f168201915b505050505081565b6000600260019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461191a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f43616c6c6572206973206e6f7420746865206f776e657200000000000000000081525060200191505060405180910390fd5b47905090565b6000600260019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146119e5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f43616c6c6572206973206e6f7420746865206f776e657200000000000000000081525060200191505060405180910390fd5b8160048190555060019050919050565b600e5481565b601c5481565b601f5481565b60135481565b601e5481565b6000602160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600260019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600c5481565b606060018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015611b205780601f10611af557610100808354040283529160200191611b20565b820191906000526020600020905b815481529060010190602001808311611b0357829003601f168201915b5050505050905090565b60155481565b60226020528060005260406000206000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60045481565b600080606460045481611b7857fe5b04600454038302905080915050919050565b600f5481565b60185481565b60075481565b60125481565b601a5481565b600080620186a06157e4840281611bbb57fe5b049050600081840390506000611bdc6004548361110690919063ffffffff16565b9050809350505050919050565b60165481565b60008060095411611c68576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f6e6f2063697263756c6174656420746f6b656e7300000000000000000000000081525060200191505060405180910390fd5b60008211611cde576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f63616e206e6f742073656c6c203020746f6b656e00000000000000000000000081525060200191505060405180910390fd5b602060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054821115611d93576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601d8152602001807f6e6f7420656e6f75676820746f6b656e7320746f207472616e7361637400000081525060200191505060405180910390fd5b600854611dab600954846123a090919063ffffffff16565b1115611e1f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f657863656564656420746f74616c20737570706c79000000000000000000000081525060200191505060405180910390fd5b6000611e2a836129dd565b90503373ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015611e72573d6000803e3d6000fd5b50611e7d33846129fe565b7f5e5e995ce3133561afceaa51a9a154d5db228cd7525d34df5185582c18d3df093382604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a16001915050919050565b600080620186a06157e4840281611f0557fe5b04905080915050919050565b6000600454905090565b600a5481565b60003373ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611fc5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f53656c66207265666572656e6365206e6f7420616c6c6f77656400000000000081525060200191505060405180910390fd5b600033905060003490506000611fe66004548361110690919063ffffffff16565b90506000611ff383611150565b90506000811161206b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f43616e206e6f7420627579203020746f6b656e732e000000000000000000000081525060200191505060405180910390fd5b6113888111156120e3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f4d6178696d756d20427579696e6720526561636865642e00000000000000000081525060200191505060405180910390fd5b611388612138602160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054836123a090919063ffffffff16565b11156121ac576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f4d6178696d756d20427579696e6720526561636865642e00000000000000000081525060200191505060405180910390fd5b85602260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550612235848284611191565b7fe3d4187f6ca4248660cc0ac8b8056515bac4a8132be2eca31d6d0cc170722a7e8482604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a16001945050505050919050565b60065481565b600080620186a06157e48402816122c657fe5b049050600081840390508092505050919050565b60008083118290612386576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561234b578082015181840152602081019050612330565b50505050905090810190601f1680156123785780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50600083858161239257fe5b049050809150509392505050565b60008082840190508381101561241e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b6000600954101580156124405750620927c060095411155b1561245857600a54600481905550600454600a819055505b620927c060095411801561247157506210c8e060095411155b1561249a576311e1a3008102600681905550600654600b5401600481905550600454600b819055505b6210c8e06009541180156124b357506217a6b060095411155b156124dc57631ad274808102600681905550600654600c5401600481905550600454600c819055505b6217a6b06009541180156124f55750621de84060095411155b1561251e5763283baec08102600681905550600654600d5401600481905550600454600d819055505b621de840600954118015612537575062233f7060095411155b1561256057638c1227808102600681905550600654600e5401600481905550600454600e819055505b62233f7060095411801561257957506228488060095411155b156125a25763b44dd6408102600681905550600654600f5401600481905550600454600f819055505b622848806009541180156125bb5750622d037060095411155b156125e5576401553c91408102600681905550600654601054016004819055506004546010819055505b622d03706009541180156125fe57506231704060095411155b15612628576401fc212d408102600681905550600654601154016004819055506004546011819055505b62317040600954118015612641575062358ef060095411155b1561266b5764033c812b008102600681905550600654601254016004819055506004546012819055505b62358ef060095411801561268457506239869060095411155b156126ae576404b4038a008102600681905550600654601354016004819055506004546013819055505b623986906009541180156126c75750623d572060095411155b156126f157640ba43b74008102600681905550600654601454016004819055506004546014819055505b623d572060095411801561270a5750624100a060095411155b1561273457641f0aca0d408102600681905550600654601554016004819055506004546015819055505b624100a060095411801561274d57506244831060095411155b15612777576437acf5ef408102600681905550600654601654016004819055506004546016819055505b6244831060095411801561279057506247b76060095411155b156127ba57645bbf35d4808102600681905550600654601754016004819055506004546017819055505b6247b7606009541180156127d35750624ac4a060095411155b156127fd5764a089670f008102600681905550600654601854016004819055506004546018819055505b624ac4a06009541180156128165750624d83c060095411155b1561284157650155293224c08102600681905550600654601954016004819055506004546019819055505b624d83c060095411801561285a5750624fa6a060095411155b15612885576502df7e9a3d408102600681905550600654601a5401600481905550600454601a819055505b624fa6a060095411801561289e57506251a27060095411155b156128c95765053567548d408102600681905550600654601b5401600481905550600454601b819055505b6251a2706009541180156128e257506253502060095411155b1561290d57650bebfc1d51c08102600681905550600654601c5401600481905550600454601c819055505b625350206009541180156129265750625488a060095411155b1561295157651f8c501d9b008102600681905550600654601d5401600481905550600454601d819055505b625488a060095411801561296a5750625524e060095411155b1561299557656d2ddd1385808102600681905550600654601e5401600481905550600454601e819055505b625524e06009541180156129ae57506255730060095411155b156129da5766016f86dcf428008102600681905550600654601f5401600481905550600454601f819055505b50565b6000806064600454816129ec57fe5b04600454038302905080915050919050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415612a84576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602181526020018061330b6021913960400191505060405180910390fd5b3073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3612b3b81602060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612c3b90919063ffffffff16565b602060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612b9381600954612c3b90919063ffffffff16565b600981905550612beb81602160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612c3b90919063ffffffff16565b602160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612c3781612c85565b5050565b6000612c7d83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061324a565b905092915050565b600060095410158015612c9c5750620927c0600954105b15612cc457620493e08102600681905550600654600a5403600481905550600454600a819055505b620927c060095410158015612cde57506210c8e060095411155b15612d07576311e1a3008102600681905550600654600b5403600481905550600454600b819055505b6210c8e0600954118015612d2057506217a6b060095411155b15612d4957631ad274808102600681905550600654600c5403600481905550600454600c819055505b6217a6b0600954118015612d625750621de84060095411155b15612d8b5763283baec08102600681905550600654600d5403600481905550600454600d819055505b621de840600954118015612da4575062233f7060095411155b15612dcd57638c1227808102600681905550600654600e5403600481905550600454600e819055505b62233f70600954118015612de657506228488060095411155b15612e0f5763b44dd6408102600681905550600654600f5403600481905550600454600f819055505b62284880600954118015612e285750622d037060095411155b15612e52576401553c91408102600681905550600654601054036004819055506004546010819055505b622d0370600954118015612e6b57506231704060095411155b15612e95576401fc212d408102600681905550600654601154036004819055506004546011819055505b62317040600954118015612eae575062358ef060095411155b15612ed85764033c812b008102600681905550600654601254036004819055506004546012819055505b62358ef0600954118015612ef157506239869060095411155b15612f1b576404b4038a008102600681905550600654601354036004819055506004546013819055505b62398690600954118015612f345750623d572060095411155b15612f5e57640ba43b74008102600681905550600654601454036004819055506004546014819055505b623d5720600954118015612f775750624100a060095411155b15612fa157641f0aca0d408102600681905550600654601554036004819055506004546015819055505b624100a0600954118015612fba57506244831060095411155b15612fe4576437acf5ef408102600681905550600654601654036004819055506004546016819055505b62448310600954118015612ffd57506247b76060095411155b1561302757645bbf35d4808102600681905550600654601754036004819055506004546017819055505b6247b7606009541180156130405750624ac4a060095411155b1561306a5764a089670f008102600681905550600654601854036004819055506004546018819055505b624ac4a06009541180156130835750624d83c060095411155b156130ae57650155293224c08102600681905550600654601954036004819055506004546019819055505b624d83c06009541180156130c75750624fa6a060095411155b156130f2576502df7e9a3d408102600681905550600654601a5403600481905550600454601a819055505b624fa6a060095411801561310b57506251a27060095411155b156131365765053567548d408102600681905550600654601b5403600481905550600454601b819055505b6251a27060095411801561314f57506253502060095411155b1561317a57650bebfc1d51c08102600681905550600654601c5403600481905550600454601c819055505b625350206009541180156131935750625488a060095411155b156131be57651f8c501d9b008102600681905550600654601d5403600481905550600454601d819055505b625488a06009541180156131d75750625524e060095411155b1561320257656d2ddd1385808102600681905550600654601e5403600481905550600454601e819055505b625524e060095411801561321b57506255730060095411155b156132475766016f86dcf428008102600681905550600654601f5403600481905550600454601f819055505b50565b60008383111582906132f7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b838110156132bc5780820151818401526020810190506132a1565b50505050905090810190601f1680156132e95780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b506000838503905080915050939250505056fe45524332303a206275726e2066726f6d20746865207a65726f2061646472657373a264697066735822122092237360f3de7686b676a858f3f02642d674fcc0ac39125ec6a34e1a6c4b696f64736f6c63430006060033

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

000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000005573000000000000000000000000000000000000000000000000000000000000000010556e6976657273652046696e616e63650000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000035546430000000000000000000000000000000000000000000000000000000000

-----Decoded View---------------
Arg [0] : _tokenName (string): Universe Finance
Arg [1] : _tokenSymbol (string): UFC
Arg [2] : totalSupply (uint256): 5600000

-----Encoded View---------------
7 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000000000060
Arg [1] : 00000000000000000000000000000000000000000000000000000000000000a0
Arg [2] : 0000000000000000000000000000000000000000000000000000000000557300
Arg [3] : 0000000000000000000000000000000000000000000000000000000000000010
Arg [4] : 556e6976657273652046696e616e636500000000000000000000000000000000
Arg [5] : 0000000000000000000000000000000000000000000000000000000000000003
Arg [6] : 5546430000000000000000000000000000000000000000000000000000000000


Deployed Bytecode Sourcemap

98:27869:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8641:4;8627:9;8597:15;:27;8613:10;8597:27;;;;;;;;;;;;;;;;:39;8596:49;;8588:85;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8715:1;8685:7;:19;8693:10;8685:19;;;;;;;;;;;;;;;;:32;;;;;;;;;;;;;;;;;;8729:13;8745:10;8729:26;;8767:18;8788:9;8767:30;;8809:22;8834:28;8849:12;;8834:10;:14;;:28;;;;:::i;:::-;8809:53;;8874:24;8901:30;8920:10;8901:18;:30::i;:::-;8874:57;;8971:4;8951:16;:24;;8943:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9015:44;9021:5;9027:16;9044:14;9015:5;:44::i;:::-;9076:27;9080:5;9086:16;9076:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;8549:574;;;;98:27869;;12:1:-1;9;2:12;5797:225:0;;5:9:-1;2:2;;;27:1;24;17:12;2:2;5797:225:0;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;5797:225:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;6079:86;;5:9:-1;2:2;;;27:1;24;17:12;2:2;6079:86:0;;;:::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;6079:86:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6509:96;;5:9:-1;2:2;;;27:1;24;17:12;2:2;6509:96:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;1659:44;;5:9:-1;2:2;;;27:1;24;17:12;2:2;1659:44:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;2214;;5:9:-1;2:2;;;27:1;24;17:12;2:2;2214:44:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;2265;;5:9:-1;2:2;;;27:1;24;17:12;2:2;2265:44:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;6353:85;;5:9:-1;2:2;;;27:1;24;17:12;2:2;6353:85:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;2907:48;;5:9:-1;2:2;;;27:1;24;17:12;2:2;2907:48:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;2421:46;;5:9:-1;2:2;;;27:1;24;17:12;2:2;2421:46:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;1831:27;;5:9:-1;2:2;;;27:1;24;17:12;2:2;1831:27:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;1870:36;;5:9:-1;2:2;;;27:1;24;17:12;2:2;1870:36:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;2581:47;;5:9:-1;2:2;;;27:1;24;17:12;2:2;2581:47:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;2689;;5:9:-1;2:2;;;27:1;24;17:12;2:2;2689:47:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;2062:43;;5:9:-1;2:2;;;27:1;24;17:12;2:2;2062:43:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;2797:48;;5:9:-1;2:2;;;27:1;24;17:12;2:2;2797:48:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;1133:23;;5:9:-1;2:2;;;27:1;24;17:12;2:2;1133:23:0;;;:::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;1133:23:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1962:43;;5:9:-1;2:2;;;27:1;24;17:12;2:2;1962:43:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;6667:116;;5:9:-1;2:2;;;27:1;24;17:12;2:2;6667:116:0;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;6667:116:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;1257:25;;5:9:-1;2:2;;;27:1;24;17:12;2:2;1257:25:0;;;:::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;1257:25:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;24576:117;;5:9:-1;2:2;;;27:1;24;17:12;2:2;24576:117:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;7038:152;;5:9:-1;2:2;;;27:1;24;17:12;2:2;7038:152:0;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;7038:152:0;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;2112:44;;5:9:-1;2:2;;;27:1;24;17:12;2:2;2112:44:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;2852:48;;5:9:-1;2:2;;;27:1;24;17:12;2:2;2852:48:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;3017:49;;5:9:-1;2:2;;;27:1;24;17:12;2:2;3017:49:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;2368:46;;5:9:-1;2:2;;;27:1;24;17:12;2:2;2368:46:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;2962:48;;5:9:-1;2:2;;;27:1;24;17:12;2:2;2962:48:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;4481:129;;5:9:-1;2:2;;;27:1;24;17:12;2:2;4481:129:0;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;4481:129:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;1500:20;;5:9:-1;2:2;;;27:1;24;17:12;2:2;1500:20:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;2012:43;;5:9:-1;2:2;;;27:1;24;17:12;2:2;2012:43:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;6210:92;;5:9:-1;2:2;;;27:1;24;17:12;2:2;6210:92:0;;;:::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;6210:92:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2474:46;;5:9:-1;2:2;;;27:1;24;17:12;2:2;2474:46:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;3296:42;;5:9:-1;2:2;;;27:1;24;17:12;2:2;3296:42:0;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;3296:42:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;1625:27;;5:9:-1;2:2;;;27:1;24;17:12;2:2;1625:27:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;5561:220;;5:9:-1;2:2;;;27:1;24;17:12;2:2;5561:220:0;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;5561:220:0;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;2163:44;;5:9:-1;2:2;;;27:1;24;17:12;2:2;2163:44:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;2635:47;;5:9:-1;2:2;;;27:1;24;17:12;2:2;2635:47:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;1757:30;;5:9:-1;2:2;;;27:1;24;17:12;2:2;1757:30:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;2316:45;;5:9:-1;2:2;;;27:1;24;17:12;2:2;2316:45:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;2743:47;;5:9:-1;2:2;;;27:1;24;17:12;2:2;2743:47:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;5226:319;;5:9:-1;2:2;;;27:1;24;17:12;2:2;5226:319:0;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;5226:319:0;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;2527:47;;5:9:-1;2:2;;;27:1;24;17:12;2:2;2527:47:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;23710:621;;5:9:-1;2:2;;;27:1;24;17:12;2:2;23710:621:0;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;23710:621:0;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;4764:191;;5:9:-1;2:2;;;27:1;24;17:12;2:2;4764:191:0;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;4764:191:0;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;6835:98;;5:9:-1;2:2;;;27:1;24;17:12;2:2;6835:98:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;1913:42;;5:9:-1;2:2;;;27:1;24;17:12;2:2;1913:42:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;7543:992;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;7543:992:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;1710:40;;5:9:-1;2:2;;;27:1;24;17:12;2:2;1710:40:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;4966:250;;5:9:-1;2:2;;;27:1;24;17:12;2:2;4966:250:0;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;4966:250:0;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;30537:132;30595:7;30622:39;30626:1;30629;30622:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;30615:46;;30537:132;;;;:::o;23327:321::-;23400:7;23424:17;23466:6;23460:5;23444:13;:21;:28;;;;;;23424:48;;23487:18;23524:9;23508:13;:25;23487:46;;23548:23;23574:28;23589:12;;23574:10;:14;;:28;;;;:::i;:::-;23548:54;;23624:15;23617:22;;;;;23327:321;;;:::o;26340:686::-;26457:1;26438:21;;:7;:21;;;;26430:65;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;26717:7;26693:40;;26710:4;26693:40;;;26726:6;26693:40;;;;;;;;;;;;;;;;;;26773:34;26800:6;26773:13;:22;26787:7;26773:22;;;;;;;;;;;;;;;;:26;;:34;;;;:::i;:::-;26748:13;:22;26762:7;26748:22;;;;;;;;;;;;;;;:59;;;;26849:36;26878:6;26849:15;:24;26865:7;26849:24;;;;;;;;;;;;;;;;:28;;:36;;;;:::i;:::-;26822:15;:24;26838:7;26822:24;;;;;;;;;;;;;;;:63;;;;26920:34;26942:11;26920:17;;:21;;:34;;;;:::i;:::-;26900:17;:54;;;;26969:25;26982:11;26969:12;:25::i;:::-;26340:686;;;:::o;5797:225::-;5889:4;3607:5;;;;;;;;;;;3593:19;;:10;:19;;;3585:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5928:5:::1;;;;;;;;;;;5914:19;;:10;:19;;;5906:49;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;5966:8;:17;;:25;5984:6;5966:25;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39::::0;24:38:::1;77:16;74:1;67:27;5:2;5966:25:0;6009:4;6002:11;;5797:225:::0;;;;:::o;6079:86::-;6115:13;6148:9;6141:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6079:86;:::o;6509:96::-;6554:7;6585:12;;6578:19;;6509:96;:::o;1659:44::-;;;;:::o;2214:::-;;;;:::o;2265:::-;;;;:::o;6353:85::-;6393:5;6421:7;;;;;;;;;;;6414:14;;6353:85;:::o;2907:48::-;;;;:::o;2421:46::-;;;;:::o;1831:27::-;;;;:::o;1870:36::-;;;;:::o;2581:47::-;;;;:::o;2689:::-;;;;:::o;2062:43::-;;;;:::o;2797:48::-;;;;:::o;1133:23::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;1962:43::-;;;;:::o;6667:116::-;6723:7;6754:13;:20;6768:5;6754:20;;;;;;;;;;;;;;;;6747:27;;6667:116;;;:::o;1257:25::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;24576:117::-;24637:7;3607:5;;;;;;;;;;;3593:19;;:10;:19;;;3585:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;24664:21:::1;24657:28;;24576:117:::0;:::o;7038:152::-;7113:4;3607:5;;;;;;;;;;;3593:19;;:10;:19;;;3585:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7147:9:::1;7132:12;:24;;;;7176:4;7169:11;;7038:152:::0;;;:::o;2112:44::-;;;;:::o;2852:48::-;;;;:::o;3017:49::-;;;;:::o;2368:46::-;;;;:::o;2962:48::-;;;;:::o;4481:129::-;4548:7;4579:15;:22;4595:5;4579:22;;;;;;;;;;;;;;;;4572:29;;4481:129;;;:::o;1500:20::-;;;;;;;;;;;;;:::o;2012:43::-;;;;:::o;6210:92::-;6248:13;6282:11;6275:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6210:92;:::o;2474:46::-;;;;:::o;3296:42::-;;;;;;;;;;;;;;;;;;;;;;:::o;1625:27::-;;;;:::o;5561:220::-;5624:7;5656:22;5725:3;5712:12;;:16;;;;;;5696:12;;:33;5681:11;:49;5656:74;;5748:14;5741:21;;;5561:220;;;:::o;2163:44::-;;;;:::o;2635:47::-;;;;:::o;1757:30::-;;;;:::o;2316:45::-;;;;:::o;2743:47::-;;;;:::o;5226:319::-;5291:7;5323:17;5365:6;5359:5;5343:13;:21;:28;;;;;;5323:48;;5382:18;5419:9;5403:13;:25;5382:46;;5439:23;5465:28;5480:12;;5465:10;:14;;:28;;;;:::i;:::-;5439:54;;5511:15;5504:22;;;;;5226:319;;;:::o;2527:47::-;;;;:::o;23710:621::-;23762:4;23808:1;23788:17;;:21;23780:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23869:1;23855:11;:15;23847:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23931:13;:25;23945:10;23931:25;;;;;;;;;;;;;;;;23916:11;:40;;23908:82;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;24049:12;;24011:34;24027:17;;24011:11;:15;;:34;;;;:::i;:::-;:50;;24003:84;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;24100:23;24126:31;24145:11;24126:18;:31::i;:::-;24100:57;;24170:10;:19;;:36;24190:15;24170:36;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;24170:36:0;24219:29;24225:10;24236:11;24219:5;:29::i;:::-;24266:32;24271:10;24282:15;24266:32;;;;;;;;;;;;;;;;;;;;;;;;;;;;24318:4;24311:11;;;23710:621;;;:::o;4764:191::-;4829:7;4861:17;4903:6;4897:5;4881:13;:21;:28;;;;;;4861:48;;4927:9;4920:16;;;4764:191;;;:::o;6835:98::-;6884:7;6912:12;;6905:19;;6835:98;:::o;1913:42::-;;;;:::o;7543:992::-;7603:4;7644:10;7629:25;;:11;:25;;;;7621:64;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7891:13;7907:10;7891:26;;7929:18;7950:9;7929:30;;7971:19;7993:28;8008:12;;7993:10;:14;;:28;;;;:::i;:::-;7971:50;;8033:24;8060:30;8079:10;8060:18;:30::i;:::-;8033:57;;8129:1;8110:16;:20;8102:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8196:4;8176:16;:24;;8168:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8301:4;8248:49;8269:15;:27;8285:10;8269:27;;;;;;;;;;;;;;;;8248:16;:20;;:49;;;;:::i;:::-;:57;;8240:93;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8367:11;8345:7;:19;8353:10;8345:19;;;;;;;;;;;;;;;;:33;;;;;;;;;;;;;;;;;;8390:41;8396:5;8402:16;8419:11;8390:5;:41::i;:::-;8448:27;8452:5;8458:16;8448:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;8494:4;8487:11;;;;;;7543:992;;;:::o;1710:40::-;;;;:::o;4966:250::-;5032:7;5064:17;5106:6;5100:5;5084:13;:21;:28;;;;;;5064:48;;5123:18;5160:9;5144:13;:25;5123:46;;5187:10;5180:17;;;;4966:250;;;:::o;31165:278::-;31251:7;31283:1;31279;:5;31286:12;31271:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;31271:28:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;31310:9;31326:1;31322;:5;;;;;;31310:17;;31434:1;31427:8;;;31165:278;;;;;:::o;28236:181::-;28294:7;28314:9;28330:1;28326;:5;28314:17;;28355:1;28350;:6;;28342:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;28408:1;28401:8;;;28236:181;;;;:::o;9137:5771::-;9221:1;9200:17;;:22;;:53;;;;;9247:6;9226:17;;:27;;9200:53;9197:152;;;9285:10;;9270:12;:25;;;;9324:12;;9311:10;:25;;;;9197:152;9383:6;9363:17;;:26;:58;;;;;9414:7;9393:17;;:28;;9363:58;9360:239;;;9471:9;9462:8;:18;9438:21;:42;;;;9524:21;;9511:10;;:34;9496:12;:49;;;;9574:12;;9561:10;:25;;;;9360:239;9633:7;9613:17;;:27;:59;;;;;9665:7;9644:17;;:28;;9613:59;9610:240;;;9722:9;9713:8;:18;9689:21;:42;;;;9775:21;;9762:10;;:34;9747:12;:49;;;;9825:12;;9812:10;:25;;;;9610:240;9884:7;9864:17;;:27;:59;;;;;9916:7;9895:17;;:28;;9864:59;9861:240;;;9973:9;9964:8;:18;9940:21;:42;;;;10026:21;;10013:10;;:34;9998:12;:49;;;;10076:12;;10063:10;:25;;;;9861:240;10124:7;10104:17;;:27;:59;;;;;10156:7;10135:17;;:28;;10104:59;10101:241;;;10213:10;10204:8;:19;10180:21;:43;;;;10267:21;;10254:10;;:34;10239:12;:49;;;;10317:12;;10304:10;:25;;;;10101:241;10376:7;10356:17;;:27;:59;;;;;10408:7;10387:17;;:28;;10356:59;10353:241;;;10465:10;10456:8;:19;10432:21;:43;;;;10519:21;;10506:10;;:34;10491:12;:49;;;;10569:12;;10556:10;:25;;;;10353:241;10628:7;10608:17;;:27;:59;;;;;10660:7;10639:17;;:28;;10608:59;10605:241;;;10717:10;10708:8;:19;10684:21;:43;;;;10771:21;;10758:10;;:34;10743:12;:49;;;;10821:12;;10808:10;:25;;;;10605:241;10880:7;10860:17;;:27;:59;;;;;10912:7;10891:17;;:28;;10860:59;10857:241;;;10969:10;10960:8;:19;10936:21;:43;;;;11023:21;;11010:10;;:34;10995:12;:49;;;;11073:12;;11060:10;:25;;;;10857:241;11143:7;11123:17;;:27;:59;;;;;11175:7;11154:17;;:28;;11123:59;11120:257;;;11232:11;11223:8;:20;11199:21;:44;;;;11287:21;;11274:10;;:34;11259:12;:49;;;;11337:12;;11324:10;:25;;;;11120:257;11400:7;11380:17;;:27;:59;;;;;11432:7;11411:17;;:28;;11380:59;11377:259;;;11489:11;11480:8;:20;11456:21;:44;;;;11545:21;;11531:11;;:35;11516:12;:50;;;;11596:12;;11582:11;:26;;;;11377:259;11659:7;11639:17;;:27;:59;;;;;11691:7;11670:17;;:28;;11639:59;11636:259;;;11748:11;11739:8;:20;11715:21;:44;;;;11804:21;;11790:11;;:35;11775:12;:50;;;;11855:12;;11841:11;:26;;;;11636:259;11918:7;11898:17;;:27;:59;;;;;11950:7;11929:17;;:28;;11898:59;11895:260;;;12007:12;11998:8;:21;11974;:45;;;;12064:21;;12050:11;;:35;12035:12;:50;;;;12115:12;;12101:11;:26;;;;11895:260;12178:7;12158:17;;:27;:59;;;;;12210:7;12189:17;;:28;;12158:59;12155:260;;;12267:12;12258:8;:21;12234;:45;;;;12324:21;;12310:11;;:35;12295:12;:50;;;;12375:12;;12361:11;:26;;;;12155:260;12449:7;12429:17;;:27;:59;;;;;12481:7;12460:17;;:28;;12429:59;12426:260;;;12538:12;12529:8;:21;12505;:45;;;;12595:21;;12581:11;;:35;12566:12;:50;;;;12646:12;;12632:11;:26;;;;12426:260;12720:7;12700:17;;:27;:59;;;;;12752:7;12731:17;;:28;;12700:59;12697:260;;;12809:12;12800:8;:21;12776;:45;;;;12866:21;;12852:11;;:35;12837:12;:50;;;;12917:12;;12903:11;:26;;;;12697:260;12991:7;12971:17;;:27;:59;;;;;13023:7;13002:17;;:28;;12971:59;12968:261;;;13080:13;13071:8;:22;13047:21;:46;;;;13138:21;;13124:11;;:35;13109:12;:50;;;;13189:12;;13175:11;:26;;;;12968:261;13275:7;13255:17;;:27;:59;;;;;13307:7;13286:17;;:28;;13255:59;13252:261;;;13364:13;13355:8;:22;13331:21;:46;;;;13422:21;;13408:11;;:35;13393:12;:50;;;;13473:12;;13459:11;:26;;;;13252:261;13559:7;13539:17;;:27;:59;;;;;13591:7;13570:17;;:28;;13539:59;13536:261;;;13648:13;13639:8;:22;13615:21;:46;;;;13706:21;;13692:11;;:35;13677:12;:50;;;;13757:12;;13743:11;:26;;;;13536:261;13843:7;13823:17;;:27;:59;;;;;13875:7;13854:17;;:28;;13823:59;13820:262;;;13932:14;13923:8;:23;13899:21;:47;;;;13991:21;;13977:11;;:35;13962:12;:50;;;;14042:12;;14028:11;:26;;;;13820:262;14128:7;14108:17;;:27;:59;;;;;14160:7;14139:17;;:28;;14108:59;14105:262;;;14217:14;14208:8;:23;14184:21;:47;;;;14276:21;;14262:11;;:35;14247:12;:50;;;;14327:12;;14313:11;:26;;;;14105:262;14401:7;14381:17;;:27;:59;;;;;14433:7;14412:17;;:28;;14381:59;14378:263;;;14490:15;14481:8;:24;14457:21;:48;;;;14550:21;;14536:11;;:35;14521:12;:50;;;;14601:12;;14587:11;:26;;;;14378:263;14675:7;14655:17;;:27;:59;;;;;14707:7;14686:17;;:28;;14655:59;14652:248;;;14764:15;14755:8;:24;14731:21;:48;;;;14824:21;;14810:11;;:35;14795:12;:50;;;;14875:12;;14861:11;:26;;;;14652:248;9137:5771;:::o;24361:205::-;24432:7;24453:22;24521:3;24508:12;;:16;;;;;;24493:12;;:31;24478:11;:47;24453:72;;24543:14;24536:21;;;24361:205;;;:::o;27360:503::-;27455:1;27436:21;;:7;:21;;;;27428:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;27537:4;27511:40;;27520:7;27511:40;;;27544:6;27511:40;;;;;;;;;;;;;;;;;;27587:34;27614:6;27587:13;:22;27601:7;27587:22;;;;;;;;;;;;;;;;:26;;:34;;;;:::i;:::-;27562:13;:22;27576:7;27562:22;;;;;;;;;;;;;;;:59;;;;27720:29;27742:6;27720:17;;:21;;:29;;;;:::i;:::-;27700:17;:49;;;;27787:36;27816:6;27787:15;:24;27803:7;27787:24;;;;;;;;;;;;;;;;:28;;:36;;;;:::i;:::-;27760:15;:24;27776:7;27760:24;;;;;;;;;;;;;;;:63;;;;27834:21;27848:6;27834:13;:21::i;:::-;27360:503;;:::o;28700:136::-;28758:7;28785:43;28789:1;28792;28785:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;28778:50;;28700:136;;;;:::o;14930:5851::-;15015:1;14994:17;;:22;;:52;;;;;15040:6;15020:17;;:26;14994:52;14991:230;;;15096:6;15087:8;:15;15063:21;:39;;;;15146:21;;15133:10;;:34;15118:12;:49;;;;15196:12;;15183:10;:25;;;;14991:230;15256:6;15235:17;;:27;;:59;;;;;15287:7;15266:17;;:28;;15235:59;15232:240;;;15344:9;15335:8;:18;15311:21;:42;;;;15397:21;;15384:10;;:34;15369:12;:49;;;;15447:12;;15434:10;:25;;;;15232:240;15506:7;15486:17;;:27;:59;;;;;15538:7;15517:17;;:28;;15486:59;15483:240;;;15595:9;15586:8;:18;15562:21;:42;;;;15648:21;;15635:10;;:34;15620:12;:49;;;;15698:12;;15685:10;:25;;;;15483:240;15757:7;15737:17;;:27;:59;;;;;15789:7;15768:17;;:28;;15737:59;15734:240;;;15846:9;15837:8;:18;15813:21;:42;;;;15899:21;;15886:10;;:34;15871:12;:49;;;;15949:12;;15936:10;:25;;;;15734:240;15997:7;15977:17;;:27;:59;;;;;16029:7;16008:17;;:28;;15977:59;15974:241;;;16086:10;16077:8;:19;16053:21;:43;;;;16140:21;;16127:10;;:34;16112:12;:49;;;;16190:12;;16177:10;:25;;;;15974:241;16249:7;16229:17;;:27;:59;;;;;16281:7;16260:17;;:28;;16229:59;16226:241;;;16338:10;16329:8;:19;16305:21;:43;;;;16392:21;;16379:10;;:34;16364:12;:49;;;;16442:12;;16429:10;:25;;;;16226:241;16501:7;16481:17;;:27;:59;;;;;16533:7;16512:17;;:28;;16481:59;16478:241;;;16590:10;16581:8;:19;16557:21;:43;;;;16644:21;;16631:10;;:34;16616:12;:49;;;;16694:12;;16681:10;:25;;;;16478:241;16753:7;16733:17;;:27;:59;;;;;16785:7;16764:17;;:28;;16733:59;16730:241;;;16842:10;16833:8;:19;16809:21;:43;;;;16896:21;;16883:10;;:34;16868:12;:49;;;;16946:12;;16933:10;:25;;;;16730:241;17016:7;16996:17;;:27;:59;;;;;17048:7;17027:17;;:28;;16996:59;16993:257;;;17105:11;17096:8;:20;17072:21;:44;;;;17160:21;;17147:10;;:34;17132:12;:49;;;;17210:12;;17197:10;:25;;;;16993:257;17273:7;17253:17;;:27;:59;;;;;17305:7;17284:17;;:28;;17253:59;17250:259;;;17362:11;17353:8;:20;17329:21;:44;;;;17418:21;;17404:11;;:35;17389:12;:50;;;;17469:12;;17455:11;:26;;;;17250:259;17532:7;17512:17;;:27;:59;;;;;17564:7;17543:17;;:28;;17512:59;17509:259;;;17621:11;17612:8;:20;17588:21;:44;;;;17677:21;;17663:11;;:35;17648:12;:50;;;;17728:12;;17714:11;:26;;;;17509:259;17791:7;17771:17;;:27;:59;;;;;17823:7;17802:17;;:28;;17771:59;17768:260;;;17880:12;17871:8;:21;17847;:45;;;;17937:21;;17923:11;;:35;17908:12;:50;;;;17988:12;;17974:11;:26;;;;17768:260;18051:7;18031:17;;:27;:59;;;;;18083:7;18062:17;;:28;;18031:59;18028:260;;;18140:12;18131:8;:21;18107;:45;;;;18197:21;;18183:11;;:35;18168:12;:50;;;;18248:12;;18234:11;:26;;;;18028:260;18322:7;18302:17;;:27;:59;;;;;18354:7;18333:17;;:28;;18302:59;18299:260;;;18411:12;18402:8;:21;18378;:45;;;;18468:21;;18454:11;;:35;18439:12;:50;;;;18519:12;;18505:11;:26;;;;18299:260;18593:7;18573:17;;:27;:59;;;;;18625:7;18604:17;;:28;;18573:59;18570:260;;;18682:12;18673:8;:21;18649;:45;;;;18739:21;;18725:11;;:35;18710:12;:50;;;;18790:12;;18776:11;:26;;;;18570:260;18864:7;18844:17;;:27;:59;;;;;18896:7;18875:17;;:28;;18844:59;18841:261;;;18953:13;18944:8;:22;18920:21;:46;;;;19011:21;;18997:11;;:35;18982:12;:50;;;;19062:12;;19048:11;:26;;;;18841:261;19148:7;19128:17;;:27;:59;;;;;19180:7;19159:17;;:28;;19128:59;19125:261;;;19237:13;19228:8;:22;19204:21;:46;;;;19295:21;;19281:11;;:35;19266:12;:50;;;;19346:12;;19332:11;:26;;;;19125:261;19432:7;19412:17;;:27;:59;;;;;19464:7;19443:17;;:28;;19412:59;19409:261;;;19521:13;19512:8;:22;19488:21;:46;;;;19579:21;;19565:11;;:35;19550:12;:50;;;;19630:12;;19616:11;:26;;;;19409:261;19716:7;19696:17;;:27;:59;;;;;19748:7;19727:17;;:28;;19696:59;19693:262;;;19805:14;19796:8;:23;19772:21;:47;;;;19864:21;;19850:11;;:35;19835:12;:50;;;;19915:12;;19901:11;:26;;;;19693:262;20001:7;19981:17;;:27;:59;;;;;20033:7;20012:17;;:28;;19981:59;19978:262;;;20090:14;20081:8;:23;20057:21;:47;;;;20149:21;;20135:11;;:35;20120:12;:50;;;;20200:12;;20186:11;:26;;;;19978:262;20274:7;20254:17;;:27;:59;;;;;20306:7;20285:17;;:28;;20254:59;20251:263;;;20363:15;20354:8;:24;20330:21;:48;;;;20423:21;;20409:11;;:35;20394:12;:50;;;;20474:12;;20460:11;:26;;;;20251:263;20548:7;20528:17;;:27;:59;;;;;20580:7;20559:17;;:28;;20528:59;20525:248;;;20637:15;20628:8;:24;20604:21;:48;;;;20697:21;;20683:11;;:35;20668:12;:50;;;;20748:12;;20734:11;:26;;;;20525:248;14930:5851;:::o;29139:192::-;29225:7;29258:1;29253;:6;;29261:12;29245:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;29245:29:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;29285:9;29301:1;29297;:5;29285:17;;29322:1;29315:8;;;29139:192;;;;;:::o

Swarm Source

ipfs://92237360f3de7686b676a858f3f02642d674fcc0ac39125ec6a34e1a6c4b696f
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.