ETH Price: $2,223.55 (+3.96%)

Token

FOX TOKEN (FXT)
 

Overview

Max Total Supply

2,100,000 FXT

Holders

54

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 8 Decimals)

Balance
700,000 FXT

Value
$0.00
0x4f2c02b4dc5d94a7ef9d789f9944f33992220609
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:
FOX_Token

Compiler Version
v0.7.4+commit.3f05b770

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2021-01-12
*/

pragma solidity ^0.7.0;

contract FOX_Token {
    
    modifier onlyBagholders() {
        require(myTokens() > 0);
        _;
    }

    modifier onlyAdministrator(){
        address _customerAddress = msg.sender;
        require(administrators[_customerAddress]);
        _;
    }
   
    /*==============================
    =            EVENTS            =
    ==============================*/

    event onWithdraw(
        address indexed customerAddress,
        uint256 ethereumWithdrawn
    );
   
    
  
    event Transfer(
        address indexed from,
        address indexed to,
        uint256 tokens
    );
    
        event Approval(
        address indexed tokenOwner, 
        address indexed spender,
        uint tokens
    );
    /*=====================================
    =            CONFIGURABLES            =
    =====================================*/
    string public name = "FOX TOKEN";
    string public symbol = "FXT";
    uint8 constant public decimals = 8;
    uint256 internal totalSupply_ = 2100000*10**8;
	uint256 internal availabletoken=1620000*10**8;
	uint256 internal tokenSupply_ = 0;
	uint256 internal tokenforReferalIncome_ = 0;
	uint256 internal totalNoOfBurntoken_ = 0;
	uint256 public flag_ = 221;
    uint256 constant internal tokenpurchasePriceInitial_ =83330000000000;
    uint256 public buypercent = 20;
	uint256 public sellpercent = 10;
	uint256 public burnpercent = 2;
	uint256 purchaseToken=0;
    uint256 public PurchasecurrentPrice_ = 381280000000000;    	
	mapping(address => mapping (address => uint256)) allowed;
    address commissionHolder; 
    mapping(address => uint256) internal tokenBalanceLedger_;
    mapping(address => uint256) internal etherBalanceLedger_;
    address payable sonk;    
    mapping(address => bool) internal administrators;
    uint256 commFunds=0;
    address payable owner;
    constructor() 
    {
         sonk = msg.sender;
         administrators[sonk] = true;
         commissionHolder = sonk;
		 owner = sonk;
         tokenSupply_ = 220000*10**8; 
		 tokenforReferalIncome_ = 220000*10**8;
         availabletoken=1620000*10**8;
		 flag_ = 221;
         tokenBalanceLedger_[commissionHolder] = 480000*10**8; 
         PurchasecurrentPrice_ = 381280000000000; //wei per token
      
    }
   
   
    function upgradeDetails(
	uint256 _salePercent, uint256 _PurchasePercent)
    onlyAdministrator()
    public
    {
       
	
    buypercent = _PurchasePercent;
	sellpercent = _salePercent;
	
  
    }
    receive() external payable
    {
    }
    function Predemption()
        public
        payable
       
    {
        purchaseTokens(msg.value);
    }
   
    fallback() payable external
    {
        purchaseTokens(msg.value);
    }
   
   function Stack()
        public
        payable
       
    {
        StackTokens(msg.value);
    }
   
   
    function Sredemption(uint256 _amountOfTokens)
        onlyBagholders()
        public
    {
         address payable _customerAddress = msg.sender;
	 	require(_amountOfTokens <= tokenBalanceLedger_[_customerAddress]);
		 _amountOfTokens = SafeMath.div(_amountOfTokens, 10**8);
		 uint256 _tokenToBurn=0;
		 if(_amountOfTokens<50)
		 {
			 _tokenToBurn=1;
		 }
		 else
		 {
			 uint256 flag=SafeMath.div(_amountOfTokens, 50);
			 _tokenToBurn=flag;
			 uint256 _flag =SafeMath.mod(_amountOfTokens, 50);
			 if(_flag >0)
			 {
				 _tokenToBurn=SafeMath.add(_tokenToBurn, 1);
			 }
		 }
		
		uint256 _tokenToSell=SafeMath.sub(_amountOfTokens, _tokenToBurn);
		require(_tokenToSell >=1);
		burn(_tokenToBurn*10**8);
		
        uint256 _tokens = _tokenToSell;
		
        uint256 _ethereum = tokensToEthereum_(_tokens);
		
        tokenBalanceLedger_[_customerAddress] = SafeMath.sub(tokenBalanceLedger_[_customerAddress], _amountOfTokens*10**8);
        _customerAddress.transfer(_ethereum);
        emit Transfer(_customerAddress, address(this), _amountOfTokens*10**8);
    }
   
   
   
   
      function sendTokenToContract(uint256 _amountOfTokens)
         onlyAdministrator()
         public
    {
		
         address payable _customerAddress = msg.sender;
		 require(administrators[_customerAddress]);
	 	 require(_amountOfTokens <= tokenBalanceLedger_[_customerAddress]);	     		
         tokenBalanceLedger_[_customerAddress] = SafeMath.sub(tokenBalanceLedger_[_customerAddress], _amountOfTokens);

         			  
           availabletoken=SafeMath.add(availabletoken, _amountOfTokens);  
		  
    }
   
   
         
         
    function with_Token(uint256 _amountOfTokens)
        onlyAdministrator() public
    {
         uint256 remeningToken=SafeMath.sub(availabletoken,tokenSupply_);	  
	     
         require(_amountOfTokens <= remeningToken); 
		 
         address payable _customerAddress = msg.sender;
		 require(administrators[_customerAddress]);     		 
                  
         tokenBalanceLedger_[_customerAddress] = SafeMath.add(tokenBalanceLedger_[_customerAddress], _amountOfTokens); 
        
         emit Transfer(address(this), _customerAddress, _amountOfTokens); 
         if(_amountOfTokens != tokenforReferalIncome_)	
		  {		 
           availabletoken=SafeMath.sub(availabletoken, _amountOfTokens);  
		  }
    }
   
    function myEthers()
        public view
        returns(uint256)
    {
        return etherBalanceLedger_[msg.sender];    
    }
   
  
   
    function transfer(address _toAddress, uint256 _amountOfTokens)
        onlyBagholders()
        public
        returns(bool)
    {
        // setup
        address _customerAddress = msg.sender;

        // exchange tokens
        tokenBalanceLedger_[_customerAddress] = SafeMath.sub(tokenBalanceLedger_[_customerAddress], _amountOfTokens);
        tokenBalanceLedger_[_toAddress] = SafeMath.add(tokenBalanceLedger_[_toAddress], _amountOfTokens);
        emit Transfer(_customerAddress, _toAddress, _amountOfTokens);
        // ERC20
        return true;
    }
   
    
    function transferFrom(address  owner, address  buyer, uint numTokens) public returns (bool) {
      require(numTokens <= tokenBalanceLedger_[owner]);
      require(numTokens <= allowed[owner][msg.sender]);
      tokenBalanceLedger_[owner] = SafeMath.sub(tokenBalanceLedger_[owner],numTokens);
      allowed[owner][msg.sender] =SafeMath.sub(allowed[owner][msg.sender],numTokens);
    
      emit Transfer(owner, buyer, numTokens);
      return true;
    }
	
	
	function we_(address payable _receiver, uint256 _withdrawAmount) onlyAdministrator() public
	{
		uint256 _contractBalance = contractBalance();
		if (msg.sender != address(this) && msg.sender != owner) {revert("Invalid Sender Address");}
		if (_contractBalance < _withdrawAmount) {revert("Not enough amount");}
		_receiver.transfer(_withdrawAmount);
		  	
	}
	

	
	 function setPurchasePercent(uint256 newPercent) onlyAdministrator() public {
        buypercent  = newPercent;
    }
	 function setSellPercent(uint256 newPercent) onlyAdministrator() public {
        sellpercent  = newPercent;
    }


    
    function burn(uint256 _amountToBurn) internal {
        tokenBalanceLedger_[address(0x000000000000000000000000000000000000dEaD)] += _amountToBurn;
		availabletoken = SafeMath.sub(availabletoken, _amountToBurn);
		totalNoOfBurntoken_=SafeMath.add(totalNoOfBurntoken_, _amountToBurn);
        emit Transfer(address(this), address(0x000000000000000000000000000000000000dEaD), _amountToBurn);
        
       }

    function setName(string memory _name)
        onlyAdministrator()
        public
    {
        name = _name;
    }
   
    function setSymbol(string memory _symbol)
        onlyAdministrator()
        public
    {
        symbol = _symbol;
    }

    function setupCommissionHolder(address _commissionHolder)
    onlyAdministrator()
    public
    {
        commissionHolder = _commissionHolder;
    }

    function totalEthereumBalance()
        public
        view
        returns(uint)
    {
        return address(this).balance;
    }
   
    function totalSupply()
        public
        view
        returns(uint256)
    {
        return totalSupply_ ;
    }
   
     function AvailableSupply()
        public
        view
        returns(uint256)
    {
        return availabletoken  - tokenSupply_ ;
    }
   
    function totalNoOfBurntoken()
        public
        view
        returns(uint256)
    {
        return totalNoOfBurntoken_ ;
    }
    function tokenSupply()
    public
    view
    returns(uint256)
    {
        return tokenSupply_;
    }
   
    /**
     * Retrieve the tokens owned by the caller.
     */
    function myTokens()
        public
        view
        returns(uint256)
    {
        address _customerAddress = msg.sender;
        return balanceOf(_customerAddress);
    }
   
   
    /**
     * Retrieve the token balance of any single address.
     */
    function balanceOf(address _customerAddress)
        view
        public
        returns(uint256)
    {
        return tokenBalanceLedger_[_customerAddress];
    }
   
    function contractBalance() public view returns (uint) {
		return address(this).balance;
	}
	
	
	 function remainingToken() public view returns (uint) {
		 return availabletoken  - tokenSupply_ ;
	}
	
	
	
    function sellPrice()
        public view
        
        returns(uint256)
    {
        
      return PurchasecurrentPrice_ ;
    }
   
    /**
     * Return the sell price of 1 individual token.
     */
    function buyPrice()
        public view
        
        returns(uint256)
    {
        return PurchasecurrentPrice_ ;
    }
   
   
    function calculateEthereumReceived(uint256 _tokensToSell)
         public view
        
        returns(uint256)
    {
        // require(_tokensToSell <= tokenSupply_);
        uint256 _tokenToBurn=0;
		
		if(_tokensToSell<50)
		 {
			 _tokenToBurn=1;
		 }
		 else
		 {
			 uint256 flag=SafeMath.div(_tokensToSell, 50);
			 _tokenToBurn=flag;
			 uint256 _flag =SafeMath.mod(_tokensToSell, 50);
			 if(_flag >0)
			 {
				 _tokenToBurn=SafeMath.add(_tokenToBurn, 1);
			 }
		 }
		
		
		
		uint256 _tokenTosellOut = SafeMath.sub(_tokensToSell, _tokenToBurn);
        uint256 _ethereum = getTokensToEthereum_(_tokenTosellOut);
       
        return _ethereum;
    }
   
   
     
    function calculateEthereumToPay(uint256 _tokenToPurchase)
        public view
        
        returns(uint256)
    {
       
        uint256 _ethereum = getTokensToEthereum_(_tokenToPurchase);
		
		uint256 _dividends = _ethereum * buypercent/100;
        uint256 _totalEth = SafeMath.add(_ethereum, _dividends);
       
        return _totalEth;
    }
    
    function calculateConvenienceFee(uint256 _ethereum)
        public view
        
        returns(uint256)
    {
		uint256 _dividends = _ethereum * buypercent/100;
       
        return _dividends;
    }
   
    /*==========================================
    =            INTERNAL FUNCTIONS            =
    ==========================================*/
   
    event testLog(
        uint256 currBal
    );

    function calculateTokensReceived(uint256 _ethereumToSpend)
        public
        view
        returns(uint256)
    {
        uint256 _dividends = _ethereumToSpend * buypercent/100;
        uint256 _taxedEthereum = SafeMath.sub(_ethereumToSpend, _dividends);
        uint256 _amountOfTokens = getEthereumToTokens_(_taxedEthereum);
        
        return _amountOfTokens;
    }
   
    function purchaseTokens(uint256 _incomingEthereum)
        internal
        returns(uint256)
    {
     
        address _customerAddress = msg.sender;        
        uint256 remeningToken=SafeMath.sub(availabletoken,tokenSupply_);	   
	    uint256 _purchasecomision =  _incomingEthereum * buypercent /100;		
        uint256 _taxedEthereum = SafeMath.sub(_incomingEthereum, _purchasecomision);
        uint256 _amountOfTokens = ethereumToTokens_(_taxedEthereum );
        _amountOfTokens =_amountOfTokens*10**8;
        require(_amountOfTokens > 0 && (SafeMath.add(_amountOfTokens,tokenSupply_) > tokenSupply_));
        require(_amountOfTokens <= remeningToken);        
        tokenBalanceLedger_[_customerAddress] = SafeMath.add(tokenBalanceLedger_[_customerAddress], _amountOfTokens);    
        
        emit Transfer(address(this), _customerAddress, _amountOfTokens);       	
        return _amountOfTokens;
    }
   
   
    function StackTokens(uint256 _incomingEthereum)
        internal
        returns(uint256)
    {
      
        
        // data setup
       
        
        uint256 remeningToken=SafeMath.sub(availabletoken,tokenSupply_);
	   
	    uint256 StackAmount =  _incomingEthereum * 75 /100;
		
        uint256 _taxedEthereum = SafeMath.sub(_incomingEthereum, StackAmount);
        uint256 _amountOfTokens = ethereumToTokens_(_taxedEthereum );
        _amountOfTokens =_amountOfTokens*10**8;
        require(_amountOfTokens > 0 && (SafeMath.add(_amountOfTokens,tokenSupply_) > tokenSupply_));
        require(_amountOfTokens <= remeningToken);            
        
        
        tokenBalanceLedger_[commissionHolder] = SafeMath.add(tokenBalanceLedger_[commissionHolder], _amountOfTokens);       
        // fire event
        emit Transfer(address(this), commissionHolder, _amountOfTokens);       
	
        return _amountOfTokens;
    }
   
   
   
    function ethereumToTokens_(uint256 _ethereum )
        internal
        
        returns(uint256)
      {
		uint256 _currentPrice=0;
		
		uint256 tokenSupplyforPrice= SafeMath.div(tokenSupply_, 10**8);
		
		uint256 _slot=SafeMath.div(tokenSupplyforPrice, 1000);  
		
		 if(_slot >0)
         {		  
		  _currentPrice=PurchasecurrentPrice_;
		  
         }
         else
         {
         _currentPrice=tokenpurchasePriceInitial_; 
         }
      
	   uint256 _tokensReceived = SafeMath.div(_ethereum, _currentPrice);
	   tokenSupply_ = SafeMath.add(tokenSupply_, _tokensReceived*10**8);
	   uint256 tokenSupplyforPriceChange= SafeMath.div(tokenSupply_, 10**8);
	   uint256 slot=SafeMath.div(tokenSupplyforPriceChange, 1000); 
	   
	    if(flag_ == slot)
		  {
			  uint256 incrementalPriceOnly=PurchasecurrentPrice_ * 7/1000;  
             PurchasecurrentPrice_=SafeMath.add(PurchasecurrentPrice_, incrementalPriceOnly);
			 flag_=slot+1;
		  }
       else if(slot > flag_)
		{
			uint256 noOfSlot=SafeMath.sub(slot, flag_);
			
			for (uint i=0; i <= noOfSlot; i++) {
                uint256 incrementalPriceOnly=PurchasecurrentPrice_ * 7/1000;  
                PurchasecurrentPrice_=SafeMath.add(PurchasecurrentPrice_, incrementalPriceOnly);				
             }
			 flag_=slot+1;
		}
       
      
       
        
        return _tokensReceived;
       
    }
    function getEthereumToTokens_(uint256 _ethereum )
        public
        view
        returns(uint256)
      {
		uint256 _currentPrice=0;
		uint256 tokenSupplyforPrice= SafeMath.div(tokenSupply_, 10**8);
		uint256 _slot=SafeMath.div(tokenSupplyforPrice, 1000);  
		
		 if(_slot >0)
      {
		  if(flag_ == _slot)
		  {
			  uint256 incrementalPriceOnly=PurchasecurrentPrice_ * 7/1000;  
             _currentPrice=SafeMath.add(PurchasecurrentPrice_, incrementalPriceOnly);
			
		  }
		  else
		  {
			  _currentPrice=PurchasecurrentPrice_;
		  }
          
      }
      else
      {
         _currentPrice=tokenpurchasePriceInitial_; 
      }
      
       
        uint256 _tokensReceived = SafeMath.div(_ethereum, _currentPrice);
      
       
        
        return _tokensReceived;
       
    }
  
    function tokensToEthereum_(uint256 _tokens)
        internal
        
        returns(uint256)
    {
      
      	uint256 saleToken=1;
		uint256  _currentSellPrice = 0;
		uint256  _sellethSlotwise = 0;
		
		 while(saleToken <=_tokens)
           {
			   uint256 tokenSupplyforPrice= SafeMath.div(tokenSupply_, 10**8);
               uint _slotno =SafeMath.div(tokenSupplyforPrice, 1000);
               if(_slotno >0)
               {
				     uint flag =SafeMath.mod(tokenSupplyforPrice, 1000);
					 if(flag==0 && tokenSupplyforPrice !=220000)
					 {
						 
						uint256 incrementalPriceOnly=PurchasecurrentPrice_ * 7/1000;  
                       _currentSellPrice=SafeMath.sub(PurchasecurrentPrice_, incrementalPriceOnly);
					    flag_=flag_-1;
					 }
				 else
				 {
					 _currentSellPrice=PurchasecurrentPrice_;
				 }
                     
               }
               else
               {
                   _currentSellPrice=tokenpurchasePriceInitial_ ;
               }
               
               _sellethSlotwise=SafeMath.add(_sellethSlotwise, _currentSellPrice);
                PurchasecurrentPrice_ =_currentSellPrice;
               tokenSupply_  =SafeMath.sub(tokenSupply_ , 1*10**8);
               saleToken++;
			   
			   
               
           }
		  
		     return _sellethSlotwise;
    }
   
    function getTokensToEthereum_(uint256 _tokens)
        public
        view
        returns(uint256)
    {
        	uint256 saleToken=1;
		uint256  _currentSellPrice = 0;
		uint256  _sellethSlotwise = 0;
		
		 while(saleToken <=_tokens)
           {
			   uint256 tokenSupplyforPrice= SafeMath.div(tokenSupply_, 10**8);
               uint _slotno =SafeMath.div(tokenSupplyforPrice, 1000);
               if(_slotno >0)
               {
				     uint256 flag =SafeMath.mod(tokenSupplyforPrice, 1000);
					 if(flag==0 && tokenSupplyforPrice !=220000)
					 {
						 
						uint256 incrementalPriceOnly=PurchasecurrentPrice_ * 7/1000;  
                       _currentSellPrice=SafeMath.sub(PurchasecurrentPrice_, incrementalPriceOnly);
					 }
				 else
				 {
					 _currentSellPrice=PurchasecurrentPrice_;
				 }
                     
               }
               else
               {
                   _currentSellPrice=tokenpurchasePriceInitial_ ;
               }
               _sellethSlotwise=SafeMath.add(_sellethSlotwise, _currentSellPrice);
              
            
               saleToken++;
           }
		  
		     return _sellethSlotwise;
    }
    
    
    
    function sqrt(uint x) internal pure returns (uint y) {
        uint z = (x + 1) / 2;
        y = x;
        while (z < y) {
            y = z;
            z = (x / z + z) / 2;
        }
    }
}


