Contract 0xb2Bd7C2D2577d8Cb95ed31e7E388b2D846626E0e

 
 
Txn Hash Method
Block
From
To
Value [Txn Fee]
0x4120dc5ba1d6168440159f29c3cd80529265ac9c414407cada477fb2be0f12beWithdraw86886432021-06-28 10:47:49157 days 20 hrs ago0x4f51c201bfb89ee09136657143e6e408fca75efe IN  0xb2bd7c2d2577d8cb95ed31e7e388b2d846626e0e0 BNB0.00164041
0xd00e59919155bfaf796da8ca7dbc881e8f905b2f30d514fa427e5bbee9d2fcf6Harvest86885962021-06-28 10:45:28157 days 20 hrs ago0x4f51c201bfb89ee09136657143e6e408fca75efe IN  0xb2bd7c2d2577d8cb95ed31e7e388b2d846626e0e0 BNB0.00164058
0x48f09c8c4e51ebe3c7eba78b98ef6db9cde16452153fea2c8440b8082cb0a8d7Withdraw86116962021-06-25 18:29:11160 days 12 hrs ago0xf1b0e78a2bc422df50ec9ee4c324895c9b79f80a IN  0xb2bd7c2d2577d8cb95ed31e7e388b2d846626e0e0 BNB0.001916015
0xef2fad31d07573aefb12e5e2d85a5f2d454376904258a3b33ba8d9755a12f2d2Withdraw86029402021-06-25 11:08:56160 days 20 hrs ago0x9ae3329ca194a863454096f0c3fe7e63e333356d IN  0xb2bd7c2d2577d8cb95ed31e7e388b2d846626e0e0 BNB0.00176159
0xf5221759a19445e1a4da6385a6e6bd26f50f514348e0701199652361ca5efa1fWithdraw86008672021-06-25 9:25:17160 days 21 hrs ago0x17b1d9a1a8f0363e04bccdf2839cb107b2297774 IN  0xb2bd7c2d2577d8cb95ed31e7e388b2d846626e0e0 BNB0.001854265
0x6d7b75abe6bd0f0f8fcac84f2dc5b36400a1fc0f46399cdff19480ba75d231acHarvest85943262021-06-25 3:57:37161 days 3 hrs agoTuringMachine Token: Deployer IN  0xb2bd7c2d2577d8cb95ed31e7e388b2d846626e0e0 BNB0.00172619
0x7deb4e9de0498891825cefe143aa889500e0ba01050a3c9a33c0d16929578a9eDeposit85803162021-06-24 16:15:18161 days 15 hrs ago0x17b1d9a1a8f0363e04bccdf2839cb107b2297774 IN  0xb2bd7c2d2577d8cb95ed31e7e388b2d846626e0e0 BNB0.00204712
0xdb3cfdc484cfe734e6ea53ca6854e9c71e777cddbd383f70bc8f40f269bd0c8eHarvest85745212021-06-24 11:24:49161 days 19 hrs ago0x4f51c201bfb89ee09136657143e6e408fca75efe IN  0xb2bd7c2d2577d8cb95ed31e7e388b2d846626e0e0 BNB0.001733255
0x9e45dda51b66c66f6c1fd675eb5d0cff542e82c371b76f85c04b85b1505cfe18Harvest85088282021-06-22 4:23:28164 days 2 hrs agoTuringMachine Token: Deployer IN  0xb2bd7c2d2577d8cb95ed31e7e388b2d846626e0e0 BNB0.00172619
0xafdd4bc5608cdf8ed23c6cc6215b379e003b75957bff67514af1853c6fbfe384Harvest84977062021-06-21 19:03:59164 days 12 hrs ago0x4f51c201bfb89ee09136657143e6e408fca75efe IN  0xb2bd7c2d2577d8cb95ed31e7e388b2d846626e0e0 BNB0.001733255
0x778e7d633ae79fbb0eca867cadd5253979015b7a70ba935eee471053c1602ed9Deposit83997712021-06-18 9:03:26167 days 22 hrs ago0x9ae3329ca194a863454096f0c3fe7e63e333356d IN  0xb2bd7c2d2577d8cb95ed31e7e388b2d846626e0e0 BNB0.00204712
0xc6d78923ac068ed0e04a7ab88672f9702fc2341ae8664b9fc32882af2dffcbbcHarvest83889162021-06-17 23:54:34168 days 7 hrs ago0x4f51c201bfb89ee09136657143e6e408fca75efe IN  0xb2bd7c2d2577d8cb95ed31e7e388b2d846626e0e0 BNB0.001733255
0xb0d8083cf1290d58dca4f996b582f85d2f07a5328d3f45468051be939ab872e9Harvest83184182021-06-15 12:39:00170 days 18 hrs ago0x4f51c201bfb89ee09136657143e6e408fca75efe IN  0xb2bd7c2d2577d8cb95ed31e7e388b2d846626e0e0 BNB0.001808255
0xcddcc568251261f582fe64d14272f59387aa6276fd0dc48c7a6b1d94d225007aHarvest81719122021-06-10 9:30:20175 days 21 hrs ago0x4f51c201bfb89ee09136657143e6e408fca75efe IN  0xb2bd7c2d2577d8cb95ed31e7e388b2d846626e0e0 BNB0.001733255
0x097a18bf880a04b02fac0b7980e481d75bba9b9a3c4685e1f8abaccfd405726fHarvest80949892021-06-07 17:13:37178 days 14 hrs ago0xf1b0e78a2bc422df50ec9ee4c324895c9b79f80a IN  0xb2bd7c2d2577d8cb95ed31e7e388b2d846626e0e0 BNB0.00174719
0xd61391298740aa8e72195a1d8c7ad1f7333f2b29f302cfaf1eea4c91403bacd4Harvest80856102021-06-07 9:23:34178 days 21 hrs ago0x4f51c201bfb89ee09136657143e6e408fca75efe IN  0xb2bd7c2d2577d8cb95ed31e7e388b2d846626e0e0 BNB0.001733255
0xac8ed1acc71025aa4bba1860502ef77b14f02322f41936d30ee861c7d640d8d0Harvest79722472021-06-03 10:42:29182 days 20 hrs ago0x4f51c201bfb89ee09136657143e6e408fca75efe IN  0xb2bd7c2d2577d8cb95ed31e7e388b2d846626e0e0 BNB0.001733255
0x0218cb7ad93e9be09240b0cf9579ad569af8fa8772e0d7ce2a36636aa185a2abHarvest78629342021-05-30 15:16:38186 days 16 hrs ago0x4f51c201bfb89ee09136657143e6e408fca75efe IN  0xb2bd7c2d2577d8cb95ed31e7e388b2d846626e0e0 BNB0.001733255
0xfb7664b7b519447b104d1ec0119a63a4cad1eaaa2daf9a930fc6aa029e6f5d78Harvest77726652021-05-27 11:44:01189 days 19 hrs ago0x4f51c201bfb89ee09136657143e6e408fca75efe IN  0xb2bd7c2d2577d8cb95ed31e7e388b2d846626e0e0 BNB0.001808255
0x20f9e18f2413d3eac63dfb5ae5078394b75769ce5c1c4a85cf4ca379d447bfcaHarvest77447092021-05-26 12:11:15190 days 19 hrs ago0x4f51c201bfb89ee09136657143e6e408fca75efe IN  0xb2bd7c2d2577d8cb95ed31e7e388b2d846626e0e0 BNB0.001733255
0xd075913f8ffd902897c1711e41cddbffb3bf014c988a2fc8bd1aa5f1c8762165Harvest77147242021-05-25 11:06:46191 days 20 hrs ago0x4f51c201bfb89ee09136657143e6e408fca75efe IN  0xb2bd7c2d2577d8cb95ed31e7e388b2d846626e0e0 BNB0.001733255
0xd764d01059a734d407b9a6f6d9d7c17d42a8ba1ced5d7a39adddf38c0fbda414Harvest77066792021-05-25 4:22:28192 days 2 hrs agoTuringMachine Token: Deployer IN  0xb2bd7c2d2577d8cb95ed31e7e388b2d846626e0e0 BNB0.00172619
0xfc14595667e6019c15e757317362c789959f05b6b1206522407e19519ea922bfHarvest76855462021-05-24 10:43:24192 days 20 hrs ago0x4f51c201bfb89ee09136657143e6e408fca75efe IN  0xb2bd7c2d2577d8cb95ed31e7e388b2d846626e0e0 BNB0.001733255
0xb173acf610442713952fdf8dda4288bdcd14d71ecd1481dbfa5a1aaf223af500Harvest76663712021-05-23 18:39:31193 days 12 hrs ago0x4f51c201bfb89ee09136657143e6e408fca75efe IN  0xb2bd7c2d2577d8cb95ed31e7e388b2d846626e0e0 BNB0.001733255
0x10a547fa9551f5ea9dc19296e0930ad33c482fd5dd7acff89ccd57f33b429f77Harvest76417992021-05-22 22:05:11194 days 9 hrs ago0x4f51c201bfb89ee09136657143e6e408fca75efe IN  0xb2bd7c2d2577d8cb95ed31e7e388b2d846626e0e0 BNB0.001733255
[ Download CSV Export 
Parent Txn Hash Block From To Value
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
TuringFarmUSDTBNBLP

Compiler Version
v0.6.12+commit.27d51765

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at BscScan.com on 2021-04-27
*/

/**
 *Submitted for verification at BscScan.com on 2021-04-26
*/

/**
 *Submitted for verification at BscScan.com on 2021-04-20
*/

// SPDX-License-Identifier: MIT
pragma solidity >=0.6.12;

interface IMiningMachine {
	function burn(address account, uint256 amount) external;
	function harvest(uint256 _pid, address _user) external returns(uint256 _pendingTur, uint256 _bonus);
	function updateUser(uint256 _pid, address _user) external returns(bool); 

	function getMiningSpeedOf(uint256 _pid) external view returns(uint256);
	function getTotalMintPerDayOf(uint256 _pid) external view returns(uint256);
	function getUserInfo(uint256 _pid, address _user) external view returns (uint256 _pendingTur, uint256 _rewardDebt, uint256 _userShare);
	function getTurAddr() external view returns(address); 
}
interface IPancakeSwapRouter {
    function swapExactTokensForTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external returns (uint[] memory amounts);
    function swapTokensForExactTokens(
        uint amountOut,
        uint amountInMax,
        address[] calldata path,
        address to,
        uint deadline
    ) external returns (uint[] memory amounts);
    function swapExactETHForTokens(uint amountOutMin, address[] calldata path, address to, uint deadline)
        external
        payable
        returns (uint[] memory amounts);
    function swapTokensForExactETH(uint amountOut, uint amountInMax, address[] calldata path, address to, uint deadline)
        external
        returns (uint[] memory amounts);

    function swapExactTokensForETH(uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline) 
        external
        returns (uint[] memory amounts);
    function swapETHForExactTokens(uint amountOut, address[] calldata path, address to, uint deadline)
        external
        payable
        returns (uint[] memory amounts);
    function getAmountOut(uint amountIn, uint reserveIn, uint reserveOut) external pure returns (uint amountOut);
    function getAmountIn(uint amountOut, uint reserveIn, uint reserveOut) external pure returns (uint amountIn);
    function getAmountsOut(uint amountIn, address[] calldata path) external view returns (uint[] memory amounts);
    function getAmountsIn(uint amountOut, address[] calldata path) external view returns (uint[] memory amounts);
}
contract IPancakeMasterChef { 
    mapping (uint256 => mapping (address => UserInfo)) public userInfo;
    // Info of each user.
    struct UserInfo {
        uint256 amount;     // How many LP tokens the user has provided.
        uint256 rewardDebt; // Reward debt. See explanation below.
        //
        // We do some fancy math here. Basically, any point in time, the amount of CAKEs
        // entitled to a user but is pending to be distributed is:
        //
        //   pending reward = (user.amount * pool.accCakePerShare) - user.rewardDebt
        //
        // Whenever a user deposits or withdraws LP tokens to a pool. Here's what happens:
        //   1. The pool's `accCakePerShare` (and `lastRewardBlock`) gets updated.
        //   2. User receives the pending reward sent to his/her address.
        //   3. User's `amount` gets updated.
        //   4. User's `rewardDebt` gets updated.
    }

    // Deposit LP tokens to MasterChef for CAKE allocation.
    function deposit(uint256 _pid, uint256 _amount) external {}
    // Withdraw LP tokens from MasterChef.
    function withdraw(uint256 _pid, uint256 _amount) external {}
    // Stake CAKE tokens to MasterChef
    function enterStaking(uint256 _amount) external {}
    // Withdraw CAKE tokens from STAKING.
    function leaveStaking(uint256 _amount) external {}
    // Withdraw without caring about rewards. EMERGENCY ONLY.
    function emergencyWithdraw(uint256 _pid) external {}
    // View function to see pending CAKEs on frontend.
    function pendingCake(uint256 _pid, address _user) external view returns (uint256) {}
}
interface IBEP20 {
    function mint(address account, uint256 amount) external;
    function burn(address account, uint256 amount) external;
    /**
     * @dev Returns the amount of tokens in existence.
     */
    function totalSupply() external view returns (uint256);

    /**
     * @dev Returns the amount of tokens owned by `account`.
     */
    function balanceOf(address account) external view returns (uint256);

    /**
     * @dev Moves `amount` tokens from the caller's account to `recipient`.
     *
     * Returns a boolean value indicating whether the operation succeeded.
     *
     * Emits a {Transfer} event.
     */
    function transfer(address recipient, uint256 amount)
        external
        returns (bool);

    /**
     * @dev Returns the remaining number of tokens that `spender` will be
     * allowed to spend on behalf of `owner` through {transferFrom}. This is
     * zero by default.
     *
     * This value changes when {approve} or {transferFrom} are called.
     */
    function allowance(address owner, address spender)
        external
        view
        returns (uint256);

    /**
     * @dev Sets `amount` as the allowance of `spender` over the caller's tokens.
     *
     * Returns a boolean value indicating whether the operation succeeded.
     *
     * IMPORTANT: Beware that changing an allowance with this method brings the risk
     * that someone may use both the old and the new allowance by unfortunate
     * transaction ordering. One possible solution to mitigate this race
     * condition is to first reduce the spender's allowance to 0 and set the
     * desired value afterwards:
     * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729
     *
     * Emits an {Approval} event.
     */
    function approve(address spender, uint256 amount) external returns (bool);

    /**
     * @dev Moves `amount` tokens from `sender` to `recipient` using the
     * allowance mechanism. `amount` is then deducted from the caller's
     * allowance.
     *
     * Returns a boolean value indicating whether the operation succeeded.
     *
     * Emits a {Transfer} event.
     */
    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) external returns (bool);

    /**
     * @dev Emitted when `value` tokens are moved from one account (`from`) to
     * another (`to`).
     *
     * Note that `value` may be zero.
     */
    event Transfer(address indexed from, address indexed to, uint256 value);

    /**
     * @dev Emitted when the allowance of a `spender` for an `owner` is set by
     * a call to {approve}. `value` is the new allowance.
     */
    event Approval(
        address indexed owner,
        address indexed spender,
        uint256 value
    );
}
library SafeMath {
  /**
  * @dev Multiplies two numbers, throws on overflow.
  */
  function mul(uint256 a, uint256 b) internal pure returns (uint256) {
    if (a == 0) {
      return 0;
    }
    uint256 c = a * b;
    require(c / a == b, 'INVALID_MUL');
    return c;
  }

  /**
  * @dev Integer division of two numbers, truncating the quotient.
  */
  function div(uint256 a, uint256 b) internal pure returns (uint256) {
    require(b > 0, 'INVALID_DIV'); // Solidity automatically throws when dividing by 0
    uint256 c = a / b;
    // assert(a == b * c + a % b); // There is no case in which this doesn't hold
    return c;
  }

  /**
  * @dev Substracts two numbers, throws on overflow (i.e. if subtrahend is greater than minuend).
  */
  function sub(uint256 a, uint256 b) internal pure returns (uint256) {
    require(b <= a, 'INVALID_SUB');
    return a - b;
  }

  /**
  * @dev Adds two numbers, throws on overflow.
  */
  function add(uint256 a, uint256 b) internal pure returns (uint256) {
    uint256 c = a + b;
    require(c >= a, 'INVALID_ADD');
    return c;
  }
}
abstract contract ReentrancyGuard {
    // Booleans are more expensive than uint256 or any type that takes up a full
    // word because each write operation emits an extra SLOAD to first read the
    // slot's contents, replace the bits taken up by the boolean, and then write
    // back. This is the compiler's defense against contract upgrades and
    // pointer aliasing, and it cannot be disabled.

    // The values being non-zero value makes deployment a bit more expensive,
    // but in exchange the refund on every call to nonReentrant will be lower in
    // amount. Since refunds are capped to a percentage of the total
    // transaction's gas, it is best to keep them low in cases like this one, to
    // increase the likelihood of the full refund coming into effect.
    uint256 private constant _NOT_ENTERED = 1;
    uint256 private constant _ENTERED = 2;

    uint256 private _status;

    constructor() internal {
        _status = _NOT_ENTERED;
    }

    /**
     * @dev Prevents a contract from calling itself, directly or indirectly.
     * Calling a `nonReentrant` function from another `nonReentrant`
     * function is not supported. It is possible to prevent this from happening
     * by making the `nonReentrant` function external, and make it call a
     * `private` function that does the actual work.
     */
    modifier nonReentrant() {
        // On the first call to nonReentrant, _notEntered will be true
        require(_status != _ENTERED, "ReentrancyGuard: reentrant call");

        // Any calls to nonReentrant after this point will fail
        _status = _ENTERED;

        _;

        // By storing the original value once again, a refund is triggered (see
        // https://eips.ethereum.org/EIPS/eip-2200)
        _status = _NOT_ENTERED;
    }
}

