Contract 0xc8a61e2d78697C41D81752831c436AaC846464d7

 
 
Txn Hash Method
Block
From
To
Value [Txn Fee]
0x395cbf38d37e13000cd8d681abb24bc449134198e5f52d3fdce6330b45dd22f9Harvest106671782021-09-06 2:56:3688 days 4 hrs agoTuringMachine Token: Deployer IN  0xc8a61e2d78697c41d81752831c436aac846464d70 BNB0.001244975
0x976310d37ddd21dd3014020cc8632ded65dfc22d3cfb8981ad512185adf244ecHarvest97619652021-08-05 6:27:58120 days 1 hr ago0x598f2ff6be73ffcf8f18e244f5fbe1bbfb0a4349 IN  0xc8a61e2d78697c41d81752831c436aac846464d70 BNB0.001570955
0xf3876ae32ab968d007c7e0ba2550c132f471987040e054b04d39038af3abd603Withdraw95104122021-07-27 2:42:22129 days 4 hrs ago0x087f3504ced8879416c08818e5d39faeef6cca7e IN  0xc8a61e2d78697c41d81752831c436aac846464d70 BNB0.00156541
0x6c2acc77fc2224a0e8039e5b95fcb719539aad3d85e00dd941b7542b39769178Harvest91728592021-07-15 8:08:15140 days 23 hrs ago0x087f3504ced8879416c08818e5d39faeef6cca7e IN  0xc8a61e2d78697c41d81752831c436aac846464d70 BNB0.001795955
0x0c16ba73c93049d2e3cc2944d495b80c90c987aad00f1ff461df6a0f5a80a73aHarvest89125582021-07-06 7:04:42150 days 34 mins agoTuringMachine Token: Deployer IN  0xc8a61e2d78697c41d81752831c436aac846464d70 BNB0.001244975
0x1dd5c9a0fd12749edcbff3f6d6e9e5cedce99518a352252b533a78e403390153Harvest87225362021-06-29 15:16:12156 days 16 hrs agoTuringMachine Token: Deployer IN  0xc8a61e2d78697c41d81752831c436aac846464d70 BNB0.001244975
0xd90ff840898b2322836c3832435673b7cde4a782b8ec6c5cd3759e5cb6537a51Withdraw86560992021-06-27 7:32:20159 days 6 mins ago0x63218c1c12a7a81e8748a7172baa922c8b20d0dd IN  0xc8a61e2d78697c41d81752831c436aac846464d70 BNB0.00213706
0x49cc76635bfe3deb15b8a6a5ace4234eb68b58a3c92e7329eebbf230d9c4f41cWithdraw86031882021-06-25 11:21:20160 days 20 hrs ago0xf1b0e78a2bc422df50ec9ee4c324895c9b79f80a IN  0xc8a61e2d78697c41d81752831c436aac846464d70 BNB0.00206212
0xd04cfafdca92dcc5ac949fdb5528bb08d2e38d8afd48d3d75ce82af04da2fc9aWithdraw86011972021-06-25 9:41:47160 days 21 hrs ago0x5ccf7418d3232bef233206d1d057c2cd9a41bf06 IN  0xc8a61e2d78697c41d81752831c436aac846464d70 BNB0.00185857
0xf33c786f6036b182c3f56e4dbe9bdaae9a98a242873461328e48e695c732710bHarvest85203192021-06-22 14:01:32163 days 17 hrs ago0xf1b0e78a2bc422df50ec9ee4c324895c9b79f80a IN  0xc8a61e2d78697c41d81752831c436aac846464d70 BNB0.00174719
0x925ca6bed3bb31c88b01b33b6b6bd59fdbf74697f4cd28155fe2f6e8b4b984cbDeposit83120952021-06-15 7:14:29171 days 24 mins ago0x63218c1c12a7a81e8748a7172baa922c8b20d0dd IN  0xc8a61e2d78697c41d81752831c436aac846464d70 BNB0.00209366
0x06cd6e07f075231664c91756a6b6e8ad95c81612475a781d2b1b6b4c08341b30Deposit82952262021-06-14 17:00:26171 days 14 hrs ago0x63218c1c12a7a81e8748a7172baa922c8b20d0dd IN  0xc8a61e2d78697c41d81752831c436aac846464d70 BNB0.00209366
0x8b0b48fea422d0a650c2eda575f631f55a2271c2cb1ec1f543925cb0e67092c3Withdraw80950292021-06-07 17:15:37178 days 14 hrs ago0x63218c1c12a7a81e8748a7172baa922c8b20d0dd IN  0xc8a61e2d78697c41d81752831c436aac846464d70 BNB0.002163295
0x2c6193af8404d9751bfb95a1c9826d3fcba248b091a6895c57d8f3e8c80b2fc1Harvest80949572021-06-07 17:12:01178 days 14 hrs ago0xf1b0e78a2bc422df50ec9ee4c324895c9b79f80a IN  0xc8a61e2d78697c41d81752831c436aac846464d70 BNB0.00174719
0xc37fc9720be1a6778f9a5f0f849a2d1fde1fd1d3ce61b31c9ab82d1946f643b3Harvest80948602021-06-07 17:07:10178 days 14 hrs ago0x63218c1c12a7a81e8748a7172baa922c8b20d0dd IN  0xc8a61e2d78697c41d81752831c436aac846464d70 BNB0.00174719
0x17d49fe23053e27d44fcf7c3f35c817250a79f0ad4765632db925446f6d3fea2Harvest80239512021-06-05 5:55:08181 days 1 hr agoTuringMachine Token: Deployer IN  0xc8a61e2d78697c41d81752831c436aac846464d70 BNB0.00135865
0x503d4a16b775c57d9adfe6d0fbe6534ea5af875f2ef61a3b2523c3a27ad0a546Deposit77673592021-05-27 7:18:27190 days 20 mins ago0x63218c1c12a7a81e8748a7172baa922c8b20d0dd IN  0xc8a61e2d78697c41d81752831c436aac846464d70 BNB0.00204712
0x5803c5f4a6ecb73c4e19b9825f08bd28aedfc2340b7e1ae8c52d8cd7a48ccf97Harvest77066742021-05-25 4:22:13192 days 3 hrs agoTuringMachine Token: Deployer IN  0xc8a61e2d78697c41d81752831c436aac846464d70 BNB0.00135865
0x650bb363cf8be2edee67f7dc668e649a7e1cf3222f7f5a3f96fcc841b74729eaWithdraw75821492021-05-20 20:10:44196 days 11 hrs ago0x63218c1c12a7a81e8748a7172baa922c8b20d0dd IN  0xc8a61e2d78697c41d81752831c436aac846464d70 BNB0.001854265
0x6ad72eac75f5bf416ab858a2f274acfa67a8764a284c3f9fd56bd3892f26af4aHarvest74971432021-05-17 20:22:28199 days 11 hrs ago0x63218c1c12a7a81e8748a7172baa922c8b20d0dd IN  0xc8a61e2d78697c41d81752831c436aac846464d70 BNB0.00166363
0x0496402456480e0362a02fb5321f00e4d0417c2041afa0cf7619106ffc94ef44Harvest74119092021-05-14 20:07:12202 days 11 hrs ago0x63218c1c12a7a81e8748a7172baa922c8b20d0dd IN  0xc8a61e2d78697c41d81752831c436aac846464d70 BNB0.001808255
0x66cb93328ca3eb91651c0b943e6d01f9cf0b30f010e3f71e33a02fddf624e401Harvest73686102021-05-13 7:31:40204 days 7 mins ago0xf1b0e78a2bc422df50ec9ee4c324895c9b79f80a IN  0xc8a61e2d78697c41d81752831c436aac846464d70 BNB0.00174719
0x9eb3280e86a5bea74447a718536172af436fd8157962277cfe2f8104f8227454Harvest72993382021-05-10 14:44:44206 days 16 hrs agoTuringMachine Token: Deployer IN  0xc8a61e2d78697c41d81752831c436aac846464d70 BNB0.002092321
0xb72ae5999d7851740e0f3cd71294dea7af9e9e7fdd639e148ab4f9534de6c789Deposit72120712021-05-07 10:48:38209 days 20 hrs ago0xf1b0e78a2bc422df50ec9ee4c324895c9b79f80a IN  0xc8a61e2d78697c41d81752831c436aac846464d70 BNB0.0020851
0x26b3bbd2ee7beb71bcd1f5b380b764e8ba99488baf056e8d19bfd99be37157b0Deposit71932352021-05-06 18:58:09210 days 12 hrs ago0xf1b0e78a2bc422df50ec9ee4c324895c9b79f80a IN  0xc8a61e2d78697c41d81752831c436aac846464d70 BNB0.00204712
[ Download CSV Export 
Parent Txn Hash Block From To Value
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
TuringFarmUSDTBUSDLP

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-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 TuringFarmUSDTBUSDLP 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"}]

608060405260646001556000600d556000600e556000600f55620151806010556032601355600a60145534801561003557600080fd5b5060405162004cd038038062004cd0833981810160405260e081101561005a57600080fd5b508051602082015160408301516060840151608085015160a086015160c0909601516001600055600280546001600160a01b03199081163317909155600a80546001600160a01b0398891690831617905560088054968816968216969096179095556004805494871694861694909417909355600380549286169285169290921790915560058054918516918416919091179055600680549484169483169490941790935560078054929093169116179055614bb4806200011c6000396000f3fe60806040526004361061031d5760003560e01c806383c58369116101ab578063bce645db116100f7578063dda86d7211610095578063e91dc7131161006f578063e91dc71314610d96578063f2dff42114610dab578063f47a396f14610dde578063feb87d1714610df357610324565b8063dda86d7214610d42578063e177246e14610d57578063e4598aa914610d8157610324565b8063c1a287e2116100d1578063c1a287e21461088b578063c850a95e14610d03578063d1b8a3b514610d18578063d77e795614610d2d57610324565b8063bce645db14610ba3578063bd0c5a9d14610bb8578063bf886c5c14610cee57610324565b80639312dc5f11610164578063a6425bae1161013e578063a6425bae14610b3a578063ae0638cb14610b4f578063b1b43ae514610b64578063b6b55f2514610b7957610324565b80639312dc5f146109ba57806396c8ee5c14610af25780639d65ccd514610b0757610324565b806383c58369146108a0578063880ad0af146108b55780638cac8f03146108ca5780638d72647e1461097b5780638da5cb5b146109905780638ecc676f146109a557610324565b8063375ba3781161026a5780635dd84ea7116102235780636edc28fd116101fd5780636edc28fd146106fb578063725968731461074057806372c3baa5146108765780637d645fab1461088b57610324565b80635dd84ea7146106bc5780636a42b8f8146106d15780636e9322b3146106e657610324565b8063375ba378146105e757806338266b22146105fc5780633ca5b234146106685780634ca6ef281461067d57806354fd4d501461069257806359aad470146106a757610324565b806316de220a116102d757806321e5e2c4116102b157806321e5e2c41461056057806324b9b13a146105935780632e1a7d4d146105a857806332009eda146105d257610324565b806316de220a146105215780631b99b1c1146105365780631f1fcd511461054b57610324565b80622b838314610329578063026c4207146103405780630e5c011e146103675780630e8c7a5b1461039a57806312518dc3146103af57806314ca81ed146103e057610324565b3661032457005b600080fd5b34801561033557600080fd5b5061033e610e08565b005b34801561034c57600080fd5b50610355610ff5565b60408051918252519081900360200190f35b34801561037357600080fd5b5061033e6004803603602081101561038a57600080fd5b50356001600160a01b0316610ffb565b3480156103a657600080fd5b50610355611506565b3480156103bb57600080fd5b506103c46115d3565b604080516001600160a01b039092168252519081900360200190f35b3480156103ec57600080fd5b5061033e6004803603606081101561040357600080fd5b810190602081018135600160201b81111561041d57600080fd5b82018360208201111561042f57600080fd5b803590602001918460018302840111600160201b8311171561045057600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b8111156104a257600080fd5b8201836020820111156104b457600080fd5b803590602001918460018302840111600160201b831117156104d557600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550505090356001600160a01b031691506115e29050565b34801561052d57600080fd5b506103c46118c2565b34801561054257600080fd5b506103556118d1565b34801561055757600080fd5b506103c46118d7565b34801561056c57600080fd5b506103556004803603602081101561058357600080fd5b50356001600160a01b03166118e6565b34801561059f57600080fd5b506103556118f8565b3480156105b457600080fd5b5061033e600480360360208110156105cb57600080fd5b50356118fe565b3480156105de57600080fd5b5061033e611c50565b3480156105f357600080fd5b506103c4612242565b34801561060857600080fd5b5061062f6004803603602081101561061f57600080fd5b50356001600160a01b0316612251565b604051808261016080838360005b8381101561065557818101518382015260200161063d565b5050505090500191505060405180910390f35b34801561067457600080fd5b506103c461254c565b34801561068957600080fd5b506103c461255b565b34801561069e57600080fd5b5061035561256a565b3480156106b357600080fd5b50610355612570565b3480156106c857600080fd5b5061033e61279c565b3480156106dd57600080fd5b506103556129da565b3480156106f257600080fd5b5061033e6129e0565b34801561070757600080fd5b506107256004803603602081101561071e57600080fd5b5035612c18565b60408051921515835260208301919091528051918290030190f35b34801561074c57600080fd5b506103556004803603604081101561076357600080fd5b810190602081018135600160201b81111561077d57600080fd5b82018360208201111561078f57600080fd5b803590602001918460018302840111600160201b831117156107b057600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b81111561080257600080fd5b82018360208201111561081457600080fd5b803590602001918460018302840111600160201b8311171561083557600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550612c37945050505050565b34801561088257600080fd5b50610355612d7a565b34801561089757600080fd5b50610355612d80565b3480156108ac57600080fd5b50610355612d87565b3480156108c157600080fd5b5061033e612d8d565b3480156108d657600080fd5b5061033e600480360360208110156108ed57600080fd5b810190602081018135600160201b81111561090757600080fd5b82018360208201111561091957600080fd5b803590602001918460018302840111600160201b8311171561093a57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550612fa6945050505050565b34801561098757600080fd5b506103c4613137565b34801561099c57600080fd5b506103c4613146565b3480156109b157600080fd5b5061033e613155565b3480156109c657600080fd5b5061033e600480360360608110156109dd57600080fd5b810190602081018135600160201b8111156109f757600080fd5b820183602082011115610a0957600080fd5b803590602001918460018302840111600160201b83111715610a2a57600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b811115610a7c57600080fd5b820183602082011115610a8e57600080fd5b803590602001918460018302840111600160201b83111715610aaf57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550509135925061333d915050565b348015610afe57600080fd5b506103c4613550565b348015610b1357600080fd5b5061035560048036036020811015610b2a57600080fd5b50356001600160a01b031661355f565b348015610b4657600080fd5b5061033e613571565b348015610b5b57600080fd5b5061035561379c565b348015610b7057600080fd5b506103556137a2565b348015610b8557600080fd5b5061033e60048036036020811015610b9c57600080fd5b50356137a9565b348015610baf57600080fd5b506103c4613a8b565b348015610bc457600080fd5b506103c460048036036040811015610bdb57600080fd5b810190602081018135600160201b811115610bf557600080fd5b820183602082011115610c0757600080fd5b803590602001918460018302840111600160201b83111715610c2857600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b811115610c7a57600080fd5b820183602082011115610c8c57600080fd5b803590602001918460018302840111600160201b83111715610cad57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550613a9a945050505050565b348015610cfa57600080fd5b5061033e613be4565b348015610d0f57600080fd5b50610355613df8565b348015610d2457600080fd5b5061033e613e38565b348015610d3957600080fd5b5061033e61402a565b348015610d4e57600080fd5b50610355614235565b348015610d6357600080fd5b5061033e60048036036020811015610d7a57600080fd5b503561423b565b348015610d8d57600080fd5b506103c4614311565b348015610da257600080fd5b5061033e614320565b348015610db757600080fd5b5061035560048036036020811015610dce57600080fd5b50356001600160a01b0316614555565b348015610dea57600080fd5b506103556146fc565b348015610dff57600080fd5b5061033e614702565b6002546001600160a01b03163314610e55576040805162461bcd60e51b81526020600482015260126024820152600080516020614b5f833981519152604482015290519081900360640190fd5b604080516020808201819052600c828401526b7365745069644f664661726d60a01b6060808401919091528351808403909101815260808301808552815191830191909120600090815260179092529083902060c08301909352825460ff1615158152600183015460a090920191909152610ecf9061478a565b604080516020808201819052600982840152687069644f664661726d60b81b60608084019190915283518084039091018152608090920183528151918101919091206000908152600384019091522054610f61576040805162461bcd60e51b815260206004820152600e60248201526d1253959053125117d05353d5539560921b604482015290519081900360640190fd5b6040805160208082018190526009828401819052687069644f664661726d60b81b60608085018290528551808603909101815260808501865280519084012060009081526003870180855286822054600c5560a0860185905260c086019390935260e0808601929092528551808603909201825261010090940185528051908301208352905290812055805460ff19169055565b600d5481565b600954600b5460408051630c7e663b60e11b815260048101929092526001600160a01b03848116602484015281519316926318fccc769260448082019392918290030181600087803b15801561105057600080fd5b505af1158015611064573d6000803e3d6000fd5b505050506040513d604081101561107a57600080fd5b5050600854600c5460408051631175a1dd60e01b81526004810192909252306024830152516000926001600160a01b031691631175a1dd916044808301926020929190829003018186803b1580156110d157600080fd5b505afa1580156110e5573d6000803e3d6000fd5b505050506040513d60208110156110fb57600080fd5b50519050801580159061111057506000600d54115b1561131d57600854600c5460408051630441a3e760e41b8152600481019290925260006024830181905290516001600160a01b039093169263441a3e7092604480820193929182900301818387803b15801561116b57600080fd5b505af115801561117f573d6000803e3d6000fd5b5050505060006111a66127106111a06013548561488790919063ffffffff16565b906148eb565b905060006111c56127106111a06014548661488790919063ffffffff16565b6003546015546040805163a9059cbb60e01b81526001600160a01b03928316600482015260248101879052905193945091169163a9059cbb916044808201926020929091908290030181600087803b15801561122057600080fd5b505af1158015611234573d6000803e3d6000fd5b505050506040513d602081101561124a57600080fd5b50506003546016546040805163a9059cbb60e01b81526001600160a01b039283166004820152602481018590529051919092169163a9059cbb9160448083019260209291908290030181600087803b1580156112a557600080fd5b505af11580156112b9573d6000803e3d6000fd5b505050506040513d60208110156112cf57600080fd5b506112e69050816112e08585614943565b90614943565b925061131761130e600d546111a069d3c21bcecceda10000008761488790919063ffffffff16565b600e549061498e565b600e5550505b42600f55600e546001600160a01b03831660009081526011602052604081205490916113599169d3c21bcecceda1000000916111a09190614887565b6001600160a01b0384166000908152601260205260409020549091508111156114b0576001600160a01b0383166000908152601260205260408120546113a0908390614943565b600354604080516370a0823160e01b815230600482015290519293506000926001600160a01b03909216916370a0823191602480820192602092909190829003018186803b1580156113f157600080fd5b505afa158015611405573d6000803e3d6000fd5b505050506040513d602081101561141b57600080fd5b505190508082111561142b578091505b6003546040805163a9059cbb60e01b81526001600160a01b038881166004830152602482018690529151919092169163a9059cbb9160448083019260209291908290030181600087803b15801561148157600080fd5b505af1158015611495573d6000803e3d6000fd5b505050506040513d60208110156114ab57600080fd5b505050505b600e546001600160a01b0384166000908152601160205260409020546114e59169d3c21bcecceda1000000916111a091614887565b6001600160a01b039093166000908152601260205260409020929092555050565b600854600c5460408051631175a1dd60e01b815260048101929092523060248301525160009283926001600160a01b0390911691631175a1dd91604480820192602092909190829003018186803b15801561156057600080fd5b505afa158015611574573d6000803e3d6000fd5b505050506040513d602081101561158a57600080fd5b5051600f549091506000904211156115be576115bb6115b4600f544261494390919063ffffffff16565b83906148eb565b90505b6010546115cc908290614887565b9250505090565b6005546001600160a01b031681565b6002546001600160a01b0316331461162f576040805162461bcd60e51b81526020600482015260126024820152600080516020614b5f833981519152604482015290519081900360640190fd5b600060176000856040516020018080602001828103825283818151815260200191508051906020019080838360005b8381101561167657818101518382015260200161165e565b50505050905090810190601f1680156116a35780820380516001836020036101000a031916815260200191505b5092505050604051602081830303815290604052805190602001208152602001908152602001600020905081816002016000856040516020018080602001828103825283818151815260200191508051906020019080838360005b838110156117165781810151838201526020016116fe565b50505050905090810190601f1680156117435780820380516001836020036101000a031916815260200191505b5060408051808303601f1901815291815281516020928301208652908501959095525050500160002080546001600160a01b0319166001600160a01b0392909216919091179055805460ff191660011781556018546117a390429061498e565b81600101819055507f1bd33efd68d2824f5f0f2519ce7c9ca0ddff6234523468e89077a0dca7b73970848484604051808060200180602001846001600160a01b03168152602001838103835286818151815260200191508051906020019080838360005b8381101561181f578181015183820152602001611807565b50505050905090810190601f16801561184c5780820380516001836020036101000a031916815260200191505b50838103825285518152855160209182019187019080838360005b8381101561187f578181015183820152602001611867565b50505050905090810190601f1680156118ac5780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a150505050565b6015546001600160a01b031681565b60145481565b6004546001600160a01b031681565b60116020526000908152604090205481565b600e5481565b60026000541415611956576040805162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015290519081900360640190fd5b60026000558061199d576040805162461bcd60e51b815260206004820152600d60248201526c1253959053125117d253941555609a1b604482015290519081900360640190fd5b6119a633610ffb565b336000908152601160205260409020548111156119cf5750336000908152601160205260409020545b600854600c5460408051630441a3e760e41b8152600481019290925260248201849052516001600160a01b039092169163441a3e709160448082019260009290919082900301818387803b158015611a2657600080fd5b505af1158015611a3a573d6000803e3d6000fd5b505033600090815260116020526040902054611a599250905082614943565b33600090815260116020526040902055600d54611a769082614943565b600d5560048054604080516370a0823160e01b81523093810193909352516000926001600160a01b03909216916370a08231916024808301926020929190829003018186803b158015611ac857600080fd5b505afa158015611adc573d6000803e3d6000fd5b505050506040513d6020811015611af257600080fd5b5051905081811015611b02578091505b600480546040805163a9059cbb60e01b8152339381019390935260248301859052516001600160a01b039091169163a9059cbb9160448083019260209291908290030181600087803b158015611b5757600080fd5b505af1158015611b6b573d6000803e3d6000fd5b505050506040513d6020811015611b8157600080fd5b505081811115611c0357600854600c546001600160a01b039091169063e2bbb15890611bad8486614943565b6040518363ffffffff1660e01b81526004018083815260200182815260200192505050600060405180830381600087803b158015611bea57600080fd5b505af1158015611bfe573d6000803e3d6000fd5b505050505b611c0c336149d6565b604080513381526020810184905281517fccad973dcd043c7d680389db4378bd6b9775db7124092e9e0422c9e46d7985dc929181900390910190a150506001600055565b6002546001600160a01b03163314611c9d576040805162461bcd60e51b81526020600482015260126024820152600080516020614b5f833981519152604482015290519081900360640190fd5b604080516020808201819052601282840152716368616e6765546f6b656e4164647265737360701b6060808401919091528351808403909101815260808301808552815191830191909120600090815260179092529083902060c08301909352825460ff1615158152600183015460a090920191909152611d1d9061478a565b604080516020808201819052600482840152631dd85b9d60e21b606080840191909152835180840390910181526080909201835281519181019190912060009081526002840190915220546001600160a01b031615611e20576040805160208082018190526004828401819052631dd85b9d60e21b6060808501829052855180860390910181526080850186528051908401206000908152600287018085528682205484546001600160a01b039091166001600160a01b031991821617855560a0870186905260c087019490945260e080870193909352865180870390930183526101009095018652815191840191909120815292909152919020805490911690555b60408051602080820181905260068284015265545552494e4760d01b606080840191909152835180840390910181526080909201835281519181019190912060009081526002840190915220546001600160a01b031615611f2957604080516020808201819052600682840181905265545552494e4760d01b60608085018290528551808603909101815260808501865280519084012060009081526002870180855286822054600580546001600160a01b039092166001600160a01b031992831617905560a0870186905260c087019490945260e080870193909352865180870390930183526101009095018652815191840191909120815292909152919020805490911690555b6040805160208082018190526004828401526343414b4560e01b606080840191909152835180840390910181526080909201835281519181019190912060009081526002840190915220546001600160a01b03161561202e5760408051602080820181905260048284018190526343414b4560e01b60608085018290528551808603909101815260808501865280519084012060009081526002870180855286822054600380546001600160a01b039092166001600160a01b031992831617905560a0870186905260c087019490945260e080870193909352865180870390930183526101009095018652815191840191909120815292909152919020805490911690555b604080516020808201819052600482840152633bb1373160e11b606080840191909152835180840390910181526080909201835281519181019190912060009081526002840190915220546001600160a01b031615612133576040805160208082018190526004828401819052633bb1373160e11b60608085018290528551808603909101815260808501865280519084012060009081526002870180855286822054600680546001600160a01b039092166001600160a01b031992831617905560a0870186905260c087019490945260e080870193909352865180870390930183526101009095018652815191840191909120815292909152919020805490911690555b60408051602080820181905260048284015263189d5cd960e21b606080840191909152835180840390910181526080909201835281519181019190912060009081526002840190915220546001600160a01b03161561223857604080516020808201819052600482840181905263189d5cd960e21b60608085018290528551808603909101815260808501865280519084012060009081526002870180855286822054600780546001600160a01b039092166001600160a01b031992831617905560a0870186905260c087019490945260e080870193909352865180870390930183526101009095018652815191840191909120815292909152919020805490911690555b805460ff19169055565b600a546001600160a01b031681565b612259614aac565b612261613df8565b604082015261226e612570565b610140820152600954600b5460408051635e86cd9560e01b81526004810192909252516001600160a01b0390921691635e86cd9591602480820192602092909190829003018186803b1580156122c357600080fd5b505afa1580156122d7573d6000803e3d6000fd5b505050506040513d60208110156122ed57600080fd5b505160808201526122fc611506565b60a0820152600954600b54604080516324aa7cc560e11b81526004810192909252516001600160a01b0390921691634954f98a91602480820192602092909190829003018186803b15801561235057600080fd5b505afa158015612364573d6000803e3d6000fd5b505050506040513d602081101561237a57600080fd5b505181526001600160a01b03828116803160c0840152600954600b5460408051631069f3b560e01b8152600481019290925260248201939093529151921691631069f3b591604480820192606092909190829003018186803b1580156123df57600080fd5b505afa1580156123f3573d6000803e3d6000fd5b505050506040513d606081101561240957600080fd5b505160e082015260048054604080516370a0823160e01b81526001600160a01b0386811694820194909452905192909116916370a0823191602480820192602092909190829003018186803b15801561246157600080fd5b505afa158015612475573d6000803e3d6000fd5b505050506040513d602081101561248b57600080fd5b50516020808301919091526001600160a01b0383166000908152601190915260409020546101008201526124be82614555565b6060820152600854600c54604080516393f1a40b60e01b8152600481019290925230602483015280516001600160a01b03909316926393f1a40b926044808201939291829003018186803b15801561251557600080fd5b505afa158015612529573d6000803e3d6000fd5b505050506040513d604081101561253f57600080fd5b5051610120820152919050565b6007546001600160a01b031681565b6003546001600160a01b031681565b60015481565b6040805160038082526080820190925260009160609190602082018380368337505060035482519293506001600160a01b0316918391506000906125b057fe5b6001600160a01b0392831660209182029290920101526006548251911690829060019081106125db57fe5b6001600160a01b03928316602091820292909201015260075482519116908290600290811061260657fe5b6001600160a01b03928316602091820292909201810191909152600a546040805163d06ca61f60e01b8152670de0b6b3a76400006004820181815260248301938452875160448401528751600097959095169563d06ca61f9592948994929390926064019185810191028083838c5b8381101561268d578181015183820152602001612675565b50505050905001935050505060006040518083038186803b1580156126b157600080fd5b505afa92505050801561277157506040513d6000823e601f3d908101601f1916820160405260208110156126e457600080fd5b8101908080516040519392919084600160201b82111561270357600080fd5b90830190602082018581111561271857600080fd5b82518660208202830111600160201b8211171561273457600080fd5b82525081516020918201928201910280838360005b83811015612761578181015183820152602001612749565b5050505090500160405250505060015b61277d57506000612796565b8060028151811061278a57fe5b60200260200101519150505b91505090565b6002546001600160a01b031633146127e9576040805162461bcd60e51b81526020600482015260126024820152600080516020614b5f833981519152604482015290519081900360640190fd5b604080516020808201819052601c828401527f73657450616e63616b654d617374657243686566436f6e7472616374000000006060808401919091528351808403909101815260808301808552815191830191909120600090815260179092529083902060c08301909352825460ff1615158152600183015460a0909201919091526128749061478a565b604080516020808201819052601182840152703830b735b0b1b2a6b0b9ba32b921b432b360791b606080840191909152835180840390910181526080909201835281519181019190912060009081526002840190915220546001600160a01b0316612918576040805162461bcd60e51b815260206004820152600f60248201526e494e56414c49445f4144445245535360881b604482015290519081900360640190fd5b6040805160208082018190526011828401819052703830b735b0b1b2a6b0b9ba32b921b432b360791b60608085018290528551808603909101815260808501865280519084012060009081526002870180855286822054600880546001600160a01b039092166001600160a01b031992831617905560a0870186905260c087019490945260e08087019390935286518087039093018352610100909501865281519184019190912081529290915291902080549091169055805460ff19169055565b60185481565b6002546001600160a01b03163314612a2d576040805162461bcd60e51b81526020600482015260126024820152600080516020614b5f833981519152604482015290519081900360640190fd5b60408051602080820181905260158284015274736574506572666f726d616e63654d616368696e6560581b6060808401919091528351808403909101815260808301808552815191830191909120600090815260179092529083902060c08301909352825460ff1615158152600183015460a090920191909152612ab09061478a565b60408051602080820181905260128284015271706572666f726d616e63654d616368696e6560701b606080840191909152835180840390910181526080909201835281519181019190912060009081526002840190915220546001600160a01b0316612b55576040805162461bcd60e51b815260206004820152600f60248201526e494e56414c49445f4144445245535360881b604482015290519081900360640190fd5b604080516020808201819052601282840181905271706572666f726d616e63654d616368696e6560701b60608085018290528551808603909101815260808501865280519084012060009081526002870180855286822054601580546001600160a01b039092166001600160a01b031992831617905560a0870186905260c087019490945260e08087019390935286518087039093018352610100909501865281519184019190912081529290915291902080549091169055805460ff19169055565b6017602052600090815260409020805460019091015460ff9091169082565b600060176000846040516020018080602001828103825283818151815260200191508051906020019080838360005b83811015612c7e578181015183820152602001612c66565b50505050905090810190601f168015612cab5780820380516001836020036101000a031916815260200191505b50925050506040516020818303038152906040528051906020012081526020019081526020016000206003016000836040516020018080602001828103825283818151815260200191508051906020019080838360005b83811015612d1a578181015183820152602001612d02565b50505050905090810190601f168015612d475780820380516001836020036101000a031916815260200191505b50925050506040516020818303038152906040528051906020012081526020019081526020016000205490505b92915050565b600c5481565b62278d0081565b60105481565b6002546001600160a01b03163314612dda576040805162461bcd60e51b81526020600482015260126024820152600080516020614b5f833981519152604482015290519081900360640190fd5b6040805160208082018190526011828401527007472616e736665724f776e65727368697607c1b6060808401919091528351808403909101815260808301808552815191830191909120600090815260179092529083902060c08301909352825460ff1615158152600183015460a090920191909152612e599061478a565b6040805160208082018190526005828401526437bbb732b960d91b606080840191909152835180840390910181526080909201835281519181019190912060009081526002840190915220546001600160a01b0316612ef1576040805162461bcd60e51b815260206004820152600f60248201526e494e56414c49445f4144445245535360881b604482015290519081900360640190fd5b60408051602080820181905260058284018190526437bbb732b960d91b606080850182905285518086039091018152608085018652805190840120600090815260028781018086528783205482546001600160a01b039091166001600160a01b03199182161790925560a0870186905260c087019490945260e080870193909352865180870390930183526101009095018652815191840191909120815291529190912080549091169055805460ff19169055565b6002546001600160a01b03163314612ff3576040805162461bcd60e51b81526020600482015260126024820152600080516020614b5f833981519152604482015290519081900360640190fd5b600060176000836040516020018080602001828103825283818151815260200191508051906020019080838360005b8381101561303a578181015183820152602001613022565b50505050905090810190601f1680156130675780820380516001836020036101000a031916815260200191505b5060408051601f1981840301815291815281516020928301208652858201969096529385016000908120805460ff19168155865186815289518188015289519198507fce369f91d52b663114643c430217b52530c2cc7318cac7a3e9d46241cbc354a8978a97919650869550850193508601918190849084905b838110156130f95781810151838201526020016130e1565b50505050905090810190601f1680156131265780820380516001836020036101000a031916815260200191505b509250505060405180910390a15050565b6006546001600160a01b031681565b6002546001600160a01b031681565b6002546001600160a01b031633146131a2576040805162461bcd60e51b81526020600482015260126024820152600080516020614b5f833981519152604482015290519081900360640190fd5b6040805160208082018190526010828401526f7365744d696e696e674d616368696e6560801b6060808401919091528351808403909101815260808301808552815191830191909120600090815260179092529083902060c08301909352825460ff1615158152600183015460a0909201919091526132209061478a565b604080516020808201819052600d828401526c6d696e696e674d616368696e6560981b606080840191909152835180840390910181526080909201835281519181019190912060009081526002840190915220546001600160a01b03166132c0576040805162461bcd60e51b815260206004820152600f60248201526e494e56414c49445f4144445245535360881b604482015290519081900360640190fd5b604080516020808201819052600d828401526c6d696e696e674d616368696e6560981b60608084019190915283518084039091018152608090920183528151918101919091206000908152600284019091522054600980546001600160a01b0319166001600160a01b03909216919091179055805460ff19169055565b6002546001600160a01b0316331461338a576040805162461bcd60e51b81526020600482015260126024820152600080516020614b5f833981519152604482015290519081900360640190fd5b600060176000856040516020018080602001828103825283818151815260200191508051906020019080838360005b838110156133d15781810151838201526020016133b9565b50505050905090810190601f1680156133fe5780820380516001836020036101000a031916815260200191505b5092505050604051602081830303815290604052805190602001208152602001908152602001600020905081816003016000856040516020018080602001828103825283818151815260200191508051906020019080838360005b83811015613471578181015183820152602001613459565b50505050905090810190601f16801561349e5780820380516001836020036101000a031916815260200191505b5060408051601f1981840301815291815281516020928301208652908501959095525050500160002055805460ff191660011781556018546134e190429061498e565b600182015560408051908101839052606080825285519082015284517f860699cc7b0f3cb3d034fd31cdfe0816887a9f55d10993224d77c359c3d5555191869186918691819060208083019160808401918801908083836000831561181f578181015183820152602001611807565b6008546001600160a01b031681565b60126020526000908152604090205481565b6002546001600160a01b031633146135be576040805162461bcd60e51b81526020600482015260126024820152600080516020614b5f833981519152604482015290519081900360640190fd5b604080516020808201819052601682840152751cd95d14185b98d85ad954ddd85c10dbdb9d1c9858dd60521b6060808401919091528351808403909101815260808301808552815191830191909120600090815260179092529083902060c08301909352825460ff1615158152600183015460a0909201919091526136429061478a565b604080516020808201819052600b828401526a070616e63616b65537761760ac1b606080840191909152835180840390910181526080909201835281519181019190912060009081526002840190915220546001600160a01b03166136e0576040805162461bcd60e51b815260206004820152600f60248201526e494e56414c49445f4144445245535360881b604482015290519081900360640190fd5b604080516020808201819052600b8284018190526a070616e63616b65537761760ac1b60608085018290528551808603909101815260808501865280519084012060009081526002870180855286822054600a80546001600160a01b039092166001600160a01b031992831617905560a0870186905260c087019490945260e08087019390935286518087039093018352610100909501865281519184019190912081529290915291902080549091169055805460ff19169055565b600f5481565b6202a30081565b60026000541415613801576040805162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015290519081900360640190fd5b600260005580613848576040805162461bcd60e51b815260206004820152600d60248201526c1253959053125117d253941555609a1b604482015290519081900360640190fd5b60048054604080516370a0823160e01b815233938101939093525183926001600160a01b03909216916370a08231916024808301926020929190829003018186803b15801561389657600080fd5b505afa1580156138aa573d6000803e3d6000fd5b505050506040513d60208110156138c057600080fd5b50511015613905576040805162461bcd60e51b815260206004820152600d60248201526c1253959053125117d253941555609a1b604482015290519081900360640190fd5b61390e33610ffb565b60048054604080516323b872dd60e01b8152339381019390935230602484015260448301849052516001600160a01b03909116916323b872dd9160648083019260209291908290030181600087803b15801561396957600080fd5b505af115801561397d573d6000803e3d6000fd5b505050506040513d602081101561399357600080fd5b5050600854600c5460408051631c57762b60e31b8152600481019290925260248201849052516001600160a01b039092169163e2bbb1589160448082019260009290919082900301818387803b1580156139ec57600080fd5b505af1158015613a00573d6000803e3d6000fd5b505033600090815260116020526040902054613a1f925090508261498e565b33600090815260116020526040902055600d54613a3c908261498e565b600d55613a48336149d6565b604080513381526020810183905281517f2bf9518c65eff7d1f3ee4106bf0dc41267ccde0924dbfa4ab476ed5c0f45da98929181900390910190a1506001600055565b6009546001600160a01b031681565b600060176000846040516020018080602001828103825283818151815260200191508051906020019080838360005b83811015613ae1578181015183820152602001613ac9565b50505050905090810190601f168015613b0e5780820380516001836020036101000a031916815260200191505b50925050506040516020818303038152906040528051906020012081526020019081526020016000206002016000836040516020018080602001828103825283818151815260200191508051906020019080838360005b83811015613b7d578181015183820152602001613b65565b50505050905090810190601f168015613baa5780820380516001836020036101000a031916815260200191505b5060408051808303601f19018152918152815160209283012086529085019590955250505001600020546001600160a01b03169392505050565b6002546001600160a01b03163314613c31576040805162461bcd60e51b81526020600482015260126024820152600080516020614b5f833981519152604482015290519081900360640190fd5b60408051602080820181905260178284018190527f736574526174654f66506572666f726d616e6365466565000000000000000000606080850191909152845180850390910181526080840180865281519184019190912060009081529190925283902060c08301909352825460ff1615158152600183015460a090920191909152613cbc9061478a565b60408051602080820181905260148284015273726174654f66506572666f726d616e636546656560601b60608084019190915283518084039091018152608090920183528151918101919091206000908152600384019091522054613d59576040805162461bcd60e51b815260206004820152600e60248201526d1253959053125117d05353d5539560921b604482015290519081900360640190fd5b604080516020808201819052601482840181905273726174654f66506572666f726d616e636546656560601b6060808501829052855180860390910181526080850186528051908401206000908152600387018085528682205460135560a0860185905260c086019390935260e0808601929092528551808603909201825261010090940185528051908301208352905290812055805460ff19169055565b6040805160038082526080820190925260009160609190602082018380368337505060055482519293506001600160a01b0316918391506000906125b057fe5b6002546001600160a01b03163314613e85576040805162461bcd60e51b81526020600482015260126024820152600080516020614b5f833981519152604482015290519081900360640190fd5b604080516020808201819052600e828401526d7365745069644f664d696e696e6760901b6060808401919091528351808403909101815260808301808552815191830191909120600090815260179092529083902060c08301909352825460ff1615158152600183015460a090920191909152613f019061478a565b604080516020808201819052600b828401526a7069644f664d696e696e6760a81b60608084019190915283518084039091018152608090920183528151918101919091206000908152600384019091522054613f95576040805162461bcd60e51b815260206004820152600e60248201526d1253959053125117d05353d5539560921b604482015290519081900360640190fd5b604080516020808201819052600b8284018190526a7069644f664d696e696e6760a81b60608085018290528551808603909101815260808501865280519084012060009081526003870180855286822054845560a0860185905260c086019390935260e0808601929092528551808603909201825261010090940185528051908301208352905290812055805460ff19169055565b6002546001600160a01b03163314614077576040805162461bcd60e51b81526020600482015260126024820152600080516020614b5f833981519152604482015290519081900360640190fd5b60408051602080820181905260168284015275736574526174654f66436f6e74726f6c6c657246656560501b6060808401919091528351808403909101815260808301808552815191830191909120600090815260179092529083902060c08301909352825460ff1615158152600183015460a0909201919091526140fb9061478a565b60408051602080820181905260138284015272726174654f66436f6e74726f6c6c657246656560681b60608084019190915283518084039091018152608090920183528151918101919091206000908152600384019091522054614197576040805162461bcd60e51b815260206004820152600e60248201526d1253959053125117d05353d5539560921b604482015290519081900360640190fd5b604080516020808201819052601382840181905272726174654f66436f6e74726f6c6c657246656560681b6060808501829052855180860390910181526080850186528051908401206000908152600387018085528682205460145560a0860185905260c086019390935260e0808601929092528551808603909201825261010090940185528051908301208352905290812055805460ff19169055565b60135481565b6002546001600160a01b03163314614288576040805162461bcd60e51b81526020600482015260126024820152600080516020614b5f833981519152604482015290519081900360640190fd5b6202a3008110156142ca5760405162461bcd60e51b8152600401808060200182810382526034815260200180614acc6034913960400191505060405180910390fd5b62278d0081111561430c5760405162461bcd60e51b8152600401808060200182810382526038815260200180614b006038913960400191505060405180910390fd5b601855565b6016546001600160a01b031681565b6002546001600160a01b0316331461436d576040805162461bcd60e51b81526020600482015260126024820152600080516020614b5f833981519152604482015290519081900360640190fd5b60408051602080820181905260148284015273736574436f6e74726f6c6c65724d616368696e6560601b6060808401919091528351808403909101815260808301808552815191830191909120600090815260179092529083902060c08301909352825460ff1615158152600183015460a0909201919091526143ef9061478a565b60408051602080820181905260118284015270636f6e74726f6c6c65724d616368696e6560781b606080840191909152835180840390910181526080909201835281519181019190912060009081526002840190915220546001600160a01b0316614493576040805162461bcd60e51b815260206004820152600f60248201526e494e56414c49445f4144445245535360881b604482015290519081900360640190fd5b604080516020808201819052601182840181905270636f6e74726f6c6c65724d616368696e6560781b60608085018290528551808603909101815260808501865280519084012060009081526002870180855286822054601680546001600160a01b039092166001600160a01b031992831617905560a0870186905260c087019490945260e08087019390935286518087039093018352610100909501865281519184019190912081529290915291902080549091169055805460ff19169055565b600e54600854600c5460408051631175a1dd60e01b81526004810192909252306024830152516000939284926001600160a01b0390911691631175a1dd91604480820192602092909190829003018186803b1580156145b357600080fd5b505afa1580156145c7573d6000803e3d6000fd5b505050506040513d60208110156145dd57600080fd5b5051905080158015906145f257506000600d54115b156146775760006146146127106111a06013548561488790919063ffffffff16565b905060006146336127106111a06014548661488790919063ffffffff16565b9050614643816112e08585614943565b925061467261466b600d546111a069d3c21bcecceda10000008761488790919063ffffffff16565b859061498e565b935050505b6001600160a01b0384166000908152601160205260408120546146aa9069d3c21bcecceda1000000906111a09086614887565b6001600160a01b0386166000908152601260205260409020549091508111156146f4576001600160a01b0385166000908152601260205260409020546146f1908290614943565b93505b505050919050565b600b5481565b600480546008546040805163095ea7b360e01b81526001600160a01b039283169481019490945260001960248501525191169163095ea7b39160448083019260209291908290030181600087803b15801561475c57600080fd5b505af1158015614770573d6000803e3d6000fd5b505050506040513d602081101561478657600080fd5b5050565b805115156001146147e2576040805162461bcd60e51b815260206004820152601f60248201527f5472616e73616374696f6e206861736e2774206265656e207175657565642e00604482015290519081900360640190fd5b42816020015111156148255760405162461bcd60e51b8152600401808060200182810382526027815260200180614b386027913960400191505060405180910390fd5b602081015142906148399062278d0061498e565b1015614884576040805162461bcd60e51b81526020600482015260156024820152742a3930b739b0b1ba34b7b71034b99039ba30b6329760591b604482015290519081900360640190fd5b50565b60008261489657506000612d74565b828202828482816148a357fe5b04146148e4576040805162461bcd60e51b815260206004820152600b60248201526a1253959053125117d3555360aa1b604482015290519081900360640190fd5b9392505050565b600080821161492f576040805162461bcd60e51b815260206004820152600b60248201526a24a72b20a624a22fa224ab60a91b604482015290519081900360640190fd5b600082848161493a57fe5b04949350505050565b600082821115614988576040805162461bcd60e51b815260206004820152600b60248201526a24a72b20a624a22fa9aaa160a91b604482015290519081900360640190fd5b50900390565b6000828201838110156148e4576040805162461bcd60e51b815260206004820152600b60248201526a1253959053125117d0511160aa1b604482015290519081900360640190fd5b600954600b5460408051638fb4e1cd60e01b815260048101929092526001600160a01b0384811660248401529051921691638fb4e1cd916044808201926020929091908290030181600087803b158015614a2f57600080fd5b505af1158015614a43573d6000803e3d6000fd5b505050506040513d6020811015614a5957600080fd5b5050600e546001600160a01b038216600090815260116020526040902054614a909169d3c21bcecceda1000000916111a091614887565b6001600160a01b03909116600090815260126020526040902055565b604051806101600160405280600b90602082028036833750919291505056fe54696d656c6f636b3a3a73657444656c61793a2044656c6179206d75737420657863656564206d696e696d756d2064656c61792e54696d656c6f636b3a3a73657444656c61793a2044656c6179206d757374206e6f7420657863656564206d6178696d756d2064656c61792e5472616e73616374696f6e206861736e2774207375727061737365642074696d65206c6f636b2e494e56414c49445f5045524d495353494f4e0000000000000000000000000000a2646970667358221220fc5304e969442a8816ef85da18ad251d45bc228165eb4534bec0714e7526ae0664736f6c634300060c003300000000000000000000000010ed43c718714eb63d5aa57b78b54704e256024e00000000000000000000000073feaa1ee314f8c655e354234017be2193c9e24e0000000000000000000000007efaef62fddcca950418312c6c91aef321375a000000000000000000000000000e09fabb73bd3ade0a17ecc321fd13a19e81ce8200000000000000000000000076ed05fa250e8e993275e6e78b470b4d70ed120b000000000000000000000000bb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c000000000000000000000000e9e7cea3dedca5984780bafc599bd69add087d56

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

00000000000000000000000010ed43c718714eb63d5aa57b78b54704e256024e00000000000000000000000073feaa1ee314f8c655e354234017be2193c9e24e0000000000000000000000007efaef62fddcca950418312c6c91aef321375a000000000000000000000000000e09fabb73bd3ade0a17ecc321fd13a19e81ce8200000000000000000000000076ed05fa250e8e993275e6e78b470b4d70ed120b000000000000000000000000bb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c000000000000000000000000e9e7cea3dedca5984780bafc599bd69add087d56

-----Decoded View---------------
Arg [0] : _pancakeSwap (address): 0x10ed43c718714eb63d5aa57b78b54704e256024e
Arg [1] : _pancakeMasterChef (address): 0x73feaa1ee314f8c655e354234017be2193c9e24e
Arg [2] : _want (address): 0x7efaef62fddcca950418312c6c91aef321375a00
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] : 0000000000000000000000007efaef62fddcca950418312c6c91aef321375a00
Arg [3] : 0000000000000000000000000e09fabb73bd3ade0a17ecc321fd13a19e81ce82
Arg [4] : 00000000000000000000000076ed05fa250e8e993275e6e78b470b4d70ed120b
Arg [5] : 000000000000000000000000bb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c
Arg [6] : 000000000000000000000000e9e7cea3dedca5984780bafc599bd69add087d56