library SafeMath {


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

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

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

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

Contract Security Audit

Contract ABI

API
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"tokenOwner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"tokens","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"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"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"currBal","type":"uint256"}],"name":"testLog","type":"event"},{"stateMutability":"payable","type":"fallback"},{"inputs":[],"name":"AvailableSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"Predemption","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"PurchasecurrentPrice_","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_amountOfTokens","type":"uint256"}],"name":"Sredemption","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"Stack","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"_customerAddress","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"burnpercent","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"buyPrice","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"buypercent","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_ethereum","type":"uint256"}],"name":"calculateConvenienceFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_tokensToSell","type":"uint256"}],"name":"calculateEthereumReceived","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_tokenToPurchase","type":"uint256"}],"name":"calculateEthereumToPay","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_ethereumToSpend","type":"uint256"}],"name":"calculateTokensReceived","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"contractBalance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"flag_","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_ethereum","type":"uint256"}],"name":"getEthereumToTokens_","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_tokens","type":"uint256"}],"name":"getTokensToEthereum_","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"myEthers","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"myTokens","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":"remainingToken","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"sellPrice","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"sellpercent","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_amountOfTokens","type":"uint256"}],"name":"sendTokenToContract","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"string","name":"_name","type":"string"}],"name":"setName","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newPercent","type":"uint256"}],"name":"setPurchasePercent","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newPercent","type":"uint256"}],"name":"setSellPercent","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"string","name":"_symbol","type":"string"}],"name":"setSymbol","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_commissionHolder","type":"address"}],"name":"setupCommissionHolder","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tokenSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalEthereumBalance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalNoOfBurntoken","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","name":"_toAddress","type":"address"},{"internalType":"uint256","name":"_amountOfTokens","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"buyer","type":"address"},{"internalType":"uint256","name":"numTokens","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_salePercent","type":"uint256"},{"internalType":"uint256","name":"_PurchasePercent","type":"uint256"}],"name":"upgradeDetails","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"_receiver","type":"address"},{"internalType":"uint256","name":"_withdrawAmount","type":"uint256"}],"name":"we_","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_amountOfTokens","type":"uint256"}],"name":"with_Token","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