contract TuringFarmUSDTBNBLP is ReentrancyGuard {

    using SafeMath for uint256;
    uint256 public version = 100;
    address public owner;
    
    IBEP20 public CAKE; // 
    IBEP20 public want; // 
    IBEP20 public TURING; // TURING
    address public wbnb;
    address public busd;

    IPancakeMasterChef public pankaceMasterChef;
    IMiningMachine public miningMachine;
    IPancakeSwapRouter public pancakeSwap;

    uint256 public pidOfMining;
    uint256 public pidOfFarm;
    uint256 public totalShare = 0;
    uint256 public accWantPerShare = 0;
    uint256 public timeOfHarvest = 0;
    uint256 public periodOfDay = 1 days; //end lotery is 1 days;

    mapping(address => uint256) public shareOf;
    mapping(address => uint256) public rewardWantDebtOf;

    uint256 public rateOfPerformanceFee = 50; // 0.5 % on profit.
    uint256 public rateOfControllerFee = 10; // 0.1 % on profit.
    address public performanceMachine; // the contract will use fee to Buy tUR on pankace swap , then burn the turs token
    address public controllerMachine;

    mapping(bytes32 => TimeLock) public timeLockOf;

    uint public constant GRACE_PERIOD = 30 days;
    uint public constant MINIMUM_DELAY = 2 days;
    uint public constant MAXIMUM_DELAY = 30 days;
    uint public delay;

    struct TimeLock {
        bool queuedTransactions;
        uint256 timeOfExecute;
        mapping(bytes32 => address) addressOf;
        mapping(bytes32 => uint256) uintOf;
    }

    modifier onlyOwner()
    {
        require(msg.sender == owner, 'INVALID_PERMISSION');
        _;
    }

    event onDeposit(address _user, uint256 _amount);
    event onWithdraw(address _user, uint256 _amount);

    event onQueuedTransactionsChangeAddress(string _functionName, string _fieldName, address _value);
    event onQueuedTransactionsChangeUint(string _functionName, string _fieldName, uint256 _value);
    event onCancelTransactions(string _functionName);

    constructor(
        IPancakeSwapRouter _pancakeSwap,
        IPancakeMasterChef _pancakeMasterChef,
        IBEP20 _want,
        IBEP20 _cake,
        IBEP20 _turing,
        address _wbnb,
        address _busd
        ) public {
        owner = msg.sender;
        pancakeSwap = _pancakeSwap;
        pankaceMasterChef = _pancakeMasterChef;
        want = _want;
        CAKE = _cake;
        TURING = _turing;
        wbnb = _wbnb;
        busd = _busd;
    }

    receive() external payable {
        
    }

    function setDelay(uint delay_) public onlyOwner {
        require(delay_ >= MINIMUM_DELAY, "Timelock::setDelay: Delay must exceed minimum delay.");
        require(delay_ <= MAXIMUM_DELAY, "Timelock::setDelay: Delay must not exceed maximum delay.");

        delay = delay_;
    }

    function approveConnectToPancake() public {
        want.approve(address(pankaceMasterChef), uint256(-1));
    }


    function cancelTransactions(string memory _functionName) public onlyOwner 
    {
        TimeLock storage _timelock = timeLockOf[keccak256(abi.encode(_functionName))];
        _timelock.queuedTransactions = false;
        emit onCancelTransactions(_functionName);
    }

    function queuedTransactionsChangeAddress(string memory _functionName, string memory _fieldName, address _newAddr) public onlyOwner 
    {
        TimeLock storage _timelock = timeLockOf[keccak256(abi.encode(_functionName))];
        _timelock.addressOf[keccak256(abi.encode(_fieldName))] = _newAddr;
        _timelock.queuedTransactions = true;
        _timelock.timeOfExecute = block.timestamp.add(delay);
        emit onQueuedTransactionsChangeAddress(_functionName, _fieldName, _newAddr);
    }

    function queuedTransactionsChangeUint(string memory _functionName, string memory _fieldName, uint256 _value) public onlyOwner 
    {
        TimeLock storage _timelock = timeLockOf[keccak256(abi.encode(_functionName))];
        _timelock.uintOf[keccak256(abi.encode(_fieldName))] = _value;
        _timelock.queuedTransactions = true;
        _timelock.timeOfExecute = block.timestamp.add(delay);
        emit onQueuedTransactionsChangeUint(_functionName, _fieldName, _value);
    }

    function transferOwnership() public onlyOwner 
    {
        TimeLock storage _timelock = timeLockOf[keccak256(abi.encode('transferOwnership'))];
        _validateTimelock(_timelock);
        require(_timelock.addressOf[keccak256(abi.encode('owner'))] != address(0), "INVALID_ADDRESS");

        owner = _timelock.addressOf[keccak256(abi.encode('owner'))];
        delete _timelock.addressOf[keccak256(abi.encode('owner'))];
        _timelock.queuedTransactions = false;
    }

    function setMiningMachine() public onlyOwner 
    {
        TimeLock storage _timelock = timeLockOf[keccak256(abi.encode('setMiningMachine'))];
        _validateTimelock(_timelock);
        require(_timelock.addressOf[keccak256(abi.encode('miningMachine'))] != address(0), "INVALID_ADDRESS");

        miningMachine = IMiningMachine(_timelock.addressOf[keccak256(abi.encode('miningMachine'))]);
        _timelock.queuedTransactions = false;
    }

    function setPerformanceMachine() public onlyOwner 
    {
        TimeLock storage _timelock = timeLockOf[keccak256(abi.encode('setPerformanceMachine'))];
        _validateTimelock(_timelock);
        require(_timelock.addressOf[keccak256(abi.encode('performanceMachine'))] != address(0), "INVALID_ADDRESS");

        performanceMachine = _timelock.addressOf[keccak256(abi.encode('performanceMachine'))];
        delete _timelock.addressOf[keccak256(abi.encode('performanceMachine'))];
        _timelock.queuedTransactions = false;
    }

    function setControllerMachine() public onlyOwner 
    {
        TimeLock storage _timelock = timeLockOf[keccak256(abi.encode('setControllerMachine'))];
        _validateTimelock(_timelock);
        require(_timelock.addressOf[keccak256(abi.encode('controllerMachine'))] != address(0), "INVALID_ADDRESS");

        controllerMachine = _timelock.addressOf[keccak256(abi.encode('controllerMachine'))];
        delete _timelock.addressOf[keccak256(abi.encode('controllerMachine'))];
        _timelock.queuedTransactions = false;
    }

    function setPancakeSwapContract() public onlyOwner {

        TimeLock storage _timelock = timeLockOf[keccak256(abi.encode('setPancakeSwapContract'))];

        _validateTimelock(_timelock);
        require(_timelock.addressOf[keccak256(abi.encode('pancakeSwap'))] != address(0), "INVALID_ADDRESS");

        pancakeSwap = IPancakeSwapRouter(_timelock.addressOf[keccak256(abi.encode('pancakeSwap'))]);
        delete _timelock.addressOf[keccak256(abi.encode('pancakeSwap'))];
        _timelock.queuedTransactions = false;
    }

    function setPancakeMasterChefContract() public onlyOwner {

        TimeLock storage _timelock = timeLockOf[keccak256(abi.encode('setPancakeMasterChefContract'))];

        _validateTimelock(_timelock);
        require(_timelock.addressOf[keccak256(abi.encode('pankaceMasterChef'))] != address(0), "INVALID_ADDRESS");

        pankaceMasterChef = IPancakeMasterChef(_timelock.addressOf[keccak256(abi.encode('pankaceMasterChef'))]);
        delete _timelock.addressOf[keccak256(abi.encode('pankaceMasterChef'))];
        _timelock.queuedTransactions = false;
    }
    
    function changeTokenAddress() public onlyOwner
    {
        TimeLock storage _timelock = timeLockOf[keccak256(abi.encode('changeTokenAddress'))];

        _validateTimelock(_timelock);
    
        if (_timelock.addressOf[keccak256(abi.encode('want'))] != address(0)) {
            want = IBEP20(_timelock.addressOf[keccak256(abi.encode('want'))]);
            delete _timelock.addressOf[keccak256(abi.encode('want'))];
        } 
        if (_timelock.addressOf[keccak256(abi.encode('TURING'))] != address(0)) {
            TURING = IBEP20(_timelock.addressOf[keccak256(abi.encode('TURING'))]);
            delete _timelock.addressOf[keccak256(abi.encode('TURING'))];
        } 
        if (_timelock.addressOf[keccak256(abi.encode('CAKE'))] != address(0)) {
            CAKE = IBEP20(_timelock.addressOf[keccak256(abi.encode('CAKE'))]);
            delete _timelock.addressOf[keccak256(abi.encode('CAKE'))];
        } 
        if (_timelock.addressOf[keccak256(abi.encode('wbnb'))] != address(0)) {
            wbnb = _timelock.addressOf[keccak256(abi.encode('wbnb'))];
            delete _timelock.addressOf[keccak256(abi.encode('wbnb'))];
        } 
        if (_timelock.addressOf[keccak256(abi.encode('busd'))] != address(0)) {
            busd = _timelock.addressOf[keccak256(abi.encode('busd'))];
            delete _timelock.addressOf[keccak256(abi.encode('busd'))];
        } 
        _timelock.queuedTransactions = false;
    }
    
    function setRateOfPerformanceFee() public onlyOwner 
    {
        TimeLock storage _timelock = timeLockOf[keccak256(abi.encode('setRateOfPerformanceFee'))];
        _validateTimelock(_timelock);
        require(_timelock.uintOf[keccak256(abi.encode('rateOfPerformanceFee'))] > 0, "INVALID_AMOUNT");

        rateOfPerformanceFee = _timelock.uintOf[keccak256(abi.encode('rateOfPerformanceFee'))];
        delete _timelock.uintOf[keccak256(abi.encode('rateOfPerformanceFee'))];
        _timelock.queuedTransactions = false;
    }

    function setRateOfControllerFee() public onlyOwner 
    {
        TimeLock storage _timelock = timeLockOf[keccak256(abi.encode('setRateOfControllerFee'))];
        _validateTimelock(_timelock);
        require(_timelock.uintOf[keccak256(abi.encode('rateOfControllerFee'))] > 0, "INVALID_AMOUNT");

        rateOfControllerFee = _timelock.uintOf[keccak256(abi.encode('rateOfControllerFee'))];
        delete _timelock.uintOf[keccak256(abi.encode('rateOfControllerFee'))];
        _timelock.queuedTransactions = false;
    }

    function setPidOfMining() public onlyOwner 
    {
        TimeLock storage _timelock = timeLockOf[keccak256(abi.encode('setPidOfMining'))];
        _validateTimelock(_timelock);
        require(_timelock.uintOf[keccak256(abi.encode('pidOfMining'))] > 0, "INVALID_AMOUNT");

        pidOfMining = _timelock.uintOf[keccak256(abi.encode('pidOfMining'))];
        delete _timelock.uintOf[keccak256(abi.encode('pidOfMining'))];
        _timelock.queuedTransactions = false;
    }

    function setPidOfFarm() public onlyOwner
    {
        TimeLock storage _timelock = timeLockOf[keccak256(abi.encode('setPidOfFarm'))];
        _validateTimelock(_timelock);
        require(_timelock.uintOf[keccak256(abi.encode('pidOfFarm'))] > 0, "INVALID_AMOUNT");

        pidOfFarm = _timelock.uintOf[keccak256(abi.encode('pidOfFarm'))];
        delete _timelock.uintOf[keccak256(abi.encode('pidOfFarm'))];
        _timelock.queuedTransactions = false;
    }

    function _validateTimelock(TimeLock memory _timelock) private view
    {
        require(_timelock.queuedTransactions == true, "Transaction hasn't been queued.");
        require(_timelock.timeOfExecute <= block.timestamp, "Transaction hasn't surpassed time lock.");
        require(_timelock.timeOfExecute.add(GRACE_PERIOD) >= block.timestamp, "Transaction is stale.");
    }

    function deposit(uint256 _wantAmt) external nonReentrant 
    {
        require(_wantAmt > 0, 'INVALID_INPUT');
        require(want.balanceOf(msg.sender) >= _wantAmt, 'INVALID_INPUT');

        harvest(msg.sender);
        want.transferFrom(msg.sender, address(this), _wantAmt);
        pankaceMasterChef.deposit(pidOfFarm, _wantAmt); 
        // update total principal
        shareOf[msg.sender] = shareOf[msg.sender].add(_wantAmt);
        totalShare = totalShare.add(_wantAmt);
        _updateUser(msg.sender);
        emit onDeposit(msg.sender, _wantAmt);

    }
    function withdraw(uint256 _wantAmt) external nonReentrant 
    {
        require(_wantAmt > 0, 'INVALID_INPUT');
        harvest(msg.sender);

        if (_wantAmt > shareOf[msg.sender]) {
            _wantAmt = shareOf[msg.sender];
        }

        pankaceMasterChef.withdraw(pidOfFarm, _wantAmt);

        shareOf[msg.sender] = shareOf[msg.sender].sub(_wantAmt);
        totalShare = totalShare.sub(_wantAmt);

        uint256 _wantBal = want.balanceOf(address(this)); 
        if (_wantBal < _wantAmt) {
            _wantAmt = _wantBal;
        }
        want.transfer(msg.sender, _wantAmt);
        if (_wantBal > _wantAmt) {
            pankaceMasterChef.deposit(pidOfFarm, _wantBal.sub(_wantAmt));
        }  
        _updateUser(msg.sender);
        // 
        emit onWithdraw(msg.sender, _wantAmt);
    }

    function harvest(address _user) public {
        miningMachine.harvest(pidOfMining, _user);
        uint256 _reward = pankaceMasterChef.pendingCake(pidOfFarm, address(this));
        if (
            _reward > 0 &&
            totalShare > 0
            ) {
            pankaceMasterChef.withdraw(pidOfFarm, 0);
            uint256 _performanceFee = _reward.mul(rateOfPerformanceFee).div(10000);
            uint256 _controllerFee = _reward.mul(rateOfControllerFee).div(10000);
            CAKE.transfer(performanceMachine, _performanceFee);
            CAKE.transfer(controllerMachine, _controllerFee);
            _reward = _reward.sub(_performanceFee).sub(_controllerFee);
            accWantPerShare = accWantPerShare.add(_reward.mul(1e24).div(totalShare));
        }

        timeOfHarvest = block.timestamp;

        uint256 _userRewardDebt  = shareOf[_user].mul(accWantPerShare).div(1e24);

        if (_userRewardDebt > rewardWantDebtOf[_user]) {
            uint256 _userPendingCake = _userRewardDebt.sub(rewardWantDebtOf[_user]);
            uint256 _cakeBalance = CAKE.balanceOf(address(this));
            if (_userPendingCake > _cakeBalance) {
                _userPendingCake = _cakeBalance;
            }
            CAKE.transfer(_user, _userPendingCake);
        }

        rewardWantDebtOf[_user] = shareOf[_user].mul(accWantPerShare).div(1e24);
    }

    function _updateUser(address _user) private  
    {
        miningMachine.updateUser(pidOfMining, _user);
        rewardWantDebtOf[_user] = shareOf[_user].mul(accWantPerShare).div(1e24);
    }
    /**
    *
        data_[0] int256 miningSpeed_,
        data_[1] uint256 userWantBal_, 
        data_[2] uint256 turingPrice_, 
        data_[3] uint256 pendingCake_, 
        data_[4] uint256 totalMintPerDay_, 
        data_[5] uint256 totalWantRewardPerDay_, 
        data_[6] uint256 userBNBBal_, 
        data_[7] uint256 userTuringPending_, 
        data_[8] uint256 userWantShare_, 
        data_[9] uint256 tvl_
        data_[10] uint256 cakePrice_
    */
    function getData(
        address _user
    ) 
    public 
    view
    returns(
        uint256[11] memory data_
    ) {
        data_[2] = getTuringPrice();
        data_[10] = getCakePrice();
        data_[4] = miningMachine.getTotalMintPerDayOf(pidOfMining);
        data_[5] = getTotalRewardPerDay();

        data_[0] = miningMachine.getMiningSpeedOf(pidOfMining);
        data_[6] = address(_user).balance;
        (data_[7], , ) = miningMachine.getUserInfo(pidOfMining, _user);

        data_[1] = want.balanceOf(_user);

        data_[8] = shareOf[_user];
        data_[3] = pendingCakeOf(_user);

        (data_[9], ) = pankaceMasterChef.userInfo(pidOfFarm, address(this));
    } 

    function getTuringPrice() public view returns(uint256) {

        address[] memory path = new address[](3);

        path[0] = address(TURING);
        path[1] = wbnb;
        path[2] = busd;
        uint256 _price;
        try pancakeSwap.getAmountsOut(1e18, path) returns(uint[] memory amounts) {
            _price = amounts[2];
        } catch {
            _price = 0;   
        }
        return _price;
    }

    function getCakePrice() public view returns(uint256) {

        address[] memory path = new address[](3);

        path[0] = address(CAKE);
        path[1] = wbnb;
        path[2] = busd;
        uint256 _price;
        try pancakeSwap.getAmountsOut(1e18, path) returns(uint[] memory amounts) {
            _price = amounts[2];
        } catch {
            _price = 0;   
        }
        return _price;
    }

    function getTotalRewardPerDay() public view returns(uint256) {
        uint256 _reward = pankaceMasterChef.pendingCake(pidOfFarm, address(this));
        uint256 _rewardPerSec = 0;
        if (block.timestamp > timeOfHarvest) {
           _rewardPerSec = _reward.div(block.timestamp.sub(timeOfHarvest));     
        }
        return _rewardPerSec.mul(periodOfDay);
    }

    function pendingCakeOf(address _user) public view returns (uint256 _pendingCake) {

        uint256 _accWantPerShare  = accWantPerShare;
        uint256 _reward = pankaceMasterChef.pendingCake(pidOfFarm, address(this));
        if (
            _reward > 0 &&
            totalShare > 0
            ) {
            uint256 _performanceFee = _reward.mul(rateOfPerformanceFee).div(10000);
            uint256 _controllerFee  = _reward.mul(rateOfControllerFee).div(10000);
            _reward = _reward.sub(_performanceFee).sub(_controllerFee);
            _accWantPerShare = _accWantPerShare.add(_reward.mul(1e24).div(totalShare));
        }

        uint256 _rewardDebt  = shareOf[_user].mul(_accWantPerShare).div(1e24);

        if (_rewardDebt > rewardWantDebtOf[_user]) {
            _pendingCake = _rewardDebt.sub(rewardWantDebtOf[_user]);
        }
    }

    function getAddressChangeOnTimeLock(string memory _functionName, string memory _fieldName) public view returns(address) {
        return timeLockOf[keccak256(abi.encode(_functionName))].addressOf[keccak256(abi.encode(_fieldName))];
    }

    function getUintChangeOnTimeLock(string memory _functionName, string memory _fieldName) public view returns(uint256) {
        return timeLockOf[keccak256(abi.encode(_functionName))].uintOf[keccak256(abi.encode(_fieldName))];
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"contract IPancakeSwapRouter","name":"_pancakeSwap","type":"address"},{"internalType":"contract IPancakeMasterChef","name":"_pancakeMasterChef","type":"address"},{"internalType":"contract IBEP20","name":"_want","type":"address"},{"internalType":"contract IBEP20","name":"_cake","type":"address"},{"internalType":"contract IBEP20","name":"_turing","type":"address"},{"internalType":"address","name":"_wbnb","type":"address"},{"internalType":"address","name":"_busd","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"string","name":"_functionName","type":"string"}],"name":"onCancelTransactions","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"_user","type":"address"},{"indexed":false,"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"onDeposit","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"string","name":"_functionName","type":"string"},{"indexed":false,"internalType":"string","name":"_fieldName","type":"string"},{"indexed":false,"internalType":"address","name":"_value","type":"address"}],"name":"onQueuedTransactionsChangeAddress","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"string","name":"_functionName","type":"string"},{"indexed":false,"internalType":"string","name":"_fieldName","type":"string"},{"indexed":false,"internalType":"uint256","name":"_value","type":"uint256"}],"name":"onQueuedTransactionsChangeUint","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"_user","type":"address"},{"indexed":false,"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"onWithdraw","type":"event"},{"inputs":[],"name":"CAKE","outputs":[{"internalType":"contract IBEP20","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"GRACE_PERIOD","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MAXIMUM_DELAY","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MINIMUM_DELAY","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"TURING","outputs":[{"internalType":"contract IBEP20","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"accWantPerShare","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"approveConnectToPancake","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"busd","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"string","name":"_functionName","type":"string"}],"name":"cancelTransactions","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"changeTokenAddress","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"controllerMachine","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"delay","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_wantAmt","type":"uint256"}],"name":"deposit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"string","name":"_functionName","type":"string"},{"internalType":"string","name":"_fieldName","type":"string"}],"name":"getAddressChangeOnTimeLock","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCakePrice","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_user","type":"address"}],"name":"getData","outputs":[{"internalType":"uint256[11]","name":"data_","type":"uint256[11]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getTotalRewardPerDay","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getTuringPrice","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"string","name":"_functionName","type":"string"},{"internalType":"string","name":"_fieldName","type":"string"}],"name":"getUintChangeOnTimeLock","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_user","type":"address"}],"name":"harvest","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"miningMachine","outputs":[{"internalType":"contract IMiningMachine","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pancakeSwap","outputs":[{"internalType":"contract IPancakeSwapRouter","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pankaceMasterChef","outputs":[{"internalType":"contract IPancakeMasterChef","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_user","type":"address"}],"name":"pendingCakeOf","outputs":[{"internalType":"uint256","name":"_pendingCake","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"performanceMachine","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"periodOfDay","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pidOfFarm","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pidOfMining","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"string","name":"_functionName","type":"string"},{"internalType":"string","name":"_fieldName","type":"string"},{"internalType":"address","name":"_newAddr","type":"address"}],"name":"queuedTransactionsChangeAddress","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"string","name":"_functionName","type":"string"},{"internalType":"string","name":"_fieldName","type":"string"},{"internalType":"uint256","name":"_value","type":"uint256"}],"name":"queuedTransactionsChangeUint","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"rateOfControllerFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"rateOfPerformanceFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"rewardWantDebtOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"setControllerMachine","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"delay_","type":"uint256"}],"name":"setDelay","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"setMiningMachine","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"setPancakeMasterChefContract","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"setPancakeSwapContract","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"setPerformanceMachine","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"setPidOfFarm","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"setPidOfMining","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"setRateOfControllerFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"setRateOfPerformanceFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"shareOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"name":"timeLockOf","outputs":[{"internalType":"bool","name":"queuedTransactions","type":"bool"},{"internalType":"uint256","name":"timeOfExecute","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"timeOfHarvest","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalShare","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"version","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"want","outputs":[{"internalType":"contract IBEP20","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"wbnb","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_wantAmt","type":"uint256"}],"name":"withdraw","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