Deployed ByteCode Sourcemap

9885:18235:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20382:470;;;;;;;;;;;;;:::i;:::-;;10395:29;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;22685:1399;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;22685:1399:0;-1:-1:-1;;;;;22685:1399:0;;:::i;26366:378::-;;;;;;;;;;;;;:::i;10102:20::-;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;10102:20:0;;;;;;;;;;;;;;13135:504;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;13135:504:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;13135:504:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;13135:504:0;;;;;;;;-1:-1:-1;13135:504:0;;-1:-1:-1;;;;;13135:504:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;13135:504:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;13135:504:0;;-1:-1:-1;;;13135:504:0;;-1:-1:-1;;;;;13135:504:0;;-1:-1:-1;13135:504:0;;-1:-1:-1;13135:504:0:i;10821:33::-;;;;;;;;;;;;;:::i;10755:39::-;;;;;;;;;;;;;:::i;10073:18::-;;;;;;;;;;;;;:::i;10579:42::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;10579:42:0;-1:-1:-1;;;;;10579:42:0;;:::i;10431:34::-;;;;;;;;;;;;;:::i;21837:840::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;21837:840:0;;:::i;17329:1466::-;;;;;;;;;;;;;:::i;10285:37::-;;;;;;;;;;;;;:::i;24775:712::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;24775:712:0;-1:-1:-1;;;;;24775:712:0;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10165:19;;;;;;;;;;;;;:::i;10044:18::-;;;;;;;;;;;;;:::i;9976:28::-;;;;;;;;;;;;;:::i;25933:425::-;;;;;;;;;;;;;:::i;16744:573::-;;;;;;;;;;;;;:::i;11191:17::-;;;;;;;;;;;;;:::i;15099:545::-;;;;;;;;;;;;;:::i;10985:46::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;10985:46:0;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;27884:233;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;27884:233:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;27884:233:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;27884:233:0;;;;;;;;-1:-1:-1;27884:233:0;;-1:-1:-1;;;;;27884:233:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;27884:233:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;27884:233:0;;-1:-1:-1;27884:233:0;;-1:-1:-1;;;;;27884:233:0:i;10364:24::-;;;;;;;;;;;;;:::i;11140:44::-;;;;;;;;;;;;;:::i;10511:35::-;;;;;;;;;;;;;:::i;14144:485::-;;;;;;;;;;;;;:::i;12853:274::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;12853:274:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;12853:274:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;12853:274:0;;-1:-1:-1;12853:274:0;;-1:-1:-1;;;;;12853:274:0:i;10139:19::-;;;;;;;;;;;;;:::i;10011:20::-;;;;;;;;;;;;;:::i;14637:454::-;;;;;;;;;;;;;:::i;13647:489::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;13647:489:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;13647:489:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;13647:489:0;;;;;;;;-1:-1:-1;13647:489:0;;-1:-1:-1;;;;;13647:489:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;13647:489:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;13647:489:0;;-1:-1:-1;;13647:489:0;;;-1:-1:-1;13647:489:0;;-1:-1:-1;;13647:489:0:i;10193:43::-;;;;;;;;;;;;;:::i;10628:51::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;10628:51:0;-1:-1:-1;;;;;10628:51:0;;:::i;16199:537::-;;;;;;;;;;;;;:::i;10472:32::-;;;;;;;;;;;;;:::i;11090:43::-;;;;;;;;;;;;;:::i;21249:582::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;21249:582:0;;:::i;10243:35::-;;;;;;;;;;;;;:::i;27637:239::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;27637:239:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;27637:239:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;27637:239:0;;;;;;;;-1:-1:-1;27637:239:0;;-1:-1:-1;;;;;27637:239:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;27637:239:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;27637:239:0;;-1:-1:-1;27637:239:0;;-1:-1:-1;;;;;27637:239:0:i;18807:537::-;;;;;;;;;;;;;:::i;25496:429::-;;;;;;;;;;;;;:::i;19891:483::-;;;;;;;;;;;;;:::i;19352:531::-;;;;;;;;;;;;;:::i;10688:40::-;;;;;;;;;;;;;:::i;12436:285::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;12436:285:0;;:::i;10944:32::-;;;;;;;;;;;;;:::i;15652:539::-;;;;;;;;;;;;;:::i;26752:877::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;26752:877:0;-1:-1:-1;;;;;26752:877:0;;:::i;10331:26::-;;;;;;;;;;;;;:::i;12729:114::-;;;;;;;;;;;;;:::i;20382:470::-;11467:5;;-1:-1:-1;;;;;11467:5:0;11453:10;:19;11445:50;;;;;-1:-1:-1;;;11445:50:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;11445:50:0;;;;;;;;;;;;;;;20489:26:::1;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;20489:26:0;;;;;;;;;;;;;;;;;;;;;;;;20479:37;;;;::::1;::::0;;;;20439:26:::1;20468:49:::0;;;:10:::1;:49:::0;;;;;;;20528:28;;;;;;;;::::1;;;;::::0;;;;::::1;::::0;;;;;;;;;::::1;::::0;:17:::1;:28::i;:::-;20602:23;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;20602:23:0;;;;;;;;;;;;;;;;;;;;;;;;20592:34;;;;::::1;::::0;;;;20630:1:::1;20575:52:::0;;;:16:::1;::::0;::::1;:52:::0;;;;;20567:83:::1;;;::::0;;-1:-1:-1;;;20567:83:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;20567:83:0;;;;;;;;;;;;;::::1;;20702:23;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;;;20702:23:0;;;;;;;;;;;;;;;;;;;;;;20692:34;;;;::::1;::::0;20675:52:::1;::::0;;;:16:::1;::::0;::::1;:52:::0;;;;;;;20663:9:::1;:64:::0;20772:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20762:34;;;;::::1;::::0;20745:52;;;;;;;20738:59;20808:36;;-1:-1:-1;;20808:36:0::1;::::0;;20382:470::o;10395:29::-;;;;:::o;22685:1399::-;22735:13;;22757:11;;22735:41;;;-1:-1:-1;;;22735:41:0;;;;;;;;;-1:-1:-1;;;;;22735:41:0;;;;;;;;;:13;;;:21;;:41;;;;;;;;;;;;:13;;:41;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;22805:17:0;;22835:9;;22735:41;22805:55;;-1:-1:-1;;;22805:55:0;;;;;;;;;22854:4;22805:55;;;;;22787:15;;-1:-1:-1;;;;;22805:17:0;;:29;;:55;;;;;22735:41;;22805:55;;;;;;;:17;:55;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;22805:55:0;;-1:-1:-1;22889:11:0;;;;;:42;;;22930:1;22917:10;;:14;22889:42;22871:599;;;22962:17;;22989:9;;22962:40;;;-1:-1:-1;;;22962:40:0;;;;;;;;;:17;:40;;;;;;;;-1:-1:-1;;;;;22962:17:0;;;;:26;;:40;;;;;:17;:40;;;;;;:17;;:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23017:23;23043:44;23081:5;23043:33;23055:20;;23043:7;:11;;:33;;;;:::i;:::-;:37;;:44::i;:::-;23017:70;;23102:22;23127:43;23164:5;23127:32;23139:19;;23127:7;:11;;:32;;;;:::i;:43::-;23185:4;;23199:18;;23185:50;;;-1:-1:-1;;;23185:50:0;;-1:-1:-1;;;;;23199:18:0;;;23185:50;;;;;;;;;;;;23102:68;;-1:-1:-1;23185:4:0;;;:13;;:50;;;;;;;;;;;;;;;:4;;:50;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;23250:4:0;;23264:17;;23250:48;;;-1:-1:-1;;;23250:48:0;;-1:-1:-1;;;;;23264:17:0;;;23250:48;;;;;;;;;;;;:4;;;;;:13;;:48;;;;;23185:50;;23250:48;;;;;;;:4;;:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;23323:48:0;;-1:-1:-1;23356:14:0;23323:28;:7;23335:15;23323:11;:28::i;:::-;:32;;:48::i;:::-;23313:58;;23404:54;23424:33;23446:10;;23424:17;23436:4;23424:7;:11;;:17;;;;:::i;:33::-;23404:15;;;:19;:54::i;:::-;23386:15;:72;-1:-1:-1;;22871:599:0;23498:15;23482:13;:31;23572:15;;-1:-1:-1;;;;;23553:14:0;;23526:23;23553:14;;;:7;:14;;;;;;23526:23;;23553:45;;23593:4;;23553:35;;:14;:18;:35::i;:45::-;-1:-1:-1;;;;;23633:23:0;;;;;;:16;:23;;;;;;23526:72;;-1:-1:-1;23615:41:0;;23611:382;;;-1:-1:-1;;;;;23720:23:0;;23673:24;23720:23;;;:16;:23;;;;;;23700:44;;:15;;:19;:44::i;:::-;23782:4;;:29;;;-1:-1:-1;;;23782:29:0;;23805:4;23782:29;;;;;;23673:71;;-1:-1:-1;23759:20:0;;-1:-1:-1;;;;;23782:4:0;;;;:14;;:29;;;;;;;;;;;;;;;:4;:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;23782:29:0;;-1:-1:-1;23830:31:0;;;23826:103;;;23901:12;23882:31;;23826:103;23943:4;;:38;;;-1:-1:-1;;;23943:38:0;;-1:-1:-1;;;;;23943:38:0;;;;;;;;;;;;;;;:4;;;;;:13;;:38;;;;;;;;;;;;;;:4;;:38;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;23611:382:0;24050:15;;-1:-1:-1;;;;;24031:14:0;;;;;;:7;:14;;;;;;:45;;24071:4;;24031:35;;:18;:35::i;:45::-;-1:-1:-1;;;;;24005:23:0;;;;;;;:16;:23;;;;;:71;;;;-1:-1:-1;;22685:1399:0:o;26366:378::-;26456:17;;26486:9;;26456:55;;;-1:-1:-1;;;26456:55:0;;;;;;;;;26505:4;26456:55;;;;;26418:7;;;;-1:-1:-1;;;;;26456:17:0;;;;:29;;:55;;;;;;;;;;;;;;;:17;:55;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;26456:55:0;26580:13;;26456:55;;-1:-1:-1;26522:21:0;;26562:15;:31;26558:131;;;26625:47;26637:34;26657:13;;26637:15;:19;;:34;;;;:::i;:::-;26625:7;;:11;:47::i;:::-;26609:63;;26558:131;26724:11;;26706:30;;:13;;:17;:30::i;:::-;26699:37;;;;26366:378;:::o;10102:20::-;;;-1:-1:-1;;;;;10102:20:0;;:::o;13135:504::-;11467:5;;-1:-1:-1;;;;;11467:5:0;11453:10;:19;11445:50;;;;;-1:-1:-1;;;11445:50:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;11445:50:0;;;;;;;;;;;;;;;13283:26:::1;13312:10;:48;13344:13;13333:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;;::::1;::::0;;;::::1;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13323:36;;;;;;13312:48;;;;;;;;;;;13283:77;;13428:8;13371:9;:19;;:54;13412:10;13401:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;;::::1;::::0;;;::::1;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;13401:22:0::1;::::0;;;;::::1;-1:-1:-1::0;;13401:22:0;;;;;;13391:33;;13401:22:::1;13391:33:::0;;::::1;::::0;13371:54;;;;::::1;::::0;;;;-1:-1:-1;;;13371:54:0;-1:-1:-1;13371:54:0;:65;;-1:-1:-1;;;;;;13371:65:0::1;-1:-1:-1::0;;;;;13371:65:0;;;::::1;::::0;;;::::1;::::0;;13447:35;;-1:-1:-1;;13447:35:0::1;-1:-1:-1::0;13447:35:0::1;::::0;;13539:5:::1;::::0;13519:26:::1;::::0;:15:::1;::::0;:19:::1;:26::i;:::-;13493:9;:23;;:52;;;;13561:70;13595:13;13610:10;13622:8;13561:70;;;;;;;;;;-1:-1:-1::0;;;;;13561:70:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;;::::1;::::0;;;::::1;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;13561:70:0;;::::1;::::0;;;;;;;;::::1;::::0;;::::1;::::0;;::::1;::::0;;;;::::1;;;;;;;;::::0;;::::1;::::0;;;::::1;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11506:1;13135:504:::0;;;:::o;10821:33::-;;;-1:-1:-1;;;;;10821:33:0;;:::o;10755:39::-;;;;:::o;10073:18::-;;;-1:-1:-1;;;;;10073:18:0;;:::o;10579:42::-;;;;;;;;;;;;;:::o;10431:34::-;;;;:::o;21837:840::-;8931:1;9536:7;;:19;;9528:63;;;;;-1:-1:-1;;;9528:63:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;8931:1;9669:7;:18;21920:12;21912:38:::1;;;::::0;;-1:-1:-1;;;21912:38:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;21912:38:0;;;;;;;;;;;;;::::1;;21961:19;21969:10;21961:7;:19::i;:::-;22016:10;22008:19;::::0;;;:7:::1;:19;::::0;;;;;21997:30;::::1;21993:93;;;-1:-1:-1::0;22063:10:0::1;22055:19;::::0;;;:7:::1;:19;::::0;;;;;21993:93:::1;22098:17;::::0;22125:9:::1;::::0;22098:47:::1;::::0;;-1:-1:-1;;;22098:47:0;;::::1;::::0;::::1;::::0;;;;;;;;;;;-1:-1:-1;;;;;22098: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;;22188:10:0::1;22180:19;::::0;;;:7:::1;:19;::::0;;;;;:33:::1;::::0;-1:-1:-1;22180:19:0;-1:-1:-1;22204:8:0;22180:23:::1;:33::i;:::-;22166:10;22158:19;::::0;;;:7:::1;:19;::::0;;;;:55;22237:10:::1;::::0;:24:::1;::::0;22252:8;22237:14:::1;:24::i;:::-;22224:10;:37:::0;22293:4:::1;::::0;;:29:::1;::::0;;-1:-1:-1;;;22293:29:0;;22316:4:::1;22293:29:::0;;::::1;::::0;;;;;22274:16:::1;::::0;-1:-1:-1;;;;;22293: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;22293:29:0;;-1:-1:-1;22338:19:0;;::::1;22334:71;;;22385:8;22374:19;;22334:71;22415:4;::::0;;:35:::1;::::0;;-1:-1:-1;;;22415:35:0;;22429:10:::1;22415:35:::0;;::::1;::::0;;;;;;;;;;;-1:-1:-1;;;;;22415: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;;22465:19:0;;::::1;22461:112;;;22501:17;::::0;22527:9:::1;::::0;-1:-1:-1;;;;;22501:17:0;;::::1;::::0;:25:::1;::::0;22538:22:::1;:8:::0;22551;22538:12:::1;:22::i;:::-;22501:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;22461:112;22585:23;22597:10;22585:11;:23::i;:::-;22637:32;::::0;;22648:10:::1;22637:32:::0;;::::1;::::0;::::1;::::0;;;;;::::1;::::0;;;;;;;;;::::1;-1:-1:-1::0;;8887:1:0;9848:7;:22;21837:840::o;17329:1466::-;11467:5;;-1:-1:-1;;;;;11467:5:0;11453:10;:19;11445:50;;;;;-1:-1:-1;;;11445:50:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;11445:50:0;;;;;;;;;;;;;;;17442:32:::1;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;17442:32:0;;;;;;;;;;;;;;;;;;;;;;;;17432:43;;;;::::1;::::0;;;;17392:26:::1;17421:55:::0;;;:10:::1;:55:::0;;;;;;;17489:28;;;;;;;;::::1;;;;::::0;;;;::::1;::::0;;;;;;;;;::::1;::::0;:17:::1;:28::i;:::-;17568:18;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;17568:18:0;;;;;;;;;;;;;;;;;;;;;;;;17558:29;;;;::::1;::::0;;;;17600:1:::1;17538:50:::0;;;:19:::1;::::0;::::1;:50:::0;;;;;-1:-1:-1;;;;;17538:50:0::1;:64:::0;17534:234:::1;;17663:18;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;;;17663:18:0;;;;;;;;;;;;;;;;;;;;;;17653:29;;;;::::1;::::0;-1:-1:-1;17633:50:0;;;:19:::1;::::0;::::1;:50:::0;;;;;;;17619:65;;-1:-1:-1;;;;;17633:50:0;;::::1;-1:-1:-1::0;;;;;;17619:65:0;;::::1;;::::0;;17736:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17633:50:::1;17736:18:::0;;;;;17726:29;;;;::::1;::::0;;;;17706:50;;;;;;;;;17699:57;;;;::::1;::::0;;17534:234:::1;17813:20;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;17813:20:0;;;;;;;;;;;;;;;;;;;;;;;;17803:31;;;;::::1;::::0;;;;17847:1:::1;17783:52:::0;;;:19:::1;::::0;::::1;:52:::0;;;;;-1:-1:-1;;;;;17783:52:0::1;:66:::0;17779:242:::1;;17912:20;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;;;17912:20:0;;;;;;;;;;;;;;;;;;;;;;17902:31;;;;::::1;::::0;-1:-1:-1;17882:52:0;;;:19:::1;::::0;::::1;:52:::0;;;;;;;17866:6:::1;:69:::0;;-1:-1:-1;;;;;17882:52:0;;::::1;-1:-1:-1::0;;;;;;17866:69:0;;::::1;;::::0;;17987:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17882:52:::1;17987:20:::0;;;;;17977:31;;;;::::1;::::0;;;;17957:52;;;;;;;;;17950:59;;;;::::1;::::0;;17779:242:::1;18066:18;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;18066:18:0;;;;;;;;;;;;;;;;;;;;;;;;18056:29;;;;::::1;::::0;;;;18098:1:::1;18036:50:::0;;;:19:::1;::::0;::::1;:50:::0;;;;;-1:-1:-1;;;;;18036:50:0::1;:64:::0;18032:234:::1;;18161:18;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;;;18161:18:0;;;;;;;;;;;;;;;;;;;;;;18151:29;;;;::::1;::::0;-1:-1:-1;18131:50:0;;;:19:::1;::::0;::::1;:50:::0;;;;;;;18117:4:::1;:65:::0;;-1:-1:-1;;;;;18131:50:0;;::::1;-1:-1:-1::0;;;;;;18117:65:0;;::::1;;::::0;;18234:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18131:50:::1;18234:18:::0;;;;;18224:29;;;;::::1;::::0;;;;18204:50;;;;;;;;;18197:57;;;;::::1;::::0;;18032:234:::1;18311:18;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;18311:18:0;;;;;;;;;;;;;;;;;;;;;;;;18301:29;;;;::::1;::::0;;;;18343:1:::1;18281:50:::0;;;:19:::1;::::0;::::1;:50:::0;;;;;-1:-1:-1;;;;;18281:50:0::1;:64:::0;18277:226:::1;;18399:18;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;;;18399:18:0;;;;;;;;;;;;;;;;;;;;;;18389:29;;;;::::1;::::0;-1:-1:-1;18369:50:0;;;:19:::1;::::0;::::1;:50:::0;;;;;;;18362:4:::1;:57:::0;;-1:-1:-1;;;;;18369:50:0;;::::1;-1:-1:-1::0;;;;;;18362:57:0;;::::1;;::::0;;18471:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18369:50:::1;18471:18:::0;;;;;18461:29;;;;::::1;::::0;;;;18441:50;;;;;;;;;18434:57;;;;::::1;::::0;;18277:226:::1;18548:18;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;18548:18:0;;;;;;;;;;;;;;;;;;;;;;;;18538:29;;;;::::1;::::0;;;;18580:1:::1;18518:50:::0;;;:19:::1;::::0;::::1;:50:::0;;;;;-1:-1:-1;;;;;18518:50:0::1;:64:::0;18514:226:::1;;18636:18;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;;;18636:18:0;;;;;;;;;;;;;;;;;;;;;;18626:29;;;;::::1;::::0;-1:-1:-1;18606:50:0;;;:19:::1;::::0;::::1;:50:::0;;;;;;;18599:4:::1;:57:::0;;-1:-1:-1;;;;;18606:50:0;;::::1;-1:-1:-1::0;;;;;;18599:57:0;;::::1;;::::0;;18708:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18606:50:::1;18708:18:::0;;;;;18698:29;;;;::::1;::::0;;;;18678:50;;;;;;;;;18671:57;;;;::::1;::::0;;18514:226:::1;18751:36:::0;;-1:-1:-1;;18751:36:0::1;::::0;;17329:1466::o;10285:37::-;;;-1:-1:-1;;;;;10285:37:0;;:::o;24775:712::-;24870:24;;:::i;:::-;24924:16;:14;:16::i;:::-;24913:8;;;:27;24963:14;:12;:14::i;:::-;24951:9;;;:26;24999:13;;25034:11;;24999:47;;;-1:-1:-1;;;24999:47:0;;;;;;;;;;-1:-1:-1;;;;;24999:13:0;;;;:34;;:47;;;;;24951:9;;24999:47;;;;;;;;:13;:47;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;24999:47:0;24988:8;;;:58;25068:22;:20;:22::i;:::-;25057:8;;;:33;25114:13;;25145:11;;25114:43;;;-1:-1:-1;;;25114:43:0;;;;;;;;;;-1:-1:-1;;;;;25114:13:0;;;;:30;;:43;;;;;25057:8;;25114:43;;;;;;;;:13;:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;25114:43:0;25103:54;;-1:-1:-1;;;;;25179:22:0;;;;;25168:8;;;:33;25229:13;;25255:11;;25229:45;;;-1:-1:-1;;;25229:45:0;;;;;;;;;;;;;;;;;;:13;;;:25;;:45;;;;;;;;;;;;;;;:13;:45;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;25229:45:0;25213:8;;;25212:62;25298:4;;;:21;;;-1:-1:-1;;;25298:21:0;;-1:-1:-1;;;;;25298:21:0;;;;;;;;;;;;:4;;;;;:14;;:21;;;;;25213:8;;25298:21;;;;;;;;:4;:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;25298:21:0;25287:8;;;;:32;;;;-1:-1:-1;;;;;25343:14:0;;;;;;:7;:14;;;;;;;25332:8;;;:25;25379:20;25343:14;25379:13;:20::i;:::-;25368:8;;;:31;25427:17;;25454:9;;25427:52;;;-1:-1:-1;;;25427:52:0;;;;;;;;;25473:4;25427:52;;;;;;-1:-1:-1;;;;;25427:17:0;;;;:26;;:52;;;;;;;;;;;;:17;:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;25427:52:0;25413:8;;;25412:67;25413:5;24775:712;-1:-1:-1;24775:712:0:o;10165:19::-;;;-1:-1:-1;;;;;10165:19:0;;:::o;10044:18::-;;;-1:-1:-1;;;;;10044:18:0;;:::o;9976:28::-;;;;:::o;25933:425::-;26023:16;;;26037:1;26023:16;;;;;;;;;25977:7;;25999:21;;26023:16;;;;25999:21;;26023:16;;;-1:-1:-1;;26070:4:0;;26052:7;;;;-1:-1:-1;;;;;;26070:4:0;;26052:7;;-1:-1:-1;26070:4:0;;26052:7;;;;-1:-1:-1;;;;;26052:23:0;;;:7;;;;;;;;;:23;26096:4;;26086:7;;26096:4;;;26086;;26096;;26086:7;;;;;;-1:-1:-1;;;;;26086:14:0;;;:7;;;;;;;;;:14;26121:4;;26111:7;;26121:4;;;26111;;26116:1;;26111:7;;;;;;-1:-1:-1;;;;;26111:14:0;;;:7;;;;;;;;;;:14;;;;26165:11;;:37;;;-1:-1:-1;;;26165:37:0;;26191:4;26165:37;;;;;;;;;;;;;;;;;;;;26136:14;;26165:11;;;;;:25;;26191:4;;26197;;26165:37;;;;;;;;;;;;;;;26136:14;26165:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;26165:37:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;26165:37:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;26165:37:0;;;;;;;;;;;;-1:-1:-1;26165:37:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;26161:166;;-1:-1:-1;26311:1:0;26161:166;;;26258:7;26266:1;26258:10;;;;;;;;;;;;;;26249:19;;26203:77;26161:166;26344:6;-1:-1:-1;;25933:425:0;:::o;16744:573::-;11467:5;;-1:-1:-1;;;;;11467:5:0;11453:10;:19;11445:50;;;;;-1:-1:-1;;;11445:50:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;11445:50:0;;;;;;;;;;;;;;;16864:42:::1;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;::::1;::::0;;;;;;;;;;;;;;;;;;;;;;;;16854:53;;;;::::1;::::0;;;;16814:26:::1;16843:65:::0;;;:10:::1;:65:::0;;;;;;;16921:28;;;;;;;;::::1;;;;::::0;;;;::::1;::::0;;;;;;;;;::::1;::::0;:17:::1;:28::i;:::-;16998:31;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;16998:31:0;;;;;;;;;;;;;;;;;;;;;;;;16988:42;;;;::::1;::::0;;;;17043:1:::1;16968:63:::0;;;:19:::1;::::0;::::1;:63:::0;;;;;-1:-1:-1;;;;;16968:63:0::1;16960:105;;;::::0;;-1:-1:-1;;;16960:105:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;16960:105:0;;;;;;;;;;;;;::::1;;17147:31;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;;;17147:31:0;;;;;;;;;;;;;;;;;;;;;;17137:42;;;;::::1;::::0;-1:-1:-1;17117:63:0;;;:19:::1;::::0;::::1;:63:::0;;;;;;;17078:17:::1;:103:::0;;-1:-1:-1;;;;;17117:63:0;;::::1;-1:-1:-1::0;;;;;;17078:103:0;;::::1;;::::0;;17229:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17117:63:::1;17229:31:::0;;;;;17219:42;;;;::::1;::::0;;;;17199:63;;;;;;;;;17192:70;;;;::::1;::::0;;17273:36;;-1:-1:-1;;17273:36:0::1;::::0;;16744:573::o;11191:17::-;;;;:::o;15099:545::-;11467:5;;-1:-1:-1;;;;;11467:5:0;11453:10;:19;11445:50;;;;;-1:-1:-1;;;11445:50:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;11445:50:0;;;;;;;;;;;;;;;15216:35:::1;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;15216:35:0;;;;;;;;;;;;;;;;;;;;;;;;15206:46;;;;::::1;::::0;;;;15166:26:::1;15195:58:::0;;;:10:::1;:58:::0;;;;;;;15264:28;;;;;;;;::::1;;;;::::0;;;;::::1;::::0;;;;;;;;;::::1;::::0;:17:::1;:28::i;:::-;15341:32;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;15341:32:0;;;;;;;;;;;;;;;;;;;;;;;;15331:43;;;;::::1;::::0;;;;15387:1:::1;15311:64:::0;;;:19:::1;::::0;::::1;:64:::0;;;;;-1:-1:-1;;;;;15311:64:0::1;15303:106;;;::::0;;-1:-1:-1;;;15303:106:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;15303:106:0;;;;;;;;;;;;;::::1;;15473:32;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;;;15473:32:0;;;;;;;;;;;;;;;;;;;;;;15463:43;;;;::::1;::::0;-1:-1:-1;15443:64:0;;;:19:::1;::::0;::::1;:64:::0;;;;;;;15422:18:::1;:85:::0;;-1:-1:-1;;;;;15443:64:0;;::::1;-1:-1:-1::0;;;;;;15422:85:0;;::::1;;::::0;;15555:32;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15443:64:::1;15555:32:::0;;;;;15545:43;;;;::::1;::::0;;;;15525:64;;;;;;;;;15518:71;;;;::::1;::::0;;15600:36;;-1:-1:-1;;15600:36:0::1;::::0;;15099:545::o;10985:46::-;;;;;;;;;;;;;;;;;;;;;;;;:::o;27884:233::-;27992:7;28019:10;:48;28051:13;28040:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;28030:36;;;;;;28019:48;;;;;;;;;;;:55;;:90;28096:10;28085:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;28075:33;;;;;;28019:90;;;;;;;;;;;;28012:97;;27884:233;;;;;:::o;10364:24::-;;;;:::o;11140:44::-;11177:7;11140:44;:::o;10511:35::-;;;;:::o;14144:485::-;11467:5;;-1:-1:-1;;;;;11467:5:0;11453:10;:19;11445:50;;;;;-1:-1:-1;;;11445:50:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;11445:50:0;;;;;;;;;;;;;;;14257:31:::1;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;14257:31:0;;;;;;;;;;;;;;;;;;;;;;;;14247:42;;;;::::1;::::0;;;;14207:26:::1;14236:54:::0;;;:10:::1;:54:::0;;;;;;;14301:28;;;;;;;;::::1;;;;::::0;;;;::::1;::::0;;;;;;;;;::::1;::::0;:17:::1;:28::i;:::-;14378:19;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;14378:19:0;;;;;;;;;;;;;;;;;;;;;;;;14368:30;;;;::::1;::::0;;;;14411:1:::1;14348:51:::0;;;:19:::1;::::0;::::1;:51:::0;;;;;-1:-1:-1;;;;;14348:51:0::1;14340:93;;;::::0;;-1:-1:-1;;;14340:93:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;14340:93:0;;;;;;;;;;;;;::::1;;14484:19;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;;;14484:19:0;;;;;;;;;;;;;;;;;;;;;;14474:30;;;;::::1;::::0;-1:-1:-1;14454:51:0;;;:19:::1;::::0;;::::1;:51:::0;;;;;;;14446:59;;-1:-1:-1;;;;;14454:51:0;;::::1;-1:-1:-1::0;;;;;;14446:59:0;;::::1;;::::0;;;14553:19;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14454:51:::1;14553:19:::0;;;;;14543:30;;;;::::1;::::0;;;;14523:51;;;;;;;;14516:58;;;;::::1;::::0;;14585:36;;-1:-1:-1;;14585:36:0::1;::::0;;14144:485::o;12853:274::-;11467:5;;-1:-1:-1;;;;;11467:5:0;11453:10;:19;11445:50;;;;;-1:-1:-1;;;11445:50:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;11445:50:0;;;;;;;;;;;;;;;12944:26:::1;12973:10;:48;13005:13;12994:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;;::::1;::::0;;;::::1;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;12994:25:0::1;::::0;;-1:-1:-1;;12994:25:0;;::::1;::::0;;;;;;12984:36;;12994:25:::1;12984:36:::0;;::::1;::::0;12973:48;;;;::::1;::::0;;;;;;;-1:-1:-1;12973:48:0;;;13032:36;;-1:-1:-1;;13032:36:0::1;::::0;;13084:35;;;;;;;;;::::1;::::0;;;12973:48;;-1:-1:-1;13084:35:0::1;::::0;13105:13;;13084:35;;-1:-1:-1;13084:35:0;;-1:-1:-1;13084:35:0;;;-1:-1:-1;13084:35:0;::::1;::::0;;;;;;;::::1;;;;;;;::::0;;::::1;::::0;;;::::1;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11506:1;12853:274:::0;:::o;10139:19::-;;;-1:-1:-1;;;;;10139:19:0;;:::o;10011:20::-;;;-1:-1:-1;;;;;10011:20:0;;:::o;14637:454::-;11467:5;;-1:-1:-1;;;;;11467:5:0;11453:10;:19;11445:50;;;;;-1:-1:-1;;;11445:50:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;11445:50:0;;;;;;;;;;;;;;;14749:30:::1;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;14749:30:0;;;;;;;;;;;;;;;;;;;;;;;;14739:41;;;;::::1;::::0;;;;14699:26:::1;14728:53:::0;;;:10:::1;:53:::0;;;;;;;14792:28;;;;;;;;::::1;;;;::::0;;;;::::1;::::0;;;;;;;;;::::1;::::0;:17:::1;:28::i;:::-;14869:27;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;14869:27:0;;;;;;;;;;;;;;;;;;;;;;;;14859:38;;;;::::1;::::0;;;;14910:1:::1;14839:59:::0;;;:19:::1;::::0;::::1;:59:::0;;;;;-1:-1:-1;;;;;14839:59:0::1;14831:101;;;::::0;;-1:-1:-1;;;14831:101:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;14831:101:0;;;;;;;;;;;;;::::1;;15006:27;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;15006:27:0;;;;;;;;;;;;;;;;;;;;;;;;14996:38;;;;::::1;::::0;;;;14976:59:::1;::::0;;;:19:::1;::::0;::::1;:59:::0;;;;;14945:13:::1;:91:::0;;-1:-1:-1;;;;;;14945:91:0::1;-1:-1:-1::0;;;;;14976:59:0;;::::1;14945:91:::0;;;::::1;::::0;;15047:36;;-1:-1:-1;;15047:36:0::1;::::0;;14637:454::o;13647:489::-;11467:5;;-1:-1:-1;;;;;11467:5:0;11453:10;:19;11445:50;;;;;-1:-1:-1;;;11445:50:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;11445:50:0;;;;;;;;;;;;;;;13790:26:::1;13819:10;:48;13851:13;13840:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;;::::1;::::0;;;::::1;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13830:36;;;;;;13819:48;;;;;;;;;;;13790:77;;13932:6;13878:9;:16;;:51;13916:10;13905:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;;::::1;::::0;;;::::1;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;13905:22:0::1;::::0;;-1:-1:-1;;13905:22:0;;::::1;::::0;;;;;;13895:33;;13905:22:::1;13895:33:::0;;::::1;::::0;13878:51;;;;::::1;::::0;;;;-1:-1:-1;;;13878:51:0;-1:-1:-1;13878:51:0;:60;13949:35;;-1:-1:-1;;13949:35:0::1;13980:4;13949:35;::::0;;14041:5:::1;::::0;14021:26:::1;::::0;:15:::1;::::0;:19:::1;:26::i;:::-;13995:23;::::0;::::1;:52:::0;14063:65:::1;::::0;;;;;;;;;;;;;;;;;;;;::::1;::::0;14094:13;;14109:10;;14121:6;;14063:65;;::::1;::::0;;::::1;::::0;;;;;;::::1;::::0;;;;;;;::::1;;::::0;;::::1;::::0;;;::::1;::::0;::::1;;;;10193:43:::0;;;-1:-1:-1;;;;;10193:43:0;;:::o;10628:51::-;;;;;;;;;;;;;:::o;16199:537::-;11467:5;;-1:-1:-1;;;;;11467:5:0;11453:10;:19;11445:50;;;;;-1:-1:-1;;;11445:50:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;11445:50:0;;;;;;;;;;;;;;;16313:36:::1;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;16313:36:0;;;;;;;;;;;;;;;;;;;;;;;;16303:47;;;;::::1;::::0;;;;16263:26:::1;16292:59:::0;;;:10:::1;:59:::0;;;;;;;16364:28;;;;;;;;::::1;;;;::::0;;;;::::1;::::0;;;;;;;;;::::1;::::0;:17:::1;:28::i;:::-;16441:25;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;16441:25:0;;;;;;;;;;;;;;;;;;;;;;;;16431:36;;;;::::1;::::0;;;;16480:1:::1;16411:57:::0;;;:19:::1;::::0;::::1;:57:::0;;;;;-1:-1:-1;;;;;16411:57:0::1;16403:99;;;::::0;;-1:-1:-1;;;16403:99:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;16403:99:0;;;;;;;;;;;;;::::1;;16578:25;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;;;16578:25:0;;;;;;;;;;;;;;;;;;;;;;16568:36;;;;::::1;::::0;-1:-1:-1;16548:57:0;;;:19:::1;::::0;::::1;:57:::0;;;;;;;16515:11:::1;:91:::0;;-1:-1:-1;;;;;16548:57:0;;::::1;-1:-1:-1::0;;;;;;16515:91:0;;::::1;;::::0;;16654:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16548:57:::1;16654:25:::0;;;;;16644:36;;;;::::1;::::0;;;;16624:57;;;;;;;;;16617:64;;;;::::1;::::0;;16692:36;;-1:-1:-1;;16692:36:0::1;::::0;;16199:537::o;10472:32::-;;;;:::o;11090:43::-;11127:6;11090:43;:::o;21249:582::-;8931:1;9536:7;;:19;;9528:63;;;;;-1:-1:-1;;;9528:63:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;8931:1;9669:7;:18;21331:12;21323:38:::1;;;::::0;;-1:-1:-1;;;21323:38:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;21323:38:0;;;;;;;;;;;;;::::1;;21380:4;::::0;;:26:::1;::::0;;-1:-1:-1;;;21380:26:0;;21395:10:::1;21380:26:::0;;::::1;::::0;;;;;21410:8;;-1:-1:-1;;;;;21380: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;21380:26:0;:38:::1;;21372:64;;;::::0;;-1:-1:-1;;;21372:64:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;21372:64:0;;;;;;;;;;;;;::::1;;21449:19;21457:10;21449:7;:19::i;:::-;21479:4;::::0;;:54:::1;::::0;;-1:-1:-1;;;21479:54:0;;21497:10:::1;21479:54:::0;;::::1;::::0;;;;21517:4:::1;21479:54:::0;;;;;;;;;;;-1:-1:-1;;;;;21479: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;;21544:17:0::1;::::0;21570:9:::1;::::0;21544:46:::1;::::0;;-1:-1:-1;;;21544:46:0;;::::1;::::0;::::1;::::0;;;;;;;;;;;-1:-1:-1;;;;;21544: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;;21667:10:0::1;21659:19;::::0;;;:7:::1;:19;::::0;;;;;:33:::1;::::0;-1:-1:-1;21659:19:0;-1:-1:-1;21683:8:0;21659:23:::1;:33::i;:::-;21645:10;21637:19;::::0;;;:7:::1;:19;::::0;;;;:55;21716:10:::1;::::0;:24:::1;::::0;21731:8;21716:14:::1;:24::i;:::-;21703:10;:37:::0;21751:23:::1;21763:10;21751:11;:23::i;:::-;21790:31;::::0;;21800:10:::1;21790:31:::0;;::::1;::::0;::::1;::::0;;;;;::::1;::::0;;;;;;;;;::::1;-1:-1:-1::0;8887:1:0;9848:7;:22;21249:582::o;10243:35::-;;;-1:-1:-1;;;;;10243:35:0;;:::o;27637:239::-;27748:7;27775:10;:48;27807:13;27796:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;27786:36;;;;;;27775:48;;;;;;;;;;;:58;;:93;27855:10;27844:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;27844:22:0;;;;;;-1:-1:-1;;27844:22:0;;;;;;27834:33;;27844:22;27834:33;;;;27775:93;;;;;;;;;-1:-1:-1;;;27775:93:0;-1:-1:-1;27775:93:0;;-1:-1:-1;;;;;27775:93:0;;27637:239;-1:-1:-1;;;27637:239:0:o;18807:537::-;11467:5;;-1:-1:-1;;;;;11467:5:0;11453:10;:19;11445:50;;;;;-1:-1:-1;;;11445:50:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;11445:50:0;;;;;;;;;;;;;;;18926:37:::1;::::0;;::::1;::::0;;::::1;::::0;;;18905:10:::1;18926:37:::0;;;;;;::::1;::::0;;;;;;;;;;;;;;;;;;;;;;;;18916:48;;;;::::1;::::0;;;;18876:26:::1;18905:60:::0;;;;;;;;;;18976:28;;;;;;;;::::1;;;;::::0;;;;::::1;::::0;;;;;;;;;::::1;::::0;:17:::1;:28::i;:::-;19050:34;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;19050:34:0;;;;;;;;;;;;;;;;;;;;;;;;19040:45;;;;::::1;::::0;;;;19089:1:::1;19023:63:::0;;;:16:::1;::::0;::::1;:63:::0;;;;;19015:94:::1;;;::::0;;-1:-1:-1;;;19015:94:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;19015:94:0;;;;;;;;;;;;;::::1;;19172:34;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;;;19172:34:0;;;;;;;;;;;;;;;;;;;;;;19162:45;;;;::::1;::::0;19145:63:::1;::::0;;;:16:::1;::::0;::::1;:63:::0;;;;;;;19122:20:::1;:86:::0;19253:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19243:45;;;;::::1;::::0;19226:63;;;;;;;19219:70;19300:36;;-1:-1:-1;;19300:36:0::1;::::0;;18807:537::o;25496:429::-;25588:16;;;25602:1;25588:16;;;;;;;;;25542:7;;25564:21;;25588:16;;;;25564:21;;25588:16;;;-1:-1:-1;;25635:6:0;;25617:7;;;;-1:-1:-1;;;;;;25635:6:0;;25617:7;;-1:-1:-1;25635:6:0;;25617:7;;;19891:483;11467:5;;-1:-1:-1;;;;;11467:5:0;11453:10;:19;11445:50;;;;;-1:-1:-1;;;11445:50:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;11445:50:0;;;;;;;;;;;;;;;20001:28:::1;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;20001:28:0;;;;;;;;;;;;;;;;;;;;;;;;19991:39;;;;::::1;::::0;;;;19951:26:::1;19980:51:::0;;;:10:::1;:51:::0;;;;;;;20042:28;;;;;;;;::::1;;;;::::0;;;;::::1;::::0;;;;;;;;;::::1;::::0;:17:::1;:28::i;:::-;20116:25;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;20116:25:0;;;;;;;;;;;;;;;;;;;;;;;;20106:36;;;;::::1;::::0;;;;20146:1:::1;20089:54:::0;;;:16:::1;::::0;::::1;:54:::0;;;;;20081:85:::1;;;::::0;;-1:-1:-1;;;20081:85:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;20081:85:0;;;;;;;;;;;;;::::1;;20220:25;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;;;20220:25:0;;;;;;;;;;;;;;;;;;;;;;20210:36;;;;::::1;::::0;20193:54:::1;::::0;;;:16:::1;::::0;::::1;:54:::0;;;;;;;20179:68;;20292:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20282:36;;;;::::1;::::0;20265:54;;;;;;;20258:61;20330:36;;-1:-1:-1;;20330:36:0::1;::::0;;19891:483::o;19352:531::-;11467:5;;-1:-1:-1;;;;;11467:5:0;11453:10;:19;11445:50;;;;;-1:-1:-1;;;11445:50:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;11445:50:0;;;;;;;;;;;;;;;19470:36:::1;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;19470:36:0;;;;;;;;;;;;;;;;;;;;;;;;19460:47;;;;::::1;::::0;;;;19420:26:::1;19449:59:::0;;;:10:::1;:59:::0;;;;;;;19519:28;;;;;;;;::::1;;;;::::0;;;;::::1;::::0;;;;;;;;;::::1;::::0;:17:::1;:28::i;:::-;19593:33;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;19593:33:0;;;;;;;;;;;;;;;;;;;;;;;;19583:44;;;;::::1;::::0;;;;19631:1:::1;19566:62:::0;;;:16:::1;::::0;::::1;:62:::0;;;;;19558:93:::1;;;::::0;;-1:-1:-1;;;19558:93:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;19558:93:0;;;;;;;;;;;;;::::1;;19713:33;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;;;19713:33:0;;;;;;;;;;;;;;;;;;;;;;19703:44;;;;::::1;::::0;19686:62:::1;::::0;;;:16:::1;::::0;::::1;:62:::0;;;;;;;19664:19:::1;:84:::0;19793:33;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19783:44;;;;::::1;::::0;19766:62;;;;;;;19759:69;19839:36;;-1:-1:-1;;19839:36:0::1;::::0;;19352:531::o;10688:40::-;;;;:::o;12436:285::-;11467:5;;-1:-1:-1;;;;;11467:5:0;11453:10;:19;11445:50;;;;;-1:-1:-1;;;11445:50:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;11445:50:0;;;;;;;;;;;;;;;11127:6:::1;12503;:23;;12495:88;;;;-1:-1:-1::0;;;12495:88:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11177:7;12602:6;:23;;12594:92;;;;-1:-1:-1::0;;;12594:92:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12699:5;:14:::0;12436:285::o;10944:32::-;;;-1:-1:-1;;;;;10944:32:0;;:::o;15652:539::-;11467:5;;-1:-1:-1;;;;;11467:5:0;11453:10;:19;11445:50;;;;;-1:-1:-1;;;11445:50:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;11445:50:0;;;;;;;;;;;;;;;15768:34:::1;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;15768:34:0;;;;;;;;;;;;;;;;;;;;;;;;15758:45;;;;::::1;::::0;;;;15718:26:::1;15747:57:::0;;;:10:::1;:57:::0;;;;;;;15815:28;;;;;;;;::::1;;;;::::0;;;;::::1;::::0;;;;;;;;;::::1;::::0;:17:::1;:28::i;:::-;15892:31;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;15892:31:0;;;;;;;;;;;;;;;;;;;;;;;;15882:42;;;;::::1;::::0;;;;15937:1:::1;15862:63:::0;;;:19:::1;::::0;::::1;:63:::0;;;;;-1:-1:-1;;;;;15862:63:0::1;15854:105;;;::::0;;-1:-1:-1;;;15854:105:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;15854:105:0;;;;;;;;;;;;;::::1;;16022:31;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;;;16022:31:0;;;;;;;;;;;;;;;;;;;;;;16012:42;;;;::::1;::::0;-1:-1:-1;15992:63:0;;;:19:::1;::::0;::::1;:63:::0;;;;;;;15972:17:::1;:83:::0;;-1:-1:-1;;;;;15992:63:0;;::::1;-1:-1:-1::0;;;;;;15972:83:0;;::::1;;::::0;;16103:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15992:63:::1;16103:31:::0;;;;;16093:42;;;;::::1;::::0;;;;16073:63;;;;;;;;;16066:70;;;;::::1;::::0;;16147:36;;-1:-1:-1;;16147:36:0::1;::::0;;15652:539::o;26752:877::-;26874:15;;26918:17;;26948:9;;26918:55;;;-1:-1:-1;;;26918:55:0;;;;;;;;;26967:4;26918:55;;;;;26811:20;;26874:15;26811:20;;-1:-1:-1;;;;;26918:17:0;;;;:29;;:55;;;;;;;;;;;;;;;:17;:55;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;26918:55:0;;-1:-1:-1;27002:11:0;;;;;:42;;;27043:1;27030:10;;:14;27002:42;26984:419;;;27075:23;27101:44;27139:5;27101:33;27113:20;;27101:7;:11;;:33;;;;:::i;:44::-;27075:70;;27160:22;27186:43;27223:5;27186:32;27198:19;;27186:7;:11;;:32;;;;:::i;:43::-;27160:69;-1:-1:-1;27254:48:0;27160:69;27254:28;:7;27266:15;27254:11;:28::i;:48::-;27244:58;;27336:55;27357:33;27379:10;;27357:17;27369:4;27357:7;:11;;:17;;;;:::i;:33::-;27336:16;;:20;:55::i;:::-;27317:74;;26984:419;;;-1:-1:-1;;;;;27438:14:0;;27415:19;27438:14;;;:7;:14;;;;;;:46;;27479:4;;27438:36;;27457:16;27438:18;:36::i;:46::-;-1:-1:-1;;;;;27515:23:0;;;;;;:16;:23;;;;;;27415:69;;-1:-1:-1;27501:37:0;;27497:125;;;-1:-1:-1;;;;;27586:23:0;;;;;;:16;:23;;;;;;27570:40;;:11;;:15;:40::i;:::-;27555:55;;27497:125;26752:877;;;;;;:::o;10331:26::-;;;;:::o;12729:114::-;12782:4;;;12803:17;;12782:53;;;-1:-1:-1;;;12782:53:0;;-1:-1:-1;;;;;12803:17:0;;;12782:53;;;;;;;-1:-1:-1;;12782:53:0;;;;;:4;;;:12;;:53;;;;;;;;;;;;;;:4;;:53;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;12729:114:0:o;20860:381::-;20951:28;;:36;;20983:4;20951:36;20943:80;;;;;-1:-1:-1;;;20943:80:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;21069:15;21042:9;:23;;;:42;;21034:94;;;;-1:-1:-1;;;21034:94:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21147:23;;;;21192:15;;21147:41;;11076:7;21147:27;:41::i;:::-;:60;;21139:94;;;;;-1:-1:-1;;;21139:94:0;;;;;;;;;;;;-1:-1:-1;;;21139:94:0;;;;;;;;;;;;;;;20860:381;:::o;7013:196::-;7071:7;7091:6;7087:37;;-1:-1:-1;7115:1:0;7108:8;;7087:37;7142:5;;;7146:1;7142;:5;:1;7162:5;;;;;:10;7154:34;;;;;-1:-1:-1;;;7154:34:0;;;;;;;;;;;;-1:-1:-1;;;7154:34:0;;;;;;;;;;;;;;;7202:1;7013:196;-1:-1:-1;;;7013:196:0:o;7296:283::-;7354:7;7382:1;7378;:5;7370:29;;;;;-1:-1:-1;;;7370:29:0;;;;;;;;;;;;-1:-1:-1;;;7370:29:0;;;;;;;;;;;;;;;7458:9;7474:1;7470;:5;;;;;;;7296:283;-1:-1:-1;;;;7296:283:0:o;7697:129::-;7755:7;7784:1;7779;:6;;7771:30;;;;;-1:-1:-1;;;7771:30:0;;;;;;;;;;;;-1:-1:-1;;;7771:30:0;;;;;;;;;;;;;;;-1:-1:-1;7815:5:0;;;7697:129::o;7893:149::-;7951:7;7979:5;;;7999:6;;;;7991:30;;;;;-1:-1:-1;;;7991:30:0;;;;;;;;;;;;-1:-1:-1;;;7991:30:0;;;;;;;;;;;;;;24092:196;24154:13;;24179:11;;24154:44;;;-1:-1:-1;;;24154:44:0;;;;;;;;;-1:-1:-1;;;;;24154:44:0;;;;;;;;;:13;;;:24;;:44;;;;;;;;;;;;;;;:13;;:44;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;24254:15:0;;-1:-1:-1;;;;;24235:14:0;;;;;;:7;24154:44;24235:14;;;;;:45;;24275:4;;24235:35;;:18;:35::i;:45::-;-1:-1:-1;;;;;24209:23:0;;;;;;;:16;:23;;;;;:71;24092:196::o;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;:::o

Swarm Source

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