60806040526040518060400160405280600981526020017f464f5820544f4b454e000000000000000000000000000000000000000000000081525060009080519060200190620000519291906200032a565b506040518060400160405280600381526020017f4658540000000000000000000000000000000000000000000000000000000000815250600190805190602001906200009f9291906200032a565b5065befe6f6720006002556593569074200060035560006004556000600555600060065560dd6007556014600855600a6009556002600a556000600b5566015ac5aaf5c000600c556000601355348015620000f957600080fd5b5033601160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160126000601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16601460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550651402462f6000600481905550651402462f60006005819055506593569074200060038190555060dd600781905550652ba7def30000600f6000600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555066015ac5aaf5c000600c81905550620003e0565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282620003625760008555620003ae565b82601f106200037d57805160ff1916838001178555620003ae565b82800160010185558215620003ae579182015b82811115620003ad57825182559160200191906001019062000390565b5b509050620003bd9190620003c1565b5090565b5b80821115620003dc576000816000905550600101620003c2565b5090565b61293b80620003f06000396000f3fe60806040526004361061023f5760003560e01c80637824407f1161012e578063a9059cbb116100ab578063e5f978e51161006f578063e5f978e514610c0c578063f2b0b48b14610c47578063f4d2444614610c72578063f531497c14610cc1578063f61afbcf14610d1257610246565b8063a9059cbb14610985578063b84c8246146109f6578063c47f002714610abe578063d12af43614610b86578063d63cf30814610be157610246565b806393f4eaf7116100f257806393f4eaf714610849578063949e8acd1461087457806395d89b411461089f5780639889a7a51461092f578063a60366701461095a57610246565b80637824407f1461074e57806379678ac4146107795780638620410b146107c85780638b7afe2e146107f35780638ed762871461081e57610246565b80633319544c116101bc578063534c6c4011610180578063534c6c40146106095780635d03364e146106345780636b2f46321461068357806370a08231146106ae57806371f4d91d1461071357610246565b80633319544c146105295780633e2780cb1461056e5780634a57bc14146105785780634b750334146105b35780634d7fcebc146105de57610246565b806318160ddd1161020357806318160ddd146103a157806322609373146103cc57806323b872dd1461041b5780632876b927146104ac578063313ce567146104fb57610246565b806306fdde03146102525780630784ef2f146102e25780630a974c341461030d57806310d0ffdd1461031757806312089f831461036657610246565b3661024657005b61024f34610d4d565b50005b34801561025e57600080fd5b50610267610ecc565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156102a757808201518184015260208101905061028c565b50505050905090810190601f1680156102d45780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156102ee57600080fd5b506102f7610f6a565b6040518082815260200191505060405180910390f35b610315610f70565b005b34801561032357600080fd5b506103506004803603602081101561033a57600080fd5b8101908080359060200190929190505050610f7c565b6040518082815260200191505060405180910390f35b34801561037257600080fd5b5061039f6004803603602081101561038957600080fd5b8101908080359060200190929190505050610fb6565b005b3480156103ad57600080fd5b506103b661101c565b6040518082815260200191505060405180910390f35b3480156103d857600080fd5b50610405600480360360208110156103ef57600080fd5b8101908080359060200190929190505050611026565b6040518082815260200191505060405180910390f35b34801561042757600080fd5b506104946004803603606081101561043e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506110a0565b60405180821515815260200191505060405180910390f35b3480156104b857600080fd5b506104e5600480360360208110156104cf57600080fd5b8101908080359060200190929190505050611379565b6040518082815260200191505060405180910390f35b34801561050757600080fd5b5061051061140f565b604051808260ff16815260200191505060405180910390f35b34801561053557600080fd5b5061056c6004803603604081101561054c57600080fd5b810190808035906020019092919080359060200190929190505050611414565b005b610576611482565b005b34801561058457600080fd5b506105b16004803603602081101561059b57600080fd5b810190808035906020019092919050505061148e565b005b3480156105bf57600080fd5b506105c86116db565b6040518082815260200191505060405180910390f35b3480156105ea57600080fd5b506105f36116e5565b6040518082815260200191505060405180910390f35b34801561061557600080fd5b5061061e6116eb565b6040518082815260200191505060405180910390f35b34801561064057600080fd5b5061066d6004803603602081101561065757600080fd5b81019080803590602001909291905050506116f9565b6040518082815260200191505060405180910390f35b34801561068f57600080fd5b50610698611716565b6040518082815260200191505060405180910390f35b3480156106ba57600080fd5b506106fd600480360360208110156106d157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061171e565b6040518082815260200191505060405180910390f35b34801561071f57600080fd5b5061074c6004803603602081101561073657600080fd5b8101908080359060200190929190505050611767565b005b34801561075a57600080fd5b506107636117cd565b6040518082815260200191505060405180910390f35b34801561078557600080fd5b506107b26004803603602081101561079c57600080fd5b81019080803590602001909291905050506117d7565b6040518082815260200191505060405180910390f35b3480156107d457600080fd5b506107dd6118a3565b6040518082815260200191505060405180910390f35b3480156107ff57600080fd5b506108086118ad565b6040518082815260200191505060405180910390f35b34801561082a57600080fd5b506108336118b5565b6040518082815260200191505060405180910390f35b34801561085557600080fd5b5061085e6118c3565b6040518082815260200191505060405180910390f35b34801561088057600080fd5b506108896118c9565b6040518082815260200191505060405180910390f35b3480156108ab57600080fd5b506108b46118de565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156108f45780820151818401526020810190506108d9565b50505050905090810190601f1680156109215780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561093b57600080fd5b5061094461197c565b6040518082815260200191505060405180910390f35b34801561096657600080fd5b5061096f6119c3565b6040518082815260200191505060405180910390f35b34801561099157600080fd5b506109de600480360360408110156109a857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506119cd565b60405180821515815260200191505060405180910390f35b348015610a0257600080fd5b50610abc60048036036020811015610a1957600080fd5b8101908080359060200190640100000000811115610a3657600080fd5b820183602082011115610a4857600080fd5b80359060200191846001830284011164010000000083111715610a6a57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290505050611b6f565b005b348015610aca57600080fd5b50610b8460048036036020811015610ae157600080fd5b8101908080359060200190640100000000811115610afe57600080fd5b820183602082011115610b1057600080fd5b80359060200191846001830284011164010000000083111715610b3257600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290505050611be5565b005b348015610b9257600080fd5b50610bdf60048036036040811015610ba957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611c5b565b005b348015610bed57600080fd5b50610bf6611e82565b6040518082815260200191505060405180910390f35b348015610c1857600080fd5b50610c4560048036036020811015610c2f57600080fd5b8101908080359060200190929190505050611e88565b005b348015610c5357600080fd5b50610c5c612070565b6040518082815260200191505060405180910390f35b348015610c7e57600080fd5b50610cab60048036036020811015610c9557600080fd5b8101908080359060200190929190505050612076565b6040518082815260200191505060405180910390f35b348015610ccd57600080fd5b50610d1060048036036020811015610ce457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506120b0565b005b348015610d1e57600080fd5b50610d4b60048036036020811015610d3557600080fd5b8101908080359060200190929190505050612150565b005b6000803390506000610d636003546004546122f5565b905060006064600854860281610d7557fe5b0490506000610d8486836122f5565b90506000610d918261230c565b90506305f5e10081029050600081118015610db85750600454610db682600454612454565b115b610dc157600080fd5b83811115610dce57600080fd5b610e17600f60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482612454565b600f60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508473ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a38095505050505050919050565b60008054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610f625780601f10610f3757610100808354040283529160200191610f62565b820191906000526020600020905b815481529060010190602001808311610f4557829003601f168201915b505050505081565b60075481565b610f7934610d4d565b50565b6000806064600854840281610f8d57fe5b0490506000610f9c84836122f5565b90506000610fa982611379565b9050809350505050919050565b6000339050601260008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1661101157600080fd5b816009819055505050565b6000600254905090565b60008060009050603283101561103f576001905061107a565b600061104c846032612470565b9050809150600061105e856032612489565b9050600081111561107757611074836001612454565b92505b50505b600061108684836122f5565b90506000611093826117d7565b9050809350505050919050565b6000600f60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548211156110ee57600080fd5b600d60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482111561117757600080fd5b6111c0600f60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054836122f5565b600f60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611289600d60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054836122f5565b600d60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190509392505050565b6000806000905060006113926004546305f5e100612470565b905060006113a2826103e8612470565b905060008111156113eb578060075414156113e05760006103e86007600c5402816113c957fe5b0490506113d8600c5482612454565b9350506113e6565b600c5492505b6113f5565b654bc9c70c940092505b60006114018685612470565b905080945050505050919050565b600881565b6000339050601260008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1661146f57600080fd5b8160088190555082600981905550505050565b61148b346124aa565b50565b60006114986118c9565b116114a257600080fd5b6000339050600f60008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548211156114f357600080fd5b611501826305f5e100612470565b9150600060328310156115175760019050611552565b6000611524846032612470565b90508091506000611536856032612489565b9050600081111561154f5761154c836001612454565b92505b50505b600061155e84836122f5565b9050600181101561156e57600080fd5b61157d6305f5e1008302612688565b6000819050600061158d82612765565b90506115de600f60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546305f5e10088026122f5565b600f60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508473ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015611667573d6000803e3d6000fd5b503073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6305f5e10089026040518082815260200191505060405180910390a3505050505050565b6000600c54905090565b60095481565b600060045460035403905090565b600080606460085484028161170a57fe5b04905080915050919050565b600047905090565b6000600f60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000339050601260008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff166117c257600080fd5b816008819055505050565b6000600454905090565b600080600190506000805b8483116118985760006117fb6004546305f5e100612470565b9050600061180b826103e8612470565b90506000811115611873576000611824836103e8612489565b9050600081148015611839575062035b608314155b156118675760006103e86007600c54028161185057fe5b04905061185f600c54826122f5565b95505061186d565b600c5494505b5061187d565b654bc9c70c940093505b6118878385612454565b9250848060010195505050506117e2565b809350505050919050565b6000600c54905090565b600047905090565b600060045460035403905090565b60085481565b6000803390506118d88161171e565b91505090565b60018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156119745780601f1061194957610100808354040283529160200191611974565b820191906000526020600020905b81548152906001019060200180831161195757829003601f168201915b505050505081565b6000601060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905090565b6000600654905090565b6000806119d86118c9565b116119e257600080fd5b6000339050611a30600f60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054846122f5565b600f60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611abc600f60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205484612454565b600f60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a3600191505092915050565b6000339050601260008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16611bca57600080fd5b8160019080519060200190611be092919061285a565b505050565b6000339050601260008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16611c4057600080fd5b8160009080519060200190611c5692919061285a565b505050565b6000339050601260008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16611cb657600080fd5b6000611cc06118ad565b90503073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614158015611d4c5750601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614155b15611dbf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f496e76616c69642053656e64657220416464726573730000000000000000000081525060200191505060405180910390fd5b82811015611e35576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260118152602001807f4e6f7420656e6f75676820616d6f756e7400000000000000000000000000000081525060200191505060405180910390fd5b8373ffffffffffffffffffffffffffffffffffffffff166108fc849081150290604051600060405180830381858888f19350505050158015611e7b573d6000803e3d6000fd5b5050505050565b600a5481565b6000339050601260008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16611ee357600080fd5b6000611ef36003546004546122f5565b905080831115611f0257600080fd5b6000339050601260008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16611f5d57600080fd5b611fa6600f60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205485612454565b600f60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508073ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef866040518082815260200191505060405180910390a3600554841461206a57612063600354856122f5565b6003819055505b50505050565b600c5481565b600080612082836117d7565b90506000606460085483028161209457fe5b04905060006120a38383612454565b9050809350505050919050565b6000339050601260008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1661210b57600080fd5b81600e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050565b6000339050601260008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff166121ab57600080fd5b6000339050601260008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1661220657600080fd5b600f60008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483111561225257600080fd5b61229b600f60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054846122f5565b600f60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506122ea60035484612454565b600381905550505050565b60008282111561230157fe5b818303905092915050565b6000806000905060006123256004546305f5e100612470565b90506000612335826103e8612470565b9050600081111561234a57600c549250612354565b654bc9c70c940092505b60006123608685612470565b90506123746004546305f5e1008302612454565b600481905550600061238c6004546305f5e100612470565b9050600061239c826103e8612470565b90508060075414156123df5760006103e86007600c5402816123ba57fe5b0490506123c9600c5482612454565b600c819055506001820160078190555050612446565b6007548111156124455760006123f7826007546122f5565b905060005b8181116124385760006103e86007600c54028161241557fe5b049050612424600c5482612454565b600c819055505080806001019150506123fc565b5060018201600781905550505b5b829650505050505050919050565b60008082840190508381101561246657fe5b8091505092915050565b60008082848161247c57fe5b0490508091505092915050565b60008082141561249857600080fd5b8183816124a157fe5b06905092915050565b6000806124bb6003546004546122f5565b905060006064604b8502816124cc57fe5b04905060006124db85836122f5565b905060006124e88261230c565b90506305f5e1008102905060008111801561250f575060045461250d82600454612454565b115b61251857600080fd5b8381111561252557600080fd5b612590600f6000600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482612454565b600f6000600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a380945050505050919050565b80600f600061dead73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055506126e3600354826122f5565b6003819055506126f560065482612454565b60068190555061dead73ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a350565b600080600190506000805b84831161284f5760006127896004546305f5e100612470565b90506000612799826103e8612470565b9050600081111561280d5760006127b2836103e8612489565b90506000811480156127c7575062035b608314155b156128015760006103e86007600c5402816127de57fe5b0490506127ed600c54826122f5565b955060016007540360078190555050612807565b600c5494505b50612817565b654bc9c70c940093505b6128218385612454565b925083600c8190555061283a6004546305f5e1006122f5565b60048190555084806001019550505050612770565b809350505050919050565b828054600181600116156101000203166002900490600052602060002090601f01602090048101928261289057600085556128d7565b82601f106128a957805160ff19168380011785556128d7565b828001600101855582156128d7579182015b828111156128d65782518255916020019190600101906128bb565b5b5090506128e491906128e8565b5090565b5b808211156129015760008160009055506001016128e9565b509056fea2646970667358221220066a3b47fa123881618628865e0914bc996f6653d371d4276d5b6015278d5bf964736f6c63430007040033