608060405260646001556000600d556000600e556000600f55620151806010556032601355600a60145534801561003557600080fd5b5060405162004cd038038062004cd0833981810160405260e081101561005a57600080fd5b508051602082015160408301516060840151608085015160a086015160c0909601516001600055600280546001600160a01b03199081163317909155600a80546001600160a01b0398891690831617905560088054968816968216969096179095556004805494871694861694909417909355600380549286169285169290921790915560058054918516918416919091179055600680549484169483169490941790935560078054929093169116179055614bb4806200011c6000396000f3fe60806040526004361061031d5760003560e01c806383c58369116101ab578063bce645db116100f7578063dda86d7211610095578063e91dc7131161006f578063e91dc71314610d96578063f2dff42114610dab578063f47a396f14610dde578063feb87d1714610df357610324565b8063dda86d7214610d42578063e177246e14610d57578063e4598aa914610d8157610324565b8063c1a287e2116100d1578063c1a287e21461088b578063c850a95e14610d03578063d1b8a3b514610d18578063d77e795614610d2d57610324565b8063bce645db14610ba3578063bd0c5a9d14610bb8578063bf886c5c14610cee57610324565b80639312dc5f11610164578063a6425bae1161013e578063a6425bae14610b3a578063ae0638cb14610b4f578063b1b43ae514610b64578063b6b55f2514610b7957610324565b80639312dc5f146109ba57806396c8ee5c14610af25780639d65ccd514610b0757610324565b806383c58369146108a0578063880ad0af146108b55780638cac8f03146108ca5780638d72647e1461097b5780638da5cb5b146109905780638ecc676f146109a557610324565b8063375ba3781161026a5780635dd84ea7116102235780636edc28fd116101fd5780636edc28fd146106fb578063725968731461074057806372c3baa5146108765780637d645fab1461088b57610324565b80635dd84ea7146106bc5780636a42b8f8146106d15780636e9322b3146106e657610324565b8063375ba378146105e757806338266b22146105fc5780633ca5b234146106685780634ca6ef281461067d57806354fd4d501461069257806359aad470146106a757610324565b806316de220a116102d757806321e5e2c4116102b157806321e5e2c41461056057806324b9b13a146105935780632e1a7d4d146105a857806332009eda146105d257610324565b806316de220a146105215780631b99b1c1146105365780631f1fcd511461054b57610324565b80622b838314610329578063026c4207146103405780630e5c011e146103675780630e8c7a5b1461039a57806312518dc3146103af57806314ca81ed146103e057610324565b3661032457005b600080fd5b34801561033557600080fd5b5061033e610e08565b005b34801561034c57600080fd5b50610355610ff5565b60408051918252519081900360200190f35b34801561037357600080fd5b5061033e6004803603602081101561038a57600080fd5b50356001600160a01b0316610ffb565b3480156103a657600080fd5b50610355611506565b3480156103bb57600080fd5b506103c46115d3565b604080516001600160a01b039092168252519081900360200190f35b3480156103ec57600080fd5b5061033e6004803603606081101561040357600080fd5b810190602081018135600160201b81111561041d57600080fd5b82018360208201111561042f57600080fd5b803590602001918460018302840111600160201b8311171561045057600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b8111156104a257600080fd5b8201836020820111156104b457600080fd5b803590602001918460018302840111600160201b831117156104d557600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550505090356001600160a01b031691506115e29050565b34801561052d57600080fd5b506103c46118c2565b34801561054257600080fd5b506103556118d1565b34801561055757600080fd5b506103c46118d7565b34801561056c57600080fd5b506103556004803603602081101561058357600080fd5b50356001600160a01b03166118e6565b34801561059f57600080fd5b506103556118f8565b3480156105b457600080fd5b5061033e600480360360208110156105cb57600080fd5b50356118fe565b3480156105de57600080fd5b5061033e611c50565b3480156105f357600080fd5b506103c4612242565b34801561060857600080fd5b5061062f6004803603602081101561061f57600080fd5b50356001600160a01b0316612251565b604051808261016080838360005b8381101561065557818101518382015260200161063d565b5050505090500191505060405180910390f35b34801561067457600080fd5b506103c461254c565b34801561068957600080fd5b506103c461255b565b34801561069e57600080fd5b5061035561256a565b3480156106b357600080fd5b50610355612570565b3480156106c857600080fd5b5061033e61279c565b3480156106dd57600080fd5b506103556129da565b3480156106f257600080fd5b5061033e6129e0565b34801561070757600080fd5b506107256004803603602081101561071e57600080fd5b5035612c18565b60408051921515835260208301919091528051918290030190f35b34801561074c57600080fd5b506103556004803603604081101561076357600080fd5b810190602081018135600160201b81111561077d57600080fd5b82018360208201111561078f57600080fd5b803590602001918460018302840111600160201b831117156107b057600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b81111561080257600080fd5b82018360208201111561081457600080fd5b803590602001918460018302840111600160201b8311171561083557600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550612c37945050505050565b34801561088257600080fd5b50610355612d7a565b34801561089757600080fd5b50610355612d80565b3480156108ac57600080fd5b50610355612d87565b3480156108c157600080fd5b5061033e612d8d565b3480156108d657600080fd5b5061033e600480360360208110156108ed57600080fd5b810190602081018135600160201b81111561090757600080fd5b82018360208201111561091957600080fd5b803590602001918460018302840111600160201b8311171561093a57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550612fa6945050505050565b34801561098757600080fd5b506103c4613137565b34801561099c57600080fd5b506103c4613146565b3480156109b157600080fd5b5061033e613155565b3480156109c657600080fd5b5061033e600480360360608110156109dd57600080fd5b810190602081018135600160201b8111156109f757600080fd5b820183602082011115610a0957600080fd5b803590602001918460018302840111600160201b83111715610a2a57600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b811115610a7c57600080fd5b820183602082011115610a8e57600080fd5b803590602001918460018302840111600160201b83111715610aaf57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550509135925061333d915050565b348015610afe57600080fd5b506103c4613550565b348015610b1357600080fd5b5061035560048036036020811015610b2a57600080fd5b50356001600160a01b031661355f565b348015610b4657600080fd5b5061033e613571565b348015610b5b57600080fd5b5061035561379c565b348015610b7057600080fd5b506103556137a2565b348015610b8557600080fd5b5061033e60048036036020811015610b9c57600080fd5b50356137a9565b348015610baf57600080fd5b506103c4613a8b565b348015610bc457600080fd5b506103c460048036036040811015610bdb57600080fd5b810190602081018135600160201b811115610bf557600080fd5b820183602082011115610c0757600080fd5b803590602001918460018302840111600160201b83111715610c2857600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b811115610c7a57600080fd5b820183602082011115610c8c57600080fd5b803590602001918460018302840111600160201b83111715610cad57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550613a9a945050505050565b348015610cfa57600080fd5b5061033e613be4565b348015610d0f57600080fd5b50610355613df8565b348015610d2457600080fd5b5061033e613e38565b348015610d3957600080fd5b5061033e61402a565b348015610d4e57600080fd5b50610355614235565b348015610d6357600080fd5b5061033e60048036036020811015610d7a57600080fd5b503561423b565b348015610d8d57600080fd5b506103c4614311565b348015610da257600080fd5b5061033e614320565b348015610db757600080fd5b5061035560048036036020811015610dce57600080fd5b50356001600160a01b0316614555565b348015610dea57600080fd5b506103556146fc565b348015610dff57600080fd5b5061033e614702565b6002546001600160a01b03163314610e55576040805162461bcd60e51b81526020600482015260126024820152600080516020614b5f833981519152604482015290519081900360640190fd5b604080516020808201819052600c828401526b7365745069644f664661726d60a01b6060808401919091528351808403909101815260808301808552815191830191909120600090815260179092529083902060c08301909352825460ff1615158152600183015460a090920191909152610ecf9061478a565b604080516020808201819052600982840152687069644f664661726d60b81b60608084019190915283518084039091018152608090920183528151918101919091206000908152600384019091522054610f61576040805162461bcd60e51b815260206004820152600e60248201526d1253959053125117d05353d5539560921b604482015290519081900360640190fd5b6040805160208082018190526009828401819052687069644f664661726d60b81b60608085018290528551808603909101815260808501865280519084012060009081526003870180855286822054600c5560a0860185905260c086019390935260e0808601929092528551808603909201825261010090940185528051908301208352905290812055805460ff19169055565b600d5481565b600954600b5460408051630c7e663b60e11b815260048101929092526001600160a01b03848116602484015281519316926318fccc769260448082019392918290030181600087803b15801561105057600080fd5b505af1158015611064573d6000803e3d6000fd5b505050506040513d604081101561107a57600080fd5b5050600854600c5460408051631175a1dd60e01b81526004810192909252306024830152516000926001600160a01b031691631175a1dd916044808301926020929190829003018186803b1580156110d157600080fd5b505afa1580156110e5573d6000803e3d6000fd5b505050506040513d60208110156110fb57600080fd5b50519050801580159061111057506000600d54115b1561131d57600854600c5460408051630441a3e760e41b8152600481019290925260006024830181905290516001600160a01b039093169263441a3e7092604480820193929182900301818387803b15801561116b57600080fd5b505af115801561117f573d6000803e3d6000fd5b5050505060006111a66127106111a06013548561488790919063ffffffff16565b906148eb565b905060006111c56127106111a06014548661488790919063ffffffff16565b6003546015546040805163a9059cbb60e01b81526001600160a01b03928316600482015260248101879052905193945091169163a9059cbb916044808201926020929091908290030181600087803b15801561122057600080fd5b505af1158015611234573d6000803e3d6000fd5b505050506040513d602081101561124a57600080fd5b50506003546016546040805163a9059cbb60e01b81526001600160a01b039283166004820152602481018590529051919092169163a9059cbb9160448083019260209291908290030181600087803b1580156112a557600080fd5b505af11580156112b9573d6000803e3d6000fd5b505050506040513d60208110156112cf57600080fd5b506112e69050816112e08585614943565b90614943565b925061131761130e600d546111a069d3c21bcecceda10000008761488790919063ffffffff16565b600e549061498e565b600e5550505b42600f55600e546001600160a01b03831660009081526011602052604081205490916113599169d3c21bcecceda1000000916111a09190614887565b6001600160a01b0384166000908152601260205260409020549091508111156114b0576001600160a01b0383166000908152601260205260408120546113a0908390614943565b600354604080516370a0823160e01b815230600482015290519293506000926001600160a01b03909216916370a0823191602480820192602092909190829003018186803b1580156113f157600080fd5b505afa158015611405573d6000803e3d6000fd5b505050506040513d602081101561141b57600080fd5b505190508082111561142b578091505b6003546040805163a9059cbb60e01b81526001600160a01b038881166004830152602482018690529151919092169163a9059cbb9160448083019260209291908290030181600087803b15801561148157600080fd5b505af1158015611495573d6000803e3d6000fd5b505050506040513d60208110156114ab57600080fd5b505050505b600e546001600160a01b0384166000908152601160205260409020546114e59169d3c21bcecceda1000000916111a091614887565b6001600160a01b039093166000908152601260205260409020929092555050565b600854600c5460408051631175a1dd60e01b815260048101929092523060248301525160009283926001600160a01b0390911691631175a1dd91604480820192602092909190829003018186803b15801561156057600080fd5b505afa158015611574573d6000803e3d6000fd5b505050506040513d602081101561158a57600080fd5b5051600f549091506000904211156115be576115bb6115b4600f544261494390919063ffffffff16565b83906148eb565b90505b6010546115cc908290614887565b9250505090565b6005546001600160a01b031681565b6002546001600160a01b0316331461162f576040805162461bcd60e51b81526020600482015260126024820152600080516020614b5f833981519152604482015290519081900360640190fd5b600060176000856040516020018080602001828103825283818151815260200191508051906020019080838360005b8381101561167657818101518382015260200161165e565b50505050905090810190601f1680156116a35780820380516001836020036101000a031916815260200191505b5092505050604051602081830303815290604052805190602001208152602001908152602001600020905081816002016000856040516020018080602001828103825283818151815260200191508051906020019080838360005b838110156117165781810151838201526020016116fe565b50505050905090810190601f1680156117435780820380516001836020036101000a031916815260200191505b5060408051808303601f1901815291815281516020928301208652908501959095525050500160002080546001600160a01b0319166001600160a01b0392909216919091179055805460ff191660011781556018546117a390429061498e565b81600101819055507f1bd33efd68d2824f5f0f2519ce7c9ca0ddff6234523468e89077a0dca7b73970848484604051808060200180602001846001600160a01b03168152602001838103835286818151815260200191508051906020019080838360005b8381101561181f578181015183820152602001611807565b50505050905090810190601f16801561184c5780820380516001836020036101000a031916815260200191505b50838103825285518152855160209182019187019080838360005b8381101561187f578181015183820152602001611867565b50505050905090810190601f1680156118ac5780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a150505050565b6015546001600160a01b031681565b60145481565b6004546001600160a01b031681565b60116020526000908152604090205481565b600e5481565b60026000541415611956576040805162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015290519081900360640190fd5b60026000558061199d576040805162461bcd60e51b815260206004820152600d60248201526c1253959053125117d253941555609a1b604482015290519081900360640190fd5b6119a633610ffb565b336000908152601160205260409020548111156119cf5750336000908152601160205260409020545b600854600c5460408051630441a3e760e41b8152600481019290925260248201849052516001600160a01b039092169163441a3e709160448082019260009290919082900301818387803b158015611a2657600080fd5b505af1158015611a3a573d6000803e3d6000fd5b505033600090815260116020526040902054611a599250905082614943565b33600090815260116020526040902055600d54611a769082614943565b600d5560048054604080516370a0823160e01b81523093810193909352516000926001600160a01b03909216916370a08231916024808301926020929190829003018186803b158015611ac857600080fd5b505afa158015611adc573d6000803e3d6000fd5b505050506040513d6020811015611af257600080fd5b5051905081811015611b02578091505b600480546040805163a9059cbb60e01b8152339381019390935260248301859052516001600160a01b039091169163a9059cbb9160448083019260209291908290030181600087803b158015611b5757600080fd5b505af1158015611b6b573d6000803e3d6000fd5b505050506040513d6020811015611b8157600080fd5b505081811115611c0357600854600c546001600160a01b039091169063e2bbb15890611bad8486614943565b6040518363ffffffff1660e01b81526004018083815260200182815260200192505050600060405180830381600087803b158015611bea57600080fd5b505af1158015611bfe573d6000803e3d6000fd5b505050505b611c0c336149d6565b604080513381526020810184905281517fccad973dcd043c7d680389db4378bd6b9775db7124092e9e0422c9e46d7985dc929181900390910190a150506001600055565b6002546001600160a01b03163314611c9d576040805162461bcd60e51b81526020600482015260126024820152600080516020614b5f833981519152604482015290519081900360640190fd5b604080516020808201819052601282840152716368616e6765546f6b656e4164647265737360701b6060808401919091528351808403909101815260808301808552815191830191909120600090815260179092529083902060c08301909352825460ff1615158152600183015460a090920191909152611d1d9061478a565b604080516020808201819052600482840152631dd85b9d60e21b606080840191909152835180840390910181526080909201835281519181019190912060009081526002840190915220546001600160a01b031615611e20576040805160208082018190526004828401819052631dd85b9d60e21b6060808501829052855180860390910181526080850186528051908401206000908152600287018085528682205484546001600160a01b039091166001600160a01b031991821617855560a0870186905260c087019490945260e080870193909352865180870390930183526101009095018652815191840191909120815292909152919020805490911690555b60408051602080820181905260068284015265545552494e4760d01b606080840191909152835180840390910181526080909201835281519181019190912060009081526002840190915220546001600160a01b031615611f2957604080516020808201819052600682840181905265545552494e4760d01b60608085018290528551808603909101815260808501865280519084012060009081526002870180855286822054600580546001600160a01b039092166001600160a01b031992831617905560a0870186905260c087019490945260e080870193909352865180870390930183526101009095018652815191840191909120815292909152919020805490911690555b6040805160208082018190526004828401526343414b4560e01b606080840191909152835180840390910181526080909201835281519181019190912060009081526002840190915220546001600160a01b03161561202e5760408051602080820181905260048284018190526343414b4560e01b60608085018290528551808603909101815260808501865280519084012060009081526002870180855286822054600380546001600160a01b039092166001600160a01b031992831617905560a0870186905260c087019490945260e080870193909352865180870390930183526101009095018652815191840191909120815292909152919020805490911690555b604080516020808201819052600482840152633bb1373160e11b606080840191909152835180840390910181526080909201835281519181019190912060009081526002840190915220546001600160a01b031615612133576040805160208082018190526004828401819052633bb1373160e11b60608085018290528551808603909101815260808501865280519084012060009081526002870180855286822054600680546001600160a01b039092166001600160a01b031992831617905560a0870186905260c087019490945260e080870193909352865180870390930183526101009095018652815191840191909120815292909152919020805490911690555b60408051602080820181905260048284015263189d5cd960e21b606080840191909152835180840390910181526080909201835281519181019190912060009081526002840190915220546001600160a01b03161561223857604080516020808201819052600482840181905263189d5cd960e21b60608085018290528551808603909101815260808501865280519084012060009081526002870180855286822054600780546001600160a01b039092166001600160a01b031992831617905560a0870186905260c087019490945260e080870193909352865180870390930183526101009095018652815191840191909120815292909152919020805490911690555b805460ff19169055565b600a546001600160a01b031681565b612259614aac565b612261613df8565b604082015261226e612570565b610140820152600954600b5460408051635e86cd9560e01b81526004810192909252516001600160a01b0390921691635e86cd9591602480820192602092909190829003018186803b1580156122c357600080fd5b505afa1580156122d7573d6000803e3d6000fd5b505050506040513d60208110156122ed57600080fd5b505160808201526122fc611506565b60a0820152600954600b54604080516324aa7cc560e11b81526004810192909252516001600160a01b0390921691634954f98a91602480820192602092909190829003018186803b15801561235057600080fd5b505afa158015612364573d6000803e3d6000fd5b505050506040513d602081101561237a57600080fd5b505181526001600160a01b03828116803160c0840152600954600b5460408051631069f3b560e01b8152600481019290925260248201939093529151921691631069f3b591604480820192606092909190829003018186803b1580156123df57600080fd5b505afa1580156123f3573d6000803e3d6000fd5b505050506040513d606081101561240957600080fd5b505160e082015260048054604080516370a0823160e01b81526001600160a01b0386811694820194909452905192909116916370a0823191602480820192602092909190829003018186803b15801561246157600080fd5b505afa158015612475573d6000803e3d6000fd5b505050506040513d602081101561248b57600080fd5b50516020808301919091526001600160a01b0383166000908152601190915260409020546101008201526124be82614555565b6060820152600854600c54604080516393f1a40b60e01b8152600481019290925230602483015280516001600160a01b03909316926393f1a40b926044808201939291829003018186803b15801561251557600080fd5b505afa158015612529573d6000803e3d6000fd5b505050506040513d604081101561253f57600080fd5b5051610120820152919050565b6007546001600160a01b031681565b6003546001600160a01b031681565b60015481565b6040805160038082526080820190925260009160609190602082018380368337505060035482519293506001600160a01b0316918391506000906125b057fe5b6001600160a01b0392831660209182029290920101526006548251911690829060019081106125db57fe5b6001600160a01b03928316602091820292909201015260075482519116908290600290811061260657fe5b6001600160a01b03928316602091820292909201810191909152600a546040805163d06ca61f60e01b8152670de0b6b3a76400006004820181815260248301938452875160448401528751600097959095169563d06ca61f9592948994929390926064019185810191028083838c5b8381101561268d578181015183820152602001612675565b50505050905001935050505060006040518083038186803b1580156126b157600080fd5b505afa92505050801561277157506040513d6000823e601f3d908101601f1916820160405260208110156126e457600080fd5b8101908080516040519392919084600160201b82111561270357600080fd5b90830190602082018581111561271857600080fd5b82518660208202830111600160201b8211171561273457600080fd5b82525081516020918201928201910280838360005b83811015612761578181015183820152602001612749565b5050505090500160405250505060015b61277d57506000612796565b8060028151811061278a57fe5b60200260200101519150505b91505090565b6002546001600160a01b031633146127e9576040805162461bcd60e51b81526020600482015260126024820152600080516020614b5f833981519152604482015290519081900360640190fd5b604080516020808201819052601c828401527f73657450616e63616b654d617374657243686566436f6e7472616374000000006060808401919091528351808403909101815260808301808552815191830191909120600090815260179092529083902060c08301909352825460ff1615158152600183015460a0909201919091526128749061478a565b604080516020808201819052601182840152703830b735b0b1b2a6b0b9ba32b921b432b360791b606080840191909152835180840390910181526080909201835281519181019190912060009081526002840190915220546001600160a01b0316612918576040805162461bcd60e51b815260206004820152600f60248201526e494e56414c49445f4144445245535360881b604482015290519081900360640190fd5b6040805160208082018190526011828401819052703830b735b0b1b2a6b0b9ba32b921b432b360791b60608085018290528551808603909101815260808501865280519084012060009081526002870180855286822054600880546001600160a01b039092166001600160a01b031992831617905560a0870186905260c087019490945260e08087019390935286518087039093018352610100909501865281519184019190912081529290915291902080549091169055805460ff19169055565b60185481565b6002546001600160a01b03163314612a2d576040805162461bcd60e51b81526020600482015260126024820152600080516020614b5f833981519152604482015290519081900360640190fd5b60408051602080820181905260158284015274736574506572666f726d616e63654d616368696e6560581b6060808401919091528351808403909101815260808301808552815191830191909120600090815260179092529083902060c08301909352825460ff1615158152600183015460a090920191909152612ab09061478a565b60408051602080820181905260128284015271706572666f726d616e63654d616368696e6560701b606080840191909152835180840390910181526080909201835281519181019190912060009081526002840190915220546001600160a01b0316612b55576040805162461bcd60e51b815260206004820152600f60248201526e494e56414c49445f4144445245535360881b604482015290519081900360640190fd5b604080516020808201819052601282840181905271706572666f726d616e63654d616368696e6560701b60608085018290528551808603909101815260808501865280519084012060009081526002870180855286822054601580546001600160a01b039092166001600160a01b031992831617905560a0870186905260c087019490945260e08087019390935286518087039093018352610100909501865281519184019190912081529290915291902080549091169055805460ff19169055565b6017602052600090815260409020805460019091015460ff9091169082565b600060176000846040516020018080602001828103825283818151815260200191508051906020019080838360005b83811015612c7e578181015183820152602001612c66565b50505050905090810190601f168015612cab5780820380516001836020036101000a031916815260200191505b50925050506040516020818303038152906040528051906020012081526020019081526020016000206003016000836040516020018080602001828103825283818151815260200191508051906020019080838360005b83811015612d1a578181015183820152602001612d02565b50505050905090810190601f168015612d475780820380516001836020036101000a031916815260200191505b50925050506040516020818303038152906040528051906020012081526020019081526020016000205490505b92915050565b600c5481565b62278d0081565b60105481565b6002546001600160a01b03163314612dda576040805162461bcd60e51b81526020600482015260126024820152600080516020614b5f833981519152604482015290519081900360640190fd5b6040805160208082018190526011828401527007472616e736665724f776e65727368697607c1b6060808401919091528351808403909101815260808301808552815191830191909120600090815260179092529083902060c08301909352825460ff1615158152600183015460a090920191909152612e599061478a565b6040805160208082018190526005828401526437bbb732b960d91b606080840191909152835180840390910181526080909201835281519181019190912060009081526002840190915220546001600160a01b0316612ef1576040805162461bcd60e51b815260206004820152600f60248201526e494e56414c49445f4144445245535360881b604482015290519081900360640190fd5b60408051602080820181905260058284018190526437bbb732b960d91b606080850182905285518086039091018152608085018652805190840120600090815260028781018086528783205482546001600160a01b039091166001600160a01b03199182161790925560a0870186905260c087019490945260e080870193909352865180870390930183526101009095018652815191840191909120815291529190912080549091169055805460ff19169055565b6002546001600160a01b03163314612ff3576040805162461bcd60e51b81526020600482015260126024820152600080516020614b5f833981519152604482015290519081900360640190fd5b600060176000836040516020018080602001828103825283818151815260200191508051906020019080838360005b8381101561303a578181015183820152602001613022565b50505050905090810190601f1680156130675780820380516001836020036101000a031916815260200191505b5060408051601f1981840301815291815281516020928301208652858201969096529385016000908120805460ff19168155865186815289518188015289519198507fce369f91d52b663114643c430217b52530c2cc7318cac7a3e9d46241cbc354a8978a97919650869550850193508601918190849084905b838110156130f95781810151838201526020016130e1565b50505050905090810190601f1680156131265780820380516001836020036101000a031916815260200191505b509250505060405180910390a15050565b6006546001600160a01b031681565b6002546001600160a01b031681565b6002546001600160a01b031633146131a2576040805162461bcd60e51b81526020600482015260126024820152600080516020614b5f833981519152604482015290519081900360640190fd5b6040805160208082018190526010828401526f7365744d696e696e674d616368696e6560801b6060808401919091528351808403909101815260808301808552815191830191909120600090815260179092529083902060c08301909352825460ff1615158152600183015460a0909201919091526132209061478a565b604080516020808201819052600d828401526c6d696e696e674d616368696e6560981b606080840191909152835180840390910181526080909201835281519181019190912060009081526002840190915220546001600160a01b03166132c0576040805162461bcd60e51b815260206004820152600f60248201526e494e56414c49445f4144445245535360881b604482015290519081900360640190fd5b604080516020808201819052600d828401526c6d696e696e674d616368696e6560981b60608084019190915283518084039091018152608090920183528151918101919091206000908152600284019091522054600980546001600160a01b0319166001600160a01b03909216919091179055805460ff19169055565b6002546001600160a01b0316331461338a576040805162461bcd60e51b81526020600482015260126024820152600080516020614b5f833981519152604482015290519081900360640190fd5b600060176000856040516020018080602001828103825283818151815260200191508051906020019080838360005b838110156133d15781810151838201526020016133b9565b50505050905090810190601f1680156133fe5780820380516001836020036101000a031916815260200191505b5092505050604051602081830303815290604052805190602001208152602001908152602001600020905081816003016000856040516020018080602001828103825283818151815260200191508051906020019080838360005b83811015613471578181015183820152602001613459565b50505050905090810190601f16801561349e5780820380516001836020036101000a031916815260200191505b5060408051601f1981840301815291815281516020928301208652908501959095525050500160002055805460ff191660011781556018546134e190429061498e565b600182015560408051908101839052606080825285519082015284517f860699cc7b0f3cb3d034fd31cdfe0816887a9f55d10993224d77c359c3d5555191869186918691819060208083019160808401918801908083836000831561181f578181015183820152602001611807565b6008546001600160a01b031681565b60126020526000908152604090205481565b6002546001600160a01b031633146135be576040805162461bcd60e51b81526020600482015260126024820152600080516020614b5f833981519152604482015290519081900360640190fd5b604080516020808201819052601682840152751cd95d14185b98d85ad954ddd85c10dbdb9d1c9858dd60521b6060808401919091528351808403909101815260808301808552815191830191909120600090815260179092529083902060c08301909352825460ff1615158152600183015460a0909201919091526136429061478a565b604080516020808201819052600b828401526a070616e63616b65537761760ac1b606080840191909152835180840390910181526080909201835281519181019190912060009081526002840190915220546001600160a01b03166136e0576040805162461bcd60e51b815260206004820152600f60248201526e494e56414c49445f4144445245535360881b604482015290519081900360640190fd5b604080516020808201819052600b8284018190526a070616e63616b65537761760ac1b60608085018290528551808603909101815260808501865280519084012060009081526002870180855286822054600a80546001600160a01b039092166001600160a01b031992831617905560a0870186905260c087019490945260e08087019390935286518087039093018352610100909501865281519184019190912081529290915291902080549091169055805460ff19169055565b600f5481565b6202a30081565b60026000541415613801576040805162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015290519081900360640190fd5b600260005580613848576040805162461bcd60e51b815260206004820152600d60248201526c1253959053125117d253941555609a1b604482015290519081900360640190fd5b60048054604080516370a0823160e01b815233938101939093525183926001600160a01b03909216916370a08231916024808301926020929190829003018186803b15801561389657600080fd5b505afa1580156138aa573d6000803e3d6000fd5b505050506040513d60208110156138c057600080fd5b50511015613905576040805162461bcd60e51b815260206004820152600d60248201526c1253959053125117d253941555609a1b604482015290519081900360640190fd5b61390e33610ffb565b60048054604080516323b872dd60e01b8152339381019390935230602484015260448301849052516001600160a01b03909116916323b872dd9160648083019260209291908290030181600087803b15801561396957600080fd5b505af115801561397d573d6000803e3d6000fd5b505050506040513d602081101561399357600080fd5b5050600854600c5460408051631c57762b60e31b8152600481019290925260248201849052516001600160a01b039092169163e2bbb1589160448082019260009290919082900301818387803b1580156139ec57600080fd5b505af1158015613a00573d6000803e3d6000fd5b505033600090815260116020526040902054613a1f925090508261498e565b33600090815260116020526040902055600d54613a3c908261498e565b600d55613a48336149d6565b604080513381526020810183905281517f2bf9518c65eff7d1f3ee4106bf0dc41267ccde0924dbfa4ab476ed5c0f45da98929181900390910190a1506001600055565b6009546001600160a01b031681565b600060176000846040516020018080602001828103825283818151815260200191508051906020019080838360005b83811015613ae1578181015183820152602001613ac9565b50505050905090810190601f168015613b0e5780820380516001836020036101000a031916815260200191505b50925050506040516020818303038152906040528051906020012081526020019081526020016000206002016000836040516020018080602001828103825283818151815260200191508051906020019080838360005b83811015613b7d578181015183820152602001613b65565b50505050905090810190601f168015613baa5780820380516001836020036101000a031916815260200191505b5060408051808303601f19018152918152815160209283012086529085019590955250505001600020546001600160a01b03169392505050565b6002546001600160a01b03163314613c31576040805162461bcd60e51b81526020600482015260126024820152600080516020614b5f833981519152604482015290519081900360640190fd5b60408051602080820181905260178284018190527f736574526174654f66506572666f726d616e6365466565000000000000000000606080850191909152845180850390910181526080840180865281519184019190912060009081529190925283902060c08301909352825460ff1615158152600183015460a090920191909152613cbc9061478a565b60408051602080820181905260148284015273726174654f66506572666f726d616e636546656560601b60608084019190915283518084039091018152608090920183528151918101919091206000908152600384019091522054613d59576040805162461bcd60e51b815260206004820152600e60248201526d1253959053125117d05353d5539560921b604482015290519081900360640190fd5b604080516020808201819052601482840181905273726174654f66506572666f726d616e636546656560601b6060808501829052855180860390910181526080850186528051908401206000908152600387018085528682205460135560a0860185905260c086019390935260e0808601929092528551808603909201825261010090940185528051908301208352905290812055805460ff19169055565b6040805160038082526080820190925260009160609190602082018380368337505060055482519293506001600160a01b0316918391506000906125b057fe5b6002546001600160a01b03163314613e85576040805162461bcd60e51b81526020600482015260126024820152600080516020614b5f833981519152604482015290519081900360640190fd5b604080516020808201819052600e828401526d7365745069644f664d696e696e6760901b6060808401919091528351808403909101815260808301808552815191830191909120600090815260179092529083902060c08301909352825460ff1615158152600183015460a090920191909152613f019061478a565b604080516020808201819052600b828401526a7069644f664d696e696e6760a81b60608084019190915283518084039091018152608090920183528151918101919091206000908152600384019091522054613f95576040805162461bcd60e51b815260206004820152600e60248201526d1253959053125117d05353d5539560921b604482015290519081900360640190fd5b604080516020808201819052600b8284018190526a7069644f664d696e696e6760a81b60608085018290528551808603909101815260808501865280519084012060009081526003870180855286822054845560a0860185905260c086019390935260e0808601929092528551808603909201825261010090940185528051908301208352905290812055805460ff19169055565b6002546001600160a01b03163314614077576040805162461bcd60e51b81526020600482015260126024820152600080516020614b5f833981519152604482015290519081900360640190fd5b60408051602080820181905260168284015275736574526174654f66436f6e74726f6c6c657246656560501b6060808401919091528351808403909101815260808301808552815191830191909120600090815260179092529083902060c08301909352825460ff1615158152600183015460a0909201919091526140fb9061478a565b60408051602080820181905260138284015272726174654f66436f6e74726f6c6c657246656560681b60608084019190915283518084039091018152608090920183528151918101919091206000908152600384019091522054614197576040805162461bcd60e51b815260206004820152600e60248201526d1253959053125117d05353d5539560921b604482015290519081900360640190fd5b604080516020808201819052601382840181905272726174654f66436f6e74726f6c6c657246656560681b6060808501829052855180860390910181526080850186528051908401206000908152600387018085528682205460145560a0860185905260c086019390935260e0808601929092528551808603909201825261010090940185528051908301208352905290812055805460ff19169055565b60135481565b6002546001600160a01b03163314614288576040805162461bcd60e51b81526020600482015260126024820152600080516020614b5f833981519152604482015290519081900360640190fd5b6202a3008110156142ca5760405162461bcd60e51b8152600401808060200182810382526034815260200180614acc6034913960400191505060405180910390fd5b62278d0081111561430c5760405162461bcd60e51b8152600401808060200182810382526038815260200180614b006038913960400191505060405180910390fd5b601855565b6016546001600160a01b031681565b6002546001600160a01b0316331461436d576040805162461bcd60e51b81526020600482015260126024820152600080516020614b5f833981519152604482015290519081900360640190fd5b60408051602080820181905260148284015273736574436f6e74726f6c6c65724d616368696e6560601b6060808401919091528351808403909101815260808301808552815191830191909120600090815260179092529083902060c08301909352825460ff1615158152600183015460a0909201919091526143ef9061478a565b60408051602080820181905260118284015270636f6e74726f6c6c65724d616368696e6560781b606080840191909152835180840390910181526080909201835281519181019190912060009081526002840190915220546001600160a01b0316614493576040805162461bcd60e51b815260206004820152600f60248201526e494e56414c49445f4144445245535360881b604482015290519081900360640190fd5b604080516020808201819052601182840181905270636f6e74726f6c6c65724d616368696e6560781b60608085018290528551808603909101815260808501865280519084012060009081526002870180855286822054601680546001600160a01b039092166001600160a01b031992831617905560a0870186905260c087019490945260e08087019390935286518087039093018352610100909501865281519184019190912081529290915291902080549091169055805460ff19169055565b600e54600854600c5460408051631175a1dd60e01b81526004810192909252306024830152516000939284926001600160a01b0390911691631175a1dd91604480820192602092909190829003018186803b1580156145b357600080fd5b505afa1580156145c7573d6000803e3d6000fd5b505050506040513d60208110156145dd57600080fd5b5051905080158015906145f257506000600d54115b156146775760006146146127106111a06013548561488790919063ffffffff16565b905060006146336127106111a06014548661488790919063ffffffff16565b9050614643816112e08585614943565b925061467261466b600d546111a069d3c21bcecceda10000008761488790919063ffffffff16565b859061498e565b935050505b6001600160a01b0384166000908152601160205260408120546146aa9069d3c21bcecceda1000000906111a09086614887565b6001600160a01b0386166000908152601260205260409020549091508111156146f4576001600160a01b0385166000908152601260205260409020546146f1908290614943565b93505b505050919050565b600b5481565b600480546008546040805163095ea7b360e01b81526001600160a01b039283169481019490945260001960248501525191169163095ea7b39160448083019260209291908290030181600087803b15801561475c57600080fd5b505af1158015614770573d6000803e3d6000fd5b505050506040513d602081101561478657600080fd5b5050565b805115156001146147e2576040805162461bcd60e51b815260206004820152601f60248201527f5472616e73616374696f6e206861736e2774206265656e207175657565642e00604482015290519081900360640190fd5b42816020015111156148255760405162461bcd60e51b8152600401808060200182810382526027815260200180614b386027913960400191505060405180910390fd5b602081015142906148399062278d0061498e565b1015614884576040805162461bcd60e51b81526020600482015260156024820152742a3930b739b0b1ba34b7b71034b99039ba30b6329760591b604482015290519081900360640190fd5b50565b60008261489657506000612d74565b828202828482816148a357fe5b04146148e4576040805162461bcd60e51b815260206004820152600b60248201526a1253959053125117d3555360aa1b604482015290519081900360640190fd5b9392505050565b600080821161492f576040805162461bcd60e51b815260206004820152600b60248201526a24a72b20a624a22fa224ab60a91b604482015290519081900360640190fd5b600082848161493a57fe5b04949350505050565b600082821115614988576040805162461bcd60e51b815260206004820152600b60248201526a24a72b20a624a22fa9aaa160a91b604482015290519081900360640190fd5b50900390565b6000828201838110156148e4576040805162461bcd60e51b815260206004820152600b60248201526a1253959053125117d0511160aa1b604482015290519081900360640190fd5b600954600b5460408051638fb4e1cd60e01b815260048101929092526001600160a01b0384811660248401529051921691638fb4e1cd916044808201926020929091908290030181600087803b158015614a2f57600080fd5b505af1158015614a43573d6000803e3d6000fd5b505050506040513d6020811015614a5957600080fd5b5050600e546001600160a01b038216600090815260116020526040902054614a909169d3c21bcecceda1000000916111a091614887565b6001600160a01b03909116600090815260126020526040902055565b604051806101600160405280600b90602082028036833750919291505056fe54696d656c6f636b3a3a73657444656c61793a2044656c6179206d75737420657863656564206d696e696d756d2064656c61792e54696d656c6f636b3a3a73657444656c61793a2044656c6179206d757374206e6f7420657863656564206d6178696d756d2064656c61792e5472616e73616374696f6e206861736e2774207375727061737365642074696d65206c6f636b2e494e56414c49445f5045524d495353494f4e0000000000000000000000000000a2646970667358221220231022889035b0a2c91a4630fce86e5837fea68aced7323e3c7b648c2710a3f064736f6c634300060c003300000000000000000000000010ed43c718714eb63d5aa57b78b54704e256024e00000000000000000000000073feaa1ee314f8c655e354234017be2193c9e24e00000000000000000000000016b9a82891338f9ba80e2d6970fdda79d1eb0dae0000000000000000000000000e09fabb73bd3ade0a17ecc321fd13a19e81ce8200000000000000000000000076ed05fa250e8e993275e6e78b470b4d70ed120b000000000000000000000000bb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c000000000000000000000000e9e7cea3dedca5984780bafc599bd69add087d56

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

