Contract 0x9d75212AC8f9Edbd1901Af67b550779Cef14dB8d

 

Contract Overview

Balance:
0 BNB

BNB Value:
$0.00

Token:
 
Txn Hash Method
Block
From
To
Value [Txn Fee]
0xbcb07af77d9aa6f6c088e77a1373228c3be8e2bdb03eb18f1f125bd9915faef2Harvest91728672021-07-15 8:08:39140 days 23 hrs ago0x087f3504ced8879416c08818e5d39faeef6cca7e IN  0x9d75212ac8f9edbd1901af67b550779cef14db8d0 BNB0.001570955
0x9de28d62b794521603eba2ff332881f5608ec78d17be910564fd4538bfac0c1eWithdraw86629592021-06-27 13:16:37158 days 18 hrs ago0xc981a9b3b34114b3d847624be05fbf2457653e56 IN  0x9d75212ac8f9edbd1901af67b550779cef14db8d0 BNB0.00176165
0xa9e91f78d9091fc12c38244eba9450ca415cd150d5d33d5639767a0f5d8ef06cWithdraw86117572021-06-25 18:32:14160 days 12 hrs ago0xf1b0e78a2bc422df50ec9ee4c324895c9b79f80a IN  0x9d75212ac8f9edbd1901af67b550779cef14db8d0 BNB0.001766015
0x4a37a893c6d9b38ece936388e357685cc18c19c3d1125ba8abc8e7047dc0b5b2Withdraw86003772021-06-25 9:00:47160 days 22 hrs ago0x07c389dd281f115017e2b28065fac2b8854f5874 IN  0x9d75212ac8f9edbd1901af67b550779cef14db8d0 BNB0.002154735
0x9e85996f5a6ef3fc4ee08f0430d02a40b7315d70a816367776690f93c7a89cc6Harvest85762682021-06-24 12:52:10161 days 18 hrs ago0xc981a9b3b34114b3d847624be05fbf2457653e56 IN  0x9d75212ac8f9edbd1901af67b550779cef14db8d0 BNB0.00174719
0xd7bf0bf83213453922866a1bce79f0601878854d88c59ab839b056003f1d472aWithdraw85200042021-06-22 13:45:47163 days 17 hrs ago0xab5e4bb07db39ee658dde5bef67e479e65def3bd IN  0x9d75212ac8f9edbd1901af67b550779cef14db8d0 BNB0.001886525
0x793f110e0a52be8c00be676976ebb3f4307361712341562fa465cf2069a00c7aDeposit85040972021-06-22 0:25:23164 days 6 hrs ago0xab5e4bb07db39ee658dde5bef67e479e65def3bd IN  0x9d75212ac8f9edbd1901af67b550779cef14db8d0 BNB0.002003265
0xd02a2baf33e7acc39a534b7195d5b45cb56ed047eb00c099a79d80e53f54b8afWithdraw85040382021-06-22 0:22:26164 days 6 hrs ago0xab5e4bb07db39ee658dde5bef67e479e65def3bd IN  0x9d75212ac8f9edbd1901af67b550779cef14db8d0 BNB0.002079735
0x96983c26949d8604b9def91c9f85e27f1678648208fa13ec79800d777de7c22eHarvest84508902021-06-20 3:59:16166 days 3 hrs ago0xab5e4bb07db39ee658dde5bef67e479e65def3bd IN  0x9d75212ac8f9edbd1901af67b550779cef14db8d0 BNB0.001733255
0xf4ac860326abba653cb6355344be1fb21e0187d2033bd79e4dc56a609f2e92dcHarvest84041102021-06-18 12:41:30167 days 18 hrs ago0xab5e4bb07db39ee658dde5bef67e479e65def3bd IN  0x9d75212ac8f9edbd1901af67b550779cef14db8d0 BNB0.00166363
0xf8c694500a00545e6016df63b70710f9724d7e39d706e5fcca18620506a23aa0Harvest83508022021-06-16 15:53:13169 days 15 hrs ago0xab5e4bb07db39ee658dde5bef67e479e65def3bd IN  0x9d75212ac8f9edbd1901af67b550779cef14db8d0 BNB0.00173863
0x95374fb9082efe59c7ff87e3a38644b39504d98c4b6eef28a377254d5a24c522Harvest83132292021-06-15 8:12:53170 days 23 hrs ago0xc981a9b3b34114b3d847624be05fbf2457653e56 IN  0x9d75212ac8f9edbd1901af67b550779cef14db8d0 BNB0.00174719
0x74eb7ab63fc8df2ba65409d138d3095d2b18da606532b46c865f5ae679a8f6ceDeposit83055642021-06-15 1:46:17171 days 5 hrs ago0xab5e4bb07db39ee658dde5bef67e479e65def3bd IN  0x9d75212ac8f9edbd1901af67b550779cef14db8d0 BNB0.0020851
0x33365041d6611f829fd6e80e13a935ed554d547d511649f380ba464bbfdb5cf6Deposit82947572021-06-14 16:36:55171 days 14 hrs ago0xab5e4bb07db39ee658dde5bef67e479e65def3bd IN  0x9d75212ac8f9edbd1901af67b550779cef14db8d0 BNB0.00204712
0x37c71a34118913a94c5a02a30da7d195b5076cf9120293fe49caec9eadb96e5aHarvest80950492021-06-07 17:16:37178 days 14 hrs ago0xf1b0e78a2bc422df50ec9ee4c324895c9b79f80a IN  0x9d75212ac8f9edbd1901af67b550779cef14db8d0 BNB0.00174719
0x95f2285ce685e41bcf99bb26e4ed95bf087cbdc152f46fcc9b922ac6b8581cecWithdraw80930752021-06-07 15:37:26178 days 15 hrs ago0x07c389dd281f115017e2b28065fac2b8854f5874 IN  0x9d75212ac8f9edbd1901af67b550779cef14db8d0 BNB0.002163235
0x620dad4d5c60d53a6ccf9647112a108ef9128174ba19b889d2b752eb53938f56Harvest80671512021-06-06 18:00:05179 days 13 hrs ago0xc981a9b3b34114b3d847624be05fbf2457653e56 IN  0x9d75212ac8f9edbd1901af67b550779cef14db8d0 BNB0.00182219
0xa0ec58d6865ceb8be4668279158d89d4bad89c31b323218a6164a85e100dbf44Harvest80239792021-06-05 5:56:32181 days 1 hr agoTuringMachine Token: Deployer IN  0x9d75212ac8f9edbd1901af67b550779cef14db8d0 BNB0.00135865
0x9b598f07df31dbaef5bd8d619b8ac0a90a9593bbfe97f1251c19ef4f9d316922Withdraw78504672021-05-30 4:51:00187 days 2 hrs ago0xab5e4bb07db39ee658dde5bef67e479e65def3bd IN  0x9d75212ac8f9edbd1901af67b550779cef14db8d0 BNB0.001937825
0x4b342b81c96569518a84b0080e2517cc67091480062b1d3a36fb2ca45b16735cDeposit78499452021-05-30 4:24:53187 days 2 hrs ago0xab5e4bb07db39ee658dde5bef67e479e65def3bd IN  0x9d75212ac8f9edbd1901af67b550779cef14db8d0 BNB0.00204712
0xd8f2880a70604b1456596c638293b8f48eaa2e0ad56e47b3ed8b181ba6f42366Harvest77411972021-05-26 9:15:11190 days 22 hrs ago0xc981a9b3b34114b3d847624be05fbf2457653e56 IN  0x9d75212ac8f9edbd1901af67b550779cef14db8d0 BNB0.001733255
0xaf062789b222e34cdba51847a051660a7b672c0e87a53d0f1e1bb7634d570e47Harvest77066822021-05-25 4:22:37192 days 2 hrs agoTuringMachine Token: Deployer IN  0x9d75212ac8f9edbd1901af67b550779cef14db8d0 BNB0.00135865
0xf4e45c52988985f413e2d1f6d6410677e76557d2a5085903f833c0bec5d39364Withdraw73934642021-05-14 4:31:19203 days 2 hrs ago0x17b1d9a1a8f0363e04bccdf2839cb107b2297774 IN  0x9d75212ac8f9edbd1901af67b550779cef14db8d0 BNB0.002238295
0x7df92c4dd1244aeacc519e671b5e04d599362ce9743fd5a3bd7b1641b687cbb3Harvest73685552021-05-13 7:28:55203 days 23 hrs ago0xf1b0e78a2bc422df50ec9ee4c324895c9b79f80a IN  0x9d75212ac8f9edbd1901af67b550779cef14db8d0 BNB0.00174719
0x5d27ae9216c8e967f268743260386bea96eaa7894b7769f456da605bb7a2729aHarvest72945032021-05-10 10:16:26206 days 21 hrs ago0x07c389dd281f115017e2b28065fac2b8854f5874 IN  0x9d75212ac8f9edbd1901af67b550779cef14db8d0 BNB0.00349438
[ Download CSV Export 
Parent Txn Hash Block From To Value
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
TuringFarmBUSDBNBLP

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-29
*/

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    uint256 private _status;

    constructor() internal {
        _status = _NOT_ENTERED;
    }

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

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

        _;

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

contract TuringFarmBUSDBNBLP 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"}]

608060405260646001556000600d556000600e556000600f55620151806010556032601355600a60145534801561003557600080fd5b5060405162004cd038038062004cd0833981810160405260e081101561005a57600080fd5b508051602082015160408301516060840151608085015160a086015160c0909601516001600055600280546001600160a01b03199081163317909155600a80546001600160a01b0398891690831617905560088054968816968216969096179095556004805494871694861694909417909355600380549286169285169290921790915560058054918516918416919091179055600680549484169483169490941790935560078054929093169116179055614bb4806200011c6000396000f3fe60806040526004361061031d5760003560e01c806383c58369116101ab578063bce645db116100f7578063dda86d7211610095578063e91dc7131161006f578063e91dc71314610d96578063f2dff42114610dab578063f47a396f14610dde578063feb87d1714610df357610324565b8063dda86d7214610d42578063e177246e14610d57578063e4598aa914610d8157610324565b8063c1a287e2116100d1578063c1a287e21461088b578063c850a95e14610d03578063d1b8a3b514610d18578063d77e795614610d2d57610324565b8063bce645db14610ba3578063bd0c5a9d14610bb8578063bf886c5c14610cee57610324565b80639312dc5f11610164578063a6425bae1161013e578063a6425bae14610b3a578063ae0638cb14610b4f578063b1b43ae514610b64578063b6b55f2514610b7957610324565b80639312dc5f146109ba57806396c8ee5c14610af25780639d65ccd514610b0757610324565b806383c58369146108a0578063880ad0af146108b55780638cac8f03146108ca5780638d72647e1461097b5780638da5cb5b146109905780638ecc676f146109a557610324565b8063375ba3781161026a5780635dd84ea7116102235780636edc28fd116101fd5780636edc28fd146106fb578063725968731461074057806372c3baa5146108765780637d645fab1461088b57610324565b80635dd84ea7146106bc5780636a42b8f8146106d15780636e9322b3146106e657610324565b8063375ba378146105e757806338266b22146105fc5780633ca5b234146106685780634ca6ef281461067d57806354fd4d501461069257806359aad470146106a757610324565b806316de220a116102d757806321e5e2c4116102b157806321e5e2c41461056057806324b9b13a146105935780632e1a7d4d146105a857806332009eda146105d257610324565b806316de220a146105215780631b99b1c1146105365780631f1fcd511461054b57610324565b80622b838314610329578063026c4207146103405780630e5c011e146103675780630e8c7a5b1461039a57806312518dc3146103af57806314ca81ed146103e057610324565b3661032457005b600080fd5b34801561033557600080fd5b5061033e610e08565b005b34801561034c57600080fd5b50610355610ff5565b60408051918252519081900360200190f35b34801561037357600080fd5b5061033e6004803603602081101561038a57600080fd5b50356001600160a01b0316610ffb565b3480156103a657600080fd5b50610355611506565b3480156103bb57600080fd5b506103c46115d3565b604080516001600160a01b039092168252519081900360200190f35b3480156103ec57600080fd5b5061033e6004803603606081101561040357600080fd5b810190602081018135600160201b81111561041d57600080fd5b82018360208201111561042f57600080fd5b803590602001918460018302840111600160201b8311171561045057600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b8111156104a257600080fd5b8201836020820111156104b457600080fd5b803590602001918460018302840111600160201b831117156104d557600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550505090356001600160a01b031691506115e29050565b34801561052d57600080fd5b506103c46118c2565b34801561054257600080fd5b506103556118d1565b34801561055757600080fd5b506103c46118d7565b34801561056c57600080fd5b506103556004803603602081101561058357600080fd5b50356001600160a01b03166118e6565b34801561059f57600080fd5b506103556118f8565b3480156105b457600080fd5b5061033e600480360360208110156105cb57600080fd5b50356118fe565b3480156105de57600080fd5b5061033e611c50565b3480156105f357600080fd5b506103c4612242565b34801561060857600080fd5b5061062f6004803603602081101561061f57600080fd5b50356001600160a01b0316612251565b604051808261016080838360005b8381101561065557818101518382015260200161063d565b5050505090500191505060405180910390f35b34801561067457600080fd5b506103c461254c565b34801561068957600080fd5b506103c461255b565b34801561069e57600080fd5b5061035561256a565b3480156106b357600080fd5b50610355612570565b3480156106c857600080fd5b5061033e61279c565b3480156106dd57600080fd5b506103556129da565b3480156106f257600080fd5b5061033e6129e0565b34801561070757600080fd5b506107256004803603602081101561071e57600080fd5b5035612c18565b60408051921515835260208301919091528051918290030190f35b34801561074c57600080fd5b506103556004803603604081101561076357600080fd5b810190602081018135600160201b81111561077d57600080fd5b82018360208201111561078f57600080fd5b803590602001918460018302840111600160201b831117156107b057600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b81111561080257600080fd5b82018360208201111561081457600080fd5b803590602001918460018302840111600160201b8311171561083557600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550612c37945050505050565b34801561088257600080fd5b50610355612d7a565b34801561089757600080fd5b50610355612d80565b3480156108ac57600080fd5b50610355612d87565b3480156108c157600080fd5b5061033e612d8d565b3480156108d657600080fd5b5061033e600480360360208110156108ed57600080fd5b810190602081018135600160201b81111561090757600080fd5b82018360208201111561091957600080fd5b803590602001918460018302840111600160201b8311171561093a57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550612fa6945050505050565b34801561098757600080fd5b506103c4613137565b34801561099c57600080fd5b506103c4613146565b3480156109b157600080fd5b5061033e613155565b3480156109c657600080fd5b5061033e600480360360608110156109dd57600080fd5b810190602081018135600160201b8111156109f757600080fd5b820183602082011115610a0957600080fd5b803590602001918460018302840111600160201b83111715610a2a57600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b811115610a7c57600080fd5b820183602082011115610a8e57600080fd5b803590602001918460018302840111600160201b83111715610aaf57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550509135925061333d915050565b348015610afe57600080fd5b506103c4613550565b348015610b1357600080fd5b5061035560048036036020811015610b2a57600080fd5b50356001600160a01b031661355f565b348015610b4657600080fd5b5061033e613571565b348015610b5b57600080fd5b5061035561379c565b348015610b7057600080fd5b506103556137a2565b348015610b8557600080fd5b5061033e60048036036020811015610b9c57600080fd5b50356137a9565b348015610baf57600080fd5b506103c4613a8b565b348015610bc457600080fd5b506103c460048036036040811015610bdb57600080fd5b810190602081018135600160201b811115610bf557600080fd5b820183602082011115610c0757600080fd5b803590602001918460018302840111600160201b83111715610c2857600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b811115610c7a57600080fd5b820183602082011115610c8c57600080fd5b803590602001918460018302840111600160201b83111715610cad57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550613a9a945050505050565b348015610cfa57600080fd5b5061033e613be4565b348015610d0f57600080fd5b50610355613df8565b348015610d2457600080fd5b5061033e613e38565b348015610d3957600080fd5b5061033e61402a565b348015610d4e57600080fd5b50610355614235565b348015610d6357600080fd5b5061033e60048036036020811015610d7a57600080fd5b503561423b565b348015610d8d57600080fd5b506103c4614311565b348015610da257600080fd5b5061033e614320565b348015610db757600080fd5b5061035560048036036020811015610dce57600080fd5b50356001600160a01b0316614555565b348015610dea57600080fd5b506103556146fc565b348015610dff57600080fd5b5061033e614702565b6002546001600160a01b03163314610e55576040805162461bcd60e51b81526020600482015260126024820152600080516020614b5f833981519152604482015290519081900360640190fd5b604080516020808201819052600c828401526b7365745069644f664661726d60a01b6060808401919091528351808403909101815260808301808552815191830191909120600090815260179092529083902060c08301909352825460ff1615158152600183015460a090920191909152610ecf9061478a565b604080516020808201819052600982840152687069644f664661726d60b81b60608084019190915283518084039091018152608090920183528151918101919091206000908152600384019091522054610f61576040805162461bcd60e51b815260206004820152600e60248201526d1253959053125117d05353d5539560921b604482015290519081900360640190fd5b6040805160208082018190526009828401819052687069644f664661726d60b81b60608085018290528551808603909101815260808501865280519084012060009081526003870180855286822054600c5560a0860185905260c086019390935260e0808601929092528551808603909201825261010090940185528051908301208352905290812055805460ff19169055565b600d5481565b600954600b5460408051630c7e663b60e11b815260048101929092526001600160a01b03848116602484015281519316926318fccc769260448082019392918290030181600087803b15801561105057600080fd5b505af1158015611064573d6000803e3d6000fd5b505050506040513d604081101561107a57600080fd5b5050600854600c5460408051631175a1dd60e01b81526004810192909252306024830152516000926001600160a01b031691631175a1dd916044808301926020929190829003018186803b1580156110d157600080fd5b505afa1580156110e5573d6000803e3d6000fd5b505050506040513d60208110156110fb57600080fd5b50519050801580159061111057506000600d54115b1561131d57600854600c5460408051630441a3e760e41b8152600481019290925260006024830181905290516001600160a01b039093169263441a3e7092604480820193929182900301818387803b15801561116b57600080fd5b505af115801561117f573d6000803e3d6000fd5b5050505060006111a66127106111a06013548561488790919063ffffffff16565b906148eb565b905060006111c56127106111a06014548661488790919063ffffffff16565b6003546015546040805163a9059cbb60e01b81526001600160a01b03928316600482015260248101879052905193945091169163a9059cbb916044808201926020929091908290030181600087803b15801561122057600080fd5b505af1158015611234573d6000803e3d6000fd5b505050506040513d602081101561124a57600080fd5b50506003546016546040805163a9059cbb60e01b81526001600160a01b039283166004820152602481018590529051919092169163a9059cbb9160448083019260209291908290030181600087803b1580156112a557600080fd5b505af11580156112b9573d6000803e3d6000fd5b505050506040513d60208110156112cf57600080fd5b506112e69050816112e08585614943565b90614943565b925061131761130e600d546111a069d3c21bcecceda10000008761488790919063ffffffff16565b600e549061498e565b600e5550505b42600f55600e546001600160a01b03831660009081526011602052604081205490916113599169d3c21bcecceda1000000916111a09190614887565b6001600160a01b0384166000908152601260205260409020549091508111156114b0576001600160a01b0383166000908152601260205260408120546113a0908390614943565b600354604080516370a0823160e01b815230600482015290519293506000926001600160a01b03909216916370a0823191602480820192602092909190829003018186803b1580156113f157600080fd5b505afa158015611405573d6000803e3d6000fd5b505050506040513d602081101561141b57600080fd5b505190508082111561142b578091505b6003546040805163a9059cbb60e01b81526001600160a01b038881166004830152602482018690529151919092169163a9059cbb9160448083019260209291908290030181600087803b15801561148157600080fd5b505af1158015611495573d6000803e3d6000fd5b505050506040513d60208110156114ab57600080fd5b505050505b600e546001600160a01b0384166000908152601160205260409020546114e59169d3c21bcecceda1000000916111a091614887565b6001600160a01b039093166000908152601260205260409020929092555050565b600854600c5460408051631175a1dd60e01b815260048101929092523060248301525160009283926001600160a01b0390911691631175a1dd91604480820192602092909190829003018186803b15801561156057600080fd5b505afa158015611574573d6000803e3d6000fd5b505050506040513d602081101561158a57600080fd5b5051600f549091506000904211156115be576115bb6115b4600f544261494390919063ffffffff16565b83906148eb565b90505b6010546115cc908290614887565b9250505090565b6005546001600160a01b031681565b6002546001600160a01b0316331461162f576040805162461bcd60e51b81526020600482015260126024820152600080516020614b5f833981519152604482015290519081900360640190fd5b600060176000856040516020018080602001828103825283818151815260200191508051906020019080838360005b8381101561167657818101518382015260200161165e565b50505050905090810190601f1680156116a35780820380516001836020036101000a031916815260200191505b5092505050604051602081830303815290604052805190602001208152602001908152602001600020905081816002016000856040516020018080602001828103825283818151815260200191508051906020019080838360005b838110156117165781810151838201526020016116fe565b50505050905090810190601f1680156117435780820380516001836020036101000a031916815260200191505b5060408051808303601f1901815291815281516020928301208652908501959095525050500160002080546001600160a01b0319166001600160a01b0392909216919091179055805460ff191660011781556018546117a390429061498e565b81600101819055507f1bd33efd68d2824f5f0f2519ce7c9ca0ddff6234523468e89077a0dca7b73970848484604051808060200180602001846001600160a01b03168152602001838103835286818151815260200191508051906020019080838360005b8381101561181f578181015183820152602001611807565b50505050905090810190601f16801561184c5780820380516001836020036101000a031916815260200191505b50838103825285518152855160209182019187019080838360005b8381101561187f578181015183820152602001611867565b50505050905090810190601f1680156118ac5780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a150505050565b6015546001600160a01b031681565b60145481565b6004546001600160a01b031681565b60116020526000908152604090205481565b600e5481565b60026000541415611956576040805162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015290519081900360640190fd5b60026000558061199d576040805162461bcd60e51b815260206004820152600d60248201526c1253959053125117d253941555609a1b604482015290519081900360640190fd5b6119a633610ffb565b336000908152601160205260409020548111156119cf5750336000908152601160205260409020545b600854600c5460408051630441a3e760e41b8152600481019290925260248201849052516001600160a01b039092169163441a3e709160448082019260009290919082900301818387803b158015611a2657600080fd5b505af1158015611a3a573d6000803e3d6000fd5b505033600090815260116020526040902054611a599250905082614943565b33600090815260116020526040902055600d54611a769082614943565b600d5560048054604080516370a0823160e01b81523093810193909352516000926001600160a01b03909216916370a08231916024808301926020929190829003018186803b158015611ac857600080fd5b505afa158015611adc573d6000803e3d6000fd5b505050506040513d6020811015611af257600080fd5b5051905081811015611b02578091505b600480546040805163a9059cbb60e01b8152339381019390935260248301859052516001600160a01b039091169163a9059cbb9160448083019260209291908290030181600087803b158015611b5757600080fd5b505af1158015611b6b573d6000803e3d6000fd5b505050506040513d6020811015611b8157600080fd5b505081811115611c0357600854600c546001600160a01b039091169063e2bbb15890611bad8486614943565b6040518363ffffffff1660e01b81526004018083815260200182815260200192505050600060405180830381600087803b158015611bea57600080fd5b505af1158015611bfe573d6000803e3d6000fd5b505050505b611c0c336149d6565b604080513381526020810184905281517fccad973dcd043c7d680389db4378bd6b9775db7124092e9e0422c9e46d7985dc929181900390910190a150506001600055565b6002546001600160a01b03163314611c9d576040805162461bcd60e51b81526020600482015260126024820152600080516020614b5f833981519152604482015290519081900360640190fd5b604080516020808201819052601282840152716368616e6765546f6b656e4164647265737360701b6060808401919091528351808403909101815260808301808552815191830191909120600090815260179092529083902060c08301909352825460ff1615158152600183015460a090920191909152611d1d9061478a565b604080516020808201819052600482840152631dd85b9d60e21b606080840191909152835180840390910181526080909201835281519181019190912060009081526002840190915220546001600160a01b031615611e20576040805160208082018190526004828401819052631dd85b9d60e21b6060808501829052855180860390910181526080850186528051908401206000908152600287018085528682205484546001600160a01b039091166001600160a01b031991821617855560a0870186905260c087019490945260e080870193909352865180870390930183526101009095018652815191840191909120815292909152919020805490911690555b60408051602080820181905260068284015265545552494e4760d01b606080840191909152835180840390910181526080909201835281519181019190912060009081526002840190915220546001600160a01b031615611f2957604080516020808201819052600682840181905265545552494e4760d01b60608085018290528551808603909101815260808501865280519084012060009081526002870180855286822054600580546001600160a01b039092166001600160a01b031992831617905560a0870186905260c087019490945260e080870193909352865180870390930183526101009095018652815191840191909120815292909152919020805490911690555b6040805160208082018190526004828401526343414b4560e01b606080840191909152835180840390910181526080909201835281519181019190912060009081526002840190915220546001600160a01b03161561202e5760408051602080820181905260048284018190526343414b4560e01b60608085018290528551808603909101815260808501865280519084012060009081526002870180855286822054600380546001600160a01b039092166001600160a01b031992831617905560a0870186905260c087019490945260e080870193909352865180870390930183526101009095018652815191840191909120815292909152919020805490911690555b604080516020808201819052600482840152633bb1373160e11b606080840191909152835180840390910181526080909201835281519181019190912060009081526002840190915220546001600160a01b031615612133576040805160208082018190526004828401819052633bb1373160e11b60608085018290528551808603909101815260808501865280519084012060009081526002870180855286822054600680546001600160a01b039092166001600160a01b031992831617905560a0870186905260c087019490945260e080870193909352865180870390930183526101009095018652815191840191909120815292909152919020805490911690555b60408051602080820181905260048284015263189d5cd960e21b606080840191909152835180840390910181526080909201835281519181019190912060009081526002840190915220546001600160a01b03161561223857604080516020808201819052600482840181905263189d5cd960e21b60608085018290528551808603909101815260808501865280519084012060009081526002870180855286822054600780546001600160a01b039092166001600160a01b031992831617905560a0870186905260c087019490945260e080870193909352865180870390930183526101009095018652815191840191909120815292909152919020805490911690555b805460ff19169055565b600a546001600160a01b031681565b612259614aac565b612261613df8565b604082015261226e612570565b610140820152600954600b5460408051635e86cd9560e01b81526004810192909252516001600160a01b0390921691635e86cd9591602480820192602092909190829003018186803b1580156122c357600080fd5b505afa1580156122d7573d6000803e3d6000fd5b505050506040513d60208110156122ed57600080fd5b505160808201526122fc611506565b60a0820152600954600b54604080516324aa7cc560e11b81526004810192909252516001600160a01b0390921691634954f98a91602480820192602092909190829003018186803b15801561235057600080fd5b505afa158015612364573d6000803e3d6000fd5b505050506040513d602081101561237a57600080fd5b505181526001600160a01b03828116803160c0840152600954600b5460408051631069f3b560e01b8152600481019290925260248201939093529151921691631069f3b591604480820192606092909190829003018186803b1580156123df57600080fd5b505afa1580156123f3573d6000803e3d6000fd5b505050506040513d606081101561240957600080fd5b505160e082015260048054604080516370a0823160e01b81526001600160a01b0386811694820194909452905192909116916370a0823191602480820192602092909190829003018186803b15801561246157600080fd5b505afa158015612475573d6000803e3d6000fd5b505050506040513d602081101561248b57600080fd5b50516020808301919091526001600160a01b0383166000908152601190915260409020546101008201526124be82614555565b6060820152600854600c54604080516393f1a40b60e01b8152600481019290925230602483015280516001600160a01b03909316926393f1a40b926044808201939291829003018186803b15801561251557600080fd5b505afa158015612529573d6000803e3d6000fd5b505050506040513d604081101561253f57600080fd5b5051610120820152919050565b6007546001600160a01b031681565b6003546001600160a01b031681565b60015481565b6040805160038082526080820190925260009160609190602082018380368337505060035482519293506001600160a01b0316918391506000906125b057fe5b6001600160a01b0392831660209182029290920101526006548251911690829060019081106125db57fe5b6001600160a01b03928316602091820292909201015260075482519116908290600290811061260657fe5b6001600160a01b03928316602091820292909201810191909152600a546040805163d06ca61f60e01b8152670de0b6b3a76400006004820181815260248301938452875160448401528751600097959095169563d06ca61f9592948994929390926064019185810191028083838c5b8381101561268d578181015183820152602001612675565b50505050905001935050505060006040518083038186803b1580156126b157600080fd5b505afa92505050801561277157506040513d6000823e601f3d908101601f1916820160405260208110156126e457600080fd5b8101908080516040519392919084600160201b82111561270357600080fd5b90830190602082018581111561271857600080fd5b82518660208202830111600160201b8211171561273457600080fd5b82525081516020918201928201910280838360005b83811015612761578181015183820152602001612749565b5050505090500160405250505060015b61277d57506000612796565b8060028151811061278a57fe5b60200260200101519150505b91505090565b6002546001600160a01b031633146127e9576040805162461bcd60e51b81526020600482015260126024820152600080516020614b5f833981519152604482015290519081900360640190fd5b604080516020808201819052601c828401527f73657450616e63616b654d617374657243686566436f6e7472616374000000006060808401919091528351808403909101815260808301808552815191830191909120600090815260179092529083902060c08301909352825460ff1615158152600183015460a0909201919091526128749061478a565b604080516020808201819052601182840152703830b735b0b1b2a6b0b9ba32b921b432b360791b606080840191909152835180840390910181526080909201835281519181019190912060009081526002840190915220546001600160a01b0316612918576040805162461bcd60e51b815260206004820152600f60248201526e494e56414c49445f4144445245535360881b604482015290519081900360640190fd5b6040805160208082018190526011828401819052703830b735b0b1b2a6b0b9ba32b921b432b360791b60608085018290528551808603909101815260808501865280519084012060009081526002870180855286822054600880546001600160a01b039092166001600160a01b031992831617905560a0870186905260c087019490945260e08087019390935286518087039093018352610100909501865281519184019190912081529290915291902080549091169055805460ff19169055565b60185481565b6002546001600160a01b03163314612a2d576040805162461bcd60e51b81526020600482015260126024820152600080516020614b5f833981519152604482015290519081900360640190fd5b60408051602080820181905260158284015274736574506572666f726d616e63654d616368696e6560581b6060808401919091528351808403909101815260808301808552815191830191909120600090815260179092529083902060c08301909352825460ff1615158152600183015460a090920191909152612ab09061478a565b60408051602080820181905260128284015271706572666f726d616e63654d616368696e6560701b606080840191909152835180840390910181526080909201835281519181019190912060009081526002840190915220546001600160a01b0316612b55576040805162461bcd60e51b815260206004820152600f60248201526e494e56414c49445f4144445245535360881b604482015290519081900360640190fd5b604080516020808201819052601282840181905271706572666f726d616e63654d616368696e6560701b60608085018290528551808603909101815260808501865280519084012060009081526002870180855286822054601580546001600160a01b039092166001600160a01b031992831617905560a0870186905260c087019490945260e08087019390935286518087039093018352610100909501865281519184019190912081529290915291902080549091169055805460ff19169055565b6017602052600090815260409020805460019091015460ff9091169082565b600060176000846040516020018080602001828103825283818151815260200191508051906020019080838360005b83811015612c7e578181015183820152602001612c66565b50505050905090810190601f168015612cab5780820380516001836020036101000a031916815260200191505b50925050506040516020818303038152906040528051906020012081526020019081526020016000206003016000836040516020018080602001828103825283818151815260200191508051906020019080838360005b83811015612d1a578181015183820152602001612d02565b50505050905090810190601f168015612d475780820380516001836020036101000a031916815260200191505b50925050506040516020818303038152906040528051906020012081526020019081526020016000205490505b92915050565b600c5481565b62278d0081565b60105481565b6002546001600160a01b03163314612dda576040805162461bcd60e51b81526020600482015260126024820152600080516020614b5f833981519152604482015290519081900360640190fd5b6040805160208082018190526011828401527007472616e736665724f776e65727368697607c1b6060808401919091528351808403909101815260808301808552815191830191909120600090815260179092529083902060c08301909352825460ff1615158152600183015460a090920191909152612e599061478a565b6040805160208082018190526005828401526437bbb732b960d91b606080840191909152835180840390910181526080909201835281519181019190912060009081526002840190915220546001600160a01b0316612ef1576040805162461bcd60e51b815260206004820152600f60248201526e494e56414c49445f4144445245535360881b604482015290519081900360640190fd5b60408051602080820181905260058284018190526437bbb732b960d91b606080850182905285518086039091018152608085018652805190840120600090815260028781018086528783205482546001600160a01b039091166001600160a01b03199182161790925560a0870186905260c087019490945260e080870193909352865180870390930183526101009095018652815191840191909120815291529190912080549091169055805460ff19169055565b6002546001600160a01b03163314612ff3576040805162461bcd60e51b81526020600482015260126024820152600080516020614b5f833981519152604482015290519081900360640190fd5b600060176000836040516020018080602001828103825283818151815260200191508051906020019080838360005b8381101561303a578181015183820152602001613022565b50505050905090810190601f1680156130675780820380516001836020036101000a031916815260200191505b5060408051601f1981840301815291815281516020928301208652858201969096529385016000908120805460ff19168155865186815289518188015289519198507fce369f91d52b663114643c430217b52530c2cc7318cac7a3e9d46241cbc354a8978a97919650869550850193508601918190849084905b838110156130f95781810151838201526020016130e1565b50505050905090810190601f1680156131265780820380516001836020036101000a031916815260200191505b509250505060405180910390a15050565b6006546001600160a01b031681565b6002546001600160a01b031681565b6002546001600160a01b031633146131a2576040805162461bcd60e51b81526020600482015260126024820152600080516020614b5f833981519152604482015290519081900360640190fd5b6040805160208082018190526010828401526f7365744d696e696e674d616368696e6560801b6060808401919091528351808403909101815260808301808552815191830191909120600090815260179092529083902060c08301909352825460ff1615158152600183015460a0909201919091526132209061478a565b604080516020808201819052600d828401526c6d696e696e674d616368696e6560981b606080840191909152835180840390910181526080909201835281519181019190912060009081526002840190915220546001600160a01b03166132c0576040805162461bcd60e51b815260206004820152600f60248201526e494e56414c49445f4144445245535360881b604482015290519081900360640190fd5b604080516020808201819052600d828401526c6d696e696e674d616368696e6560981b60608084019190915283518084039091018152608090920183528151918101919091206000908152600284019091522054600980546001600160a01b0319166001600160a01b03909216919091179055805460ff19169055565b6002546001600160a01b0316331461338a576040805162461bcd60e51b81526020600482015260126024820152600080516020614b5f833981519152604482015290519081900360640190fd5b600060176000856040516020018080602001828103825283818151815260200191508051906020019080838360005b838110156133d15781810151838201526020016133b9565b50505050905090810190601f1680156133fe5780820380516001836020036101000a031916815260200191505b5092505050604051602081830303815290604052805190602001208152602001908152602001600020905081816003016000856040516020018080602001828103825283818151815260200191508051906020019080838360005b83811015613471578181015183820152602001613459565b50505050905090810190601f16801561349e5780820380516001836020036101000a031916815260200191505b5060408051601f1981840301815291815281516020928301208652908501959095525050500160002055805460ff191660011781556018546134e190429061498e565b600182015560408051908101839052606080825285519082015284517f860699cc7b0f3cb3d034fd31cdfe0816887a9f55d10993224d77c359c3d5555191869186918691819060208083019160808401918801908083836000831561181f578181015183820152602001611807565b6008546001600160a01b031681565b60126020526000908152604090205481565b6002546001600160a01b031633146135be576040805162461bcd60e51b81526020600482015260126024820152600080516020614b5f833981519152604482015290519081900360640190fd5b604080516020808201819052601682840152751cd95d14185b98d85ad954ddd85c10dbdb9d1c9858dd60521b6060808401919091528351808403909101815260808301808552815191830191909120600090815260179092529083902060c08301909352825460ff1615158152600183015460a0909201919091526136429061478a565b604080516020808201819052600b828401526a070616e63616b65537761760ac1b606080840191909152835180840390910181526080909201835281519181019190912060009081526002840190915220546001600160a01b03166136e0576040805162461bcd60e51b815260206004820152600f60248201526e494e56414c49445f4144445245535360881b604482015290519081900360640190fd5b604080516020808201819052600b8284018190526a070616e63616b65537761760ac1b60608085018290528551808603909101815260808501865280519084012060009081526002870180855286822054600a80546001600160a01b039092166001600160a01b031992831617905560a0870186905260c087019490945260e08087019390935286518087039093018352610100909501865281519184019190912081529290915291902080549091169055805460ff19169055565b600f5481565b6202a30081565b60026000541415613801576040805162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015290519081900360640190fd5b600260005580613848576040805162461bcd60e51b815260206004820152600d60248201526c1253959053125117d253941555609a1b604482015290519081900360640190fd5b60048054604080516370a0823160e01b815233938101939093525183926001600160a01b03909216916370a08231916024808301926020929190829003018186803b15801561389657600080fd5b505afa1580156138aa573d6000803e3d6000fd5b505050506040513d60208110156138c057600080fd5b50511015613905576040805162461bcd60e51b815260206004820152600d60248201526c1253959053125117d253941555609a1b604482015290519081900360640190fd5b61390e33610ffb565b60048054604080516323b872dd60e01b8152339381019390935230602484015260448301849052516001600160a01b03909116916323b872dd9160648083019260209291908290030181600087803b15801561396957600080fd5b505af115801561397d573d6000803e3d6000fd5b505050506040513d602081101561399357600080fd5b5050600854600c5460408051631c57762b60e31b8152600481019290925260248201849052516001600160a01b039092169163e2bbb1589160448082019260009290919082900301818387803b1580156139ec57600080fd5b505af1158015613a00573d6000803e3d6000fd5b505033600090815260116020526040902054613a1f925090508261498e565b33600090815260116020526040902055600d54613a3c908261498e565b600d55613a48336149d6565b604080513381526020810183905281517f2bf9518c65eff7d1f3ee4106bf0dc41267ccde0924dbfa4ab476ed5c0f45da98929181900390910190a1506001600055565b6009546001600160a01b031681565b600060176000846040516020018080602001828103825283818151815260200191508051906020019080838360005b83811015613ae1578181015183820152602001613ac9565b50505050905090810190601f168015613b0e5780820380516001836020036101000a031916815260200191505b50925050506040516020818303038152906040528051906020012081526020019081526020016000206002016000836040516020018080602001828103825283818151815260200191508051906020019080838360005b83811015613b7d578181015183820152602001613b65565b50505050905090810190601f168015613baa5780820380516001836020036101000a031916815260200191505b5060408051808303601f19018152918152815160209283012086529085019590955250505001600020546001600160a01b03169392505050565b6002546001600160a01b03163314613c31576040805162461bcd60e51b81526020600482015260126024820152600080516020614b5f833981519152604482015290519081900360640190fd5b60408051602080820181905260178284018190527f736574526174654f66506572666f726d616e6365466565000000000000000000606080850191909152845180850390910181526080840180865281519184019190912060009081529190925283902060c08301909352825460ff1615158152600183015460a090920191909152613cbc9061478a565b60408051602080820181905260148284015273726174654f66506572666f726d616e636546656560601b60608084019190915283518084039091018152608090920183528151918101919091206000908152600384019091522054613d59576040805162461bcd60e51b815260206004820152600e60248201526d1253959053125117d05353d5539560921b604482015290519081900360640190fd5b604080516020808201819052601482840181905273726174654f66506572666f726d616e636546656560601b6060808501829052855180860390910181526080850186528051908401206000908152600387018085528682205460135560a0860185905260c086019390935260e0808601929092528551808603909201825261010090940185528051908301208352905290812055805460ff19169055565b6040805160038082526080820190925260009160609190602082018380368337505060055482519293506001600160a01b0316918391506000906125b057fe5b6002546001600160a01b03163314613e85576040805162461bcd60e51b81526020600482015260126024820152600080516020614b5f833981519152604482015290519081900360640190fd5b604080516020808201819052600e828401526d7365745069644f664d696e696e6760901b6060808401919091528351808403909101815260808301808552815191830191909120600090815260179092529083902060c08301909352825460ff1615158152600183015460a090920191909152613f019061478a565b604080516020808201819052600b828401526a7069644f664d696e696e6760a81b60608084019190915283518084039091018152608090920183528151918101919091206000908152600384019091522054613f95576040805162461bcd60e51b815260206004820152600e60248201526d1253959053125117d05353d5539560921b604482015290519081900360640190fd5b604080516020808201819052600b8284018190526a7069644f664d696e696e6760a81b60608085018290528551808603909101815260808501865280519084012060009081526003870180855286822054845560a0860185905260c086019390935260e0808601929092528551808603909201825261010090940185528051908301208352905290812055805460ff19169055565b6002546001600160a01b03163314614077576040805162461bcd60e51b81526020600482015260126024820152600080516020614b5f833981519152604482015290519081900360640190fd5b60408051602080820181905260168284015275736574526174654f66436f6e74726f6c6c657246656560501b6060808401919091528351808403909101815260808301808552815191830191909120600090815260179092529083902060c08301909352825460ff1615158152600183015460a0909201919091526140fb9061478a565b60408051602080820181905260138284015272726174654f66436f6e74726f6c6c657246656560681b60608084019190915283518084039091018152608090920183528151918101919091206000908152600384019091522054614197576040805162461bcd60e51b815260206004820152600e60248201526d1253959053125117d05353d5539560921b604482015290519081900360640190fd5b604080516020808201819052601382840181905272726174654f66436f6e74726f6c6c657246656560681b6060808501829052855180860390910181526080850186528051908401206000908152600387018085528682205460145560a0860185905260c086019390935260e0808601929092528551808603909201825261010090940185528051908301208352905290812055805460ff19169055565b60135481565b6002546001600160a01b03163314614288576040805162461bcd60e51b81526020600482015260126024820152600080516020614b5f833981519152604482015290519081900360640190fd5b6202a3008110156142ca5760405162461bcd60e51b8152600401808060200182810382526034815260200180614acc6034913960400191505060405180910390fd5b62278d0081111561430c5760405162461bcd60e51b8152600401808060200182810382526038815260200180614b006038913960400191505060405180910390fd5b601855565b6016546001600160a01b031681565b6002546001600160a01b0316331461436d576040805162461bcd60e51b81526020600482015260126024820152600080516020614b5f833981519152604482015290519081900360640190fd5b60408051602080820181905260148284015273736574436f6e74726f6c6c65724d616368696e6560601b6060808401919091528351808403909101815260808301808552815191830191909120600090815260179092529083902060c08301909352825460ff1615158152600183015460a0909201919091526143ef9061478a565b60408051602080820181905260118284015270636f6e74726f6c6c65724d616368696e6560781b606080840191909152835180840390910181526080909201835281519181019190912060009081526002840190915220546001600160a01b0316614493576040805162461bcd60e51b815260206004820152600f60248201526e494e56414c49445f4144445245535360881b604482015290519081900360640190fd5b604080516020808201819052601182840181905270636f6e74726f6c6c65724d616368696e6560781b60608085018290528551808603909101815260808501865280519084012060009081526002870180855286822054601680546001600160a01b039092166001600160a01b031992831617905560a0870186905260c087019490945260e08087019390935286518087039093018352610100909501865281519184019190912081529290915291902080549091169055805460ff19169055565b600e54600854600c5460408051631175a1dd60e01b81526004810192909252306024830152516000939284926001600160a01b0390911691631175a1dd91604480820192602092909190829003018186803b1580156145b357600080fd5b505afa1580156145c7573d6000803e3d6000fd5b505050506040513d60208110156145dd57600080fd5b5051905080158015906145f257506000600d54115b156146775760006146146127106111a06013548561488790919063ffffffff16565b905060006146336127106111a06014548661488790919063ffffffff16565b9050614643816112e08585614943565b925061467261466b600d546111a069d3c21bcecceda10000008761488790919063ffffffff16565b859061498e565b935050505b6001600160a01b0384166000908152601160205260408120546146aa9069d3c21bcecceda1000000906111a09086614887565b6001600160a01b0386166000908152601260205260409020549091508111156146f4576001600160a01b0385166000908152601260205260409020546146f1908290614943565b93505b505050919050565b600b5481565b600480546008546040805163095ea7b360e01b81526001600160a01b039283169481019490945260001960248501525191169163095ea7b39160448083019260209291908290030181600087803b15801561475c57600080fd5b505af1158015614770573d6000803e3d6000fd5b505050506040513d602081101561478657600080fd5b5050565b805115156001146147e2576040805162461bcd60e51b815260206004820152601f60248201527f5472616e73616374696f6e206861736e2774206265656e207175657565642e00604482015290519081900360640190fd5b42816020015111156148255760405162461bcd60e51b8152600401808060200182810382526027815260200180614b386027913960400191505060405180910390fd5b602081015142906148399062278d0061498e565b1015614884576040805162461bcd60e51b81526020600482015260156024820152742a3930b739b0b1ba34b7b71034b99039ba30b6329760591b604482015290519081900360640190fd5b50565b60008261489657506000612d74565b828202828482816148a357fe5b04146148e4576040805162461bcd60e51b815260206004820152600b60248201526a1253959053125117d3555360aa1b604482015290519081900360640190fd5b9392505050565b600080821161492f576040805162461bcd60e51b815260206004820152600b60248201526a24a72b20a624a22fa224ab60a91b604482015290519081900360640190fd5b600082848161493a57fe5b04949350505050565b600082821115614988576040805162461bcd60e51b815260206004820152600b60248201526a24a72b20a624a22fa9aaa160a91b604482015290519081900360640190fd5b50900390565b6000828201838110156148e4576040805162461bcd60e51b815260206004820152600b60248201526a1253959053125117d0511160aa1b604482015290519081900360640190fd5b600954600b5460408051638fb4e1cd60e01b815260048101929092526001600160a01b0384811660248401529051921691638fb4e1cd916044808201926020929091908290030181600087803b158015614a2f57600080fd5b505af1158015614a43573d6000803e3d6000fd5b505050506040513d6020811015614a5957600080fd5b5050600e546001600160a01b038216600090815260116020526040902054614a909169d3c21bcecceda1000000916111a091614887565b6001600160a01b03909116600090815260126020526040902055565b604051806101600160405280600b90602082028036833750919291505056fe54696d656c6f636b3a3a73657444656c61793a2044656c6179206d75737420657863656564206d696e696d756d2064656c61792e54696d656c6f636b3a3a73657444656c61793a2044656c6179206d757374206e6f7420657863656564206d6178696d756d2064656c61792e5472616e73616374696f6e206861736e2774207375727061737365642074696d65206c6f636b2e494e56414c49445f5045524d495353494f4e0000000000000000000000000000a26469706673582212208153cb3869456d1b5aa019a224ad10e8a01e50c9e340322ba49aa413754cd7c764736f6c634300060c003300000000000000000000000010ed43c718714eb63d5aa57b78b54704e256024e00000000000000000000000073feaa1ee314f8c655e354234017be2193c9e24e00000000000000000000000058f876857a02d6762e0101bb5c46a8c1ed44dc160000000000000000000000000e09fabb73bd3ade0a17ecc321fd13a19e81ce8200000000000000000000000076ed05fa250e8e993275e6e78b470b4d70ed120b000000000000000000000000bb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c000000000000000000000000e9e7cea3dedca5984780bafc599bd69add087d56

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

00000000000000000000000010ed43c718714eb63d5aa57b78b54704e256024e00000000000000000000000073feaa1ee314f8c655e354234017be2193c9e24e00000000000000000000000058f876857a02d6762e0101bb5c46a8c1ed44dc160000000000000000000000000e09fabb73bd3ade0a17ecc321fd13a19e81ce8200000000000000000000000076ed05fa250e8e993275e6e78b470b4d70ed120b000000000000000000000000bb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c000000000000000000000000e9e7cea3dedca5984780bafc599bd69add087d56

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


Deployed ByteCode Sourcemap

10025:18234:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20521:470;;;;;;;;;;;;;:::i;:::-;;10534:29;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;22824:1399;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;22824:1399:0;-1:-1:-1;;;;;22824:1399:0;;:::i;26505:378::-;;;;;;;;;;;;;:::i;10241:20::-;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;10241:20:0;;;;;;;;;;;;;;13274:504;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;13274:504:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;13274:504:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;13274:504:0;;;;;;;;-1:-1:-1;13274:504:0;;-1:-1:-1;;;;;13274:504:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;13274:504:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;13274:504:0;;-1:-1:-1;;;13274:504:0;;-1:-1:-1;;;;;13274:504:0;;-1:-1:-1;13274:504:0;;-1:-1:-1;13274:504:0:i;10960:33::-;;;;;;;;;;;;;:::i;10894:39::-;;;;;;;;;;;;;:::i;10212:18::-;;;;;;;;;;;;;:::i;10718:42::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;10718:42:0;-1:-1:-1;;;;;10718:42:0;;:::i;10570:34::-;;;;;;;;;;;;;:::i;21976:840::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;21976:840:0;;:::i;17468:1466::-;;;;;;;;;;;;;:::i;10424:37::-;;;;;;;;;;;;;:::i;24914:712::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;24914:712:0;-1:-1:-1;;;;;24914:712:0;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10304:19;;;;;;;;;;;;;:::i;10183:18::-;;;;;;;;;;;;;:::i;10115:28::-;;;;;;;;;;;;;:::i;26072:425::-;;;;;;;;;;;;;:::i;16883:573::-;;;;;;;;;;;;;:::i;11330:17::-;;;;;;;;;;;;;:::i;15238:545::-;;;;;;;;;;;;;:::i;11124:46::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;11124:46:0;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;28023:233;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;28023:233:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;28023:233:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;28023:233:0;;;;;;;;-1:-1:-1;28023:233:0;;-1:-1:-1;;;;;28023:233:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;28023:233:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;28023:233:0;;-1:-1:-1;28023:233:0;;-1:-1:-1;;;;;28023:233:0:i;10503:24::-;;;;;;;;;;;;;:::i;11279:44::-;;;;;;;;;;;;;:::i;10650:35::-;;;;;;;;;;;;;:::i;14283:485::-;;;;;;;;;;;;;:::i;12992:274::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;12992:274:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;12992:274:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;12992:274:0;;-1:-1:-1;12992:274:0;;-1:-1:-1;;;;;12992:274:0:i;10278:19::-;;;;;;;;;;;;;:::i;10150:20::-;;;;;;;;;;;;;:::i;14776:454::-;;;;;;;;;;;;;:::i;13786:489::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;13786:489:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;13786:489:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;13786:489:0;;;;;;;;-1:-1:-1;13786:489:0;;-1:-1:-1;;;;;13786:489:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;13786:489:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;13786:489:0;;-1:-1:-1;;13786:489:0;;;-1:-1:-1;13786:489:0;;-1:-1:-1;;13786:489:0:i;10332:43::-;;;;;;;;;;;;;:::i;10767:51::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;10767:51:0;-1:-1:-1;;;;;10767:51:0;;:::i;16338:537::-;;;;;;;;;;;;;:::i;10611:32::-;;;;;;;;;;;;;:::i;11229:43::-;;;;;;;;;;;;;:::i;21388:582::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;21388:582:0;;:::i;10382:35::-;;;;;;;;;;;;;:::i;27776:239::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;27776:239:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;27776:239:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;27776:239:0;;;;;;;;-1:-1:-1;27776:239:0;;-1:-1:-1;;;;;27776:239:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;27776:239:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;27776:239:0;;-1:-1:-1;27776:239:0;;-1:-1:-1;;;;;27776:239:0:i;18946:537::-;;;;;;;;;;;;;:::i;25635:429::-;;;;;;;;;;;;;:::i;20030:483::-;;;;;;;;;;;;;:::i;19491:531::-;;;;;;;;;;;;;:::i;10827:40::-;;;;;;;;;;;;;:::i;12575:285::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;12575:285:0;;:::i;11083:32::-;;;;;;;;;;;;;:::i;15791:539::-;;;;;;;;;;;;;:::i;26891:877::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;26891:877:0;-1:-1:-1;;;;;26891:877:0;;:::i;10470:26::-;;;;;;;;;;;;;:::i;12868:114::-;;;;;;;;;;;;;:::i;20521:470::-;11606:5;;-1:-1:-1;;;;;11606:5:0;11592:10;:19;11584:50;;;;;-1:-1:-1;;;11584:50:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;11584:50:0;;;;;;;;;;;;;;;20628:26:::1;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;20628:26:0;;;;;;;;;;;;;;;;;;;;;;;;20618:37;;;;::::1;::::0;;;;20578:26:::1;20607:49:::0;;;:10:::1;:49:::0;;;;;;;20667:28;;;;;;;;::::1;;;;::::0;;;;::::1;::::0;;;;;;;;;::::1;::::0;:17:::1;:28::i;:::-;20741:23;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;20741:23:0;;;;;;;;;;;;;;;;;;;;;;;;20731:34;;;;::::1;::::0;;;;20769:1:::1;20714:52:::0;;;:16:::1;::::0;::::1;:52:::0;;;;;20706:83:::1;;;::::0;;-1:-1:-1;;;20706:83:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;20706:83:0;;;;;;;;;;;;;::::1;;20841:23;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;;;20841:23:0;;;;;;;;;;;;;;;;;;;;;;20831:34;;;;::::1;::::0;20814:52:::1;::::0;;;:16:::1;::::0;::::1;:52:::0;;;;;;;20802:9:::1;:64:::0;20911:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20901:34;;;;::::1;::::0;20884:52;;;;;;;20877:59;20947:36;;-1:-1:-1;;20947:36:0::1;::::0;;20521:470::o;10534:29::-;;;;:::o;22824:1399::-;22874:13;;22896:11;;22874:41;;;-1:-1:-1;;;22874:41:0;;;;;;;;;-1:-1:-1;;;;;22874:41:0;;;;;;;;;:13;;;:21;;:41;;;;;;;;;;;;:13;;:41;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;22944:17:0;;22974:9;;22874:41;22944:55;;-1:-1:-1;;;22944:55:0;;;;;;;;;22993:4;22944:55;;;;;22926:15;;-1:-1:-1;;;;;22944:17:0;;:29;;:55;;;;;22874:41;;22944:55;;;;;;;:17;:55;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;22944:55:0;;-1:-1:-1;23028:11:0;;;;;:42;;;23069:1;23056:10;;:14;23028:42;23010:599;;;23101:17;;23128:9;;23101:40;;;-1:-1:-1;;;23101:40:0;;;;;;;;;:17;:40;;;;;;;;-1:-1:-1;;;;;23101:17:0;;;;:26;;:40;;;;;:17;:40;;;;;;:17;;:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23156:23;23182:44;23220:5;23182:33;23194:20;;23182:7;:11;;:33;;;;:::i;:::-;:37;;:44::i;:::-;23156:70;;23241:22;23266:43;23303:5;23266:32;23278:19;;23266:7;:11;;:32;;;;:::i;:43::-;23324:4;;23338:18;;23324:50;;;-1:-1:-1;;;23324:50:0;;-1:-1:-1;;;;;23338:18:0;;;23324:50;;;;;;;;;;;;23241:68;;-1:-1:-1;23324:4:0;;;:13;;:50;;;;;;;;;;;;;;;:4;;:50;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;23389:4:0;;23403:17;;23389:48;;;-1:-1:-1;;;23389:48:0;;-1:-1:-1;;;;;23403:17:0;;;23389:48;;;;;;;;;;;;:4;;;;;:13;;:48;;;;;23324:50;;23389:48;;;;;;;:4;;:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;23462:48:0;;-1:-1:-1;23495:14:0;23462:28;:7;23474:15;23462:11;:28::i;:::-;:32;;:48::i;:::-;23452:58;;23543:54;23563:33;23585:10;;23563:17;23575:4;23563:7;:11;;:17;;;;:::i;:33::-;23543:15;;;:19;:54::i;:::-;23525:15;:72;-1:-1:-1;;23010:599:0;23637:15;23621:13;:31;23711:15;;-1:-1:-1;;;;;23692:14:0;;23665:23;23692:14;;;:7;:14;;;;;;23665:23;;23692:45;;23732:4;;23692:35;;:14;:18;:35::i;:45::-;-1:-1:-1;;;;;23772:23:0;;;;;;:16;:23;;;;;;23665:72;;-1:-1:-1;23754:41:0;;23750:382;;;-1:-1:-1;;;;;23859:23:0;;23812:24;23859:23;;;:16;:23;;;;;;23839:44;;:15;;:19;:44::i;:::-;23921:4;;:29;;;-1:-1:-1;;;23921:29:0;;23944:4;23921:29;;;;;;23812:71;;-1:-1:-1;23898:20:0;;-1:-1:-1;;;;;23921:4:0;;;;:14;;:29;;;;;;;;;;;;;;;:4;:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;23921:29:0;;-1:-1:-1;23969:31:0;;;23965:103;;;24040:12;24021:31;;23965:103;24082:4;;:38;;;-1:-1:-1;;;24082:38:0;;-1:-1:-1;;;;;24082:38:0;;;;;;;;;;;;;;;:4;;;;;:13;;:38;;;;;;;;;;;;;;:4;;:38;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;23750:382:0;24189:15;;-1:-1:-1;;;;;24170:14:0;;;;;;:7;:14;;;;;;:45;;24210:4;;24170:35;;:18;:35::i;:45::-;-1:-1:-1;;;;;24144:23:0;;;;;;;:16;:23;;;;;:71;;;;-1:-1:-1;;22824:1399:0:o;26505:378::-;26595:17;;26625:9;;26595:55;;;-1:-1:-1;;;26595:55:0;;;;;;;;;26644:4;26595:55;;;;;26557:7;;;;-1:-1:-1;;;;;26595:17:0;;;;:29;;:55;;;;;;;;;;;;;;;:17;:55;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;26595:55:0;26719:13;;26595:55;;-1:-1:-1;26661:21:0;;26701:15;:31;26697:131;;;26764:47;26776:34;26796:13;;26776:15;:19;;:34;;;;:::i;:::-;26764:7;;:11;:47::i;:::-;26748:63;;26697:131;26863:11;;26845:30;;:13;;:17;:30::i;:::-;26838:37;;;;26505:378;:::o;10241:20::-;;;-1:-1:-1;;;;;10241:20:0;;:::o;13274:504::-;11606:5;;-1:-1:-1;;;;;11606:5:0;11592:10;:19;11584:50;;;;;-1:-1:-1;;;11584:50:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;11584:50:0;;;;;;;;;;;;;;;13422:26:::1;13451:10;:48;13483:13;13472:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;;::::1;::::0;;;::::1;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13462:36;;;;;;13451:48;;;;;;;;;;;13422:77;;13567:8;13510:9;:19;;:54;13551:10;13540:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;;::::1;::::0;;;::::1;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;13540:22:0::1;::::0;;;;::::1;-1:-1:-1::0;;13540:22:0;;;;;;13530:33;;13540:22:::1;13530:33:::0;;::::1;::::0;13510:54;;;;::::1;::::0;;;;-1:-1:-1;;;13510:54:0;-1:-1:-1;13510:54:0;:65;;-1:-1:-1;;;;;;13510:65:0::1;-1:-1:-1::0;;;;;13510:65:0;;;::::1;::::0;;;::::1;::::0;;13586:35;;-1:-1:-1;;13586:35:0::1;-1:-1:-1::0;13586:35:0::1;::::0;;13678:5:::1;::::0;13658:26:::1;::::0;:15:::1;::::0;:19:::1;:26::i;:::-;13632:9;:23;;:52;;;;13700:70;13734:13;13749:10;13761:8;13700:70;;;;;;;;;;-1:-1:-1::0;;;;;13700:70:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;;::::1;::::0;;;::::1;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;13700:70:0;;::::1;::::0;;;;;;;;::::1;::::0;;::::1;::::0;;::::1;::::0;;;;::::1;;;;;;;;::::0;;::::1;::::0;;;::::1;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11645:1;13274:504:::0;;;:::o;10960:33::-;;;-1:-1:-1;;;;;10960:33:0;;:::o;10894:39::-;;;;:::o;10212:18::-;;;-1:-1:-1;;;;;10212:18:0;;:::o;10718:42::-;;;;;;;;;;;;;:::o;10570:34::-;;;;:::o;21976:840::-;9071:1;9676:7;;:19;;9668:63;;;;;-1:-1:-1;;;9668:63:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;9071:1;9809:7;:18;22059:12;22051:38:::1;;;::::0;;-1:-1:-1;;;22051:38:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;22051:38:0;;;;;;;;;;;;;::::1;;22100:19;22108:10;22100:7;:19::i;:::-;22155:10;22147:19;::::0;;;:7:::1;:19;::::0;;;;;22136:30;::::1;22132:93;;;-1:-1:-1::0;22202:10:0::1;22194:19;::::0;;;:7:::1;:19;::::0;;;;;22132:93:::1;22237:17;::::0;22264:9:::1;::::0;22237:47:::1;::::0;;-1:-1:-1;;;22237:47:0;;::::1;::::0;::::1;::::0;;;;;;;;;;;-1:-1:-1;;;;;22237: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;;22327:10:0::1;22319:19;::::0;;;:7:::1;:19;::::0;;;;;:33:::1;::::0;-1:-1:-1;22319:19:0;-1:-1:-1;22343:8:0;22319:23:::1;:33::i;:::-;22305:10;22297:19;::::0;;;:7:::1;:19;::::0;;;;:55;22376:10:::1;::::0;:24:::1;::::0;22391:8;22376:14:::1;:24::i;:::-;22363:10;:37:::0;22432:4:::1;::::0;;:29:::1;::::0;;-1:-1:-1;;;22432:29:0;;22455:4:::1;22432:29:::0;;::::1;::::0;;;;;22413:16:::1;::::0;-1:-1:-1;;;;;22432: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;22432:29:0;;-1:-1:-1;22477:19:0;;::::1;22473:71;;;22524:8;22513:19;;22473:71;22554:4;::::0;;:35:::1;::::0;;-1:-1:-1;;;22554:35:0;;22568:10:::1;22554:35:::0;;::::1;::::0;;;;;;;;;;;-1:-1:-1;;;;;22554: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;;22604:19:0;;::::1;22600:112;;;22640:17;::::0;22666:9:::1;::::0;-1:-1:-1;;;;;22640:17:0;;::::1;::::0;:25:::1;::::0;22677:22:::1;:8:::0;22690;22677:12:::1;:22::i;:::-;22640:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;22600:112;22724:23;22736:10;22724:11;:23::i;:::-;22776:32;::::0;;22787:10:::1;22776:32:::0;;::::1;::::0;::::1;::::0;;;;;::::1;::::0;;;;;;;;;::::1;-1:-1:-1::0;;9027:1:0;9988:7;:22;21976:840::o;17468:1466::-;11606:5;;-1:-1:-1;;;;;11606:5:0;11592:10;:19;11584:50;;;;;-1:-1:-1;;;11584:50:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;11584:50:0;;;;;;;;;;;;;;;17581:32:::1;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;17581:32:0;;;;;;;;;;;;;;;;;;;;;;;;17571:43;;;;::::1;::::0;;;;17531:26:::1;17560:55:::0;;;:10:::1;:55:::0;;;;;;;17628:28;;;;;;;;::::1;;;;::::0;;;;::::1;::::0;;;;;;;;;::::1;::::0;:17:::1;:28::i;:::-;17707:18;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;17707:18:0;;;;;;;;;;;;;;;;;;;;;;;;17697:29;;;;::::1;::::0;;;;17739:1:::1;17677:50:::0;;;:19:::1;::::0;::::1;:50:::0;;;;;-1:-1:-1;;;;;17677:50:0::1;:64:::0;17673:234:::1;;17802:18;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;;;17802:18:0;;;;;;;;;;;;;;;;;;;;;;17792:29;;;;::::1;::::0;-1:-1:-1;17772:50:0;;;:19:::1;::::0;::::1;:50:::0;;;;;;;17758:65;;-1:-1:-1;;;;;17772:50:0;;::::1;-1:-1:-1::0;;;;;;17758:65:0;;::::1;;::::0;;17875:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17772:50:::1;17875:18:::0;;;;;17865:29;;;;::::1;::::0;;;;17845:50;;;;;;;;;17838:57;;;;::::1;::::0;;17673:234:::1;17952:20;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;17952:20:0;;;;;;;;;;;;;;;;;;;;;;;;17942:31;;;;::::1;::::0;;;;17986:1:::1;17922:52:::0;;;:19:::1;::::0;::::1;:52:::0;;;;;-1:-1:-1;;;;;17922:52:0::1;:66:::0;17918:242:::1;;18051:20;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;;;18051:20:0;;;;;;;;;;;;;;;;;;;;;;18041:31;;;;::::1;::::0;-1:-1:-1;18021:52:0;;;:19:::1;::::0;::::1;:52:::0;;;;;;;18005:6:::1;:69:::0;;-1:-1:-1;;;;;18021:52:0;;::::1;-1:-1:-1::0;;;;;;18005:69:0;;::::1;;::::0;;18126:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18021:52:::1;18126:20:::0;;;;;18116:31;;;;::::1;::::0;;;;18096:52;;;;;;;;;18089:59;;;;::::1;::::0;;17918:242:::1;18205:18;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;18205:18:0;;;;;;;;;;;;;;;;;;;;;;;;18195:29;;;;::::1;::::0;;;;18237:1:::1;18175:50:::0;;;:19:::1;::::0;::::1;:50:::0;;;;;-1:-1:-1;;;;;18175:50:0::1;:64:::0;18171:234:::1;;18300:18;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;;;18300:18:0;;;;;;;;;;;;;;;;;;;;;;18290:29;;;;::::1;::::0;-1:-1:-1;18270:50:0;;;:19:::1;::::0;::::1;:50:::0;;;;;;;18256:4:::1;:65:::0;;-1:-1:-1;;;;;18270:50:0;;::::1;-1:-1:-1::0;;;;;;18256:65:0;;::::1;;::::0;;18373:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18270:50:::1;18373:18:::0;;;;;18363:29;;;;::::1;::::0;;;;18343:50;;;;;;;;;18336:57;;;;::::1;::::0;;18171:234:::1;18450:18;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;18450:18:0;;;;;;;;;;;;;;;;;;;;;;;;18440:29;;;;::::1;::::0;;;;18482:1:::1;18420:50:::0;;;:19:::1;::::0;::::1;:50:::0;;;;;-1:-1:-1;;;;;18420:50:0::1;:64:::0;18416:226:::1;;18538:18;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;;;18538:18:0;;;;;;;;;;;;;;;;;;;;;;18528:29;;;;::::1;::::0;-1:-1:-1;18508:50:0;;;:19:::1;::::0;::::1;:50:::0;;;;;;;18501:4:::1;:57:::0;;-1:-1:-1;;;;;18508:50:0;;::::1;-1:-1:-1::0;;;;;;18501:57:0;;::::1;;::::0;;18610:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18508:50:::1;18610:18:::0;;;;;18600:29;;;;::::1;::::0;;;;18580:50;;;;;;;;;18573:57;;;;::::1;::::0;;18416:226:::1;18687:18;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;18687:18:0;;;;;;;;;;;;;;;;;;;;;;;;18677:29;;;;::::1;::::0;;;;18719:1:::1;18657:50:::0;;;:19:::1;::::0;::::1;:50:::0;;;;;-1:-1:-1;;;;;18657:50:0::1;:64:::0;18653:226:::1;;18775:18;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;;;18775:18:0;;;;;;;;;;;;;;;;;;;;;;18765:29;;;;::::1;::::0;-1:-1:-1;18745:50:0;;;:19:::1;::::0;::::1;:50:::0;;;;;;;18738:4:::1;:57:::0;;-1:-1:-1;;;;;18745:50:0;;::::1;-1:-1:-1::0;;;;;;18738:57:0;;::::1;;::::0;;18847:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18745:50:::1;18847:18:::0;;;;;18837:29;;;;::::1;::::0;;;;18817:50;;;;;;;;;18810:57;;;;::::1;::::0;;18653:226:::1;18890:36:::0;;-1:-1:-1;;18890:36:0::1;::::0;;17468:1466::o;10424:37::-;;;-1:-1:-1;;;;;10424:37:0;;:::o;24914:712::-;25009:24;;:::i;:::-;25063:16;:14;:16::i;:::-;25052:8;;;:27;25102:14;:12;:14::i;:::-;25090:9;;;:26;25138:13;;25173:11;;25138:47;;;-1:-1:-1;;;25138:47:0;;;;;;;;;;-1:-1:-1;;;;;25138:13:0;;;;:34;;:47;;;;;25090:9;;25138:47;;;;;;;;:13;:47;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;25138:47:0;25127:8;;;:58;25207:22;:20;:22::i;:::-;25196:8;;;:33;25253:13;;25284:11;;25253:43;;;-1:-1:-1;;;25253:43:0;;;;;;;;;;-1:-1:-1;;;;;25253:13:0;;;;:30;;:43;;;;;25196:8;;25253:43;;;;;;;;:13;:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;25253:43:0;25242:54;;-1:-1:-1;;;;;25318:22:0;;;;;25307:8;;;:33;25368:13;;25394:11;;25368:45;;;-1:-1:-1;;;25368:45:0;;;;;;;;;;;;;;;;;;:13;;;:25;;:45;;;;;;;;;;;;;;;:13;:45;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;25368:45:0;25352:8;;;25351:62;25437:4;;;:21;;;-1:-1:-1;;;25437:21:0;;-1:-1:-1;;;;;25437:21:0;;;;;;;;;;;;:4;;;;;:14;;:21;;;;;25352:8;;25437:21;;;;;;;;:4;:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;25437:21:0;25426:8;;;;:32;;;;-1:-1:-1;;;;;25482:14:0;;;;;;:7;:14;;;;;;;25471:8;;;:25;25518:20;25482:14;25518:13;:20::i;:::-;25507:8;;;:31;25566:17;;25593:9;;25566:52;;;-1:-1:-1;;;25566:52:0;;;;;;;;;25612:4;25566:52;;;;;;-1:-1:-1;;;;;25566:17:0;;;;:26;;:52;;;;;;;;;;;;:17;:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;25566:52:0;25552:8;;;25551:67;25552:5;24914:712;-1:-1:-1;24914:712:0:o;10304:19::-;;;-1:-1:-1;;;;;10304:19:0;;:::o;10183:18::-;;;-1:-1:-1;;;;;10183:18:0;;:::o;10115:28::-;;;;:::o;26072:425::-;26162:16;;;26176:1;26162:16;;;;;;;;;26116:7;;26138:21;;26162:16;;;;26138:21;;26162:16;;;-1:-1:-1;;26209:4:0;;26191:7;;;;-1:-1:-1;;;;;;26209:4:0;;26191:7;;-1:-1:-1;26209:4:0;;26191:7;;;;-1:-1:-1;;;;;26191:23:0;;;:7;;;;;;;;;:23;26235:4;;26225:7;;26235:4;;;26225;;26235;;26225:7;;;;;;-1:-1:-1;;;;;26225:14:0;;;:7;;;;;;;;;:14;26260:4;;26250:7;;26260:4;;;26250;;26255:1;;26250:7;;;;;;-1:-1:-1;;;;;26250:14:0;;;:7;;;;;;;;;;:14;;;;26304:11;;:37;;;-1:-1:-1;;;26304:37:0;;26330:4;26304:37;;;;;;;;;;;;;;;;;;;;26275:14;;26304:11;;;;;:25;;26330:4;;26336;;26304:37;;;;;;;;;;;;;;;26275:14;26304:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;26304:37:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;26304:37:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;26304:37:0;;;;;;;;;;;;-1:-1:-1;26304:37:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;26300:166;;-1:-1:-1;26450:1:0;26300:166;;;26397:7;26405:1;26397:10;;;;;;;;;;;;;;26388:19;;26342:77;26300:166;26483:6;-1:-1:-1;;26072:425:0;:::o;16883:573::-;11606:5;;-1:-1:-1;;;;;11606:5:0;11592:10;:19;11584:50;;;;;-1:-1:-1;;;11584:50:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;11584:50:0;;;;;;;;;;;;;;;17003:42:::1;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;::::1;::::0;;;;;;;;;;;;;;;;;;;;;;;;16993:53;;;;::::1;::::0;;;;16953:26:::1;16982:65:::0;;;:10:::1;:65:::0;;;;;;;17060:28;;;;;;;;::::1;;;;::::0;;;;::::1;::::0;;;;;;;;;::::1;::::0;:17:::1;:28::i;:::-;17137:31;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;17137:31:0;;;;;;;;;;;;;;;;;;;;;;;;17127:42;;;;::::1;::::0;;;;17182:1:::1;17107:63:::0;;;:19:::1;::::0;::::1;:63:::0;;;;;-1:-1:-1;;;;;17107:63:0::1;17099:105;;;::::0;;-1:-1:-1;;;17099:105:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;17099:105:0;;;;;;;;;;;;;::::1;;17286:31;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;;;17286:31:0;;;;;;;;;;;;;;;;;;;;;;17276:42;;;;::::1;::::0;-1:-1:-1;17256:63:0;;;:19:::1;::::0;::::1;:63:::0;;;;;;;17217:17:::1;:103:::0;;-1:-1:-1;;;;;17256:63:0;;::::1;-1:-1:-1::0;;;;;;17217:103:0;;::::1;;::::0;;17368:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17256:63:::1;17368:31:::0;;;;;17358:42;;;;::::1;::::0;;;;17338:63;;;;;;;;;17331:70;;;;::::1;::::0;;17412:36;;-1:-1:-1;;17412:36:0::1;::::0;;16883:573::o;11330:17::-;;;;:::o;15238:545::-;11606:5;;-1:-1:-1;;;;;11606:5:0;11592:10;:19;11584:50;;;;;-1:-1:-1;;;11584:50:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;11584:50:0;;;;;;;;;;;;;;;15355:35:::1;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;15355:35:0;;;;;;;;;;;;;;;;;;;;;;;;15345:46;;;;::::1;::::0;;;;15305:26:::1;15334:58:::0;;;:10:::1;:58:::0;;;;;;;15403:28;;;;;;;;::::1;;;;::::0;;;;::::1;::::0;;;;;;;;;::::1;::::0;:17:::1;:28::i;:::-;15480:32;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;15480:32:0;;;;;;;;;;;;;;;;;;;;;;;;15470:43;;;;::::1;::::0;;;;15526:1:::1;15450:64:::0;;;:19:::1;::::0;::::1;:64:::0;;;;;-1:-1:-1;;;;;15450:64:0::1;15442:106;;;::::0;;-1:-1:-1;;;15442:106:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;15442:106:0;;;;;;;;;;;;;::::1;;15612:32;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;;;15612:32:0;;;;;;;;;;;;;;;;;;;;;;15602:43;;;;::::1;::::0;-1:-1:-1;15582:64:0;;;:19:::1;::::0;::::1;:64:::0;;;;;;;15561:18:::1;:85:::0;;-1:-1:-1;;;;;15582:64:0;;::::1;-1:-1:-1::0;;;;;;15561:85:0;;::::1;;::::0;;15694:32;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15582:64:::1;15694:32:::0;;;;;15684:43;;;;::::1;::::0;;;;15664:64;;;;;;;;;15657:71;;;;::::1;::::0;;15739:36;;-1:-1:-1;;15739:36:0::1;::::0;;15238:545::o;11124:46::-;;;;;;;;;;;;;;;;;;;;;;;;:::o;28023:233::-;28131:7;28158:10;:48;28190:13;28179:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;28169:36;;;;;;28158:48;;;;;;;;;;;:55;;:90;28235:10;28224:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;28214:33;;;;;;28158:90;;;;;;;;;;;;28151:97;;28023:233;;;;;:::o;10503:24::-;;;;:::o;11279:44::-;11316:7;11279:44;:::o;10650:35::-;;;;:::o;14283:485::-;11606:5;;-1:-1:-1;;;;;11606:5:0;11592:10;:19;11584:50;;;;;-1:-1:-1;;;11584:50:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;11584:50:0;;;;;;;;;;;;;;;14396:31:::1;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;14396:31:0;;;;;;;;;;;;;;;;;;;;;;;;14386:42;;;;::::1;::::0;;;;14346:26:::1;14375:54:::0;;;:10:::1;:54:::0;;;;;;;14440:28;;;;;;;;::::1;;;;::::0;;;;::::1;::::0;;;;;;;;;::::1;::::0;:17:::1;:28::i;:::-;14517:19;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;14517:19:0;;;;;;;;;;;;;;;;;;;;;;;;14507:30;;;;::::1;::::0;;;;14550:1:::1;14487:51:::0;;;:19:::1;::::0;::::1;:51:::0;;;;;-1:-1:-1;;;;;14487:51:0::1;14479:93;;;::::0;;-1:-1:-1;;;14479:93:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;14479:93:0;;;;;;;;;;;;;::::1;;14623:19;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;;;14623:19:0;;;;;;;;;;;;;;;;;;;;;;14613:30;;;;::::1;::::0;-1:-1:-1;14593:51:0;;;:19:::1;::::0;;::::1;:51:::0;;;;;;;14585:59;;-1:-1:-1;;;;;14593:51:0;;::::1;-1:-1:-1::0;;;;;;14585:59:0;;::::1;;::::0;;;14692:19;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14593:51:::1;14692:19:::0;;;;;14682:30;;;;::::1;::::0;;;;14662:51;;;;;;;;14655:58;;;;::::1;::::0;;14724:36;;-1:-1:-1;;14724:36:0::1;::::0;;14283:485::o;12992:274::-;11606:5;;-1:-1:-1;;;;;11606:5:0;11592:10;:19;11584:50;;;;;-1:-1:-1;;;11584:50:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;11584:50:0;;;;;;;;;;;;;;;13083:26:::1;13112:10;:48;13144:13;13133:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;;::::1;::::0;;;::::1;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;13133:25:0::1;::::0;;-1:-1:-1;;13133:25:0;;::::1;::::0;;;;;;13123:36;;13133:25:::1;13123:36:::0;;::::1;::::0;13112:48;;;;::::1;::::0;;;;;;;-1:-1:-1;13112:48:0;;;13171:36;;-1:-1:-1;;13171:36:0::1;::::0;;13223:35;;;;;;;;;::::1;::::0;;;13112:48;;-1:-1:-1;13223:35:0::1;::::0;13244:13;;13223:35;;-1:-1:-1;13223:35:0;;-1:-1:-1;13223:35:0;;;-1:-1:-1;13223:35:0;::::1;::::0;;;;;;;::::1;;;;;;;::::0;;::::1;::::0;;;::::1;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11645:1;12992:274:::0;:::o;10278:19::-;;;-1:-1:-1;;;;;10278:19:0;;:::o;10150:20::-;;;-1:-1:-1;;;;;10150:20:0;;:::o;14776:454::-;11606:5;;-1:-1:-1;;;;;11606:5:0;11592:10;:19;11584:50;;;;;-1:-1:-1;;;11584:50:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;11584:50:0;;;;;;;;;;;;;;;14888:30:::1;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;14888:30:0;;;;;;;;;;;;;;;;;;;;;;;;14878:41;;;;::::1;::::0;;;;14838:26:::1;14867:53:::0;;;:10:::1;:53:::0;;;;;;;14931:28;;;;;;;;::::1;;;;::::0;;;;::::1;::::0;;;;;;;;;::::1;::::0;:17:::1;:28::i;:::-;15008:27;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;15008:27:0;;;;;;;;;;;;;;;;;;;;;;;;14998:38;;;;::::1;::::0;;;;15049:1:::1;14978:59:::0;;;:19:::1;::::0;::::1;:59:::0;;;;;-1:-1:-1;;;;;14978:59:0::1;14970:101;;;::::0;;-1:-1:-1;;;14970:101:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;14970:101:0;;;;;;;;;;;;;::::1;;15145:27;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;15145:27:0;;;;;;;;;;;;;;;;;;;;;;;;15135:38;;;;::::1;::::0;;;;15115:59:::1;::::0;;;:19:::1;::::0;::::1;:59:::0;;;;;15084:13:::1;:91:::0;;-1:-1:-1;;;;;;15084:91:0::1;-1:-1:-1::0;;;;;15115:59:0;;::::1;15084:91:::0;;;::::1;::::0;;15186:36;;-1:-1:-1;;15186:36:0::1;::::0;;14776:454::o;13786:489::-;11606:5;;-1:-1:-1;;;;;11606:5:0;11592:10;:19;11584:50;;;;;-1:-1:-1;;;11584:50:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;11584:50:0;;;;;;;;;;;;;;;13929:26:::1;13958:10;:48;13990:13;13979:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;;::::1;::::0;;;::::1;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13969:36;;;;;;13958:48;;;;;;;;;;;13929:77;;14071:6;14017:9;:16;;:51;14055:10;14044:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;;::::1;::::0;;;::::1;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;14044:22:0::1;::::0;;-1:-1:-1;;14044:22:0;;::::1;::::0;;;;;;14034:33;;14044:22:::1;14034:33:::0;;::::1;::::0;14017:51;;;;::::1;::::0;;;;-1:-1:-1;;;14017:51:0;-1:-1:-1;14017:51:0;:60;14088:35;;-1:-1:-1;;14088:35:0::1;14119:4;14088:35;::::0;;14180:5:::1;::::0;14160:26:::1;::::0;:15:::1;::::0;:19:::1;:26::i;:::-;14134:23;::::0;::::1;:52:::0;14202:65:::1;::::0;;;;;;;;;;;;;;;;;;;;::::1;::::0;14233:13;;14248:10;;14260:6;;14202:65;;::::1;::::0;;::::1;::::0;;;;;;::::1;::::0;;;;;;;::::1;;::::0;;::::1;::::0;;;::::1;::::0;::::1;;;;10332:43:::0;;;-1:-1:-1;;;;;10332:43:0;;:::o;10767:51::-;;;;;;;;;;;;;:::o;16338:537::-;11606:5;;-1:-1:-1;;;;;11606:5:0;11592:10;:19;11584:50;;;;;-1:-1:-1;;;11584:50:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;11584:50:0;;;;;;;;;;;;;;;16452:36:::1;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;16452:36:0;;;;;;;;;;;;;;;;;;;;;;;;16442:47;;;;::::1;::::0;;;;16402:26:::1;16431:59:::0;;;:10:::1;:59:::0;;;;;;;16503:28;;;;;;;;::::1;;;;::::0;;;;::::1;::::0;;;;;;;;;::::1;::::0;:17:::1;:28::i;:::-;16580:25;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;16580:25:0;;;;;;;;;;;;;;;;;;;;;;;;16570:36;;;;::::1;::::0;;;;16619:1:::1;16550:57:::0;;;:19:::1;::::0;::::1;:57:::0;;;;;-1:-1:-1;;;;;16550:57:0::1;16542:99;;;::::0;;-1:-1:-1;;;16542:99:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;16542:99:0;;;;;;;;;;;;;::::1;;16717:25;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;;;16717:25:0;;;;;;;;;;;;;;;;;;;;;;16707:36;;;;::::1;::::0;-1:-1:-1;16687:57:0;;;:19:::1;::::0;::::1;:57:::0;;;;;;;16654:11:::1;:91:::0;;-1:-1:-1;;;;;16687:57:0;;::::1;-1:-1:-1::0;;;;;;16654:91:0;;::::1;;::::0;;16793:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16687:57:::1;16793:25:::0;;;;;16783:36;;;;::::1;::::0;;;;16763:57;;;;;;;;;16756:64;;;;::::1;::::0;;16831:36;;-1:-1:-1;;16831:36:0::1;::::0;;16338:537::o;10611:32::-;;;;:::o;11229:43::-;11266:6;11229:43;:::o;21388:582::-;9071:1;9676:7;;:19;;9668:63;;;;;-1:-1:-1;;;9668:63:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;9071:1;9809:7;:18;21470:12;21462:38:::1;;;::::0;;-1:-1:-1;;;21462:38:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;21462:38:0;;;;;;;;;;;;;::::1;;21519:4;::::0;;:26:::1;::::0;;-1:-1:-1;;;21519:26:0;;21534:10:::1;21519:26:::0;;::::1;::::0;;;;;21549:8;;-1:-1:-1;;;;;21519: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;21519:26:0;:38:::1;;21511:64;;;::::0;;-1:-1:-1;;;21511:64:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;21511:64:0;;;;;;;;;;;;;::::1;;21588:19;21596:10;21588:7;:19::i;:::-;21618:4;::::0;;:54:::1;::::0;;-1:-1:-1;;;21618:54:0;;21636:10:::1;21618:54:::0;;::::1;::::0;;;;21656:4:::1;21618:54:::0;;;;;;;;;;;-1:-1:-1;;;;;21618: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;;21683:17:0::1;::::0;21709:9:::1;::::0;21683:46:::1;::::0;;-1:-1:-1;;;21683:46:0;;::::1;::::0;::::1;::::0;;;;;;;;;;;-1:-1:-1;;;;;21683: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;;21806:10:0::1;21798:19;::::0;;;:7:::1;:19;::::0;;;;;:33:::1;::::0;-1:-1:-1;21798:19:0;-1:-1:-1;21822:8:0;21798:23:::1;:33::i;:::-;21784:10;21776:19;::::0;;;:7:::1;:19;::::0;;;;:55;21855:10:::1;::::0;:24:::1;::::0;21870:8;21855:14:::1;:24::i;:::-;21842:10;:37:::0;21890:23:::1;21902:10;21890:11;:23::i;:::-;21929:31;::::0;;21939:10:::1;21929:31:::0;;::::1;::::0;::::1;::::0;;;;;::::1;::::0;;;;;;;;;::::1;-1:-1:-1::0;9027:1:0;9988:7;:22;21388:582::o;10382:35::-;;;-1:-1:-1;;;;;10382:35:0;;:::o;27776:239::-;27887:7;27914:10;:48;27946:13;27935:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;27925:36;;;;;;27914:48;;;;;;;;;;;:58;;:93;27994:10;27983:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;27983:22:0;;;;;;-1:-1:-1;;27983:22:0;;;;;;27973:33;;27983:22;27973:33;;;;27914:93;;;;;;;;;-1:-1:-1;;;27914:93:0;-1:-1:-1;27914:93:0;;-1:-1:-1;;;;;27914:93:0;;27776:239;-1:-1:-1;;;27776:239:0:o;18946:537::-;11606:5;;-1:-1:-1;;;;;11606:5:0;11592:10;:19;11584:50;;;;;-1:-1:-1;;;11584:50:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;11584:50:0;;;;;;;;;;;;;;;19065:37:::1;::::0;;::::1;::::0;;::::1;::::0;;;19044:10:::1;19065:37:::0;;;;;;::::1;::::0;;;;;;;;;;;;;;;;;;;;;;;;19055:48;;;;::::1;::::0;;;;19015:26:::1;19044:60:::0;;;;;;;;;;19115:28;;;;;;;;::::1;;;;::::0;;;;::::1;::::0;;;;;;;;;::::1;::::0;:17:::1;:28::i;:::-;19189:34;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;19189:34:0;;;;;;;;;;;;;;;;;;;;;;;;19179:45;;;;::::1;::::0;;;;19228:1:::1;19162:63:::0;;;:16:::1;::::0;::::1;:63:::0;;;;;19154:94:::1;;;::::0;;-1:-1:-1;;;19154:94:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;19154:94:0;;;;;;;;;;;;;::::1;;19311:34;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;;;19311:34:0;;;;;;;;;;;;;;;;;;;;;;19301:45;;;;::::1;::::0;19284:63:::1;::::0;;;:16:::1;::::0;::::1;:63:::0;;;;;;;19261:20:::1;:86:::0;19392:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19382:45;;;;::::1;::::0;19365:63;;;;;;;19358:70;19439:36;;-1:-1:-1;;19439:36:0::1;::::0;;18946:537::o;25635:429::-;25727:16;;;25741:1;25727:16;;;;;;;;;25681:7;;25703:21;;25727:16;;;;25703:21;;25727:16;;;-1:-1:-1;;25774:6:0;;25756:7;;;;-1:-1:-1;;;;;;25774:6:0;;25756:7;;-1:-1:-1;25774:6:0;;25756:7;;;20030:483;11606:5;;-1:-1:-1;;;;;11606:5:0;11592:10;:19;11584:50;;;;;-1:-1:-1;;;11584:50:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;11584:50:0;;;;;;;;;;;;;;;20140:28:::1;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;20140:28:0;;;;;;;;;;;;;;;;;;;;;;;;20130:39;;;;::::1;::::0;;;;20090:26:::1;20119:51:::0;;;:10:::1;:51:::0;;;;;;;20181:28;;;;;;;;::::1;;;;::::0;;;;::::1;::::0;;;;;;;;;::::1;::::0;:17:::1;:28::i;:::-;20255:25;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;20255:25:0;;;;;;;;;;;;;;;;;;;;;;;;20245:36;;;;::::1;::::0;;;;20285:1:::1;20228:54:::0;;;:16:::1;::::0;::::1;:54:::0;;;;;20220:85:::1;;;::::0;;-1:-1:-1;;;20220:85:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;20220:85:0;;;;;;;;;;;;;::::1;;20359:25;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;;;20359:25:0;;;;;;;;;;;;;;;;;;;;;;20349:36;;;;::::1;::::0;20332:54:::1;::::0;;;:16:::1;::::0;::::1;:54:::0;;;;;;;20318:68;;20431:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20421:36;;;;::::1;::::0;20404:54;;;;;;;20397:61;20469:36;;-1:-1:-1;;20469:36:0::1;::::0;;20030:483::o;19491:531::-;11606:5;;-1:-1:-1;;;;;11606:5:0;11592:10;:19;11584:50;;;;;-1:-1:-1;;;11584:50:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;11584:50:0;;;;;;;;;;;;;;;19609:36:::1;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;19609:36:0;;;;;;;;;;;;;;;;;;;;;;;;19599:47;;;;::::1;::::0;;;;19559:26:::1;19588:59:::0;;;:10:::1;:59:::0;;;;;;;19658:28;;;;;;;;::::1;;;;::::0;;;;::::1;::::0;;;;;;;;;::::1;::::0;:17:::1;:28::i;:::-;19732:33;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;19732:33:0;;;;;;;;;;;;;;;;;;;;;;;;19722:44;;;;::::1;::::0;;;;19770:1:::1;19705:62:::0;;;:16:::1;::::0;::::1;:62:::0;;;;;19697:93:::1;;;::::0;;-1:-1:-1;;;19697:93:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;19697:93:0;;;;;;;;;;;;;::::1;;19852:33;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;;;19852:33:0;;;;;;;;;;;;;;;;;;;;;;19842:44;;;;::::1;::::0;19825:62:::1;::::0;;;:16:::1;::::0;::::1;:62:::0;;;;;;;19803:19:::1;:84:::0;19932:33;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19922:44;;;;::::1;::::0;19905:62;;;;;;;19898:69;19978:36;;-1:-1:-1;;19978:36:0::1;::::0;;19491:531::o;10827:40::-;;;;:::o;12575:285::-;11606:5;;-1:-1:-1;;;;;11606:5:0;11592:10;:19;11584:50;;;;;-1:-1:-1;;;11584:50:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;11584:50:0;;;;;;;;;;;;;;;11266:6:::1;12642;:23;;12634:88;;;;-1:-1:-1::0;;;12634:88:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11316:7;12741:6;:23;;12733:92;;;;-1:-1:-1::0;;;12733:92:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12838:5;:14:::0;12575:285::o;11083:32::-;;;-1:-1:-1;;;;;11083:32:0;;:::o;15791:539::-;11606:5;;-1:-1:-1;;;;;11606:5:0;11592:10;:19;11584:50;;;;;-1:-1:-1;;;11584:50:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;11584:50:0;;;;;;;;;;;;;;;15907:34:::1;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;15907:34:0;;;;;;;;;;;;;;;;;;;;;;;;15897:45;;;;::::1;::::0;;;;15857:26:::1;15886:57:::0;;;:10:::1;:57:::0;;;;;;;15954:28;;;;;;;;::::1;;;;::::0;;;;::::1;::::0;;;;;;;;;::::1;::::0;:17:::1;:28::i;:::-;16031:31;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;-1:-1:-1;;;16031:31:0;;;;;;;;;;;;;;;;;;;;;;;;16021:42;;;;::::1;::::0;;;;16076:1:::1;16001:63:::0;;;:19:::1;::::0;::::1;:63:::0;;;;;-1:-1:-1;;;;;16001:63:0::1;15993:105;;;::::0;;-1:-1:-1;;;15993:105:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;15993:105:0;;;;;;;;;;;;;::::1;;16161:31;::::0;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;;;16161:31:0;;;;;;;;;;;;;;;;;;;;;;16151:42;;;;::::1;::::0;-1:-1:-1;16131:63:0;;;:19:::1;::::0;::::1;:63:::0;;;;;;;16111:17:::1;:83:::0;;-1:-1:-1;;;;;16131:63:0;;::::1;-1:-1:-1::0;;;;;;16111:83:0;;::::1;;::::0;;16242:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16131:63:::1;16242:31:::0;;;;;16232:42;;;;::::1;::::0;;;;16212:63;;;;;;;;;16205:70;;;;::::1;::::0;;16286:36;;-1:-1:-1;;16286:36:0::1;::::0;;15791:539::o;26891:877::-;27013:15;;27057:17;;27087:9;;27057:55;;;-1:-1:-1;;;27057:55:0;;;;;;;;;27106:4;27057:55;;;;;26950:20;;27013:15;26950:20;;-1:-1:-1;;;;;27057:17:0;;;;:29;;:55;;;;;;;;;;;;;;;:17;:55;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;27057:55:0;;-1:-1:-1;27141:11:0;;;;;:42;;;27182:1;27169:10;;:14;27141:42;27123:419;;;27214:23;27240:44;27278:5;27240:33;27252:20;;27240:7;:11;;:33;;;;:::i;:44::-;27214:70;;27299:22;27325:43;27362:5;27325:32;27337:19;;27325:7;:11;;:32;;;;:::i;:43::-;27299:69;-1:-1:-1;27393:48:0;27299:69;27393:28;:7;27405:15;27393:11;:28::i;:48::-;27383:58;;27475:55;27496:33;27518:10;;27496:17;27508:4;27496:7;:11;;:17;;;;:::i;:33::-;27475:16;;:20;:55::i;:::-;27456:74;;27123:419;;;-1:-1:-1;;;;;27577:14:0;;27554:19;27577:14;;;:7;:14;;;;;;:46;;27618:4;;27577:36;;27596:16;27577:18;:36::i;:46::-;-1:-1:-1;;;;;27654:23:0;;;;;;:16;:23;;;;;;27554:69;;-1:-1:-1;27640:37:0;;27636:125;;;-1:-1:-1;;;;;27725:23:0;;;;;;:16;:23;;;;;;27709:40;;:11;;:15;:40::i;:::-;27694:55;;27636:125;26891:877;;;;;;:::o;10470:26::-;;;;:::o;12868:114::-;12921:4;;;12942:17;;12921:53;;;-1:-1:-1;;;12921:53:0;;-1:-1:-1;;;;;12942:17:0;;;12921:53;;;;;;;-1:-1:-1;;12921:53:0;;;;;:4;;;:12;;:53;;;;;;;;;;;;;;:4;;:53;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;12868:114:0:o;20999:381::-;21090:28;;:36;;21122:4;21090:36;21082:80;;;;;-1:-1:-1;;;21082:80:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;21208:15;21181:9;:23;;;:42;;21173:94;;;;-1:-1:-1;;;21173:94:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21286:23;;;;21331:15;;21286:41;;11215:7;21286:27;:41::i;:::-;:60;;21278:94;;;;;-1:-1:-1;;;21278:94:0;;;;;;;;;;;;-1:-1:-1;;;21278:94:0;;;;;;;;;;;;;;;20999:381;:::o;7153:196::-;7211:7;7231:6;7227:37;;-1:-1:-1;7255:1:0;7248:8;;7227:37;7282:5;;;7286:1;7282;:5;:1;7302:5;;;;;:10;7294:34;;;;;-1:-1:-1;;;7294:34:0;;;;;;;;;;;;-1:-1:-1;;;7294:34:0;;;;;;;;;;;;;;;7342:1;7153:196;-1:-1:-1;;;7153:196:0:o;7436:283::-;7494:7;7522:1;7518;:5;7510:29;;;;;-1:-1:-1;;;7510:29:0;;;;;;;;;;;;-1:-1:-1;;;7510:29:0;;;;;;;;;;;;;;;7598:9;7614:1;7610;:5;;;;;;;7436:283;-1:-1:-1;;;;7436:283:0:o;7837:129::-;7895:7;7924:1;7919;:6;;7911:30;;;;;-1:-1:-1;;;7911:30:0;;;;;;;;;;;;-1:-1:-1;;;7911:30:0;;;;;;;;;;;;;;;-1:-1:-1;7955:5:0;;;7837:129::o;8033:149::-;8091:7;8119:5;;;8139:6;;;;8131:30;;;;;-1:-1:-1;;;8131:30:0;;;;;;;;;;;;-1:-1:-1;;;8131:30:0;;;;;;;;;;;;;;24231:196;24293:13;;24318:11;;24293:44;;;-1:-1:-1;;;24293:44:0;;;;;;;;;-1:-1:-1;;;;;24293:44:0;;;;;;;;;:13;;;:24;;:44;;;;;;;;;;;;;;;:13;;:44;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;24393:15:0;;-1:-1:-1;;;;;24374:14:0;;;;;;:7;24293:44;24374:14;;;;;:45;;24414:4;;24374:35;;:18;:35::i;:45::-;-1:-1:-1;;;;;24348:23:0;;;;;;;:16;:23;;;;;:71;24231:196::o;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;:::o

Swarm Source

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