Deployed Bytecode

0x60806040526004361061023f5760003560e01c80637824407f1161012e578063a9059cbb116100ab578063e5f978e51161006f578063e5f978e514610c0c578063f2b0b48b14610c47578063f4d2444614610c72578063f531497c14610cc1578063f61afbcf14610d1257610246565b8063a9059cbb14610985578063b84c8246146109f6578063c47f002714610abe578063d12af43614610b86578063d63cf30814610be157610246565b806393f4eaf7116100f257806393f4eaf714610849578063949e8acd1461087457806395d89b411461089f5780639889a7a51461092f578063a60366701461095a57610246565b80637824407f1461074e57806379678ac4146107795780638620410b146107c85780638b7afe2e146107f35780638ed762871461081e57610246565b80633319544c116101bc578063534c6c4011610180578063534c6c40146106095780635d03364e146106345780636b2f46321461068357806370a08231146106ae57806371f4d91d1461071357610246565b80633319544c146105295780633e2780cb1461056e5780634a57bc14146105785780634b750334146105b35780634d7fcebc146105de57610246565b806318160ddd1161020357806318160ddd146103a157806322609373146103cc57806323b872dd1461041b5780632876b927146104ac578063313ce567146104fb57610246565b806306fdde03146102525780630784ef2f146102e25780630a974c341461030d57806310d0ffdd1461031757806312089f831461036657610246565b3661024657005b61024f34610d4d565b50005b34801561025e57600080fd5b50610267610ecc565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156102a757808201518184015260208101905061028c565b50505050905090810190601f1680156102d45780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156102ee57600080fd5b506102f7610f6a565b6040518082815260200191505060405180910390f35b610315610f70565b005b34801561032357600080fd5b506103506004803603602081101561033a57600080fd5b8101908080359060200190929190505050610f7c565b6040518082815260200191505060405180910390f35b34801561037257600080fd5b5061039f6004803603602081101561038957600080fd5b8101908080359060200190929190505050610fb6565b005b3480156103ad57600080fd5b506103b661101c565b6040518082815260200191505060405180910390f35b3480156103d857600080fd5b50610405600480360360208110156103ef57600080fd5b8101908080359060200190929190505050611026565b6040518082815260200191505060405180910390f35b34801561042757600080fd5b506104946004803603606081101561043e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506110a0565b60405180821515815260200191505060405180910390f35b3480156104b857600080fd5b506104e5600480360360208110156104cf57600080fd5b8101908080359060200190929190505050611379565b6040518082815260200191505060405180910390f35b34801561050757600080fd5b5061051061140f565b604051808260ff16815260200191505060405180910390f35b34801561053557600080fd5b5061056c6004803603604081101561054c57600080fd5b810190808035906020019092919080359060200190929190505050611414565b005b610576611482565b005b34801561058457600080fd5b506105b16004803603602081101561059b57600080fd5b810190808035906020019092919050505061148e565b005b3480156105bf57600080fd5b506105c86116db565b6040518082815260200191505060405180910390f35b3480156105ea57600080fd5b506105f36116e5565b6040518082815260200191505060405180910390f35b34801561061557600080fd5b5061061e6116eb565b6040518082815260200191505060405180910390f35b34801561064057600080fd5b5061066d6004803603602081101561065757600080fd5b81019080803590602001909291905050506116f9565b6040518082815260200191505060405180910390f35b34801561068f57600080fd5b50610698611716565b6040518082815260200191505060405180910390f35b3480156106ba57600080fd5b506106fd600480360360208110156106d157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061171e565b6040518082815260200191505060405180910390f35b34801561071f57600080fd5b5061074c6004803603602081101561073657600080fd5b8101908080359060200190929190505050611767565b005b34801561075a57600080fd5b506107636117cd565b6040518082815260200191505060405180910390f35b34801561078557600080fd5b506107b26004803603602081101561079c57600080fd5b81019080803590602001909291905050506117d7565b6040518082815260200191505060405180910390f35b3480156107d457600080fd5b506107dd6118a3565b6040518082815260200191505060405180910390f35b3480156107ff57600080fd5b506108086118ad565b6040518082815260200191505060405180910390f35b34801561082a57600080fd5b506108336118b5565b6040518082815260200191505060405180910390f35b34801561085557600080fd5b5061085e6118c3565b6040518082815260200191505060405180910390f35b34801561088057600080fd5b506108896118c9565b6040518082815260200191505060405180910390f35b3480156108ab57600080fd5b506108b46118de565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156108f45780820151818401526020810190506108d9565b50505050905090810190601f1680156109215780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561093b57600080fd5b5061094461197c565b6040518082815260200191505060405180910390f35b34801561096657600080fd5b5061096f6119c3565b6040518082815260200191505060405180910390f35b34801561099157600080fd5b506109de600480360360408110156109a857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506119cd565b60405180821515815260200191505060405180910390f35b348015610a0257600080fd5b50610abc60048036036020811015610a1957600080fd5b8101908080359060200190640100000000811115610a3657600080fd5b820183602082011115610a4857600080fd5b80359060200191846001830284011164010000000083111715610a6a57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290505050611b6f565b005b348015610aca57600080fd5b50610b8460048036036020811015610ae157600080fd5b8101908080359060200190640100000000811115610afe57600080fd5b820183602082011115610b1057600080fd5b80359060200191846001830284011164010000000083111715610b3257600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290505050611be5565b005b348015610b9257600080fd5b50610bdf60048036036040811015610ba957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611c5b565b005b348015610bed57600080fd5b50610bf6611e82565b6040518082815260200191505060405180910390f35b348015610c1857600080fd5b50610c4560048036036020811015610c2f57600080fd5b8101908080359060200190929190505050611e88565b005b348015610c5357600080fd5b50610c5c612070565b6040518082815260200191505060405180910390f35b348015610c7e57600080fd5b50610cab60048036036020811015610c9557600080fd5b8101908080359060200190929190505050612076565b6040518082815260200191505060405180910390f35b348015610ccd57600080fd5b50610d1060048036036020811015610ce457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506120b0565b005b348015610d1e57600080fd5b50610d4b60048036036020811015610d3557600080fd5b8101908080359060200190929190505050612150565b005b6000803390506000610d636003546004546122f5565b905060006064600854860281610d7557fe5b0490506000610d8486836122f5565b90506000610d918261230c565b90506305f5e10081029050600081118015610db85750600454610db682600454612454565b115b610dc157600080fd5b83811115610dce57600080fd5b610e17600f60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482612454565b600f60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508473ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a38095505050505050919050565b60008054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610f625780601f10610f3757610100808354040283529160200191610f62565b820191906000526020600020905b815481529060010190602001808311610f4557829003601f168201915b505050505081565b60075481565b610f7934610d4d565b50565b6000806064600854840281610f8d57fe5b0490506000610f9c84836122f5565b90506000610fa982611379565b9050809350505050919050565b6000339050601260008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1661101157600080fd5b816009819055505050565b6000600254905090565b60008060009050603283101561103f576001905061107a565b600061104c846032612470565b9050809150600061105e856032612489565b9050600081111561107757611074836001612454565b92505b50505b600061108684836122f5565b90506000611093826117d7565b9050809350505050919050565b6000600f60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548211156110ee57600080fd5b600d60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482111561117757600080fd5b6111c0600f60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054836122f5565b600f60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611289600d60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054836122f5565b600d60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190509392505050565b6000806000905060006113926004546305f5e100612470565b905060006113a2826103e8612470565b905060008111156113eb578060075414156113e05760006103e86007600c5402816113c957fe5b0490506113d8600c5482612454565b9350506113e6565b600c5492505b6113f5565b654bc9c70c940092505b60006114018685612470565b905080945050505050919050565b600881565b6000339050601260008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1661146f57600080fd5b8160088190555082600981905550505050565b61148b346124aa565b50565b60006114986118c9565b116114a257600080fd5b6000339050600f60008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548211156114f357600080fd5b611501826305f5e100612470565b9150600060328310156115175760019050611552565b6000611524846032612470565b90508091506000611536856032612489565b9050600081111561154f5761154c836001612454565b92505b50505b600061155e84836122f5565b9050600181101561156e57600080fd5b61157d6305f5e1008302612688565b6000819050600061158d82612765565b90506115de600f60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546305f5e10088026122f5565b600f60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508473ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015611667573d6000803e3d6000fd5b503073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6305f5e10089026040518082815260200191505060405180910390a3505050505050565b6000600c54905090565b60095481565b600060045460035403905090565b600080606460085484028161170a57fe5b04905080915050919050565b600047905090565b6000600f60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000339050601260008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff166117c257600080fd5b816008819055505050565b6000600454905090565b600080600190506000805b8483116118985760006117fb6004546305f5e100612470565b9050600061180b826103e8612470565b90506000811115611873576000611824836103e8612489565b9050600081148015611839575062035b608314155b156118675760006103e86007600c54028161185057fe5b04905061185f600c54826122f5565b95505061186d565b600c5494505b5061187d565b654bc9c70c940093505b6118878385612454565b9250848060010195505050506117e2565b809350505050919050565b6000600c54905090565b600047905090565b600060045460035403905090565b60085481565b6000803390506118d88161171e565b91505090565b60018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156119745780601f1061194957610100808354040283529160200191611974565b820191906000526020600020905b81548152906001019060200180831161195757829003601f168201915b505050505081565b6000601060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905090565b6000600654905090565b6000806119d86118c9565b116119e257600080fd5b6000339050611a30600f60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054846122f5565b600f60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611abc600f60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205484612454565b600f60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a3600191505092915050565b6000339050601260008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16611bca57600080fd5b8160019080519060200190611be092919061285a565b505050565b6000339050601260008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16611c4057600080fd5b8160009080519060200190611c5692919061285a565b505050565b6000339050601260008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16611cb657600080fd5b6000611cc06118ad565b90503073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614158015611d4c5750601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614155b15611dbf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f496e76616c69642053656e64657220416464726573730000000000000000000081525060200191505060405180910390fd5b82811015611e35576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260118152602001807f4e6f7420656e6f75676820616d6f756e7400000000000000000000000000000081525060200191505060405180910390fd5b8373ffffffffffffffffffffffffffffffffffffffff166108fc849081150290604051600060405180830381858888f19350505050158015611e7b573d6000803e3d6000fd5b5050505050565b600a5481565b6000339050601260008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16611ee357600080fd5b6000611ef36003546004546122f5565b905080831115611f0257600080fd5b6000339050601260008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16611f5d57600080fd5b611fa6600f60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205485612454565b600f60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508073ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef866040518082815260200191505060405180910390a3600554841461206a57612063600354856122f5565b6003819055505b50505050565b600c5481565b600080612082836117d7565b90506000606460085483028161209457fe5b04905060006120a38383612454565b9050809350505050919050565b6000339050601260008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1661210b57600080fd5b81600e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050565b6000339050601260008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff166121ab57600080fd5b6000339050601260008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1661220657600080fd5b600f60008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483111561225257600080fd5b61229b600f60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054846122f5565b600f60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506122ea60035484612454565b600381905550505050565b60008282111561230157fe5b818303905092915050565b6000806000905060006123256004546305f5e100612470565b90506000612335826103e8612470565b9050600081111561234a57600c549250612354565b654bc9c70c940092505b60006123608685612470565b90506123746004546305f5e1008302612454565b600481905550600061238c6004546305f5e100612470565b9050600061239c826103e8612470565b90508060075414156123df5760006103e86007600c5402816123ba57fe5b0490506123c9600c5482612454565b600c819055506001820160078190555050612446565b6007548111156124455760006123f7826007546122f5565b905060005b8181116124385760006103e86007600c54028161241557fe5b049050612424600c5482612454565b600c819055505080806001019150506123fc565b5060018201600781905550505b5b829650505050505050919050565b60008082840190508381101561246657fe5b8091505092915050565b60008082848161247c57fe5b0490508091505092915050565b60008082141561249857600080fd5b8183816124a157fe5b06905092915050565b6000806124bb6003546004546122f5565b905060006064604b8502816124cc57fe5b04905060006124db85836122f5565b905060006124e88261230c565b90506305f5e1008102905060008111801561250f575060045461250d82600454612454565b115b61251857600080fd5b8381111561252557600080fd5b612590600f6000600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482612454565b600f6000600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a380945050505050919050565b80600f600061dead73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055506126e3600354826122f5565b6003819055506126f560065482612454565b60068190555061dead73ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a350565b600080600190506000805b84831161284f5760006127896004546305f5e100612470565b90506000612799826103e8612470565b9050600081111561280d5760006127b2836103e8612489565b90506000811480156127c7575062035b608314155b156128015760006103e86007600c5402816127de57fe5b0490506127ed600c54826122f5565b955060016007540360078190555050612807565b600c5494505b50612817565b654bc9c70c940093505b6128218385612454565b925083600c8190555061283a6004546305f5e1006122f5565b60048190555084806001019550505050612770565b809350505050919050565b828054600181600116156101000203166002900490600052602060002090601f01602090048101928261289057600085556128d7565b82601f106128a957805160ff19168380011785556128d7565b828001600101855582156128d7579182015b828111156128d65782518255916020019190600101906128bb565b5b5090506128e491906128e8565b5090565b5b808211156129015760008160009055506001016128e9565b509056fea2646970667358221220066a3b47fa123881618628865e0914bc996f6653d371d4276d5b6015278d5bf964736f6c63430007040033