00000000000000000000000010ed43c718714eb63d5aa57b78b54704e256024e00000000000000000000000073feaa1ee314f8c655e354234017be2193c9e24e00000000000000000000000016b9a82891338f9ba80e2d6970fdda79d1eb0dae0000000000000000000000000e09fabb73bd3ade0a17ecc321fd13a19e81ce8200000000000000000000000076ed05fa250e8e993275e6e78b470b4d70ed120b000000000000000000000000bb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c000000000000000000000000e9e7cea3dedca5984780bafc599bd69add087d56

-----Decoded View---------------
Arg [0] : _pancakeSwap (address): 0x10ed43c718714eb63d5aa57b78b54704e256024e
Arg [1] : _pancakeMasterChef (address): 0x73feaa1ee314f8c655e354234017be2193c9e24e
Arg [2] : _want (address): 0x16b9a82891338f9ba80e2d6970fdda79d1eb0dae
Arg [3] : _cake (address): 0x0e09fabb73bd3ade0a17ecc321fd13a19e81ce82
Arg [4] : _turing (address): 0x76ed05fa250e8e993275e6e78b470b4d70ed120b
Arg [5] : _wbnb (address): 0xbb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c
Arg [6] : _busd (address): 0xe9e7cea3dedca5984780bafc599bd69add087d56

-----Encoded View---------------
7 Constructor Arguments found :
Arg [0] : 00000000000000000000000010ed43c718714eb63d5aa57b78b54704e256024e
Arg [1] : 00000000000000000000000073feaa1ee314f8c655e354234017be2193c9e24e
Arg [2] : 00000000000000000000000016b9a82891338f9ba80e2d6970fdda79d1eb0dae
Arg [3] : 0000000000000000000000000e09fabb73bd3ade0a17ecc321fd13a19e81ce82
Arg [4] : 00000000000000000000000076ed05fa250e8e993275e6e78b470b4d70ed120b
Arg [5] : 000000000000000000000000bb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c
Arg [6] : 000000000000000000000000e9e7cea3dedca5984780bafc599bd69add087d56


Deployed ByteCode Sourcemap

9955:18234:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20451:470;;;;;;;;;;;;;:::i;:::-;;10464:29;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;22754:1399;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;22754:1399:0;-1:-1:-1;;;;;22754:1399:0;;:::i;26435:378::-;;;;;;;;;;;;;:::i;10171:20::-;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;10171:20:0;;;;;;;;;;;;;;13204:504;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;13204:504:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;13204:504:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;13204:504:0;;;;;;;;-1:-1:-1;13204:504:0;;-1:-1:-1;;;;;13204:504:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;13204:504:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;13204:504:0;;-1:-1:-1;;;13204:504:0;;-1:-1:-1;;;;;13204:504:0;;-1:-1:-1;13204:504:0;;-1:-1:-1;13204:504:0:i;10890:33::-;;;;;;;;;;;;;:::i;10824:39::-;;;;;;;;;;;;;:::i;10142:18::-;;;;;;;;;;;;;:::i;10648:42::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;10648:42:0;-1:-1:-1;;;;;10648:42:0;;:::i;10500:34::-;;;;;;;;;;;;;:::i;21906:840::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;21906:840:0;;:::i;17398:1466::-;;;;;;;;;;;;;:::i;10354:37::-;;;;;;;;;;;;;:::i;24844:712::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;24844:712:0;-1:-1:-1;;;;;24844:712:0;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10234:19;;;;;;;;;;;;;:::i;10113:18::-;;;;;;;;;;;;;:::i;10045:28::-;;;;;;;;;;;;;:::i;26002:425::-;;;;;;;;;;;;;:::i;16813:573::-;;;;;;;;;;;;;:::i;11260:17::-;;;;;;;;;;;;;:::i;15168:545::-;;;;;;;;;;;;;:::i;11054:46::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;11054:46:0;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;27953:233;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;27953:233:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;27953:233:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;27953:233:0;;;;;;;;-1:-1:-1;27953:233:0;;-1:-1:-1;;;;;27953:233:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;27953:233:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;27953:233:0;;-1:-1:-1;27953:233:0;;-1:-1:-1;;;;;27953:233:0:i;10433:24::-;;;;;;;;;;;;;:::i;11209:44::-;;;;;;;;;;;;;:::i;10580:35::-;;;;;;;;;;;;;:::i;14213:485::-;;;;;;;;;;;;;:::i;12922:274::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;12922:274:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;12922:274:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;12922:274:0;;-1:-1:-1;12922:274:0;;-1:-1:-1;;;;;12922:274:0:i;10208:19::-;;;;;;;;;;;;;:::i;10080:20::-;;;;;;;;;;;;;:::i;14706:454::-;;;;;;;;;;;;;:::i;13716:489::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;13716:489:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;13716:489:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;13716:489:0;;;;;;;;-1:-1:-1;13716:489:0;;-1:-1:-1;;;;;13716:489:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;13716:489:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;13716:489:0;;-1:-1:-1;;13716:489:0;;;-1:-1:-1;13716:489:0;;-1:-1:-1;;13716:489:0:i;10262:43::-;;;;;;;;;;;;;:::i;10697:51::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;10697:51:0;-1:-1:-1;;;;;10697:51:0;;:::i;16268:537::-;;;;;;;;;;;;;:::i;10541:32::-;;;;;;;;;;;;;:::i;11159:43::-;;;;;;;;;;;;;:::i;21318:582::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;21318:582:0;;:::i;10312:35::-;;;;;;;;;;;;;:::i;27706:239::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;27706:239:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;27706:239:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;27706:239:0;;;;;;;;-1:-1:-1;27706:239:0;;-1:-1:-1;;;;;27706:239:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;27706:239:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;27706:239:0;;-1:-1:-1;27706:239:0;;-1:-1:-1;;;;;27706:239:0:i;18876:537::-;;;;;;;;;;;;;:::i;25565:429::-;;;;;;;;;;;;;:::i;19960:483::-;;;;;;;;;;;;;:::i;19421:531::-;;;;;;;;;;;;;:::i;10757:40::-;;;;;;;;;;;;;:::i;12505:285::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;12505:285:0;;:::i;11013:32::-;;;;;;;;;;;;;:::i;15721:539::-;;;;;;;;;;;;;:::i;26821:877::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;26821:877:0;-1:-1:-1;;;;;26821:877:0;;:::i;10400:26::-;;;;;;;;;;;;;:::i;12798:114::-;;;;;;;;;;;;;:::i;20451:470::-;11536:5;;-1:-1:-1;;;;;11536:5:0;11522:10;:19;11514:50;;;;;-1:-1:-1;;;11514:50:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;11514:50:0;;;;;;;;;;;;;;;20558:26:::1;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;20558:26:0;;;;;;;;;;;;;;;;;;;;;;;;20548:37;;;;::::1;::::0;;;;20508:26:::1;20537:49:::0;;;:10:::1;:49:::0;;;;;;;20597:28;;;;;;;;::::1;;;;::::0;;;;::::1;::::0;;;;;;;;;::::1;::::0;:17:::1;:28::i;:::-;20671:23;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;20671:23:0;;;;;;;;;;;;;;;;;;;;;;;;20661:34;;;;::::1;::::0;;;;20699:1:::1;20644:52:::0;;;:16:::1;::::0;::::1;:52:::0;;;;;20636:83:::1;;;::::0;;-1:-1:-1;;;20636:83:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;20636:83:0;;;;;;;;;;;;;::::1;;20771:23;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;;;20771:23:0;;;;;;;;;;;;;;;;;;;;;;20761:34;;;;::::1;::::0;20744:52:::1;::::0;;;:16:::1;::::0;::::1;:52:::0;;;;;;;20732:9:::1;:64:::0;20841:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20831:34;;;;::::1;::::0;20814:52;;;;;;;20807:59;20877:36;;-1:-1:-1;;20877:36:0::1;::::0;;20451:470::o;10464:29::-;;;;:::o;22754:1399::-;22804:13;;22826:11;;22804:41;;;-1:-1:-1;;;22804:41:0;;;;;;;;;-1:-1:-1;;;;;22804:41:0;;;;;;;;;:13;;;:21;;:41;;;;;;;;;;;;:13;;:41;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;22874:17:0;;22904:9;;22804:41;22874:55;;-1:-1:-1;;;22874:55:0;;;;;;;;;22923:4;22874:55;;;;;22856:15;;-1:-1:-1;;;;;22874:17:0;;:29;;:55;;;;;22804:41;;22874:55;;;;;;;:17;:55;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;22874:55:0;;-1:-1:-1;22958:11:0;;;;;:42;;;22999:1;22986:10;;:14;22958:42;22940:599;;;23031:17;;23058:9;;23031:40;;;-1:-1:-1;;;23031:40:0;;;;;;;;;:17;:40;;;;;;;;-1:-1:-1;;;;;23031:17:0;;;;:26;;:40;;;;;:17;:40;;;;;;:17;;:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23086:23;23112:44;23150:5;23112:33;23124:20;;23112:7;:11;;:33;;;;:::i;:::-;:37;;:44::i;:::-;23086:70;;23171:22;23196:43;23233:5;23196:32;23208:19;;23196:7;:11;;:32;;;;:::i;:43::-;23254:4;;23268:18;;23254:50;;;-1:-1:-1;;;23254:50:0;;-1:-1:-1;;;;;23268:18:0;;;23254:50;;;;;;;;;;;;23171:68;;-1:-1:-1;23254:4:0;;;:13;;:50;;;;;;;;;;;;;;;:4;;:50;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;23319:4:0;;23333:17;;23319:48;;;-1:-1:-1;;;23319:48:0;;-1:-1:-1;;;;;23333:17:0;;;23319:48;;;;;;;;;;;;:4;;;;;:13;;:48;;;;;23254:50;;23319:48;;;;;;;:4;;:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;23392:48:0;;-1:-1:-1;23425:14:0;23392:28;:7;23404:15;23392:11;:28::i;:::-;:32;;:48::i;:::-;23382:58;;23473:54;23493:33;23515:10;;23493:17;23505:4;23493:7;:11;;:17;;;;:::i;:33::-;23473:15;;;:19;:54::i;:::-;23455:15;:72;-1:-1:-1;;22940:599:0;23567:15;23551:13;:31;23641:15;;-1:-1:-1;;;;;23622:14:0;;23595:23;23622:14;;;:7;:14;;;;;;23595:23;;23622:45;;23662:4;;23622:35;;:14;:18;:35::i;:45::-;-1:-1:-1;;;;;23702:23:0;;;;;;:16;:23;;;;;;23595:72;;-1:-1:-1;23684:41:0;;23680:382;;;-1:-1:-1;;;;;23789:23:0;;23742:24;23789:23;;;:16;:23;;;;;;23769:44;;:15;;:19;:44::i;:::-;23851:4;;:29;;;-1:-1:-1;;;23851:29:0;;23874:4;23851:29;;;;;;23742:71;;-1:-1:-1;23828:20:0;;-1:-1:-1;;;;;23851:4:0;;;;:14;;:29;;;;;;;;;;;;;;;:4;:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;23851:29:0;;-1:-1:-1;23899:31:0;;;23895:103;;;23970:12;23951:31;;23895:103;24012:4;;:38;;;-1:-1:-1;;;24012:38:0;;-1:-1:-1;;;;;24012:38:0;;;;;;;;;;;;;;;:4;;;;;:13;;:38;;;;;;;;;;;;;;:4;;:38;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;23680:382:0;24119:15;;-1:-1:-1;;;;;24100:14:0;;;;;;:7;:14;;;;;;:45;;24140:4;;24100:35;;:18;:35::i;:45::-;-1:-1:-1;;;;;24074:23:0;;;;;;;:16;:23;;;;;:71;;;;-1:-1:-1;;22754:1399:0:o;26435:378::-;26525:17;;26555:9;;26525:55;;;-1:-1:-1;;;26525:55:0;;;;;;;;;26574:4;26525:55;;;;;26487:7;;;;-1:-1:-1;;;;;26525:17:0;;;;:29;;:55;;;;;;;;;;;;;;;:17;:55;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;26525:55:0;26649:13;;26525:55;;-1:-1:-1;26591:21:0;;26631:15;:31;26627:131;;;26694:47;26706:34;26726:13;;26706:15;:19;;:34;;;;:::i;:::-;26694:7;;:11;:47::i;:::-;26678:63;;26627:131;26793:11;;26775:30;;:13;;:17;:30::i;:::-;26768:37;;;;26435:378;:::o;10171:20::-;;;-1:-1:-1;;;;;10171:20:0;;:::o;13204:504::-;11536:5;;-1:-1:-1;;;;;11536:5:0;11522:10;:19;11514:50;;;;;-1:-1:-1;;;11514:50:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;11514:50:0;;;;;;;;;;;;;;;13352:26:::1;13381:10;:48;13413:13;13402:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;;::::1;::::0;;;::::1;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13392:36;;;;;;13381:48;;;;;;;;;;;13352:77;;13497:8;13440:9;:19;;:54;13481:10;13470:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;;::::1;::::0;;;::::1;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;13470:22:0::1;::::0;;;;::::1;-1:-1:-1::0;;13470:22:0;;;;;;13460:33;;13470:22:::1;13460:33:::0;;::::1;::::0;13440:54;;;;::::1;::::0;;;;-1:-1:-1;;;13440:54:0;-1:-1:-1;13440:54:0;:65;;-1:-1:-1;;;;;;13440:65:0::1;-1:-1:-1::0;;;;;13440:65:0;;;::::1;::::0;;;::::1;::::0;;13516:35;;-1:-1:-1;;13516:35:0::1;-1:-1:-1::0;13516:35:0::1;::::0;;13608:5:::1;::::0;13588:26:::1;::::0;:15:::1;::::0;:19:::1;:26::i;:::-;13562:9;:23;;:52;;;;13630:70;13664:13;13679:10;13691:8;13630:70;;;;;;;;;;-1:-1:-1::0;;;;;13630:70:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;;::::1;::::0;;;::::1;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;13630:70:0;;::::1;::::0;;;;;;;;::::1;::::0;;::::1;::::0;;::::1;::::0;;;;::::1;;;;;;;;::::0;;::::1;::::0;;;::::1;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11575:1;13204:504:::0;;;:::o;10890:33::-;;;-1:-1:-1;;;;;10890:33:0;;:::o;10824:39::-;;;;:::o;10142:18::-;;;-1:-1:-1;;;;;10142:18:0;;:::o;10648:42::-;;;;;;;;;;;;;:::o;10500:34::-;;;;:::o;21906:840::-;9001:1;9606:7;;:19;;9598:63;;;;;-1:-1:-1;;;9598:63:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;9001:1;9739:7;:18;21989:12;21981:38:::1;;;::::0;;-1:-1:-1;;;21981:38:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;21981:38:0;;;;;;;;;;;;;::::1;;22030:19;22038:10;22030:7;:19::i;:::-;22085:10;22077:19;::::0;;;:7:::1;:19;::::0;;;;;22066:30;::::1;22062:93;;;-1:-1:-1::0;22132:10:0::1;22124:19;::::0;;;:7:::1;:19;::::0;;;;;22062:93:::1;22167:17;::::0;22194:9:::1;::::0;22167:47:::1;::::0;;-1:-1:-1;;;22167:47:0;;::::1;::::0;::::1;::::0;;;;;;;;;;;-1:-1:-1;;;;;22167:17:0;;::::1;::::0;:26:::1;::::0;:47;;;;;:17:::1;::::0;:47;;;;;;;;:17;;:47;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;22257:10:0::1;22249:19;::::0;;;:7:::1;:19;::::0;;;;;:33:::1;::::0;-1:-1:-1;22249:19:0;-1:-1:-1;22273:8:0;22249:23:::1;:33::i;:::-;22235:10;22227:19;::::0;;;:7:::1;:19;::::0;;;;:55;22306:10:::1;::::0;:24:::1;::::0;22321:8;22306:14:::1;:24::i;:::-;22293:10;:37:::0;22362:4:::1;::::0;;:29:::1;::::0;;-1:-1:-1;;;22362:29:0;;22385:4:::1;22362:29:::0;;::::1;::::0;;;;;22343:16:::1;::::0;-1:-1:-1;;;;;22362:4:0;;::::1;::::0;:14:::1;::::0;:29;;;;;::::1;::::0;;;;;;;;:4;:29;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;::::0;::::1;;-1:-1:-1::0;22362:29:0;;-1:-1:-1;22407:19:0;;::::1;22403:71;;;22454:8;22443:19;;22403:71;22484:4;::::0;;:35:::1;::::0;;-1:-1:-1;;;22484:35:0;;22498:10:::1;22484:35:::0;;::::1;::::0;;;;;;;;;;;-1:-1:-1;;;;;22484:4:0;;::::1;::::0;:13:::1;::::0;:35;;;;;::::1;::::0;;;;;;;;:4:::1;::::0;:35;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;::::0;::::1;;-1:-1:-1::0;;22534:19:0;;::::1;22530:112;;;22570:17;::::0;22596:9:::1;::::0;-1:-1:-1;;;;;22570:17:0;;::::1;::::0;:25:::1;::::0;22607:22:::1;:8:::0;22620;22607:12:::1;:22::i;:::-;22570:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;22530:112;22654:23;22666:10;22654:11;:23::i;:::-;22706:32;::::0;;22717:10:::1;22706:32:::0;;::::1;::::0;::::1;::::0;;;;;::::1;::::0;;;;;;;;;::::1;-1:-1:-1::0;;8957:1:0;9918:7;:22;21906:840::o;17398:1466::-;11536:5;;-1:-1:-1;;;;;11536:5:0;11522:10;:19;11514:50;;;;;-1:-1:-1;;;11514:50:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;11514:50:0;;;;;;;;;;;;;;;17511:32:::1;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;17511:32:0;;;;;;;;;;;;;;;;;;;;;;;;17501:43;;;;::::1;::::0;;;;17461:26:::1;17490:55:::0;;;:10:::1;:55:::0;;;;;;;17558:28;;;;;;;;::::1;;;;::::0;;;;::::1;::::0;;;;;;;;;::::1;::::0;:17:::1;:28::i;:::-;17637:18;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;17637:18:0;;;;;;;;;;;;;;;;;;;;;;;;17627:29;;;;::::1;::::0;;;;17669:1:::1;17607:50:::0;;;:19:::1;::::0;::::1;:50:::0;;;;;-1:-1:-1;;;;;17607:50:0::1;:64:::0;17603:234:::1;;17732:18;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;;;17732:18:0;;;;;;;;;;;;;;;;;;;;;;17722:29;;;;::::1;::::0;-1:-1:-1;17702:50:0;;;:19:::1;::::0;::::1;:50:::0;;;;;;;17688:65;;-1:-1:-1;;;;;17702:50:0;;::::1;-1:-1:-1::0;;;;;;17688:65:0;;::::1;;::::0;;17805:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17702:50:::1;17805:18:::0;;;;;17795:29;;;;::::1;::::0;;;;17775:50;;;;;;;;;17768:57;;;;::::1;::::0;;17603:234:::1;17882:20;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;17882:20:0;;;;;;;;;;;;;;;;;;;;;;;;17872:31;;;;::::1;::::0;;;;17916:1:::1;17852:52:::0;;;:19:::1;::::0;::::1;:52:::0;;;;;-1:-1:-1;;;;;17852:52:0::1;:66:::0;17848:242:::1;;17981:20;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;;;17981:20:0;;;;;;;;;;;;;;;;;;;;;;17971:31;;;;::::1;::::0;-1:-1:-1;17951:52:0;;;:19:::1;::::0;::::1;:52:::0;;;;;;;17935:6:::1;:69:::0;;-1:-1:-1;;;;;17951:52:0;;::::1;-1:-1:-1::0;;;;;;17935:69:0;;::::1;;::::0;;18056:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17951:52:::1;18056:20:::0;;;;;18046:31;;;;::::1;::::0;;;;18026:52;;;;;;;;;18019:59;;;;::::1;::::0;;17848:242:::1;18135:18;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;18135:18:0;;;;;;;;;;;;;;;;;;;;;;;;18125:29;;;;::::1;::::0;;;;18167:1:::1;18105:50:::0;;;:19:::1;::::0;::::1;:50:::0;;;;;-1:-1:-1;;;;;18105:50:0::1;:64:::0;18101:234:::1;;18230:18;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;;;18230:18:0;;;;;;;;;;;;;;;;;;;;;;18220:29;;;;::::1;::::0;-1:-1:-1;18200:50:0;;;:19:::1;::::0;::::1;:50:::0;;;;;;;18186:4:::1;:65:::0;;-1:-1:-1;;;;;18200:50:0;;::::1;-1:-1:-1::0;;;;;;18186:65:0;;::::1;;::::0;;18303:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18200:50:::1;18303:18:::0;;;;;18293:29;;;;::::1;::::0;;;;18273:50;;;;;;;;;18266:57;;;;::::1;::::0;;18101:234:::1;18380:18;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;18380:18:0;;;;;;;;;;;;;;;;;;;;;;;;18370:29;;;;::::1;::::0;;;;18412:1:::1;18350:50:::0;;;:19:::1;::::0;::::1;:50:::0;;;;;-1:-1:-1;;;;;18350:50:0::1;:64:::0;18346:226:::1;;18468:18;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;;;18468:18:0;;;;;;;;;;;;;;;;;;;;;;18458:29;;;;::::1;::::0;-1:-1:-1;18438:50:0;;;:19:::1;::::0;::::1;:50:::0;;;;;;;18431:4:::1;:57:::0;;-1:-1:-1;;;;;18438:50:0;;::::1;-1:-1:-1::0;;;;;;18431:57:0;;::::1;;::::0;;18540:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18438:50:::1;18540:18:::0;;;;;18530:29;;;;::::1;::::0;;;;18510:50;;;;;;;;;18503:57;;;;::::1;::::0;;18346:226:::1;18617:18;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;18617:18:0;;;;;;;;;;;;;;;;;;;;;;;;18607:29;;;;::::1;::::0;;;;18649:1:::1;18587:50:::0;;;:19:::1;::::0;::::1;:50:::0;;;;;-1:-1:-1;;;;;18587:50:0::1;:64:::0;18583:226:::1;;18705:18;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;;;18705:18:0;;;;;;;;;;;;;;;;;;;;;;18695:29;;;;::::1;::::0;-1:-1:-1;18675:50:0;;;:19:::1;::::0;::::1;:50:::0;;;;;;;18668:4:::1;:57:::0;;-1:-1:-1;;;;;18675:50:0;;::::1;-1:-1:-1::0;;;;;;18668:57:0;;::::1;;::::0;;18777:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18675:50:::1;18777:18:::0;;;;;18767:29;;;;::::1;::::0;;;;18747:50;;;;;;;;;18740:57;;;;::::1;::::0;;18583:226:::1;18820:36:::0;;-1:-1:-1;;18820:36:0::1;::::0;;17398:1466::o;10354:37::-;;;-1:-1:-1;;;;;10354:37:0;;:::o;24844:712::-;24939:24;;:::i;:::-;24993:16;:14;:16::i;:::-;24982:8;;;:27;25032:14;:12;:14::i;:::-;25020:9;;;:26;25068:13;;25103:11;;25068:47;;;-1:-1:-1;;;25068:47:0;;;;;;;;;;-1:-1:-1;;;;;25068:13:0;;;;:34;;:47;;;;;25020:9;;25068:47;;;;;;;;:13;:47;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;25068:47:0;25057:8;;;:58;25137:22;:20;:22::i;:::-;25126:8;;;:33;25183:13;;25214:11;;25183:43;;;-1:-1:-1;;;25183:43:0;;;;;;;;;;-1:-1:-1;;;;;25183:13:0;;;;:30;;:43;;;;;25126:8;;25183:43;;;;;;;;:13;:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;25183:43:0;25172:54;;-1:-1:-1;;;;;25248:22:0;;;;;25237:8;;;:33;25298:13;;25324:11;;25298:45;;;-1:-1:-1;;;25298:45:0;;;;;;;;;;;;;;;;;;:13;;;:25;;:45;;;;;;;;;;;;;;;:13;:45;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;25298:45:0;25282:8;;;25281:62;25367:4;;;:21;;;-1:-1:-1;;;25367:21:0;;-1:-1:-1;;;;;25367:21:0;;;;;;;;;;;;:4;;;;;:14;;:21;;;;;25282:8;;25367:21;;;;;;;;:4;:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;25367:21:0;25356:8;;;;:32;;;;-1:-1:-1;;;;;25412:14:0;;;;;;:7;:14;;;;;;;25401:8;;;:25;25448:20;25412:14;25448:13;:20::i;:::-;25437:8;;;:31;25496:17;;25523:9;;25496:52;;;-1:-1:-1;;;25496:52:0;;;;;;;;;25542:4;25496:52;;;;;;-1:-1:-1;;;;;25496:17:0;;;;:26;;:52;;;;;;;;;;;;:17;:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;25496:52:0;25482:8;;;25481:67;25482:5;24844:712;-1:-1:-1;24844:712:0:o;10234:19::-;;;-1:-1:-1;;;;;10234:19:0;;:::o;10113:18::-;;;-1:-1:-1;;;;;10113:18:0;;:::o;10045:28::-;;;;:::o;26002:425::-;26092:16;;;26106:1;26092:16;;;;;;;;;26046:7;;26068:21;;26092:16;;;;26068:21;;26092:16;;;-1:-1:-1;;26139:4:0;;26121:7;;;;-1:-1:-1;;;;;;26139:4:0;;26121:7;;-1:-1:-1;26139:4:0;;26121:7;;;;-1:-1:-1;;;;;26121:23:0;;;:7;;;;;;;;;:23;26165:4;;26155:7;;26165:4;;;26155;;26165;;26155:7;;;;;;-1:-1:-1;;;;;26155:14:0;;;:7;;;;;;;;;:14;26190:4;;26180:7;;26190:4;;;26180;;26185:1;;26180:7;;;;;;-1:-1:-1;;;;;26180:14:0;;;:7;;;;;;;;;;:14;;;;26234:11;;:37;;;-1:-1:-1;;;26234:37:0;;26260:4;26234:37;;;;;;;;;;;;;;;;;;;;26205:14;;26234:11;;;;;:25;;26260:4;;26266;;26234:37;;;;;;;;;;;;;;;26205:14;26234:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;26234:37:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;26234:37:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;26234:37:0;;;;;;;;;;;;-1:-1:-1;26234:37:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;26230:166;;-1:-1:-1;26380:1:0;26230:166;;;26327:7;26335:1;26327:10;;;;;;;;;;;;;;26318:19;;26272:77;26230:166;26413:6;-1:-1:-1;;26002:425:0;:::o;16813:573::-;11536:5;;-1:-1:-1;;;;;11536:5:0;11522:10;:19;11514:50;;;;;-1:-1:-1;;;11514:50:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;11514:50:0;;;;;;;;;;;;;;;16933:42:::1;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;::::1;::::0;;;;;;;;;;;;;;;;;;;;;;;;16923:53;;;;::::1;::::0;;;;16883:26:::1;16912:65:::0;;;:10:::1;:65:::0;;;;;;;16990:28;;;;;;;;::::1;;;;::::0;;;;::::1;::::0;;;;;;;;;::::1;::::0;:17:::1;:28::i;:::-;17067:31;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;17067:31:0;;;;;;;;;;;;;;;;;;;;;;;;17057:42;;;;::::1;::::0;;;;17112:1:::1;17037:63:::0;;;:19:::1;::::0;::::1;:63:::0;;;;;-1:-1:-1;;;;;17037:63:0::1;17029:105;;;::::0;;-1:-1:-1;;;17029:105:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;17029:105:0;;;;;;;;;;;;;::::1;;17216:31;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;;;17216:31:0;;;;;;;;;;;;;;;;;;;;;;17206:42;;;;::::1;::::0;-1:-1:-1;17186:63:0;;;:19:::1;::::0;::::1;:63:::0;;;;;;;17147:17:::1;:103:::0;;-1:-1:-1;;;;;17186:63:0;;::::1;-1:-1:-1::0;;;;;;17147:103:0;;::::1;;::::0;;17298:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17186:63:::1;17298:31:::0;;;;;17288:42;;;;::::1;::::0;;;;17268:63;;;;;;;;;17261:70;;;;::::1;::::0;;17342:36;;-1:-1:-1;;17342:36:0::1;::::0;;16813:573::o;11260:17::-;;;;:::o;15168:545::-;11536:5;;-1:-1:-1;;;;;11536:5:0;11522:10;:19;11514:50;;;;;-1:-1:-1;;;11514:50:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;11514:50:0;;;;;;;;;;;;;;;15285:35:::1;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;15285:35:0;;;;;;;;;;;;;;;;;;;;;;;;15275:46;;;;::::1;::::0;;;;15235:26:::1;15264:58:::0;;;:10:::1;:58:::0;;;;;;;15333:28;;;;;;;;::::1;;;;::::0;;;;::::1;::::0;;;;;;;;;::::1;::::0;:17:::1;:28::i;:::-;15410:32;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;15410:32:0;;;;;;;;;;;;;;;;;;;;;;;;15400:43;;;;::::1;::::0;;;;15456:1:::1;15380:64:::0;;;:19:::1;::::0;::::1;:64:::0;;;;;-1:-1:-1;;;;;15380:64:0::1;15372:106;;;::::0;;-1:-1:-1;;;15372:106:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;15372:106:0;;;;;;;;;;;;;::::1;;15542:32;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;;;15542:32:0;;;;;;;;;;;;;;;;;;;;;;15532:43;;;;::::1;::::0;-1:-1:-1;15512:64:0;;;:19:::1;::::0;::::1;:64:::0;;;;;;;15491:18:::1;:85:::0;;-1:-1:-1;;;;;15512:64:0;;::::1;-1:-1:-1::0;;;;;;15491:85:0;;::::1;;::::0;;15624:32;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15512:64:::1;15624:32:::0;;;;;15614:43;;;;::::1;::::0;;;;15594:64;;;;;;;;;15587:71;;;;::::1;::::0;;15669:36;;-1:-1:-1;;15669:36:0::1;::::0;;15168:545::o;11054:46::-;;;;;;;;;;;;;;;;;;;;;;;;:::o;27953:233::-;28061:7;28088:10;:48;28120:13;28109:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;28099:36;;;;;;28088:48;;;;;;;;;;;:55;;:90;28165:10;28154:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;28144:33;;;;;;28088:90;;;;;;;;;;;;28081:97;;27953:233;;;;;:::o;10433:24::-;;;;:::o;11209:44::-;11246:7;11209:44;:::o;10580:35::-;;;;:::o;14213:485::-;11536:5;;-1:-1:-1;;;;;11536:5:0;11522:10;:19;11514:50;;;;;-1:-1:-1;;;11514:50:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;11514:50:0;;;;;;;;;;;;;;;14326:31:::1;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;14326:31:0;;;;;;;;;;;;;;;;;;;;;;;;14316:42;;;;::::1;::::0;;;;14276:26:::1;14305:54:::0;;;:10:::1;:54:::0;;;;;;;14370:28;;;;;;;;::::1;;;;::::0;;;;::::1;::::0;;;;;;;;;::::1;::::0;:17:::1;:28::i;:::-;14447:19;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;14447:19:0;;;;;;;;;;;;;;;;;;;;;;;;14437:30;;;;::::1;::::0;;;;14480:1:::1;14417:51:::0;;;:19:::1;::::0;::::1;:51:::0;;;;;-1:-1:-1;;;;;14417:51:0::1;14409:93;;;::::0;;-1:-1:-1;;;14409:93:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;14409:93:0;;;;;;;;;;;;;::::1;;14553:19;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;;;14553:19:0;;;;;;;;;;;;;;;;;;;;;;14543:30;;;;::::1;::::0;-1:-1:-1;14523:51:0;;;:19:::1;::::0;;::::1;:51:::0;;;;;;;14515:59;;-1:-1:-1;;;;;14523:51:0;;::::1;-1:-1:-1::0;;;;;;14515:59:0;;::::1;;::::0;;;14622:19;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14523:51:::1;14622:19:::0;;;;;14612:30;;;;::::1;::::0;;;;14592:51;;;;;;;;14585:58;;;;::::1;::::0;;14654:36;;-1:-1:-1;;14654:36:0::1;::::0;;14213:485::o;12922:274::-;11536:5;;-1:-1:-1;;;;;11536:5:0;11522:10;:19;11514:50;;;;;-1:-1:-1;;;11514:50:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;11514:50:0;;;;;;;;;;;;;;;13013:26:::1;13042:10;:48;13074:13;13063:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;;::::1;::::0;;;::::1;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;13063:25:0::1;::::0;;-1:-1:-1;;13063:25:0;;::::1;::::0;;;;;;13053:36;;13063:25:::1;13053:36:::0;;::::1;::::0;13042:48;;;;::::1;::::0;;;;;;;-1:-1:-1;13042:48:0;;;13101:36;;-1:-1:-1;;13101:36:0::1;::::0;;13153:35;;;;;;;;;::::1;::::0;;;13042:48;;-1:-1:-1;13153:35:0::1;::::0;13174:13;;13153:35;;-1:-1:-1;13153:35:0;;-1:-1:-1;13153:35:0;;;-1:-1:-1;13153:35:0;::::1;::::0;;;;;;;::::1;;;;;;;::::0;;::::1;::::0;;;::::1;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11575:1;12922:274:::0;:::o;10208:19::-;;;-1:-1:-1;;;;;10208:19:0;;:::o;10080:20::-;;;-1:-1:-1;;;;;10080:20:0;;:::o;14706:454::-;11536:5;;-1:-1:-1;;;;;11536:5:0;11522:10;:19;11514:50;;;;;-1:-1:-1;;;11514:50:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;11514:50:0;;;;;;;;;;;;;;;14818:30:::1;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;14818:30:0;;;;;;;;;;;;;;;;;;;;;;;;14808:41;;;;::::1;::::0;;;;14768:26:::1;14797:53:::0;;;:10:::1;:53:::0;;;;;;;14861:28;;;;;;;;::::1;;;;::::0;;;;::::1;::::0;;;;;;;;;::::1;::::0;:17:::1;:28::i;:::-;14938:27;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;14938:27:0;;;;;;;;;;;;;;;;;;;;;;;;14928:38;;;;::::1;::::0;;;;14979:1:::1;14908:59:::0;;;:19:::1;::::0;::::1;:59:::0;;;;;-1:-1:-1;;;;;14908:59:0::1;14900:101;;;::::0;;-1:-1:-1;;;14900:101:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;14900:101:0;;;;;;;;;;;;;::::1;;15075:27;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;15075:27:0;;;;;;;;;;;;;;;;;;;;;;;;15065:38;;;;::::1;::::0;;;;15045:59:::1;::::0;;;:19:::1;::::0;::::1;:59:::0;;;;;15014:13:::1;:91:::0;;-1:-1:-1;;;;;;15014:91:0::1;-1:-1:-1::0;;;;;15045:59:0;;::::1;15014:91:::0;;;::::1;::::0;;15116:36;;-1:-1:-1;;15116:36:0::1;::::0;;14706:454::o;13716:489::-;11536:5;;-1:-1:-1;;;;;11536:5:0;11522:10;:19;11514:50;;;;;-1:-1:-1;;;11514:50:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;11514:50:0;;;;;;;;;;;;;;;13859:26:::1;13888:10;:48;13920:13;13909:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;;::::1;::::0;;;::::1;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13899:36;;;;;;13888:48;;;;;;;;;;;13859:77;;14001:6;13947:9;:16;;:51;13985:10;13974:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;;::::1;::::0;;;::::1;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;13974:22:0::1;::::0;;-1:-1:-1;;13974:22:0;;::::1;::::0;;;;;;13964:33;;13974:22:::1;13964:33:::0;;::::1;::::0;13947:51;;;;::::1;::::0;;;;-1:-1:-1;;;13947:51:0;-1:-1:-1;13947:51:0;:60;14018:35;;-1:-1:-1;;14018:35:0::1;14049:4;14018:35;::::0;;14110:5:::1;::::0;14090:26:::1;::::0;:15:::1;::::0;:19:::1;:26::i;:::-;14064:23;::::0;::::1;:52:::0;14132:65:::1;::::0;;;;;;;;;;;;;;;;;;;;::::1;::::0;14163:13;;14178:10;;14190:6;;14132:65;;::::1;::::0;;::::1;::::0;;;;;;::::1;::::0;;;;;;;::::1;;::::0;;::::1;::::0;;;::::1;::::0;::::1;;;;10262:43:::0;;;-1:-1:-1;;;;;10262:43:0;;:::o;10697:51::-;;;;;;;;;;;;;:::o;16268:537::-;11536:5;;-1:-1:-1;;;;;11536:5:0;11522:10;:19;11514:50;;;;;-1:-1:-1;;;11514:50:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;11514:50:0;;;;;;;;;;;;;;;16382:36:::1;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;16382:36:0;;;;;;;;;;;;;;;;;;;;;;;;16372:47;;;;::::1;::::0;;;;16332:26:::1;16361:59:::0;;;:10:::1;:59:::0;;;;;;;16433:28;;;;;;;;::::1;;;;::::0;;;;::::1;::::0;;;;;;;;;::::1;::::0;:17:::1;:28::i;:::-;16510:25;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;16510:25:0;;;;;;;;;;;;;;;;;;;;;;;;16500:36;;;;::::1;::::0;;;;16549:1:::1;16480:57:::0;;;:19:::1;::::0;::::1;:57:::0;;;;;-1:-1:-1;;;;;16480:57:0::1;16472:99;;;::::0;;-1:-1:-1;;;16472:99:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;16472:99:0;;;;;;;;;;;;;::::1;;16647:25;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;;;16647:25:0;;;;;;;;;;;;;;;;;;;;;;16637:36;;;;::::1;::::0;-1:-1:-1;16617:57:0;;;:19:::1;::::0;::::1;:57:::0;;;;;;;16584:11:::1;:91:::0;;-1:-1:-1;;;;;16617:57:0;;::::1;-1:-1:-1::0;;;;;;16584:91:0;;::::1;;::::0;;16723:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16617:57:::1;16723:25:::0;;;;;16713:36;;;;::::1;::::0;;;;16693:57;;;;;;;;;16686:64;;;;::::1;::::0;;16761:36;;-1:-1:-1;;16761:36:0::1;::::0;;16268:537::o;10541:32::-;;;;:::o;11159:43::-;11196:6;11159:43;:::o;21318:582::-;9001:1;9606:7;;:19;;9598:63;;;;;-1:-1:-1;;;9598:63:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;9001:1;9739:7;:18;21400:12;21392:38:::1;;;::::0;;-1:-1:-1;;;21392:38:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;21392:38:0;;;;;;;;;;;;;::::1;;21449:4;::::0;;:26:::1;::::0;;-1:-1:-1;;;21449:26:0;;21464:10:::1;21449:26:::0;;::::1;::::0;;;;;21479:8;;-1:-1:-1;;;;;21449:4:0;;::::1;::::0;:14:::1;::::0;:26;;;;;::::1;::::0;;;;;;;;:4;:26;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;::::0;::::1;;-1:-1:-1::0;21449:26:0;:38:::1;;21441:64;;;::::0;;-1:-1:-1;;;21441:64:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;21441:64:0;;;;;;;;;;;;;::::1;;21518:19;21526:10;21518:7;:19::i;:::-;21548:4;::::0;;:54:::1;::::0;;-1:-1:-1;;;21548:54:0;;21566:10:::1;21548:54:::0;;::::1;::::0;;;;21586:4:::1;21548:54:::0;;;;;;;;;;;-1:-1:-1;;;;;21548:4:0;;::::1;::::0;:17:::1;::::0;:54;;;;;::::1;::::0;;;;;;;;:4:::1;::::0;:54;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;::::0;::::1;;-1:-1:-1::0;;21613:17:0::1;::::0;21639:9:::1;::::0;21613:46:::1;::::0;;-1:-1:-1;;;21613:46:0;;::::1;::::0;::::1;::::0;;;;;;;;;;;-1:-1:-1;;;;;21613:17:0;;::::1;::::0;:25:::1;::::0;:46;;;;;:17:::1;::::0;:46;;;;;;;;:17;;:46;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;21736:10:0::1;21728:19;::::0;;;:7:::1;:19;::::0;;;;;:33:::1;::::0;-1:-1:-1;21728:19:0;-1:-1:-1;21752:8:0;21728:23:::1;:33::i;:::-;21714:10;21706:19;::::0;;;:7:::1;:19;::::0;;;;:55;21785:10:::1;::::0;:24:::1;::::0;21800:8;21785:14:::1;:24::i;:::-;21772:10;:37:::0;21820:23:::1;21832:10;21820:11;:23::i;:::-;21859:31;::::0;;21869:10:::1;21859:31:::0;;::::1;::::0;::::1;::::0;;;;;::::1;::::0;;;;;;;;;::::1;-1:-1:-1::0;8957:1:0;9918:7;:22;21318:582::o;10312:35::-;;;-1:-1:-1;;;;;10312:35:0;;:::o;27706:239::-;27817:7;27844:10;:48;27876:13;27865:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;27855:36;;;;;;27844:48;;;;;;;;;;;:58;;:93;27924:10;27913:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;27913:22:0;;;;;;-1:-1:-1;;27913:22:0;;;;;;27903:33;;27913:22;27903:33;;;;27844:93;;;;;;;;;-1:-1:-1;;;27844:93:0;-1:-1:-1;27844:93:0;;-1:-1:-1;;;;;27844:93:0;;27706:239;-1:-1:-1;;;27706:239:0:o;18876:537::-;11536:5;;-1:-1:-1;;;;;11536:5:0;11522:10;:19;11514:50;;;;;-1:-1:-1;;;11514:50:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;11514:50:0;;;;;;;;;;;;;;;18995:37:::1;::::0;;::::1;::::0;;::::1;::::0;;;18974:10:::1;18995:37:::0;;;;;;::::1;::::0;;;;;;;;;;;;;;;;;;;;;;;;18985:48;;;;::::1;::::0;;;;18945:26:::1;18974:60:::0;;;;;;;;;;19045:28;;;;;;;;::::1;;;;::::0;;;;::::1;::::0;;;;;;;;;::::1;::::0;:17:::1;:28::i;:::-;19119:34;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;19119:34:0;;;;;;;;;;;;;;;;;;;;;;;;19109:45;;;;::::1;::::0;;;;19158:1:::1;19092:63:::0;;;:16:::1;::::0;::::1;:63:::0;;;;;19084:94:::1;;;::::0;;-1:-1:-1;;;19084:94:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;19084:94:0;;;;;;;;;;;;;::::1;;19241:34;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;;;19241:34:0;;;;;;;;;;;;;;;;;;;;;;19231:45;;;;::::1;::::0;19214:63:::1;::::0;;;:16:::1;::::0;::::1;:63:::0;;;;;;;19191:20:::1;:86:::0;19322:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19312:45;;;;::::1;::::0;19295:63;;;;;;;19288:70;19369:36;;-1:-1:-1;;19369:36:0::1;::::0;;18876:537::o;25565:429::-;25657:16;;;25671:1;25657:16;;;;;;;;;25611:7;;25633:21;;25657:16;;;;25633:21;;25657:16;;;-1:-1:-1;;25704:6:0;;25686:7;;;;-1:-1:-1;;;;;;25704:6:0;;25686:7;;-1:-1:-1;25704:6:0;;25686:7;;;19960:483;11536:5;;-1:-1:-1;;;;;11536:5:0;11522:10;:19;11514:50;;;;;-1:-1:-1;;;11514:50:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;11514:50:0;;;;;;;;;;;;;;;20070:28:::1;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;20070:28:0;;;;;;;;;;;;;;;;;;;;;;;;20060:39;;;;::::1;::::0;;;;20020:26:::1;20049:51:::0;;;:10:::1;:51:::0;;;;;;;20111:28;;;;;;;;::::1;;;;::::0;;;;::::1;::::0;;;;;;;;;::::1;::::0;:17:::1;:28::i;:::-;20185:25;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;20185:25:0;;;;;;;;;;;;;;;;;;;;;;;;20175:36;;;;::::1;::::0;;;;20215:1:::1;20158:54:::0;;;:16:::1;::::0;::::1;:54:::0;;;;;20150:85:::1;;;::::0;;-1:-1:-1;;;20150:85:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;20150:85:0;;;;;;;;;;;;;::::1;;20289:25;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;;;20289:25:0;;;;;;;;;;;;;;;;;;;;;;20279:36;;;;::::1;::::0;20262:54:::1;::::0;;;:16:::1;::::0;::::1;:54:::0;;;;;;;20248:68;;20361:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20351:36;;;;::::1;::::0;20334:54;;;;;;;20327:61;20399:36;;-1:-1:-1;;20399:36:0::1;::::0;;19960:483::o;19421:531::-;11536:5;;-1:-1:-1;;;;;11536:5:0;11522:10;:19;11514:50;;;;;-1:-1:-1;;;11514:50:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;11514:50:0;;;;;;;;;;;;;;;19539:36:::1;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;19539:36:0;;;;;;;;;;;;;;;;;;;;;;;;19529:47;;;;::::1;::::0;;;;19489:26:::1;19518:59:::0;;;:10:::1;:59:::0;;;;;;;19588:28;;;;;;;;::::1;;;;::::0;;;;::::1;::::0;;;;;;;;;::::1;::::0;:17:::1;:28::i;:::-;19662:33;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;19662:33:0;;;;;;;;;;;;;;;;;;;;;;;;19652:44;;;;::::1;::::0;;;;19700:1:::1;19635:62:::0;;;:16:::1;::::0;::::1;:62:::0;;;;;19627:93:::1;;;::::0;;-1:-1:-1;;;19627:93:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;19627:93:0;;;;;;;;;;;;;::::1;;19782:33;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;;;19782:33:0;;;;;;;;;;;;;;;;;;;;;;19772:44;;;;::::1;::::0;19755:62:::1;::::0;;;:16:::1;::::0;::::1;:62:::0;;;;;;;19733:19:::1;:84:::0;19862:33;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19852:44;;;;::::1;::::0;19835:62;;;;;;;19828:69;19908:36;;-1:-1:-1;;19908:36:0::1;::::0;;19421:531::o;10757:40::-;;;;:::o;12505:285::-;11536:5;;-1:-1:-1;;;;;11536:5:0;11522:10;:19;11514:50;;;;;-1:-1:-1;;;11514:50:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;11514:50:0;;;;;;;;;;;;;;;11196:6:::1;12572;:23;;12564:88;;;;-1:-1:-1::0;;;12564:88:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11246:7;12671:6;:23;;12663:92;;;;-1:-1:-1::0;;;12663:92:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12768:5;:14:::0;12505:285::o;11013:32::-;;;-1:-1:-1;;;;;11013:32:0;;:::o;15721:539::-;11536:5;;-1:-1:-1;;;;;11536:5:0;11522:10;:19;11514:50;;;;;-1:-1:-1;;;11514:50:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;11514:50:0;;;;;;;;;;;;;;;15837:34:::1;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;15837:34:0;;;;;;;;;;;;;;;;;;;;;;;;15827:45;;;;::::1;::::0;;;;15787:26:::1;15816:57:::0;;;:10:::1;:57:::0;;;;;;;15884:28;;;;;;;;::::1;;;;::::0;;;;::::1;::::0;;;;;;;;;::::1;::::0;:17:::1;:28::i;:::-;15961:31;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;15961:31:0;;;;;;;;;;;;;;;;;;;;;;;;15951:42;;;;::::1;::::0;;;;16006:1:::1;15931:63:::0;;;:19:::1;::::0;::::1;:63:::0;;;;;-1:-1:-1;;;;;15931:63:0::1;15923:105;;;::::0;;-1:-1:-1;;;15923:105:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;15923:105:0;;;;;;;;;;;;;::::1;;16091:31;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;;;16091:31:0;;;;;;;;;;;;;;;;;;;;;;16081:42;;;;::::1;::::0;-1:-1:-1;16061:63:0;;;:19:::1;::::0;::::1;:63:::0;;;;;;;16041:17:::1;:83:::0;;-1:-1:-1;;;;;16061:63:0;;::::1;-1:-1:-1::0;;;;;;16041:83:0;;::::1;;::::0;;16172:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16061:63:::1;16172:31:::0;;;;;16162:42;;;;::::1;::::0;;;;16142:63;;;;;;;;;16135:70;;;;::::1;::::0;;16216:36;;-1:-1:-1;;16216:36:0::1;::::0;;15721:539::o;26821:877::-;26943:15;;26987:17;;27017:9;;26987:55;;;-1:-1:-1;;;26987:55:0;;;;;;;;;27036:4;26987:55;;;;;26880:20;;26943:15;26880:20;;-1:-1:-1;;;;;26987:17:0;;;;:29;;:55;;;;;;;;;;;;;;;:17;:55;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;26987:55:0;;-1:-1:-1;27071:11:0;;;;;:42;;;27112:1;27099:10;;:14;27071:42;27053:419;;;27144:23;27170:44;27208:5;27170:33;27182:20;;27170:7;:11;;:33;;;;:::i;:44::-;27144:70;;27229:22;27255:43;27292:5;27255:32;27267:19;;27255:7;:11;;:32;;;;:::i;:43::-;27229:69;-1:-1:-1;27323:48:0;27229:69;27323:28;:7;27335:15;27323:11;:28::i;:48::-;27313:58;;27405:55;27426:33;27448:10;;27426:17;27438:4;27426:7;:11;;:17;;;;:::i;:33::-;27405:16;;:20;:55::i;:::-;27386:74;;27053:419;;;-1:-1:-1;;;;;27507:14:0;;27484:19;27507:14;;;:7;:14;;;;;;:46;;27548:4;;27507:36;;27526:16;27507:18;:36::i;:46::-;-1:-1:-1;;;;;27584:23:0;;;;;;:16;:23;;;;;;27484:69;;-1:-1:-1;27570:37:0;;27566:125;;;-1:-1:-1;;;;;27655:23:0;;;;;;:16;:23;;;;;;27639:40;;:11;;:15;:40::i;:::-;27624:55;;27566:125;26821:877;;;;;;:::o;10400:26::-;;;;:::o;12798:114::-;12851:4;;;12872:17;;12851:53;;;-1:-1:-1;;;12851:53:0;;-1:-1:-1;;;;;12872:17:0;;;12851:53;;;;;;;-1:-1:-1;;12851:53:0;;;;;:4;;;:12;;:53;;;;;;;;;;;;;;:4;;:53;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;12798:114:0:o;20929:381::-;21020:28;;:36;;21052:4;21020:36;21012:80;;;;;-1:-1:-1;;;21012:80:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;21138:15;21111:9;:23;;;:42;;21103:94;;;;-1:-1:-1;;;21103:94:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21216:23;;;;21261:15;;21216:41;;11145:7;21216:27;:41::i;:::-;:60;;21208:94;;;;;-1:-1:-1;;;21208:94:0;;;;;;;;;;;;-1:-1:-1;;;21208:94:0;;;;;;;;;;;;;;;20929:381;:::o;7083:196::-;7141:7;7161:6;7157:37;;-1:-1:-1;7185:1:0;7178:8;;7157:37;7212:5;;;7216:1;7212;:5;:1;7232:5;;;;;:10;7224:34;;;;;-1:-1:-1;;;7224:34:0;;;;;;;;;;;;-1:-1:-1;;;7224:34:0;;;;;;;;;;;;;;;7272:1;7083:196;-1:-1:-1;;;7083:196:0:o;7366:283::-;7424:7;7452:1;7448;:5;7440:29;;;;;-1:-1:-1;;;7440:29:0;;;;;;;;;;;;-1:-1:-1;;;7440:29:0;;;;;;;;;;;;;;;7528:9;7544:1;7540;:5;;;;;;;7366:283;-1:-1:-1;;;;7366:283:0:o;7767:129::-;7825:7;7854:1;7849;:6;;7841:30;;;;;-1:-1:-1;;;7841:30:0;;;;;;;;;;;;-1:-1:-1;;;7841:30:0;;;;;;;;;;;;;;;-1:-1:-1;7885:5:0;;;7767:129::o;7963:149::-;8021:7;8049:5;;;8069:6;;;;8061:30;;;;;-1:-1:-1;;;8061:30:0;;;;;;;;;;;;-1:-1:-1;;;8061:30:0;;;;;;;;;;;;;;24161:196;24223:13;;24248:11;;24223:44;;;-1:-1:-1;;;24223:44:0;;;;;;;;;-1:-1:-1;;;;;24223:44:0;;;;;;;;;:13;;;:24;;:44;;;;;;;;;;;;;;;:13;;:44;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;24323:15:0;;-1:-1:-1;;;;;24304:14:0;;;;;;:7;24223:44;24304:14;;;;;:45;;24344:4;;24304:35;;:18;:35::i;:45::-;-1:-1:-1;;;;;24278:23:0;;;;;;;:16;:23;;;;;:71;24161:196::o;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;:::o

Swarm Source

ipfs://231022889035b0a2c91a4630fce86e5837fea68aced7323e3c7b648c2710a3f0
Block Transaction Gas Used Reward
Age Block Fee Address BC Fee Address Voting Power Jailed Incoming
Block Uncle Number Difficulty Gas Used Reward
Loading
Loading
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.