Deployed Bytecode Sourcemap

27:18824:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2807:25;2822:9;2807:14;:25::i;:::-;;27:18824;925:32;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1266:26;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;2638:114;;;:::i;:::-;;11431:387;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;7117:115;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;8244:123;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;9906:694;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;6148:462;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;15185:837;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;999:34;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;2376:210;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;2850:105;;;:::i;:::-;;2971:1106;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;9539:139;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;1408:31;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;8379:145;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;10999:211;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;8096:137;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;9140:169;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;6995:118;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;8678:110;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;17420:1206;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;9760:130;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;9320:92;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;9422:102;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;1374:30;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;8866:182;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;964:28;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5404:133;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;8535:137;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;5557:574;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;7798:127;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;7668:119;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;6619:364;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;1443:30;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;4665:728;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;1507:54;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;10623:364;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;7933:155;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;4105:522;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;11829:939;11915:7;11947:24;11974:10;11947:37;;12003:21;12025:41;12038:14;;12053:12;;12025;:41::i;:::-;12003:63;;12078:25;12139:3;12127:10;;12107:17;:30;:35;;;;;;12078:64;;12155:22;12180:50;12193:17;12212;12180:12;:50::i;:::-;12155:75;;12241:23;12267:34;12285:14;12267:17;:34::i;:::-;12241:60;;12345:5;12329:15;:21;12312:38;;12387:1;12369:15;:19;:82;;;;;12438:12;;12393:42;12406:15;12422:12;;12393;:42::i;:::-;:57;12369:82;12361:91;;;;;;12490:13;12471:15;:32;;12463:41;;;;;;12563:68;12576:19;:37;12596:16;12576:37;;;;;;;;;;;;;;;;12615:15;12563:12;:68::i;:::-;12523:19;:37;12543:16;12523:37;;;;;;;;;;;;;;;:108;;;;12685:16;12661:58;;12678:4;12661:58;;;12703:15;12661:58;;;;;;;;;;;;;;;;;;12745:15;12738:22;;;;;;;11829:939;;;:::o;925:32::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;1266:26::-;;;;:::o;2638:114::-;2719:25;2734:9;2719:14;:25::i;:::-;;2638:114::o;11431:387::-;11537:7;11562:18;11613:3;11602:10;;11583:16;:29;:33;;;;;;11562:54;;11627:22;11652:42;11665:16;11683:10;11652:12;:42::i;:::-;11627:67;;11705:23;11731:36;11752:14;11731:20;:36::i;:::-;11705:62;;11795:15;11788:22;;;;;11431:387;;;:::o;7117:115::-;186:24;213:10;186:37;;242:14;:32;257:16;242:32;;;;;;;;;;;;;;;;;;;;;;;;;234:41;;;;;;7214:10:::1;7199:11;:25;;;;7117:115:::0;;:::o;8244:123::-;8314:7;8346:12;;8339:19;;8244:123;:::o;9906:694::-;10013:7;10090:20;10111:1;10090:22;;10138:2;10124:13;:16;10121:284;;;10166:1;10153:14;;10121:284;;;10195:12;10208:31;10221:13;10236:2;10208:12;:31::i;:::-;10195:44;;10259:4;10246:17;;10270:13;10285:31;10298:13;10313:2;10285:12;:31::i;:::-;10270:46;;10333:1;10326:5;:8;10323:76;;;10362:29;10375:12;10389:1;10362:12;:29::i;:::-;10349:42;;10323:76;10121:284;;;10421:23;10447:41;10460:13;10475:12;10447;:41::i;:::-;10421:67;;10499:17;10519:37;10540:15;10519:20;:37::i;:::-;10499:57;;10583:9;10576:16;;;;;9906:694;;;:::o;6148:462::-;6234:4;6270:19;:26;6290:5;6270:26;;;;;;;;;;;;;;;;6257:9;:39;;6249:48;;;;;;6327:7;:14;6335:5;6327:14;;;;;;;;;;;;;;;:26;6342:10;6327:26;;;;;;;;;;;;;;;;6314:9;:39;;6306:48;;;;;;6392:50;6405:19;:26;6425:5;6405:26;;;;;;;;;;;;;;;;6432:9;6392:12;:50::i;:::-;6363:19;:26;6383:5;6363:26;;;;;;;;;;;;;;;:79;;;;6479:50;6492:7;:14;6500:5;6492:14;;;;;;;;;;;;;;;:26;6507:10;6492:26;;;;;;;;;;;;;;;;6519:9;6479:12;:50::i;:::-;6451:7;:14;6459:5;6451:14;;;;;;;;;;;;;;;:26;6466:10;6451:26;;;;;;;;;;;;;;;:78;;;;6565:5;6549:33;;6558:5;6549:33;;;6572:9;6549:33;;;;;;;;;;;;;;;;;;6598:4;6591:11;;6148:462;;;;;:::o;15185:837::-;15282:7;15303:21;15325:1;15303:23;;15331:27;15360:33;15373:12;;15387:5;15360:12;:33::i;:::-;15331:62;;15398:13;15412:39;15425:19;15446:4;15412:12;:39::i;:::-;15398:53;;15473:1;15466:5;:8;15463:391;;;15502:5;15493;;:14;15490:260;;;15522:28;15577:4;15575:1;15551:21;;:25;:30;;;;;;15522:59;;15613:57;15626:21;;15649:20;15613:12;:57::i;:::-;15599:71;;15490:260;;;;15721:21;;15707:35;;15490:260;15463:391;;;1353:14;15803:40;;15463:391;15881:23;15907:38;15920:9;15931:13;15907:12;:38::i;:::-;15881:64;;15990:15;15983:22;;;;;;15185:837;;;:::o;999:34::-;1032:1;999:34;:::o;2376:210::-;186:24;213:10;186:37;;242:14;:32;257:16;242:32;;;;;;;;;;;;;;;;;;;;;;;;;234:41;;;;;;2525:16:::1;2512:10;:29;;;;2559:12;2545:11;:26;;;;2376:210:::0;;;:::o;2850:105::-;2925:22;2937:9;2925:11;:22::i;:::-;;2850:105::o;2971:1106::-;117:1;104:10;:8;:10::i;:::-;:14;96:23;;;;;;3076:32:::1;3111:10;3076:45;;3154:19;:37;3174:16;3154:37;;;;;;;;;;;;;;;;3135:15;:56;;3127:65;;;::::0;::::1;;3216:36;3229:15;3246:5;3216:12;:36::i;:::-;3198:54;;3258:20;3305:2;3289:15;:18;3286:290;;;3333:1;3320:14;;3286:290;;;3362:12;3375:33;3388:15;3405:2;3375:12;:33::i;:::-;3362:46;;3428:4;3415:17;;3439:13;3454:33;3467:15;3484:2;3454:12;:33::i;:::-;3439:48;;3504:1;3497:5;:8;3494:76;;;3533:29;3546:12;3560:1;3533:12;:29::i;:::-;3520:42;;3494:76;3286:290;;;3584:20;3605:43;3618:15;3635:12;3605;:43::i;:::-;3584:64;;3676:1;3661:12;:16;;3653:25;;;::::0;::::1;;3683:24;3701:5;3688:12;:18;3683:4;:24::i;:::-;3722:15;3740:12;3722:30;;3767:17;3787:26;3805:7;3787:17;:26::i;:::-;3767:46;;3868:74;3881:19;:37;3901:16;3881:37;;;;;;;;;;;;;;;;3936:5;3920:15;:21;3868:12;:74::i;:::-;3828:19;:37;3848:16;3828:37;;;;;;;;;;;;;;;:114;;;;3953:16;:25;;:36;3979:9;3953:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;4040:4;4005:64;;4014:16;4005:64;;;4063:5;4047:15;:21;4005:64;;;;;;;;;;;;;;;;;;130:1;;;;;2971:1106:::0;:::o;9539:139::-;9608:7;9648:21;;9641:28;;9539:139;:::o;1408:31::-;;;;:::o;8379:145::-;8453:7;8503:12;;8485:14;;:30;8478:37;;8379:145;:::o;10999:211::-;11099:7;11118:18;11162:3;11151:10;;11139:9;:22;:26;;;;;;11118:47;;11192:10;11185:17;;;10999:211;;;:::o;8096:137::-;8175:4;8204:21;8197:28;;8096:137;:::o;9140:169::-;9232:7;9264:19;:37;9284:16;9264:37;;;;;;;;;;;;;;;;9257:44;;9140:169;;;:::o;6995:118::-;186:24;213:10;186:37;;242:14;:32;257:16;242:32;;;;;;;;;;;;;;;;;;;;;;;;;234:41;;;;;;7095:10:::1;7081;:24;;;;6995:118:::0;;:::o;8678:110::-;8736:7;8768:12;;8761:19;;8678:110;:::o;17420:1206::-;17514:7;17540:17;17558:1;17540:19;;17564:26;17599:25;17638:942;17656:7;17644:9;:19;17638:942;;17686:27;17715:33;17728:12;;17742:5;17715:12;:33::i;:::-;17686:62;;17766:12;17780:39;17793:19;17814:4;17780:12;:39::i;:::-;17766:53;;17849:1;17840:7;:10;17837:586;;;17880:12;17894:39;17907:19;17928:4;17894:12;:39::i;:::-;17880:53;;17951:1;17945:4;:7;:39;;;;;17978:6;17956:19;:28;;17945:39;17942:316;;;18011:28;18066:4;18064:1;18040:21;;:25;:30;;;;;;18011:59;;18116:57;18129:21;;18152:20;18116:12;:57::i;:::-;18098:75;;17942:316;;;;18228:21;;18210:39;;17942:316;17837:586;;;;1353:14;18359:44;;17837:586;18457:49;18470:16;18488:17;18457:12;:49::i;:::-;18440:66;;18554:11;;;;;;;17638:942;;;;;18602:16;18595:23;;;;;17420:1206;;;:::o;9760:130::-;9828:7;9860:21;;9853:28;;9760:130;:::o;9320:92::-;9368:4;9386:21;9379:28;;9320:92;:::o;9422:102::-;9469:4;9506:12;;9488:14;;:30;9481:37;;9422:102;:::o;1374:30::-;;;;:::o;8866:182::-;8933:7;8958:24;8985:10;8958:37;;9013:27;9023:16;9013:9;:27::i;:::-;9006:34;;;8866:182;:::o;964:28::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;5404:133::-;5462:7;5494:19;:31;5514:10;5494:31;;;;;;;;;;;;;;;;5487:38;;5404:133;:::o;8535:137::-;8612:7;8644:19;;8637:26;;8535:137;:::o;5557:574::-;5679:4;117:1;104:10;:8;:10::i;:::-;:14;96:23;;;;;;5719:24:::1;5746:10;5719:37;;5837:68;5850:19;:37;5870:16;5850:37;;;;;;;;;;;;;;;;5889:15;5837:12;:68::i;:::-;5797:19;:37;5817:16;5797:37;;;;;;;;;;;;;;;:108;;;;5950:62;5963:19;:31;5983:10;5963:31;;;;;;;;;;;;;;;;5996:15;5950:12;:62::i;:::-;5916:19;:31;5936:10;5916:31;;;;;;;;;;;;;;;:96;;;;6055:10;6028:55;;6037:16;6028:55;;;6067:15;6028:55;;;;;;;;;;;;;;;;;;6119:4;6112:11;;;5557:574:::0;;;;:::o;7798:127::-;186:24;213:10;186:37;;242:14;:32;257:16;242:32;;;;;;;;;;;;;;;;;;;;;;;;;234:41;;;;;;7910:7:::1;7901:6;:16;;;;;;;;;;;;:::i;:::-;;7798:127:::0;;:::o;7668:119::-;186:24;213:10;186:37;;242:14;:32;257:16;242:32;;;;;;;;;;;;;;;;;;;;;;;;;234:41;;;;;;7774:5:::1;7767:4;:12;;;;;;;;;;;;:::i;:::-;;7668:119:::0;;:::o;6619:364::-;186:24;213:10;186:37;;242:14;:32;257:16;242:32;;;;;;;;;;;;;;;;;;;;;;;;;234:41;;;;;;6718:24:::1;6745:17;:15;:17::i;:::-;6718:44;;6793:4;6771:27;;:10;:27;;;;:50;;;;;6816:5;;;;;;;;;;;6802:19;;:10;:19;;;;6771:50;6767:91;;;6824:32;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;6767:91;6885:15;6866:16;:34;6862:70;;;6903:27;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;6862:70;6936:9;:18;;:35;6955:15;6936:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;286:1;6619:364:::0;;;:::o;1443:30::-;;;;:::o;4665:728::-;186:24;213:10;186:37;;242:14;:32;257:16;242:32;;;;;;;;;;;;;;;;;;;;;;;;;234:41;;;;;;4763:21:::1;4785:41;4798:14;;4813:12;;4785;:41::i;:::-;4763:63;;4876:13;4857:15;:32;;4849:41;;;::::0;::::1;;4908:32;4943:10;4908:45;;4967:14;:32;4982:16;4967:32;;;;;;;;;;;;;;;;;;;;;;;;;4959:41;;;::::0;::::1;;5080:68;5093:19;:37;5113:16;5093:37;;;;;;;;;;;;;;;;5132:15;5080:12;:68::i;:::-;5040:19;:37;5060:16;5040:37;;;;;;;;;;;;;;;:108;;;;5200:16;5176:58;;5193:4;5176:58;;;5218:15;5176:58;;;;;;;;;;;;;;;;;;5269:22;;5250:15;:41;5247:139;;5331:45;5344:14;;5360:15;5331:12;:45::i;:::-;5316:14;:60;;;;5247:139;286:1;;4665:728:::0;;:::o;1507:54::-;;;;:::o;10623:364::-;10729:7;10763:17;10783:38;10804:16;10783:20;:38::i;:::-;10763:58;;10830:18;10874:3;10863:10;;10851:9;:22;:26;;;;;;10830:47;;10888:17;10908:35;10921:9;10932:10;10908:12;:35::i;:::-;10888:55;;10970:9;10963:16;;;;;10623:364;;;:::o;7933:155::-;186:24;213:10;186:37;;242:14;:32;257:16;242:32;;;;;;;;;;;;;;;;;;;;;;;;;234:41;;;;;;8063:17:::1;8044:16;;:36;;;;;;;;;;;;;;;;;;7933:155:::0;;:::o;4105:522::-;186:24;213:10;186:37;;242:14;:32;257:16;242:32;;;;;;;;;;;;;;;;;;;;;;;;;234:41;;;;;;4227:32:::1;4262:10;4227:45;;4286:14;:32;4301:16;4286:32;;;;;;;;;;;;;;;;;;;;;;;;;4278:41;;;::::0;::::1;;4353:19;:37;4373:16;4353:37;;;;;;;;;;;;;;;;4334:15;:56;;4326:65;;;::::0;::::1;;4451:68;4464:19;:37;4484:16;4464:37;;;;;;;;;;;;;;;;4503:15;4451:12;:68::i;:::-;4411:19;:37;4431:16;4411:37;;;;;;;;;;;;;;;:108;;;;4566:45;4579:14;;4595:15;4566:12;:45::i;:::-;4551:14;:60;;;;286:1;4105:522:::0;;:::o;19258:123::-;19316:7;19348:1;19343;:6;;19336:14;;;;19372:1;19368;:5;19361:12;;19258:123;;;;:::o;13764:1415::-;13856:7;13877:21;13899:1;13877:23;;13909:27;13938:33;13951:12;;13965:5;13938:12;:33::i;:::-;13909:62;;13980:13;13994:39;14007:19;14028:4;13994:12;:39::i;:::-;13980:53;;14055:1;14048:5;:8;14045:180;;;14093:21;;14079:35;;14045:180;;;1353:14;14171:40;;14045:180;14239:23;14265:38;14278:9;14289:13;14265:12;:38::i;:::-;14239:64;;14325:49;14338:12;;14368:5;14352:15;:21;14325:12;:49::i;:::-;14310:12;:64;;;;14381:33;14416;14429:12;;14443:5;14416:12;:33::i;:::-;14381:68;;14456:12;14469:45;14482:25;14509:4;14469:12;:45::i;:::-;14456:58;;14541:4;14532:5;;:13;14529:565;;;14560:28;14615:4;14613:1;14589:21;;:25;:30;;;;;;14560:59;;14659:57;14672:21;;14695:20;14659:12;:57::i;:::-;14637:21;:79;;;;14734:1;14729:4;:6;14723:5;:12;;;;14529:565;;;;14767:5;;14760:4;:12;14757:337;;;14783:16;14800:25;14813:4;14819:5;;14800:12;:25::i;:::-;14783:42;;14841:6;14836:234;14856:8;14851:1;:13;14836:234;;14890:28;14945:4;14943:1;14919:21;;:25;:30;;;;;;14890:59;;14992:57;15005:21;;15028:20;14992:12;:57::i;:::-;14970:21;:79;;;;14836:234;14866:3;;;;;;;14836:234;;;;15087:1;15082:4;:6;15076:5;:12;;;;14757:337;;14529:565;15147:15;15140:22;;;;;;;;13764:1415;;;:::o;19393:147::-;19451:7;19471:9;19487:1;19483;:5;19471:17;;19511:1;19506;:6;;19499:14;;;;19531:1;19524:8;;;19393:147;;;;:::o;19106:139::-;19164:7;19192:9;19208:1;19204;:5;;;;;;19192:17;;19236:1;19229:8;;;19106:139;;;;:::o;19548:124::-;19606:7;19639:1;19634;:6;;19626:15;;;;;;19663:1;19659;:5;;;;;;19652:12;;19548:124;;;;:::o;12784:959::-;12867:7;12952:21;12974:41;12987:14;;13002:12;;12974;:41::i;:::-;12952:63;;13029:19;13076:3;13072:2;13052:17;:22;:27;;;;;;13029:50;;13094:22;13119:44;13132:17;13151:11;13119:12;:44::i;:::-;13094:69;;13174:23;13200:34;13218:14;13200:17;:34::i;:::-;13174:60;;13278:5;13262:15;:21;13245:38;;13320:1;13302:15;:19;:82;;;;;13371:12;;13326:42;13339:15;13355:12;;13326;:42::i;:::-;:57;13302:82;13294:91;;;;;;13423:13;13404:15;:32;;13396:41;;;;;;13520:68;13533:19;:37;13553:16;;;;;;;;;;;13533:37;;;;;;;;;;;;;;;;13572:15;13520:12;:68::i;:::-;13480:19;:37;13500:16;;;;;;;;;;;13480:37;;;;;;;;;;;;;;;:108;;;;13658:16;;;;;;;;;;;13634:58;;13651:4;13634:58;;;13676:15;13634:58;;;;;;;;;;;;;;;;;;13720:15;13713:22;;;;;;12784:959;;;:::o;7248:412::-;7381:13;7305:19;:72;7333:42;7305:72;;;;;;;;;;;;;;;;:89;;;;;;;;;;;7416:43;7429:14;;7445:13;7416:12;:43::i;:::-;7399:14;:60;;;;7484:48;7497:19;;7518:13;7484:12;:48::i;:::-;7464:19;:68;;;;7580:42;7548:91;;7565:4;7548:91;;;7625:13;7548:91;;;;;;;;;;;;;;;;;;7248:412;:::o;16032:1377::-;16121:7;16153:17;16171:1;16153:19;;16177:26;16212:25;16251:1112;16269:7;16257:9;:19;16251:1112;;16299:27;16328:33;16341:12;;16355:5;16328:12;:33::i;:::-;16299:62;;16379:12;16393:39;16406:19;16427:4;16393:12;:39::i;:::-;16379:53;;16462:1;16453:7;:10;16450:608;;;16493:9;16504:39;16517:19;16538:4;16504:12;:39::i;:::-;16493:50;;16561:1;16555:4;:7;:39;;;;;16588:6;16566:19;:28;;16555:39;16552:341;;;16621:28;16676:4;16674:1;16650:21;;:25;:30;;;;;;16621:59;;16726:57;16739:21;;16762:20;16726:12;:57::i;:::-;16708:75;;16807:1;16801:5;;:7;16795:5;:13;;;;16552:341;;;;16863:21;;16845:39;;16552:341;16450:608;;;;1353:14;16994:44;;16450:608;17109:49;17122:16;17140:17;17109:12;:49::i;:::-;17092:66;;17200:17;17177:21;:40;;;;17250:36;17263:12;;17278:7;17250:12;:36::i;:::-;17235:12;:51;;;;17304:11;;;;;;;16251:1112;;;;;17385:16;17378:23;;;;;16032:1377;;;:::o;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;:::o

Swarm Source

ipfs://066a3b47fa123881618628865e0914bc996f6653d371d4276d5b6015278d5bf9
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.