ETH Price: $3,476.99 (+5.12%)

Contract

0xB923C1d3C4e3C17CE90c771A952B3844B5bd1Bcc
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Withdraw Mine128465532021-07-17 21:06:341280 days ago1626555994IN
0xB923C1d3...4B5bd1Bcc
0 ETH0.0017938419
_loan127541252021-07-03 10:45:061294 days ago1625309106IN
0xB923C1d3...4B5bd1Bcc
0 ETH0.000876479.24
Loan127541162021-07-03 10:41:591294 days ago1625308919IN
0xB923C1d3...4B5bd1Bcc
0 ETH0.000512484.4
Withdraw Mine127163552021-06-27 13:39:361300 days ago1624801176IN
0xB923C1d3...4B5bd1Bcc
0 ETH0.0012433213.2
_loan126979462021-06-24 16:40:411303 days ago1624552841IN
0xB923C1d3...4B5bd1Bcc
0 ETH0.0013661114.4
Loan126979342021-06-24 16:36:211303 days ago1624552581IN
0xB923C1d3...4B5bd1Bcc
0 ETH0.0011648610.00000112
_withdraw126132392021-06-11 12:25:481316 days ago1623414348IN
0xB923C1d3...4B5bd1Bcc
0 ETH0.0008681512
Withdraw126132382021-06-11 12:25:341316 days ago1623414334IN
0xB923C1d3...4B5bd1Bcc
0 ETH0.001870916.72
Repay126132062021-06-11 12:21:281316 days ago1623414088IN
0xB923C1d3...4B5bd1Bcc
2.713511 ETH0.0025598117.76
_withdraw126131832021-06-11 12:15:411316 days ago1623413741IN
0xB923C1d3...4B5bd1Bcc
0 ETH0.000937612.96
Withdraw126131812021-06-11 12:15:141316 days ago1623413714IN
0xB923C1d3...4B5bd1Bcc
0 ETH0.0019022317
Repay126131702021-06-11 12:13:091316 days ago1623413589IN
0xB923C1d3...4B5bd1Bcc
3.753046 ETH0.0024502617
_withdraw126131292021-06-11 12:04:331316 days ago1623413073IN
0xB923C1d3...4B5bd1Bcc
0 ETH0.0012154116.8
Withdraw126131262021-06-11 12:04:191316 days ago1623413059IN
0xB923C1d3...4B5bd1Bcc
0 ETH0.0017903316
Repay126131232021-06-11 12:03:461316 days ago1623413026IN
0xB923C1d3...4B5bd1Bcc
3.027576 ETH0.0023061216
_withdraw126130932021-06-11 11:57:111316 days ago1623412631IN
0xB923C1d3...4B5bd1Bcc
0 ETH0.0013888119.2
Withdraw126130922021-06-11 11:57:011316 days ago1623412621IN
0xB923C1d3...4B5bd1Bcc
0 ETH0.0017865416
_loan126103402021-06-11 1:36:591316 days ago1623375419IN
0xB923C1d3...4B5bd1Bcc
0 ETH0.0010710714.4
Loan125986512021-06-09 6:11:031318 days ago1623219063IN
0xB923C1d3...4B5bd1Bcc
0 ETH0.0016177414
Withdraw Mine125883622021-06-07 16:03:251320 days ago1623081805IN
0xB923C1d3...4B5bd1Bcc
0 ETH0.0017802618.9
Withdraw Mine125730792021-06-05 7:15:441322 days ago1622877344IN
0xB923C1d3...4B5bd1Bcc
0 ETH0.0014093115.00000145
Withdraw Mine125648412021-06-04 0:51:431323 days ago1622767903IN
0xB923C1d3...4B5bd1Bcc
0 ETH0.0022753724.1
_withdraw125597512021-06-03 5:51:521324 days ago1622699512IN
0xB923C1d3...4B5bd1Bcc
0 ETH0.0017468624.15
_withdraw125597512021-06-03 5:51:521324 days ago1622699512IN
0xB923C1d3...4B5bd1Bcc
0 ETH0.00049916.89999999
Withdraw Mine125475392021-06-01 8:42:341326 days ago1622536954IN
0xB923C1d3...4B5bd1Bcc
0 ETH0.0018884620
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block
From
To
126132062021-06-11 12:21:281316 days ago1623414088
0xB923C1d3...4B5bd1Bcc
2.713511 ETH
126131702021-06-11 12:13:091316 days ago1623413589
0xB923C1d3...4B5bd1Bcc
3.753046 ETH
126131232021-06-11 12:03:461316 days ago1623413026
0xB923C1d3...4B5bd1Bcc
3.027576 ETH
124574812021-05-18 9:11:431340 days ago1621329103
0xB923C1d3...4B5bd1Bcc
2.019755 ETH
124571302021-05-18 7:50:011340 days ago1621324201
0xB923C1d3...4B5bd1Bcc
1.137644 ETH
124569092021-05-18 6:58:581340 days ago1621321138
0xB923C1d3...4B5bd1Bcc
5.985735 ETH
124568562021-05-18 6:48:211340 days ago1621320501
0xB923C1d3...4B5bd1Bcc
5.766362 ETH
124566162021-05-18 5:59:111340 days ago1621317551
0xB923C1d3...4B5bd1Bcc
1.327209 ETH
124565702021-05-18 5:50:181340 days ago1621317018
0xB923C1d3...4B5bd1Bcc
5.254295 ETH
124564732021-05-18 5:24:241340 days ago1621315464
0xB923C1d3...4B5bd1Bcc
2.19255 ETH
124564442021-05-18 5:18:371340 days ago1621315117
0xB923C1d3...4B5bd1Bcc
2.802741 ETH
124564242021-05-18 5:14:071340 days ago1621314847
0xB923C1d3...4B5bd1Bcc
2.802741 ETH
124563882021-05-18 5:05:131340 days ago1621314313
0xB923C1d3...4B5bd1Bcc
2.802741 ETH
124563572021-05-18 4:57:371340 days ago1621313857
0xB923C1d3...4B5bd1Bcc
2.802741 ETH
124563272021-05-18 4:52:591340 days ago1621313579
0xB923C1d3...4B5bd1Bcc
2.792398 ETH
124562822021-05-18 4:40:361340 days ago1621312836
0xB923C1d3...4B5bd1Bcc
2.792398 ETH
124562652021-05-18 4:35:221340 days ago1621312522
0xB923C1d3...4B5bd1Bcc
2.792398 ETH
124562312021-05-18 4:28:491340 days ago1621312129
0xB923C1d3...4B5bd1Bcc
2.792398 ETH
124561552021-05-18 4:13:431340 days ago1621311223
0xB923C1d3...4B5bd1Bcc
1.165733 ETH
123478402021-05-01 10:50:271357 days ago1619866227
0xB923C1d3...4B5bd1Bcc
0.00594124 ETH
123465912021-05-01 6:09:071357 days ago1619849347
0xB923C1d3...4B5bd1Bcc
0.156507 ETH
123363752021-04-29 16:13:591359 days ago1619712839
0xB923C1d3...4B5bd1Bcc
0.544512 ETH
121260932021-03-28 6:52:061391 days ago1616914326
0xB923C1d3...4B5bd1Bcc
1.76254 ETH
121255122021-03-28 4:43:421391 days ago1616906622
0xB923C1d3...4B5bd1Bcc
9.326187 ETH
121246462021-03-28 1:24:011391 days ago1616894641
0xB923C1d3...4B5bd1Bcc
6.926227 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
Bank

Compiler Version
v0.5.12+commit.7709ece9

Optimization Enabled:
Yes with 1000 runs

Other Settings:
default evmVersion, Apache-2.0 license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2021-01-09
*/

// File: contracts/pike/BaseBank.sol

pragma solidity >=0.5.0 <0.6.0;

contract BaseBank {

}

// File: contracts/library/Ownable.sol

pragma solidity >=0.5.0 <0.6.0;

contract Ownable {
    address public owner;

    constructor() public {
        owner = msg.sender;
    }

    modifier onlySafe() {
        require(msg.sender == owner);
        _;
    }
    
    function transferOwnership(address newOwner) public onlySafe {
        if (newOwner != address(0)) {
            owner = newOwner;
        }
    }
}

// File: contracts/library/ERC20Not.sol

pragma solidity >=0.5.0 <0.6.0;

interface ERC20Not {
    function decimals() external view returns (uint8);

    function totalSupply() external view returns (uint256);

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

    function allowance(address _owner, address _spender)
        external
        view
        returns (uint256);

    function transfer(address _to, uint256 _value) external ;

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

    function approve(address _spender, uint256 _value) external returns (bool);

    function decreaseApproval(address _spender, uint256 _subtractedValue)
        external
        returns (bool);

    function increaseApproval(address _spender, uint256 _addedValue)
        external
        returns (bool);

    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(
        address indexed owner,
        address indexed spender,
        uint256 value
    );
}

// File: contracts/library/ERC20Yes.sol

pragma solidity >=0.5.0 <0.6.0;

// ERC Token Standard #20 Interface
// https://github.com/ethereum/EIPs/blob/master/EIPS/eip-20.md
interface ERC20Yes {
    function totalSupply() external view returns (uint256);

    function balanceOf(address tokenOwner)
        external
        view
        returns (uint256 balance);

    function allowance(address tokenOwner, address spender)
        external
        view
        returns (uint256 remaining);

    function transfer(address to, uint256 tokens)
        external
        returns (bool success);

    function approve(address spender, uint256 tokens)
        external
        returns (bool success);

    function transferFrom(
        address from,
        address to,
        uint256 tokens
    ) external returns (bool success);

    event Transfer(address indexed from, address indexed to, uint256 tokens);
    event Approval(
        address indexed tokenOwner,
        address indexed spender,
        uint256 tokens
    );
}

// File: contracts/user/BaseUsers.sol

pragma solidity >=0.5.0 <0.6.0;

contract BaseUsers {
    //
    function register(address _pid, address _who) external returns (bool);

    function setActive(address _who) external returns (bool);
    
    function setMiner(address _who) external returns (bool);

    function isActive(address _who) external view returns (bool);

    // Determine if the address has been registered
    function isRegister(address _who) external view returns (bool);

    // Get invitees
    function inviteUser(address _who) external view returns (address);

    function isBlackList(address _who) external view returns (bool);

    function getUser(address _who)
        external
        view
        returns (
            address id,
            address pid,
            bool miner,
            bool active,
            uint256 created_at
        );

}

// File: contracts/funds/BaseFunds.sol

pragma solidity >=0.5.0 <0.6.0;

contract BaseFunds {
    function activeUser(
        address _tokenAddress,
        address _who,
        uint256 _tokens
    ) external returns (bool);

    function upgradeUser(
        address _tokenAddress,
        address _who,
        uint256 _tokens
    ) external returns (bool);

    function buyMiner(
        address _tokenAddress,
        address _who,
        uint256 _tokens
    ) external returns (bool);

    function deposit(
        address _tokenAddress,
        address _who,
        uint256 _tokens
    ) external returns (bool);

    function withdraw(
        address _tokenAddress,
        address _who,
        uint256 _tokens
    ) external returns (bool);

    function loan(
        address _tokenAddress,
        address _who,
        uint256 _tokens
    ) external returns (bool);

    function repay(
        address _tokenAddress,
        address _who,
        uint256 _tokens
    ) external returns (bool);

    function liquidate(
        address _tokenAddress,
        address _who,
        address _owner,
        uint256 _tokens
    ) external returns (bool);

    function isToken(address _tokenAddress) external view returns (bool);

    function isErc20(address _tokenAddress) external view returns (bool);
}

// File: contracts/net/BaseNet.sol

pragma solidity >=0.5.0 <0.6.0;

contract BaseNet {
    address payable internal _gasAddress;
    function register(address _who, address _pid) external returns (bool);

    function activeUser(address _tokenAddress, address _pid, address _who, uint256 _tokens) external returns (bool);

    function upgradeUser(address _tokenAddress, address _who, uint256 _tokens) external returns (bool);

    function buyMiner(address _tokenAddress, address _who, uint256 _tokens) external returns (bool);

    function repay(
        address _tokenAddress,
        address _who,
        uint256 _amount
    ) external returns (bool);

    function liquidate(
        address _tokenAddress,
        address _payer,
        uint256 _amount,
        uint256 _oid
    ) external returns (bool);

    function loan(
        address _tokenAddress,
        address _who,
        uint256 _amount,
        uint256 _type
    ) external returns (bool);

    function withdraw(
        address _tokenAddress,
        address _who,
        uint256 _amount
    ) external returns (bool);

    function withdrawMine(
        address _who,
        uint256 _amount
    ) external returns (bool);

    function withdrawBonus(
        address _who,
        uint256 _amount
    ) external returns (bool);

    function deposit(
        address _tokenAddress,
        address _who,
        uint256 _amount
    ) external returns (bool);

    function depositMine(
        address _who,
        uint256 _amount
    ) external returns (bool);

    function depositBonus(
        address _who,
        uint256 _amount
    ) external returns (bool);

}

// File: contracts/pause/BasePause.sol

pragma solidity >=0.5.0 <0.6.0;

contract BasePause {
    function isPaused() external view returns (bool);
}

// File: contracts/receipt/BaseReceipt.sol

pragma solidity >=0.5.0 <0.6.0;

contract BaseReceipt {
    function active(uint256 _tokens)
        external
        payable
        returns (bool);

    function upgrade(uint256 _tokens)
        external
        payable
        returns (bool);

    function buyMiner(uint256 _tokens)
        external
        payable
        returns (bool);
}

// File: contracts/library/Interfaces.sol

pragma solidity >=0.5.0 <0.6.0;










contract Interfaces is Ownable {
    BaseNet internal NetContract;
    BaseBank internal BankContract;
    BaseUsers internal UserContract;
    BaseFunds internal FundsContract;
    BasePause internal PauseContract;
    BaseReceipt internal ReceiptContract;

    function setBankContract(BaseBank _address) public onlySafe {
        BankContract = _address;
    }

    function setUserContract(BaseUsers _address) public onlySafe {
        UserContract = _address;
    }

    function setFundsContract(BaseFunds _address) public onlySafe {
        FundsContract = _address;
    }

    function setNetContract(BaseNet _address) public onlySafe {
        NetContract = _address;
    }

    function setPauseContract(BasePause _address) public onlySafe {
        PauseContract = _address;
    }

    function setReceiptContract(BaseReceipt _address) public onlySafe {
        ReceiptContract = _address;
    }
}

// File: contracts/Bank.sol

pragma solidity >=0.5.0 <0.6.0;



contract Bank is BaseBank, Interfaces {
    bool internal open_deposit = true;
    bool internal open_loan = true;

    modifier isNotBlackList(address _who) {
        require(
            !UserContract.isBlackList(_who),
            "You are already on the blacklist"
        );
        _;
    }

    modifier whenNotPaused() {
        require(!PauseContract.isPaused(), "Data is being maintained");
        _;
    }

    function() external payable {
        revert();
    }

    function isRegister(address _who) public view returns (bool is_register) {
        return UserContract.isRegister(_who);
    }

    function isActive(address _who) public view returns (bool is_active) {
        return UserContract.isActive(_who);
    }

    // register
    function register(address _pid) public returns (bool) {
        if (UserContract.register(_pid, msg.sender)) {
            if (!NetContract.register(_pid, msg.sender)) {
                revert("register failed");
            }
            return true;
        }
        return false;
    }

    // active user
    function activeUser(
        address _tokenAddress,
        address _pid,
        uint256 _tokens
    ) public payable whenNotPaused isNotBlackList(msg.sender) {
        require(msg.sender != _pid);
        if (!isRegister(msg.sender)) {
            UserContract.register(_pid, msg.sender);
        }
        if (address(FundsContract) == _tokenAddress) {
            if (address(uint160(address(FundsContract))).send(msg.value)) {
                _tokens = msg.value;
            } else {
                revert("active failed");
            }
        }
        require(FundsContract.activeUser(_tokenAddress, msg.sender, _tokens));
        require(UserContract.setActive(msg.sender));
        if (!NetContract.activeUser(_tokenAddress, _pid, msg.sender, _tokens)) {
            revert("active failed");
        }
    }

    // 升级矿工
    function upgradeUser(address _tokenAddress, uint256 _tokens)
        public
        payable
        whenNotPaused
        isNotBlackList(msg.sender)
    {
        require(isActive(msg.sender));
        if (address(FundsContract) == _tokenAddress) {
            if (address(uint160(address(FundsContract))).send(msg.value)) {
                _tokens = msg.value;
            } else {
                revert("upgrade failed");
            }
        }
        require(FundsContract.upgradeUser(_tokenAddress, msg.sender, _tokens));
        if (!NetContract.upgradeUser(_tokenAddress, msg.sender, _tokens)) {
            revert("upgrade failed");
        }
    }

    // buy mining
    function buyMiner(address _tokenAddress, uint256 _tokens)
        public
        payable
        whenNotPaused
        isNotBlackList(msg.sender)
    {
        require(isActive(msg.sender));
        if (address(FundsContract) == _tokenAddress) {
            if (address(uint160(address(FundsContract))).send(msg.value)) {
                _tokens = msg.value;
            } else {
                revert("buy mining failed");
            }
        }
        require(FundsContract.buyMiner(_tokenAddress, msg.sender, _tokens));
        require(UserContract.setMiner(msg.sender));
        if (!NetContract.buyMiner(_tokenAddress, msg.sender, _tokens)) {
            revert("buy mining failed");
        }
    }

    // deposit
    function deposit(address _tokenAddress, uint256 _tokens)
        public
        payable
        whenNotPaused
        isNotBlackList(msg.sender)
    {
        require(open_deposit == true);
        require(isActive(msg.sender));

        if (address(FundsContract) == _tokenAddress) {
            if (address(uint160(address(FundsContract))).send(msg.value)) {
                require(
                    FundsContract.deposit(_tokenAddress, msg.sender, msg.value)
                );
                if (
                    !NetContract.deposit(_tokenAddress, msg.sender, msg.value)
                ) {
                    revert("deposit failed");
                }
            }
        } else {
            require(FundsContract.deposit(_tokenAddress, msg.sender, _tokens));
            if (!NetContract.deposit(_tokenAddress, msg.sender, _tokens)) {
                revert("deposit failed");
            }
        }
    }

    // Tokens withdraw
    function _withdraw(
        address _tokenAddress,
        address _who,
        uint256 _tokens
    )
        public
        whenNotPaused
        isNotBlackList(_who)
        onlySafe
        returns (bool success)
    {
        require(isActive(_who));
        return FundsContract.withdraw(_tokenAddress, _who, _tokens);
    }

    // loan
    function _loan(
        address _tokenAddress,
        address _who,
        uint256 _tokens
    )
        public
        whenNotPaused
        isNotBlackList(_who)
        onlySafe
        returns (bool success)
    {
        require(open_loan == true);
        require(isActive(_who));
        return FundsContract.loan(_tokenAddress, _who, _tokens);
    }

    // repay
    function repay(address _tokenAddress, uint256 _tokens)
        public
        payable
        whenNotPaused
        isNotBlackList(msg.sender)
    {
        if (address(FundsContract) == _tokenAddress) {
            if (address(uint160(address(FundsContract))).send(msg.value)) {
                require(
                    FundsContract.repay(_tokenAddress, msg.sender, msg.value)
                );
                if (!NetContract.repay(_tokenAddress, msg.sender, msg.value)) {
                    revert("repay failed");
                }
            }
        } else {
            require(FundsContract.repay(_tokenAddress, msg.sender, _tokens));
            if (!NetContract.repay(_tokenAddress, msg.sender, _tokens)) {
                revert("repay failed");
            }
        }
    }

    // liquidate
    function liquidate(
        address _tokenAddress,
        address _owner,
        uint256 _tokens,
        uint256 _oid
    ) public payable whenNotPaused isNotBlackList(msg.sender) {
        require(isActive(_owner));
        require(isActive(msg.sender));
        if (address(FundsContract) == _tokenAddress) {
            if (address(uint160(address(FundsContract))).send(msg.value)) {
                require(
                    FundsContract.liquidate(
                        _tokenAddress,
                        msg.sender,
                        _owner,
                        msg.value
                    )
                );
                if (
                    !NetContract.liquidate(
                        _tokenAddress,
                        msg.sender,
                        msg.value,
                        _oid
                    )
                ) {
                    revert("liquidate failed");
                }
            }
        } else {
            require(
                FundsContract.liquidate(
                    _tokenAddress,
                    msg.sender,
                    _owner,
                    _tokens
                )
            );
            if (
                !NetContract.liquidate(_tokenAddress, msg.sender, _tokens, _oid)
            ) {
                revert("liquidate failed");
            }
        }
    }

    function loan(
        address _tokenAddress,
        uint256 _tokens,
        uint256 _type
    ) public whenNotPaused isNotBlackList(msg.sender) returns (bool) {
        require(isActive(msg.sender));
        if (!NetContract.loan(_tokenAddress, msg.sender, _tokens, _type)) {
            revert("withdraw failed");
        }
        return true;
    }

    function withdraw(address _tokenAddress, uint256 _tokens)
        public
        whenNotPaused
        isNotBlackList(msg.sender)
        returns (bool)
    {
        require(isActive(msg.sender));
        if (!NetContract.withdraw(_tokenAddress, msg.sender, _tokens)) {
            revert("withdraw failed");
        }
        return true;
    }

    function withdrawMine(uint256 _tokens)
        public
        whenNotPaused
        isNotBlackList(msg.sender)
        returns (bool)
    {
        require(isActive(msg.sender));
        if (!NetContract.withdrawMine(msg.sender, _tokens)) {
            revert("withdraw mine failed");
        }
        return true;
    }

    function withdrawBonus(uint256 _tokens)
        public
        whenNotPaused
        isNotBlackList(msg.sender)
        returns (bool)
    {
        require(isActive(msg.sender));
        if (!NetContract.withdrawBonus(msg.sender, _tokens)) {
            revert("withdraw bonus failed");
        }
        return true;
    }

    function depositMine(uint256 _tokens)
        public
        whenNotPaused
        isNotBlackList(msg.sender)
        returns (bool)
    {
        require(isActive(msg.sender));
        if (!NetContract.depositMine(msg.sender, _tokens)) {
            revert("deposit mine failed");
        }
        return true;
    }

    function depositBonus(uint256 _tokens)
        public
        whenNotPaused
        isNotBlackList(msg.sender)
        returns (bool)
    {
        require(isActive(msg.sender));
        if (!NetContract.depositBonus(msg.sender, _tokens)) {
            revert("deposit bonus failed");
        }
        return true;
    }

    function setOpenDeposit(bool _status) public onlySafe {
        open_deposit = _status;
    }

    function setOpenLoan(bool _status) public onlySafe {
        open_loan = _status;
    }

    function getOpenDeposit() public view returns (bool deposit_status) {
        return open_deposit;
    }

    function getOpenLoan() public view returns (bool loan_status) {
        return open_loan;
    }

    // 获取存款余额
    function balanceOf(address _tokenAddress, address _who)
        public
        view
        returns (uint256 balance)
    {
        return ERC20Yes(_tokenAddress).balanceOf(_who);
    }

    function balanceEth(address _tokenAddress)
        public
        view
        returns (uint256 balance)
    {
        return address(uint160(address(_tokenAddress))).balance;
    }

    function isPaused() public view returns (bool paused) {
        return PauseContract.isPaused();
    }

    function getUser(address _who)
        public
        view
        returns (
            address id,
            address pid,
            bool miner,
            bool active,
            uint256 created_at
        )
    {
        return UserContract.getUser(_who);
    }
}

Contract Security Audit

Contract ABI

[{"payable":true,"stateMutability":"payable","type":"fallback"},{"constant":false,"inputs":[{"internalType":"address","name":"_tokenAddress","type":"address"},{"internalType":"address","name":"_who","type":"address"},{"internalType":"uint256","name":"_tokens","type":"uint256"}],"name":"_loan","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"_tokenAddress","type":"address"},{"internalType":"address","name":"_who","type":"address"},{"internalType":"uint256","name":"_tokens","type":"uint256"}],"name":"_withdraw","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"_tokenAddress","type":"address"},{"internalType":"address","name":"_pid","type":"address"},{"internalType":"uint256","name":"_tokens","type":"uint256"}],"name":"activeUser","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"_tokenAddress","type":"address"}],"name":"balanceEth","outputs":[{"internalType":"uint256","name":"balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"_tokenAddress","type":"address"},{"internalType":"address","name":"_who","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"_tokenAddress","type":"address"},{"internalType":"uint256","name":"_tokens","type":"uint256"}],"name":"buyMiner","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"_tokenAddress","type":"address"},{"internalType":"uint256","name":"_tokens","type":"uint256"}],"name":"deposit","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"internalType":"uint256","name":"_tokens","type":"uint256"}],"name":"depositBonus","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"uint256","name":"_tokens","type":"uint256"}],"name":"depositMine","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getOpenDeposit","outputs":[{"internalType":"bool","name":"deposit_status","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getOpenLoan","outputs":[{"internalType":"bool","name":"loan_status","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"_who","type":"address"}],"name":"getUser","outputs":[{"internalType":"address","name":"id","type":"address"},{"internalType":"address","name":"pid","type":"address"},{"internalType":"bool","name":"miner","type":"bool"},{"internalType":"bool","name":"active","type":"bool"},{"internalType":"uint256","name":"created_at","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"_who","type":"address"}],"name":"isActive","outputs":[{"internalType":"bool","name":"is_active","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"isPaused","outputs":[{"internalType":"bool","name":"paused","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"_who","type":"address"}],"name":"isRegister","outputs":[{"internalType":"bool","name":"is_register","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"_tokenAddress","type":"address"},{"internalType":"address","name":"_owner","type":"address"},{"internalType":"uint256","name":"_tokens","type":"uint256"},{"internalType":"uint256","name":"_oid","type":"uint256"}],"name":"liquidate","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"_tokenAddress","type":"address"},{"internalType":"uint256","name":"_tokens","type":"uint256"},{"internalType":"uint256","name":"_type","type":"uint256"}],"name":"loan","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"_pid","type":"address"}],"name":"register","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"_tokenAddress","type":"address"},{"internalType":"uint256","name":"_tokens","type":"uint256"}],"name":"repay","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"internalType":"contract BaseBank","name":"_address","type":"address"}],"name":"setBankContract","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"contract BaseFunds","name":"_address","type":"address"}],"name":"setFundsContract","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"contract BaseNet","name":"_address","type":"address"}],"name":"setNetContract","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"bool","name":"_status","type":"bool"}],"name":"setOpenDeposit","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"bool","name":"_status","type":"bool"}],"name":"setOpenLoan","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"contract BasePause","name":"_address","type":"address"}],"name":"setPauseContract","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"contract BaseReceipt","name":"_address","type":"address"}],"name":"setReceiptContract","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"contract BaseUsers","name":"_address","type":"address"}],"name":"setUserContract","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"_tokenAddress","type":"address"},{"internalType":"uint256","name":"_tokens","type":"uint256"}],"name":"upgradeUser","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"_tokenAddress","type":"address"},{"internalType":"uint256","name":"_tokens","type":"uint256"}],"name":"withdraw","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"uint256","name":"_tokens","type":"uint256"}],"name":"withdrawBonus","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"uint256","name":"_tokens","type":"uint256"}],"name":"withdrawMine","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"}]

60806040526006805460ff60a81b1960ff60a01b199091167401000000000000000000000000000000000000000017167501000000000000000000000000000000000000000000179055600080546001600160a01b03191633179055613d2f8061006a6000396000f3fe6080604052600436106101fd5760003560e01c80637a5e31031161011d578063b01fd89a116100b0578063d351b5fd1161007f578063f2fde38b11610064578063f2fde38b146107eb578063f3fef3a31461081e578063f7888aec14610857576101fd565b8063d351b5fd146107a3578063e1a974a0146107d6576101fd565b8063b01fd89a146106f2578063b187bd2614610728578063c13425741461073d578063cf1814bc14610779576101fd565b80638da5cb5b116100ec5780638da5cb5b146106285780639f8a13d714610659578063a1206d4e1461068c578063aeb5d2c1146106bf576101fd565b80637a5e31031461058f5780638209d354146105bb5780638a43bb01146105e75780638a9aa01c14610613576101fd565b806322fdef941161019557806366d581f01161016457806366d581f0146104835780636dc2d787146104c65780636f77926b146104f957806372d3296814610565576101fd565b806322fdef94146103c75780632d137bcc146103fa5780634420e4861461042457806347e7ef2414610457576101fd565b8063133b2eab116101d1578063133b2eab146102fd57806319bcef6d146103295780631f9efb201461035c57806322867d781461039b576101fd565b8062837b15146102025780630161ca79146102475780630224f6541461027c5780631208333a146102ba575b600080fd5b34801561020e57600080fd5b506102356004803603602081101561022557600080fd5b50356001600160a01b0316610892565b60408051918252519081900360200190f35b34801561025357600080fd5b5061027a6004803603602081101561026a57600080fd5b50356001600160a01b03166108a3565b005b34801561028857600080fd5b506102a66004803603602081101561029f57600080fd5b50356108dc565b604080519115158252519081900360200190f35b3480156102c657600080fd5b506102a6600480360360608110156102dd57600080fd5b506001600160a01b03813581169160208101359091169060400135610b4b565b34801561030957600080fd5b5061027a6004803603602081101561032057600080fd5b50351515610d78565b34801561033557600080fd5b5061027a6004803603602081101561034c57600080fd5b50356001600160a01b0316610dc8565b34801561036857600080fd5b506102a66004803603606081101561037f57600080fd5b506001600160a01b038135169060208101359060400135610e01565b61027a600480360360408110156103b157600080fd5b506001600160a01b038135169060200135611081565b3480156103d357600080fd5b506102a6600480360360208110156103ea57600080fd5b50356001600160a01b03166114f9565b34801561040657600080fd5b506102a66004803603602081101561041d57600080fd5b5035611595565b34801561043057600080fd5b506102a66004803603602081101561044757600080fd5b50356001600160a01b03166117fb565b61027a6004803603604081101561046d57600080fd5b506001600160a01b038135169060200135611966565b34801561048f57600080fd5b506102a6600480360360608110156104a657600080fd5b506001600160a01b03813581169160208101359091169060400135611e23565b3480156104d257600080fd5b5061027a600480360360208110156104e957600080fd5b50356001600160a01b031661204f565b34801561050557600080fd5b5061052c6004803603602081101561051c57600080fd5b50356001600160a01b0316612088565b604080516001600160a01b0396871681529490951660208501529115158385015215156060830152608082015290519081900360a00190f35b34801561057157600080fd5b506102a66004803603602081101561058857600080fd5b503561214d565b61027a600480360360408110156105a557600080fd5b506001600160a01b0381351690602001356123b3565b3480156105c757600080fd5b5061027a600480360360208110156105de57600080fd5b5035151561273e565b61027a600480360360408110156105fd57600080fd5b506001600160a01b03813516906020013561278e565b34801561061f57600080fd5b506102a6612bb4565b34801561063457600080fd5b5061063d612bc4565b604080516001600160a01b039092168252519081900360200190f35b34801561066557600080fd5b506102a66004803603602081101561067c57600080fd5b50356001600160a01b0316612bd3565b34801561069857600080fd5b5061027a600480360360208110156106af57600080fd5b50356001600160a01b0316612c3d565b3480156106cb57600080fd5b5061027a600480360360208110156106e257600080fd5b50356001600160a01b0316612c76565b61027a6004803603606081101561070857600080fd5b506001600160a01b03813581169160208101359091169060400135612caf565b34801561073457600080fd5b506102a6613188565b61027a6004803603608081101561075357600080fd5b506001600160a01b038135811691602081013590911690604081013590606001356131fe565b34801561078557600080fd5b506102a66004803603602081101561079c57600080fd5b50356136dc565b3480156107af57600080fd5b5061027a600480360360208110156107c657600080fd5b50356001600160a01b0316613942565b3480156107e257600080fd5b506102a661397b565b3480156107f757600080fd5b5061027a6004803603602081101561080e57600080fd5b50356001600160a01b031661398b565b34801561082a57600080fd5b506102a66004803603604081101561084157600080fd5b506001600160a01b0381351690602001356139d0565b34801561086357600080fd5b506102356004803603604081101561087a57600080fd5b506001600160a01b0381358116916020013516613c2f565b6001600160a01b038116315b919050565b6000546001600160a01b031633146108ba57600080fd5b600480546001600160a01b0319166001600160a01b0392909216919091179055565b600554604080516358c3de9360e11b815290516000926001600160a01b03169163b187bd26916004808301926020929190829003018186803b15801561092157600080fd5b505afa158015610935573d6000803e3d6000fd5b505050506040513d602081101561094b57600080fd5b50511561098d576040805162461bcd60e51b81526020600482015260186024820152600080516020613cbb833981519152604482015290519081900360640190fd5b6003546040805163b36d691960e01b81523360048201819052915191926001600160a01b03169163b36d691991602480820192602092909190829003018186803b1580156109da57600080fd5b505afa1580156109ee573d6000803e3d6000fd5b505050506040513d6020811015610a0457600080fd5b505115610a46576040805162461bcd60e51b81526020600482018190526024820152600080516020613cdb833981519152604482015290519081900360640190fd5b610a4f33612bd3565b610a5857600080fd5b600154604080517f87d73f1d0000000000000000000000000000000000000000000000000000000081523360048201526024810186905290516001600160a01b03909216916387d73f1d916044808201926020929091908290030181600087803b158015610ac557600080fd5b505af1158015610ad9573d6000803e3d6000fd5b505050506040513d6020811015610aef57600080fd5b5051610b42576040805162461bcd60e51b815260206004820152601360248201527f6465706f736974206d696e65206661696c656400000000000000000000000000604482015290519081900360640190fd5b50600192915050565b600554604080516358c3de9360e11b815290516000926001600160a01b03169163b187bd26916004808301926020929190829003018186803b158015610b9057600080fd5b505afa158015610ba4573d6000803e3d6000fd5b505050506040513d6020811015610bba57600080fd5b505115610bfc576040805162461bcd60e51b81526020600482015260186024820152600080516020613cbb833981519152604482015290519081900360640190fd5b6003546040805163b36d691960e01b81526001600160a01b03808716600483015291518693929092169163b36d691991602480820192602092909190829003018186803b158015610c4c57600080fd5b505afa158015610c60573d6000803e3d6000fd5b505050506040513d6020811015610c7657600080fd5b505115610cb8576040805162461bcd60e51b81526020600482018190526024820152600080516020613cdb833981519152604482015290519081900360640190fd5b6000546001600160a01b03163314610ccf57600080fd5b610cd884612bd3565b610ce157600080fd5b6004805460408051636ce5768960e11b81526001600160a01b03898116948201949094528784166024820152604481018790529051929091169163d9caed12916064808201926020929091908290030181600087803b158015610d4357600080fd5b505af1158015610d57573d6000803e3d6000fd5b505050506040513d6020811015610d6d57600080fd5b505195945050505050565b6000546001600160a01b03163314610d8f57600080fd5b60068054911515600160a81b027fffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff909216919091179055565b6000546001600160a01b03163314610ddf57600080fd5b600680546001600160a01b0319166001600160a01b0392909216919091179055565b600554604080516358c3de9360e11b815290516000926001600160a01b03169163b187bd26916004808301926020929190829003018186803b158015610e4657600080fd5b505afa158015610e5a573d6000803e3d6000fd5b505050506040513d6020811015610e7057600080fd5b505115610eb2576040805162461bcd60e51b81526020600482015260186024820152600080516020613cbb833981519152604482015290519081900360640190fd5b6003546040805163b36d691960e01b81523360048201819052915191926001600160a01b03169163b36d691991602480820192602092909190829003018186803b158015610eff57600080fd5b505afa158015610f13573d6000803e3d6000fd5b505050506040513d6020811015610f2957600080fd5b505115610f6b576040805162461bcd60e51b81526020600482018190526024820152600080516020613cdb833981519152604482015290519081900360640190fd5b610f7433612bd3565b610f7d57600080fd5b600154604080517fa95fe2670000000000000000000000000000000000000000000000000000000081526001600160a01b03888116600483015233602483015260448201889052606482018790529151919092169163a95fe2679160848083019260209291908290030181600087803b158015610ff957600080fd5b505af115801561100d573d6000803e3d6000fd5b505050506040513d602081101561102357600080fd5b5051611076576040805162461bcd60e51b815260206004820152600f60248201527f7769746864726177206661696c65640000000000000000000000000000000000604482015290519081900360640190fd5b506001949350505050565b600560009054906101000a90046001600160a01b03166001600160a01b031663b187bd266040518163ffffffff1660e01b815260040160206040518083038186803b1580156110cf57600080fd5b505afa1580156110e3573d6000803e3d6000fd5b505050506040513d60208110156110f957600080fd5b50511561113b576040805162461bcd60e51b81526020600482015260186024820152600080516020613cbb833981519152604482015290519081900360640190fd5b6003546040805163b36d691960e01b81523360048201819052915191926001600160a01b03169163b36d691991602480820192602092909190829003018186803b15801561118857600080fd5b505afa15801561119c573d6000803e3d6000fd5b505050506040513d60208110156111b257600080fd5b5051156111f4576040805162461bcd60e51b81526020600482018190526024820152600080516020613cdb833981519152604482015290519081900360640190fd5b6004546001600160a01b0384811691161415611397576004546040516001600160a01b03909116903480156108fc02916000818181858888f1935050505015611392576004805460408051631da649cf60e01b81526001600160a01b038781169482019490945233602482015234604482015290519290911691631da649cf916064808201926020929091908290030181600087803b15801561129657600080fd5b505af11580156112aa573d6000803e3d6000fd5b505050506040513d60208110156112c057600080fd5b50516112cb57600080fd5b60015460408051631da649cf60e01b81526001600160a01b03868116600483015233602483015234604483015291519190921691631da649cf9160648083019260209291908290030181600087803b15801561132657600080fd5b505af115801561133a573d6000803e3d6000fd5b505050506040513d602081101561135057600080fd5b5051611392576040805162461bcd60e51b815260206004820152600c60248201526b1c995c185e4819985a5b195960a21b604482015290519081900360640190fd5b6114f4565b6004805460408051631da649cf60e01b81526001600160a01b03878116948201949094523360248201526044810186905290519290911691631da649cf916064808201926020929091908290030181600087803b1580156113f757600080fd5b505af115801561140b573d6000803e3d6000fd5b505050506040513d602081101561142157600080fd5b505161142c57600080fd5b60015460408051631da649cf60e01b81526001600160a01b0386811660048301523360248301526044820186905291519190921691631da649cf9160648083019260209291908290030181600087803b15801561148857600080fd5b505af115801561149c573d6000803e3d6000fd5b505050506040513d60208110156114b257600080fd5b50516114f4576040805162461bcd60e51b815260206004820152600c60248201526b1c995c185e4819985a5b195960a21b604482015290519081900360640190fd5b505050565b600354604080517f22fdef940000000000000000000000000000000000000000000000000000000081526001600160a01b038481166004830152915160009392909216916322fdef9491602480820192602092909190829003018186803b15801561156357600080fd5b505afa158015611577573d6000803e3d6000fd5b505050506040513d602081101561158d57600080fd5b505192915050565b600554604080516358c3de9360e11b815290516000926001600160a01b03169163b187bd26916004808301926020929190829003018186803b1580156115da57600080fd5b505afa1580156115ee573d6000803e3d6000fd5b505050506040513d602081101561160457600080fd5b505115611646576040805162461bcd60e51b81526020600482015260186024820152600080516020613cbb833981519152604482015290519081900360640190fd5b6003546040805163b36d691960e01b81523360048201819052915191926001600160a01b03169163b36d691991602480820192602092909190829003018186803b15801561169357600080fd5b505afa1580156116a7573d6000803e3d6000fd5b505050506040513d60208110156116bd57600080fd5b5051156116ff576040805162461bcd60e51b81526020600482018190526024820152600080516020613cdb833981519152604482015290519081900360640190fd5b61170833612bd3565b61171157600080fd5b600154604080517ff85a81f50000000000000000000000000000000000000000000000000000000081523360048201526024810186905290516001600160a01b039092169163f85a81f5916044808201926020929091908290030181600087803b15801561177e57600080fd5b505af1158015611792573d6000803e3d6000fd5b505050506040513d60208110156117a857600080fd5b5051610b42576040805162461bcd60e51b815260206004820152601460248201527f7769746864726177206d696e65206661696c6564000000000000000000000000604482015290519081900360640190fd5b60035460408051632a99dcd560e21b81526001600160a01b0384811660048301523360248301529151600093929092169163aa6773549160448082019260209290919082900301818787803b15801561185357600080fd5b505af1158015611867573d6000803e3d6000fd5b505050506040513d602081101561187d57600080fd5b50511561195e5760015460408051632a99dcd560e21b81526001600160a01b0385811660048301523360248301529151919092169163aa6773549160448083019260209291908290030181600087803b1580156118d957600080fd5b505af11580156118ed573d6000803e3d6000fd5b505050506040513d602081101561190357600080fd5b5051611956576040805162461bcd60e51b815260206004820152600f60248201527f7265676973746572206661696c65640000000000000000000000000000000000604482015290519081900360640190fd5b50600161089e565b506000919050565b600560009054906101000a90046001600160a01b03166001600160a01b031663b187bd266040518163ffffffff1660e01b815260040160206040518083038186803b1580156119b457600080fd5b505afa1580156119c8573d6000803e3d6000fd5b505050506040513d60208110156119de57600080fd5b505115611a20576040805162461bcd60e51b81526020600482015260186024820152600080516020613cbb833981519152604482015290519081900360640190fd5b6003546040805163b36d691960e01b81523360048201819052915191926001600160a01b03169163b36d691991602480820192602092909190829003018186803b158015611a6d57600080fd5b505afa158015611a81573d6000803e3d6000fd5b505050506040513d6020811015611a9757600080fd5b505115611ad9576040805162461bcd60e51b81526020600482018190526024820152600080516020613cdb833981519152604482015290519081900360640190fd5b600654600160a01b900460ff161515600114611af457600080fd5b611afd33612bd3565b611b0657600080fd5b6004546001600160a01b0384811691161415611cb5576004546040516001600160a01b03909116903480156108fc02916000818181858888f1935050505015611392576004805460408051638340f54960e01b81526001600160a01b038781169482019490945233602482015234604482015290519290911691638340f549916064808201926020929091908290030181600087803b158015611ba857600080fd5b505af1158015611bbc573d6000803e3d6000fd5b505050506040513d6020811015611bd257600080fd5b5051611bdd57600080fd5b60015460408051638340f54960e01b81526001600160a01b03868116600483015233602483015234604483015291519190921691638340f5499160648083019260209291908290030181600087803b158015611c3857600080fd5b505af1158015611c4c573d6000803e3d6000fd5b505050506040513d6020811015611c6257600080fd5b5051611392576040805162461bcd60e51b815260206004820152600e60248201527f6465706f736974206661696c6564000000000000000000000000000000000000604482015290519081900360640190fd5b6004805460408051638340f54960e01b81526001600160a01b03878116948201949094523360248201526044810186905290519290911691638340f549916064808201926020929091908290030181600087803b158015611d1557600080fd5b505af1158015611d29573d6000803e3d6000fd5b505050506040513d6020811015611d3f57600080fd5b5051611d4a57600080fd5b60015460408051638340f54960e01b81526001600160a01b0386811660048301523360248301526044820186905291519190921691638340f5499160648083019260209291908290030181600087803b158015611da657600080fd5b505af1158015611dba573d6000803e3d6000fd5b505050506040513d6020811015611dd057600080fd5b50516114f4576040805162461bcd60e51b815260206004820152600e60248201527f6465706f736974206661696c6564000000000000000000000000000000000000604482015290519081900360640190fd5b600554604080516358c3de9360e11b815290516000926001600160a01b03169163b187bd26916004808301926020929190829003018186803b158015611e6857600080fd5b505afa158015611e7c573d6000803e3d6000fd5b505050506040513d6020811015611e9257600080fd5b505115611ed4576040805162461bcd60e51b81526020600482015260186024820152600080516020613cbb833981519152604482015290519081900360640190fd5b6003546040805163b36d691960e01b81526001600160a01b03808716600483015291518693929092169163b36d691991602480820192602092909190829003018186803b158015611f2457600080fd5b505afa158015611f38573d6000803e3d6000fd5b505050506040513d6020811015611f4e57600080fd5b505115611f90576040805162461bcd60e51b81526020600482018190526024820152600080516020613cdb833981519152604482015290519081900360640190fd5b6000546001600160a01b03163314611fa757600080fd5b600654600160a81b900460ff161515600114611fc257600080fd5b611fcb84612bd3565b611fd457600080fd5b60048054604080517f61c811200000000000000000000000000000000000000000000000000000000081526001600160a01b0389811694820194909452878416602482015260448101879052905192909116916361c81120916064808201926020929091908290030181600087803b158015610d4357600080fd5b6000546001600160a01b0316331461206657600080fd5b600180546001600160a01b0319166001600160a01b0392909216919091179055565b600354604080517f6f77926b0000000000000000000000000000000000000000000000000000000081526001600160a01b038481166004830152915160009384938493849384939290921691636f77926b9160248082019260a092909190829003018186803b1580156120fa57600080fd5b505afa15801561210e573d6000803e3d6000fd5b505050506040513d60a081101561212457600080fd5b508051602082015160408301516060840151608090940151929a91995097509195509350915050565b600554604080516358c3de9360e11b815290516000926001600160a01b03169163b187bd26916004808301926020929190829003018186803b15801561219257600080fd5b505afa1580156121a6573d6000803e3d6000fd5b505050506040513d60208110156121bc57600080fd5b5051156121fe576040805162461bcd60e51b81526020600482015260186024820152600080516020613cbb833981519152604482015290519081900360640190fd5b6003546040805163b36d691960e01b81523360048201819052915191926001600160a01b03169163b36d691991602480820192602092909190829003018186803b15801561224b57600080fd5b505afa15801561225f573d6000803e3d6000fd5b505050506040513d602081101561227557600080fd5b5051156122b7576040805162461bcd60e51b81526020600482018190526024820152600080516020613cdb833981519152604482015290519081900360640190fd5b6122c033612bd3565b6122c957600080fd5b600154604080517fd28803600000000000000000000000000000000000000000000000000000000081523360048201526024810186905290516001600160a01b039092169163d2880360916044808201926020929091908290030181600087803b15801561233657600080fd5b505af115801561234a573d6000803e3d6000fd5b505050506040513d602081101561236057600080fd5b5051610b42576040805162461bcd60e51b815260206004820152601560248201527f776974686472617720626f6e7573206661696c65640000000000000000000000604482015290519081900360640190fd5b600560009054906101000a90046001600160a01b03166001600160a01b031663b187bd266040518163ffffffff1660e01b815260040160206040518083038186803b15801561240157600080fd5b505afa158015612415573d6000803e3d6000fd5b505050506040513d602081101561242b57600080fd5b50511561246d576040805162461bcd60e51b81526020600482015260186024820152600080516020613cbb833981519152604482015290519081900360640190fd5b6003546040805163b36d691960e01b81523360048201819052915191926001600160a01b03169163b36d691991602480820192602092909190829003018186803b1580156124ba57600080fd5b505afa1580156124ce573d6000803e3d6000fd5b505050506040513d60208110156124e457600080fd5b505115612526576040805162461bcd60e51b81526020600482018190526024820152600080516020613cdb833981519152604482015290519081900360640190fd5b61252f33612bd3565b61253857600080fd5b6004546001600160a01b03848116911614156125d0576004546040516001600160a01b03909116903480156108fc02916000818181858888f1935050505015612583573491506125d0565b6040805162461bcd60e51b815260206004820152600e60248201527f75706772616465206661696c6564000000000000000000000000000000000000604482015290519081900360640190fd5b600480546040805163f0e818b760e01b81526001600160a01b0387811694820194909452336024820152604481018690529051929091169163f0e818b7916064808201926020929091908290030181600087803b15801561263057600080fd5b505af1158015612644573d6000803e3d6000fd5b505050506040513d602081101561265a57600080fd5b505161266557600080fd5b6001546040805163f0e818b760e01b81526001600160a01b038681166004830152336024830152604482018690529151919092169163f0e818b79160648083019260209291908290030181600087803b1580156126c157600080fd5b505af11580156126d5573d6000803e3d6000fd5b505050506040513d60208110156126eb57600080fd5b50516114f4576040805162461bcd60e51b815260206004820152600e60248201527f75706772616465206661696c6564000000000000000000000000000000000000604482015290519081900360640190fd5b6000546001600160a01b0316331461275557600080fd5b60068054911515600160a01b027fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff909216919091179055565b600560009054906101000a90046001600160a01b03166001600160a01b031663b187bd266040518163ffffffff1660e01b815260040160206040518083038186803b1580156127dc57600080fd5b505afa1580156127f0573d6000803e3d6000fd5b505050506040513d602081101561280657600080fd5b505115612848576040805162461bcd60e51b81526020600482015260186024820152600080516020613cbb833981519152604482015290519081900360640190fd5b6003546040805163b36d691960e01b81523360048201819052915191926001600160a01b03169163b36d691991602480820192602092909190829003018186803b15801561289557600080fd5b505afa1580156128a9573d6000803e3d6000fd5b505050506040513d60208110156128bf57600080fd5b505115612901576040805162461bcd60e51b81526020600482018190526024820152600080516020613cdb833981519152604482015290519081900360640190fd5b61290a33612bd3565b61291357600080fd5b6004546001600160a01b03848116911614156129ab576004546040516001600160a01b03909116903480156108fc02916000818181858888f193505050501561295e573491506129ab565b6040805162461bcd60e51b815260206004820152601160248201527f627579206d696e696e67206661696c6564000000000000000000000000000000604482015290519081900360640190fd5b600480546040805163760772e160e11b81526001600160a01b0387811694820194909452336024820152604481018690529051929091169163ec0ee5c2916064808201926020929091908290030181600087803b158015612a0b57600080fd5b505af1158015612a1f573d6000803e3d6000fd5b505050506040513d6020811015612a3557600080fd5b5051612a4057600080fd5b600354604080517f9742ca4600000000000000000000000000000000000000000000000000000000815233600482015290516001600160a01b0390921691639742ca46916024808201926020929091908290030181600087803b158015612aa657600080fd5b505af1158015612aba573d6000803e3d6000fd5b505050506040513d6020811015612ad057600080fd5b5051612adb57600080fd5b6001546040805163760772e160e11b81526001600160a01b038681166004830152336024830152604482018690529151919092169163ec0ee5c29160648083019260209291908290030181600087803b158015612b3757600080fd5b505af1158015612b4b573d6000803e3d6000fd5b505050506040513d6020811015612b6157600080fd5b50516114f4576040805162461bcd60e51b815260206004820152601160248201527f627579206d696e696e67206661696c6564000000000000000000000000000000604482015290519081900360640190fd5b600654600160a81b900460ff1690565b6000546001600160a01b031681565b600354604080517f9f8a13d70000000000000000000000000000000000000000000000000000000081526001600160a01b03848116600483015291516000939290921691639f8a13d791602480820192602092909190829003018186803b15801561156357600080fd5b6000546001600160a01b03163314612c5457600080fd5b600380546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b03163314612c8d57600080fd5b600580546001600160a01b0319166001600160a01b0392909216919091179055565b600560009054906101000a90046001600160a01b03166001600160a01b031663b187bd266040518163ffffffff1660e01b815260040160206040518083038186803b158015612cfd57600080fd5b505afa158015612d11573d6000803e3d6000fd5b505050506040513d6020811015612d2757600080fd5b505115612d69576040805162461bcd60e51b81526020600482015260186024820152600080516020613cbb833981519152604482015290519081900360640190fd5b6003546040805163b36d691960e01b81523360048201819052915191926001600160a01b03169163b36d691991602480820192602092909190829003018186803b158015612db657600080fd5b505afa158015612dca573d6000803e3d6000fd5b505050506040513d6020811015612de057600080fd5b505115612e22576040805162461bcd60e51b81526020600482018190526024820152600080516020613cdb833981519152604482015290519081900360640190fd5b336001600160a01b0384161415612e3857600080fd5b612e41336114f9565b612ec75760035460408051632a99dcd560e21b81526001600160a01b0386811660048301523360248301529151919092169163aa6773549160448083019260209291908290030181600087803b158015612e9a57600080fd5b505af1158015612eae573d6000803e3d6000fd5b505050506040513d6020811015612ec457600080fd5b50505b6004546001600160a01b0385811691161415612f4f576004546040516001600160a01b03909116903480156108fc02916000818181858888f1935050505015612f1257349150612f4f565b6040805162461bcd60e51b815260206004820152600d60248201526c1858dd1a5d994819985a5b1959609a1b604482015290519081900360640190fd5b60048054604080517fb01fd89a0000000000000000000000000000000000000000000000000000000081526001600160a01b0388811694820194909452336024820152604481018690529051929091169163b01fd89a916064808201926020929091908290030181600087803b158015612fc857600080fd5b505af1158015612fdc573d6000803e3d6000fd5b505050506040513d6020811015612ff257600080fd5b5051612ffd57600080fd5b600354604080517fc06e0ada00000000000000000000000000000000000000000000000000000000815233600482015290516001600160a01b039092169163c06e0ada916024808201926020929091908290030181600087803b15801561306357600080fd5b505af1158015613077573d6000803e3d6000fd5b505050506040513d602081101561308d57600080fd5b505161309857600080fd5b600154604080517f0c4d443e0000000000000000000000000000000000000000000000000000000081526001600160a01b03878116600483015286811660248301523360448301526064820186905291519190921691630c4d443e9160848083019260209291908290030181600087803b15801561311557600080fd5b505af1158015613129573d6000803e3d6000fd5b505050506040513d602081101561313f57600080fd5b5051613182576040805162461bcd60e51b815260206004820152600d60248201526c1858dd1a5d994819985a5b1959609a1b604482015290519081900360640190fd5b50505050565b600554604080516358c3de9360e11b815290516000926001600160a01b03169163b187bd26916004808301926020929190829003018186803b1580156131cd57600080fd5b505afa1580156131e1573d6000803e3d6000fd5b505050506040513d60208110156131f757600080fd5b5051905090565b600560009054906101000a90046001600160a01b03166001600160a01b031663b187bd266040518163ffffffff1660e01b815260040160206040518083038186803b15801561324c57600080fd5b505afa158015613260573d6000803e3d6000fd5b505050506040513d602081101561327657600080fd5b5051156132b8576040805162461bcd60e51b81526020600482015260186024820152600080516020613cbb833981519152604482015290519081900360640190fd5b6003546040805163b36d691960e01b81523360048201819052915191926001600160a01b03169163b36d691991602480820192602092909190829003018186803b15801561330557600080fd5b505afa158015613319573d6000803e3d6000fd5b505050506040513d602081101561332f57600080fd5b505115613371576040805162461bcd60e51b81526020600482018190526024820152600080516020613cdb833981519152604482015290519081900360640190fd5b61337a84612bd3565b61338357600080fd5b61338c33612bd3565b61339557600080fd5b6004546001600160a01b0386811691161415613558576004546040516001600160a01b03909116903480156108fc02916000818181858888f19350505050156135535760048054604080516315567f0d60e31b81526001600160a01b038981169482019490945233602482015287841660448201523460648201529051929091169163aab3f868916084808201926020929091908290030181600087803b15801561343f57600080fd5b505af1158015613453573d6000803e3d6000fd5b505050506040513d602081101561346957600080fd5b505161347457600080fd5b6001546040805163304d095d60e21b81526001600160a01b038881166004830152336024830152346044830152606482018690529151919092169163c13425749160848083019260209291908290030181600087803b1580156134d657600080fd5b505af11580156134ea573d6000803e3d6000fd5b505050506040513d602081101561350057600080fd5b5051613553576040805162461bcd60e51b815260206004820152601060248201527f6c6971756964617465206661696c656400000000000000000000000000000000604482015290519081900360640190fd5b6136d5565b60048054604080516315567f0d60e31b81526001600160a01b03898116948201949094523360248201528784166044820152606481018790529051929091169163aab3f868916084808201926020929091908290030181600087803b1580156135c057600080fd5b505af11580156135d4573d6000803e3d6000fd5b505050506040513d60208110156135ea57600080fd5b50516135f557600080fd5b6001546040805163304d095d60e21b81526001600160a01b03888116600483015233602483015260448201879052606482018690529151919092169163c13425749160848083019260209291908290030181600087803b15801561365857600080fd5b505af115801561366c573d6000803e3d6000fd5b505050506040513d602081101561368257600080fd5b50516136d5576040805162461bcd60e51b815260206004820152601060248201527f6c6971756964617465206661696c656400000000000000000000000000000000604482015290519081900360640190fd5b5050505050565b600554604080516358c3de9360e11b815290516000926001600160a01b03169163b187bd26916004808301926020929190829003018186803b15801561372157600080fd5b505afa158015613735573d6000803e3d6000fd5b505050506040513d602081101561374b57600080fd5b50511561378d576040805162461bcd60e51b81526020600482015260186024820152600080516020613cbb833981519152604482015290519081900360640190fd5b6003546040805163b36d691960e01b81523360048201819052915191926001600160a01b03169163b36d691991602480820192602092909190829003018186803b1580156137da57600080fd5b505afa1580156137ee573d6000803e3d6000fd5b505050506040513d602081101561380457600080fd5b505115613846576040805162461bcd60e51b81526020600482018190526024820152600080516020613cdb833981519152604482015290519081900360640190fd5b61384f33612bd3565b61385857600080fd5b600154604080517f63ac0f990000000000000000000000000000000000000000000000000000000081523360048201526024810186905290516001600160a01b03909216916363ac0f99916044808201926020929091908290030181600087803b1580156138c557600080fd5b505af11580156138d9573d6000803e3d6000fd5b505050506040513d60208110156138ef57600080fd5b5051610b42576040805162461bcd60e51b815260206004820152601460248201527f6465706f73697420626f6e7573206661696c6564000000000000000000000000604482015290519081900360640190fd5b6000546001600160a01b0316331461395957600080fd5b600280546001600160a01b0319166001600160a01b0392909216919091179055565b600654600160a01b900460ff1690565b6000546001600160a01b031633146139a257600080fd5b6001600160a01b038116156139cd57600080546001600160a01b0319166001600160a01b0383161790555b50565b600554604080516358c3de9360e11b815290516000926001600160a01b03169163b187bd26916004808301926020929190829003018186803b158015613a1557600080fd5b505afa158015613a29573d6000803e3d6000fd5b505050506040513d6020811015613a3f57600080fd5b505115613a81576040805162461bcd60e51b81526020600482015260186024820152600080516020613cbb833981519152604482015290519081900360640190fd5b6003546040805163b36d691960e01b81523360048201819052915191926001600160a01b03169163b36d691991602480820192602092909190829003018186803b158015613ace57600080fd5b505afa158015613ae2573d6000803e3d6000fd5b505050506040513d6020811015613af857600080fd5b505115613b3a576040805162461bcd60e51b81526020600482018190526024820152600080516020613cdb833981519152604482015290519081900360640190fd5b613b4333612bd3565b613b4c57600080fd5b60015460408051636ce5768960e11b81526001600160a01b038781166004830152336024830152604482018790529151919092169163d9caed129160648083019260209291908290030181600087803b158015613ba857600080fd5b505af1158015613bbc573d6000803e3d6000fd5b505050506040513d6020811015613bd257600080fd5b5051613c25576040805162461bcd60e51b815260206004820152600f60248201527f7769746864726177206661696c65640000000000000000000000000000000000604482015290519081900360640190fd5b5060019392505050565b6000826001600160a01b03166370a08231836040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b158015613c8757600080fd5b505afa158015613c9b573d6000803e3d6000fd5b505050506040513d6020811015613cb157600080fd5b5051939250505056fe44617461206973206265696e67206d61696e7461696e65640000000000000000596f752061726520616c7265616479206f6e2074686520626c61636b6c697374a265627a7a72315820c60e0d7be275f92f306c654200315a7be84db79c5617671e2874ca99287d22ea64736f6c634300050c0032

Deployed Bytecode

0x6080604052600436106101fd5760003560e01c80637a5e31031161011d578063b01fd89a116100b0578063d351b5fd1161007f578063f2fde38b11610064578063f2fde38b146107eb578063f3fef3a31461081e578063f7888aec14610857576101fd565b8063d351b5fd146107a3578063e1a974a0146107d6576101fd565b8063b01fd89a146106f2578063b187bd2614610728578063c13425741461073d578063cf1814bc14610779576101fd565b80638da5cb5b116100ec5780638da5cb5b146106285780639f8a13d714610659578063a1206d4e1461068c578063aeb5d2c1146106bf576101fd565b80637a5e31031461058f5780638209d354146105bb5780638a43bb01146105e75780638a9aa01c14610613576101fd565b806322fdef941161019557806366d581f01161016457806366d581f0146104835780636dc2d787146104c65780636f77926b146104f957806372d3296814610565576101fd565b806322fdef94146103c75780632d137bcc146103fa5780634420e4861461042457806347e7ef2414610457576101fd565b8063133b2eab116101d1578063133b2eab146102fd57806319bcef6d146103295780631f9efb201461035c57806322867d781461039b576101fd565b8062837b15146102025780630161ca79146102475780630224f6541461027c5780631208333a146102ba575b600080fd5b34801561020e57600080fd5b506102356004803603602081101561022557600080fd5b50356001600160a01b0316610892565b60408051918252519081900360200190f35b34801561025357600080fd5b5061027a6004803603602081101561026a57600080fd5b50356001600160a01b03166108a3565b005b34801561028857600080fd5b506102a66004803603602081101561029f57600080fd5b50356108dc565b604080519115158252519081900360200190f35b3480156102c657600080fd5b506102a6600480360360608110156102dd57600080fd5b506001600160a01b03813581169160208101359091169060400135610b4b565b34801561030957600080fd5b5061027a6004803603602081101561032057600080fd5b50351515610d78565b34801561033557600080fd5b5061027a6004803603602081101561034c57600080fd5b50356001600160a01b0316610dc8565b34801561036857600080fd5b506102a66004803603606081101561037f57600080fd5b506001600160a01b038135169060208101359060400135610e01565b61027a600480360360408110156103b157600080fd5b506001600160a01b038135169060200135611081565b3480156103d357600080fd5b506102a6600480360360208110156103ea57600080fd5b50356001600160a01b03166114f9565b34801561040657600080fd5b506102a66004803603602081101561041d57600080fd5b5035611595565b34801561043057600080fd5b506102a66004803603602081101561044757600080fd5b50356001600160a01b03166117fb565b61027a6004803603604081101561046d57600080fd5b506001600160a01b038135169060200135611966565b34801561048f57600080fd5b506102a6600480360360608110156104a657600080fd5b506001600160a01b03813581169160208101359091169060400135611e23565b3480156104d257600080fd5b5061027a600480360360208110156104e957600080fd5b50356001600160a01b031661204f565b34801561050557600080fd5b5061052c6004803603602081101561051c57600080fd5b50356001600160a01b0316612088565b604080516001600160a01b0396871681529490951660208501529115158385015215156060830152608082015290519081900360a00190f35b34801561057157600080fd5b506102a66004803603602081101561058857600080fd5b503561214d565b61027a600480360360408110156105a557600080fd5b506001600160a01b0381351690602001356123b3565b3480156105c757600080fd5b5061027a600480360360208110156105de57600080fd5b5035151561273e565b61027a600480360360408110156105fd57600080fd5b506001600160a01b03813516906020013561278e565b34801561061f57600080fd5b506102a6612bb4565b34801561063457600080fd5b5061063d612bc4565b604080516001600160a01b039092168252519081900360200190f35b34801561066557600080fd5b506102a66004803603602081101561067c57600080fd5b50356001600160a01b0316612bd3565b34801561069857600080fd5b5061027a600480360360208110156106af57600080fd5b50356001600160a01b0316612c3d565b3480156106cb57600080fd5b5061027a600480360360208110156106e257600080fd5b50356001600160a01b0316612c76565b61027a6004803603606081101561070857600080fd5b506001600160a01b03813581169160208101359091169060400135612caf565b34801561073457600080fd5b506102a6613188565b61027a6004803603608081101561075357600080fd5b506001600160a01b038135811691602081013590911690604081013590606001356131fe565b34801561078557600080fd5b506102a66004803603602081101561079c57600080fd5b50356136dc565b3480156107af57600080fd5b5061027a600480360360208110156107c657600080fd5b50356001600160a01b0316613942565b3480156107e257600080fd5b506102a661397b565b3480156107f757600080fd5b5061027a6004803603602081101561080e57600080fd5b50356001600160a01b031661398b565b34801561082a57600080fd5b506102a66004803603604081101561084157600080fd5b506001600160a01b0381351690602001356139d0565b34801561086357600080fd5b506102356004803603604081101561087a57600080fd5b506001600160a01b0381358116916020013516613c2f565b6001600160a01b038116315b919050565b6000546001600160a01b031633146108ba57600080fd5b600480546001600160a01b0319166001600160a01b0392909216919091179055565b600554604080516358c3de9360e11b815290516000926001600160a01b03169163b187bd26916004808301926020929190829003018186803b15801561092157600080fd5b505afa158015610935573d6000803e3d6000fd5b505050506040513d602081101561094b57600080fd5b50511561098d576040805162461bcd60e51b81526020600482015260186024820152600080516020613cbb833981519152604482015290519081900360640190fd5b6003546040805163b36d691960e01b81523360048201819052915191926001600160a01b03169163b36d691991602480820192602092909190829003018186803b1580156109da57600080fd5b505afa1580156109ee573d6000803e3d6000fd5b505050506040513d6020811015610a0457600080fd5b505115610a46576040805162461bcd60e51b81526020600482018190526024820152600080516020613cdb833981519152604482015290519081900360640190fd5b610a4f33612bd3565b610a5857600080fd5b600154604080517f87d73f1d0000000000000000000000000000000000000000000000000000000081523360048201526024810186905290516001600160a01b03909216916387d73f1d916044808201926020929091908290030181600087803b158015610ac557600080fd5b505af1158015610ad9573d6000803e3d6000fd5b505050506040513d6020811015610aef57600080fd5b5051610b42576040805162461bcd60e51b815260206004820152601360248201527f6465706f736974206d696e65206661696c656400000000000000000000000000604482015290519081900360640190fd5b50600192915050565b600554604080516358c3de9360e11b815290516000926001600160a01b03169163b187bd26916004808301926020929190829003018186803b158015610b9057600080fd5b505afa158015610ba4573d6000803e3d6000fd5b505050506040513d6020811015610bba57600080fd5b505115610bfc576040805162461bcd60e51b81526020600482015260186024820152600080516020613cbb833981519152604482015290519081900360640190fd5b6003546040805163b36d691960e01b81526001600160a01b03808716600483015291518693929092169163b36d691991602480820192602092909190829003018186803b158015610c4c57600080fd5b505afa158015610c60573d6000803e3d6000fd5b505050506040513d6020811015610c7657600080fd5b505115610cb8576040805162461bcd60e51b81526020600482018190526024820152600080516020613cdb833981519152604482015290519081900360640190fd5b6000546001600160a01b03163314610ccf57600080fd5b610cd884612bd3565b610ce157600080fd5b6004805460408051636ce5768960e11b81526001600160a01b03898116948201949094528784166024820152604481018790529051929091169163d9caed12916064808201926020929091908290030181600087803b158015610d4357600080fd5b505af1158015610d57573d6000803e3d6000fd5b505050506040513d6020811015610d6d57600080fd5b505195945050505050565b6000546001600160a01b03163314610d8f57600080fd5b60068054911515600160a81b027fffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff909216919091179055565b6000546001600160a01b03163314610ddf57600080fd5b600680546001600160a01b0319166001600160a01b0392909216919091179055565b600554604080516358c3de9360e11b815290516000926001600160a01b03169163b187bd26916004808301926020929190829003018186803b158015610e4657600080fd5b505afa158015610e5a573d6000803e3d6000fd5b505050506040513d6020811015610e7057600080fd5b505115610eb2576040805162461bcd60e51b81526020600482015260186024820152600080516020613cbb833981519152604482015290519081900360640190fd5b6003546040805163b36d691960e01b81523360048201819052915191926001600160a01b03169163b36d691991602480820192602092909190829003018186803b158015610eff57600080fd5b505afa158015610f13573d6000803e3d6000fd5b505050506040513d6020811015610f2957600080fd5b505115610f6b576040805162461bcd60e51b81526020600482018190526024820152600080516020613cdb833981519152604482015290519081900360640190fd5b610f7433612bd3565b610f7d57600080fd5b600154604080517fa95fe2670000000000000000000000000000000000000000000000000000000081526001600160a01b03888116600483015233602483015260448201889052606482018790529151919092169163a95fe2679160848083019260209291908290030181600087803b158015610ff957600080fd5b505af115801561100d573d6000803e3d6000fd5b505050506040513d602081101561102357600080fd5b5051611076576040805162461bcd60e51b815260206004820152600f60248201527f7769746864726177206661696c65640000000000000000000000000000000000604482015290519081900360640190fd5b506001949350505050565b600560009054906101000a90046001600160a01b03166001600160a01b031663b187bd266040518163ffffffff1660e01b815260040160206040518083038186803b1580156110cf57600080fd5b505afa1580156110e3573d6000803e3d6000fd5b505050506040513d60208110156110f957600080fd5b50511561113b576040805162461bcd60e51b81526020600482015260186024820152600080516020613cbb833981519152604482015290519081900360640190fd5b6003546040805163b36d691960e01b81523360048201819052915191926001600160a01b03169163b36d691991602480820192602092909190829003018186803b15801561118857600080fd5b505afa15801561119c573d6000803e3d6000fd5b505050506040513d60208110156111b257600080fd5b5051156111f4576040805162461bcd60e51b81526020600482018190526024820152600080516020613cdb833981519152604482015290519081900360640190fd5b6004546001600160a01b0384811691161415611397576004546040516001600160a01b03909116903480156108fc02916000818181858888f1935050505015611392576004805460408051631da649cf60e01b81526001600160a01b038781169482019490945233602482015234604482015290519290911691631da649cf916064808201926020929091908290030181600087803b15801561129657600080fd5b505af11580156112aa573d6000803e3d6000fd5b505050506040513d60208110156112c057600080fd5b50516112cb57600080fd5b60015460408051631da649cf60e01b81526001600160a01b03868116600483015233602483015234604483015291519190921691631da649cf9160648083019260209291908290030181600087803b15801561132657600080fd5b505af115801561133a573d6000803e3d6000fd5b505050506040513d602081101561135057600080fd5b5051611392576040805162461bcd60e51b815260206004820152600c60248201526b1c995c185e4819985a5b195960a21b604482015290519081900360640190fd5b6114f4565b6004805460408051631da649cf60e01b81526001600160a01b03878116948201949094523360248201526044810186905290519290911691631da649cf916064808201926020929091908290030181600087803b1580156113f757600080fd5b505af115801561140b573d6000803e3d6000fd5b505050506040513d602081101561142157600080fd5b505161142c57600080fd5b60015460408051631da649cf60e01b81526001600160a01b0386811660048301523360248301526044820186905291519190921691631da649cf9160648083019260209291908290030181600087803b15801561148857600080fd5b505af115801561149c573d6000803e3d6000fd5b505050506040513d60208110156114b257600080fd5b50516114f4576040805162461bcd60e51b815260206004820152600c60248201526b1c995c185e4819985a5b195960a21b604482015290519081900360640190fd5b505050565b600354604080517f22fdef940000000000000000000000000000000000000000000000000000000081526001600160a01b038481166004830152915160009392909216916322fdef9491602480820192602092909190829003018186803b15801561156357600080fd5b505afa158015611577573d6000803e3d6000fd5b505050506040513d602081101561158d57600080fd5b505192915050565b600554604080516358c3de9360e11b815290516000926001600160a01b03169163b187bd26916004808301926020929190829003018186803b1580156115da57600080fd5b505afa1580156115ee573d6000803e3d6000fd5b505050506040513d602081101561160457600080fd5b505115611646576040805162461bcd60e51b81526020600482015260186024820152600080516020613cbb833981519152604482015290519081900360640190fd5b6003546040805163b36d691960e01b81523360048201819052915191926001600160a01b03169163b36d691991602480820192602092909190829003018186803b15801561169357600080fd5b505afa1580156116a7573d6000803e3d6000fd5b505050506040513d60208110156116bd57600080fd5b5051156116ff576040805162461bcd60e51b81526020600482018190526024820152600080516020613cdb833981519152604482015290519081900360640190fd5b61170833612bd3565b61171157600080fd5b600154604080517ff85a81f50000000000000000000000000000000000000000000000000000000081523360048201526024810186905290516001600160a01b039092169163f85a81f5916044808201926020929091908290030181600087803b15801561177e57600080fd5b505af1158015611792573d6000803e3d6000fd5b505050506040513d60208110156117a857600080fd5b5051610b42576040805162461bcd60e51b815260206004820152601460248201527f7769746864726177206d696e65206661696c6564000000000000000000000000604482015290519081900360640190fd5b60035460408051632a99dcd560e21b81526001600160a01b0384811660048301523360248301529151600093929092169163aa6773549160448082019260209290919082900301818787803b15801561185357600080fd5b505af1158015611867573d6000803e3d6000fd5b505050506040513d602081101561187d57600080fd5b50511561195e5760015460408051632a99dcd560e21b81526001600160a01b0385811660048301523360248301529151919092169163aa6773549160448083019260209291908290030181600087803b1580156118d957600080fd5b505af11580156118ed573d6000803e3d6000fd5b505050506040513d602081101561190357600080fd5b5051611956576040805162461bcd60e51b815260206004820152600f60248201527f7265676973746572206661696c65640000000000000000000000000000000000604482015290519081900360640190fd5b50600161089e565b506000919050565b600560009054906101000a90046001600160a01b03166001600160a01b031663b187bd266040518163ffffffff1660e01b815260040160206040518083038186803b1580156119b457600080fd5b505afa1580156119c8573d6000803e3d6000fd5b505050506040513d60208110156119de57600080fd5b505115611a20576040805162461bcd60e51b81526020600482015260186024820152600080516020613cbb833981519152604482015290519081900360640190fd5b6003546040805163b36d691960e01b81523360048201819052915191926001600160a01b03169163b36d691991602480820192602092909190829003018186803b158015611a6d57600080fd5b505afa158015611a81573d6000803e3d6000fd5b505050506040513d6020811015611a9757600080fd5b505115611ad9576040805162461bcd60e51b81526020600482018190526024820152600080516020613cdb833981519152604482015290519081900360640190fd5b600654600160a01b900460ff161515600114611af457600080fd5b611afd33612bd3565b611b0657600080fd5b6004546001600160a01b0384811691161415611cb5576004546040516001600160a01b03909116903480156108fc02916000818181858888f1935050505015611392576004805460408051638340f54960e01b81526001600160a01b038781169482019490945233602482015234604482015290519290911691638340f549916064808201926020929091908290030181600087803b158015611ba857600080fd5b505af1158015611bbc573d6000803e3d6000fd5b505050506040513d6020811015611bd257600080fd5b5051611bdd57600080fd5b60015460408051638340f54960e01b81526001600160a01b03868116600483015233602483015234604483015291519190921691638340f5499160648083019260209291908290030181600087803b158015611c3857600080fd5b505af1158015611c4c573d6000803e3d6000fd5b505050506040513d6020811015611c6257600080fd5b5051611392576040805162461bcd60e51b815260206004820152600e60248201527f6465706f736974206661696c6564000000000000000000000000000000000000604482015290519081900360640190fd5b6004805460408051638340f54960e01b81526001600160a01b03878116948201949094523360248201526044810186905290519290911691638340f549916064808201926020929091908290030181600087803b158015611d1557600080fd5b505af1158015611d29573d6000803e3d6000fd5b505050506040513d6020811015611d3f57600080fd5b5051611d4a57600080fd5b60015460408051638340f54960e01b81526001600160a01b0386811660048301523360248301526044820186905291519190921691638340f5499160648083019260209291908290030181600087803b158015611da657600080fd5b505af1158015611dba573d6000803e3d6000fd5b505050506040513d6020811015611dd057600080fd5b50516114f4576040805162461bcd60e51b815260206004820152600e60248201527f6465706f736974206661696c6564000000000000000000000000000000000000604482015290519081900360640190fd5b600554604080516358c3de9360e11b815290516000926001600160a01b03169163b187bd26916004808301926020929190829003018186803b158015611e6857600080fd5b505afa158015611e7c573d6000803e3d6000fd5b505050506040513d6020811015611e9257600080fd5b505115611ed4576040805162461bcd60e51b81526020600482015260186024820152600080516020613cbb833981519152604482015290519081900360640190fd5b6003546040805163b36d691960e01b81526001600160a01b03808716600483015291518693929092169163b36d691991602480820192602092909190829003018186803b158015611f2457600080fd5b505afa158015611f38573d6000803e3d6000fd5b505050506040513d6020811015611f4e57600080fd5b505115611f90576040805162461bcd60e51b81526020600482018190526024820152600080516020613cdb833981519152604482015290519081900360640190fd5b6000546001600160a01b03163314611fa757600080fd5b600654600160a81b900460ff161515600114611fc257600080fd5b611fcb84612bd3565b611fd457600080fd5b60048054604080517f61c811200000000000000000000000000000000000000000000000000000000081526001600160a01b0389811694820194909452878416602482015260448101879052905192909116916361c81120916064808201926020929091908290030181600087803b158015610d4357600080fd5b6000546001600160a01b0316331461206657600080fd5b600180546001600160a01b0319166001600160a01b0392909216919091179055565b600354604080517f6f77926b0000000000000000000000000000000000000000000000000000000081526001600160a01b038481166004830152915160009384938493849384939290921691636f77926b9160248082019260a092909190829003018186803b1580156120fa57600080fd5b505afa15801561210e573d6000803e3d6000fd5b505050506040513d60a081101561212457600080fd5b508051602082015160408301516060840151608090940151929a91995097509195509350915050565b600554604080516358c3de9360e11b815290516000926001600160a01b03169163b187bd26916004808301926020929190829003018186803b15801561219257600080fd5b505afa1580156121a6573d6000803e3d6000fd5b505050506040513d60208110156121bc57600080fd5b5051156121fe576040805162461bcd60e51b81526020600482015260186024820152600080516020613cbb833981519152604482015290519081900360640190fd5b6003546040805163b36d691960e01b81523360048201819052915191926001600160a01b03169163b36d691991602480820192602092909190829003018186803b15801561224b57600080fd5b505afa15801561225f573d6000803e3d6000fd5b505050506040513d602081101561227557600080fd5b5051156122b7576040805162461bcd60e51b81526020600482018190526024820152600080516020613cdb833981519152604482015290519081900360640190fd5b6122c033612bd3565b6122c957600080fd5b600154604080517fd28803600000000000000000000000000000000000000000000000000000000081523360048201526024810186905290516001600160a01b039092169163d2880360916044808201926020929091908290030181600087803b15801561233657600080fd5b505af115801561234a573d6000803e3d6000fd5b505050506040513d602081101561236057600080fd5b5051610b42576040805162461bcd60e51b815260206004820152601560248201527f776974686472617720626f6e7573206661696c65640000000000000000000000604482015290519081900360640190fd5b600560009054906101000a90046001600160a01b03166001600160a01b031663b187bd266040518163ffffffff1660e01b815260040160206040518083038186803b15801561240157600080fd5b505afa158015612415573d6000803e3d6000fd5b505050506040513d602081101561242b57600080fd5b50511561246d576040805162461bcd60e51b81526020600482015260186024820152600080516020613cbb833981519152604482015290519081900360640190fd5b6003546040805163b36d691960e01b81523360048201819052915191926001600160a01b03169163b36d691991602480820192602092909190829003018186803b1580156124ba57600080fd5b505afa1580156124ce573d6000803e3d6000fd5b505050506040513d60208110156124e457600080fd5b505115612526576040805162461bcd60e51b81526020600482018190526024820152600080516020613cdb833981519152604482015290519081900360640190fd5b61252f33612bd3565b61253857600080fd5b6004546001600160a01b03848116911614156125d0576004546040516001600160a01b03909116903480156108fc02916000818181858888f1935050505015612583573491506125d0565b6040805162461bcd60e51b815260206004820152600e60248201527f75706772616465206661696c6564000000000000000000000000000000000000604482015290519081900360640190fd5b600480546040805163f0e818b760e01b81526001600160a01b0387811694820194909452336024820152604481018690529051929091169163f0e818b7916064808201926020929091908290030181600087803b15801561263057600080fd5b505af1158015612644573d6000803e3d6000fd5b505050506040513d602081101561265a57600080fd5b505161266557600080fd5b6001546040805163f0e818b760e01b81526001600160a01b038681166004830152336024830152604482018690529151919092169163f0e818b79160648083019260209291908290030181600087803b1580156126c157600080fd5b505af11580156126d5573d6000803e3d6000fd5b505050506040513d60208110156126eb57600080fd5b50516114f4576040805162461bcd60e51b815260206004820152600e60248201527f75706772616465206661696c6564000000000000000000000000000000000000604482015290519081900360640190fd5b6000546001600160a01b0316331461275557600080fd5b60068054911515600160a01b027fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff909216919091179055565b600560009054906101000a90046001600160a01b03166001600160a01b031663b187bd266040518163ffffffff1660e01b815260040160206040518083038186803b1580156127dc57600080fd5b505afa1580156127f0573d6000803e3d6000fd5b505050506040513d602081101561280657600080fd5b505115612848576040805162461bcd60e51b81526020600482015260186024820152600080516020613cbb833981519152604482015290519081900360640190fd5b6003546040805163b36d691960e01b81523360048201819052915191926001600160a01b03169163b36d691991602480820192602092909190829003018186803b15801561289557600080fd5b505afa1580156128a9573d6000803e3d6000fd5b505050506040513d60208110156128bf57600080fd5b505115612901576040805162461bcd60e51b81526020600482018190526024820152600080516020613cdb833981519152604482015290519081900360640190fd5b61290a33612bd3565b61291357600080fd5b6004546001600160a01b03848116911614156129ab576004546040516001600160a01b03909116903480156108fc02916000818181858888f193505050501561295e573491506129ab565b6040805162461bcd60e51b815260206004820152601160248201527f627579206d696e696e67206661696c6564000000000000000000000000000000604482015290519081900360640190fd5b600480546040805163760772e160e11b81526001600160a01b0387811694820194909452336024820152604481018690529051929091169163ec0ee5c2916064808201926020929091908290030181600087803b158015612a0b57600080fd5b505af1158015612a1f573d6000803e3d6000fd5b505050506040513d6020811015612a3557600080fd5b5051612a4057600080fd5b600354604080517f9742ca4600000000000000000000000000000000000000000000000000000000815233600482015290516001600160a01b0390921691639742ca46916024808201926020929091908290030181600087803b158015612aa657600080fd5b505af1158015612aba573d6000803e3d6000fd5b505050506040513d6020811015612ad057600080fd5b5051612adb57600080fd5b6001546040805163760772e160e11b81526001600160a01b038681166004830152336024830152604482018690529151919092169163ec0ee5c29160648083019260209291908290030181600087803b158015612b3757600080fd5b505af1158015612b4b573d6000803e3d6000fd5b505050506040513d6020811015612b6157600080fd5b50516114f4576040805162461bcd60e51b815260206004820152601160248201527f627579206d696e696e67206661696c6564000000000000000000000000000000604482015290519081900360640190fd5b600654600160a81b900460ff1690565b6000546001600160a01b031681565b600354604080517f9f8a13d70000000000000000000000000000000000000000000000000000000081526001600160a01b03848116600483015291516000939290921691639f8a13d791602480820192602092909190829003018186803b15801561156357600080fd5b6000546001600160a01b03163314612c5457600080fd5b600380546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b03163314612c8d57600080fd5b600580546001600160a01b0319166001600160a01b0392909216919091179055565b600560009054906101000a90046001600160a01b03166001600160a01b031663b187bd266040518163ffffffff1660e01b815260040160206040518083038186803b158015612cfd57600080fd5b505afa158015612d11573d6000803e3d6000fd5b505050506040513d6020811015612d2757600080fd5b505115612d69576040805162461bcd60e51b81526020600482015260186024820152600080516020613cbb833981519152604482015290519081900360640190fd5b6003546040805163b36d691960e01b81523360048201819052915191926001600160a01b03169163b36d691991602480820192602092909190829003018186803b158015612db657600080fd5b505afa158015612dca573d6000803e3d6000fd5b505050506040513d6020811015612de057600080fd5b505115612e22576040805162461bcd60e51b81526020600482018190526024820152600080516020613cdb833981519152604482015290519081900360640190fd5b336001600160a01b0384161415612e3857600080fd5b612e41336114f9565b612ec75760035460408051632a99dcd560e21b81526001600160a01b0386811660048301523360248301529151919092169163aa6773549160448083019260209291908290030181600087803b158015612e9a57600080fd5b505af1158015612eae573d6000803e3d6000fd5b505050506040513d6020811015612ec457600080fd5b50505b6004546001600160a01b0385811691161415612f4f576004546040516001600160a01b03909116903480156108fc02916000818181858888f1935050505015612f1257349150612f4f565b6040805162461bcd60e51b815260206004820152600d60248201526c1858dd1a5d994819985a5b1959609a1b604482015290519081900360640190fd5b60048054604080517fb01fd89a0000000000000000000000000000000000000000000000000000000081526001600160a01b0388811694820194909452336024820152604481018690529051929091169163b01fd89a916064808201926020929091908290030181600087803b158015612fc857600080fd5b505af1158015612fdc573d6000803e3d6000fd5b505050506040513d6020811015612ff257600080fd5b5051612ffd57600080fd5b600354604080517fc06e0ada00000000000000000000000000000000000000000000000000000000815233600482015290516001600160a01b039092169163c06e0ada916024808201926020929091908290030181600087803b15801561306357600080fd5b505af1158015613077573d6000803e3d6000fd5b505050506040513d602081101561308d57600080fd5b505161309857600080fd5b600154604080517f0c4d443e0000000000000000000000000000000000000000000000000000000081526001600160a01b03878116600483015286811660248301523360448301526064820186905291519190921691630c4d443e9160848083019260209291908290030181600087803b15801561311557600080fd5b505af1158015613129573d6000803e3d6000fd5b505050506040513d602081101561313f57600080fd5b5051613182576040805162461bcd60e51b815260206004820152600d60248201526c1858dd1a5d994819985a5b1959609a1b604482015290519081900360640190fd5b50505050565b600554604080516358c3de9360e11b815290516000926001600160a01b03169163b187bd26916004808301926020929190829003018186803b1580156131cd57600080fd5b505afa1580156131e1573d6000803e3d6000fd5b505050506040513d60208110156131f757600080fd5b5051905090565b600560009054906101000a90046001600160a01b03166001600160a01b031663b187bd266040518163ffffffff1660e01b815260040160206040518083038186803b15801561324c57600080fd5b505afa158015613260573d6000803e3d6000fd5b505050506040513d602081101561327657600080fd5b5051156132b8576040805162461bcd60e51b81526020600482015260186024820152600080516020613cbb833981519152604482015290519081900360640190fd5b6003546040805163b36d691960e01b81523360048201819052915191926001600160a01b03169163b36d691991602480820192602092909190829003018186803b15801561330557600080fd5b505afa158015613319573d6000803e3d6000fd5b505050506040513d602081101561332f57600080fd5b505115613371576040805162461bcd60e51b81526020600482018190526024820152600080516020613cdb833981519152604482015290519081900360640190fd5b61337a84612bd3565b61338357600080fd5b61338c33612bd3565b61339557600080fd5b6004546001600160a01b0386811691161415613558576004546040516001600160a01b03909116903480156108fc02916000818181858888f19350505050156135535760048054604080516315567f0d60e31b81526001600160a01b038981169482019490945233602482015287841660448201523460648201529051929091169163aab3f868916084808201926020929091908290030181600087803b15801561343f57600080fd5b505af1158015613453573d6000803e3d6000fd5b505050506040513d602081101561346957600080fd5b505161347457600080fd5b6001546040805163304d095d60e21b81526001600160a01b038881166004830152336024830152346044830152606482018690529151919092169163c13425749160848083019260209291908290030181600087803b1580156134d657600080fd5b505af11580156134ea573d6000803e3d6000fd5b505050506040513d602081101561350057600080fd5b5051613553576040805162461bcd60e51b815260206004820152601060248201527f6c6971756964617465206661696c656400000000000000000000000000000000604482015290519081900360640190fd5b6136d5565b60048054604080516315567f0d60e31b81526001600160a01b03898116948201949094523360248201528784166044820152606481018790529051929091169163aab3f868916084808201926020929091908290030181600087803b1580156135c057600080fd5b505af11580156135d4573d6000803e3d6000fd5b505050506040513d60208110156135ea57600080fd5b50516135f557600080fd5b6001546040805163304d095d60e21b81526001600160a01b03888116600483015233602483015260448201879052606482018690529151919092169163c13425749160848083019260209291908290030181600087803b15801561365857600080fd5b505af115801561366c573d6000803e3d6000fd5b505050506040513d602081101561368257600080fd5b50516136d5576040805162461bcd60e51b815260206004820152601060248201527f6c6971756964617465206661696c656400000000000000000000000000000000604482015290519081900360640190fd5b5050505050565b600554604080516358c3de9360e11b815290516000926001600160a01b03169163b187bd26916004808301926020929190829003018186803b15801561372157600080fd5b505afa158015613735573d6000803e3d6000fd5b505050506040513d602081101561374b57600080fd5b50511561378d576040805162461bcd60e51b81526020600482015260186024820152600080516020613cbb833981519152604482015290519081900360640190fd5b6003546040805163b36d691960e01b81523360048201819052915191926001600160a01b03169163b36d691991602480820192602092909190829003018186803b1580156137da57600080fd5b505afa1580156137ee573d6000803e3d6000fd5b505050506040513d602081101561380457600080fd5b505115613846576040805162461bcd60e51b81526020600482018190526024820152600080516020613cdb833981519152604482015290519081900360640190fd5b61384f33612bd3565b61385857600080fd5b600154604080517f63ac0f990000000000000000000000000000000000000000000000000000000081523360048201526024810186905290516001600160a01b03909216916363ac0f99916044808201926020929091908290030181600087803b1580156138c557600080fd5b505af11580156138d9573d6000803e3d6000fd5b505050506040513d60208110156138ef57600080fd5b5051610b42576040805162461bcd60e51b815260206004820152601460248201527f6465706f73697420626f6e7573206661696c6564000000000000000000000000604482015290519081900360640190fd5b6000546001600160a01b0316331461395957600080fd5b600280546001600160a01b0319166001600160a01b0392909216919091179055565b600654600160a01b900460ff1690565b6000546001600160a01b031633146139a257600080fd5b6001600160a01b038116156139cd57600080546001600160a01b0319166001600160a01b0383161790555b50565b600554604080516358c3de9360e11b815290516000926001600160a01b03169163b187bd26916004808301926020929190829003018186803b158015613a1557600080fd5b505afa158015613a29573d6000803e3d6000fd5b505050506040513d6020811015613a3f57600080fd5b505115613a81576040805162461bcd60e51b81526020600482015260186024820152600080516020613cbb833981519152604482015290519081900360640190fd5b6003546040805163b36d691960e01b81523360048201819052915191926001600160a01b03169163b36d691991602480820192602092909190829003018186803b158015613ace57600080fd5b505afa158015613ae2573d6000803e3d6000fd5b505050506040513d6020811015613af857600080fd5b505115613b3a576040805162461bcd60e51b81526020600482018190526024820152600080516020613cdb833981519152604482015290519081900360640190fd5b613b4333612bd3565b613b4c57600080fd5b60015460408051636ce5768960e11b81526001600160a01b038781166004830152336024830152604482018790529151919092169163d9caed129160648083019260209291908290030181600087803b158015613ba857600080fd5b505af1158015613bbc573d6000803e3d6000fd5b505050506040513d6020811015613bd257600080fd5b5051613c25576040805162461bcd60e51b815260206004820152600f60248201527f7769746864726177206661696c65640000000000000000000000000000000000604482015290519081900360640190fd5b5060019392505050565b6000826001600160a01b03166370a08231836040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b158015613c8757600080fd5b505afa158015613c9b573d6000803e3d6000fd5b505050506040513d6020811015613cb157600080fd5b5051939250505056fe44617461206973206265696e67206d61696e7461696e65640000000000000000596f752061726520616c7265616479206f6e2074686520626c61636b6c697374a265627a7a72315820c60e0d7be275f92f306c654200315a7be84db79c5617671e2874ca99287d22ea64736f6c634300050c0032

Deployed Bytecode Sourcemap

8436:10796:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8915:8;;;18640:187;;8:9:-1;5:2;;;30:1;27;20:12;5:2;18640:187:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;18640:187:0;-1:-1:-1;;;;;18640:187:0;;:::i;:::-;;;;;;;;;;;;;;;;7915:105;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7915:105:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;7915:105:0;-1:-1:-1;;;;;7915:105:0;;:::i;:::-;;17318:329;;8:9:-1;5:2;;;30:1;27;20:12;5:2;17318:329:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;17318:329:0;;:::i;:::-;;;;;;;;;;;;;;;;;;12855:343;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12855:343:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;12855:343:0;;;;;;;;;;;;;;;;;:::i;18098:89::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;18098:89:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;18098:89:0;;;;:::i;8248:111::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8248:111:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;8248:111:0;-1:-1:-1;;;;;8248:111:0;;:::i;15898:364::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;15898:364:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;15898:364:0;;;;;;;;;;;;;:::i;13613:817::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;13613:817:0;;;;;;;;:::i;8939:128::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8939:128:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;8939:128:0;-1:-1:-1;;;;;8939:128:0;;:::i;16635:332::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;16635:332:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;16635:332:0;;:::i;9222:297::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9222:297:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;9222:297:0;-1:-1:-1;;;;;9222:297:0;;:::i;11870:953::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;11870:953:0;;;;;;;;:::i;13219:372::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;13219:372:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;13219:372:0;;;;;;;;;;;;;;;;;:::i;8028:99::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8028:99:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;8028:99:0;-1:-1:-1;;;;;8028:99:0;;:::i;18947:282::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;18947:282:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;18947:282:0;-1:-1:-1;;;;;18947:282:0;;:::i;:::-;;;;-1:-1:-1;;;;;18947:282:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16975:335;;8:9:-1;5:2;;;30:1;27;20:12;5:2;16975:335:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;16975:335:0;;:::i;10417:676::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;10417:676:0;;;;;;;;:::i;17995:95::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;17995:95:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;17995:95:0;;;;:::i;11120:726::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;11120:726:0;;;;;;;;:::i;18309:97::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;18309:97:0;;;:::i;204:20::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;204:20:0;;;:::i;:::-;;;;-1:-1:-1;;;;;204:20:0;;;;;;;;;;;;;;9075:122;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9075:122:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;9075:122:0;-1:-1:-1;;;;;9075:122:0;;:::i;7804:103::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7804:103:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;7804:103:0;-1:-1:-1;;;;;7804:103:0;;:::i;8135:105::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8135:105:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;8135:105:0;-1:-1:-1;;;;;8135:105:0;;:::i;9547:841::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;9547:841:0;;;;;;;;;;;;;;;;;:::i;18835:104::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;18835:104:0;;;:::i;14456:1434::-;;;;;;13:3:-1;8;5:12;2:2;;;30:1;27;20:12;2:2;-1:-1;;;;;;14456:1434:0;;;;;;;;;;;;;;;;;;;;;;:::i;17655:332::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;17655:332:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;17655:332:0;;:::i;7694:102::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7694:102:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;7694:102:0;-1:-1:-1;;;;;7694:102:0;;:::i;18195:106::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;18195:106:0;;;:::i;390:150::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;390:150:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;390:150:0;-1:-1:-1;;;;;390:150:0;;:::i;16270:357::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;16270:357:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;16270:357:0;;;;;;;;:::i;18441:191::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;18441:191:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;18441:191:0;;;;;;;;;;:::i;18640:187::-;-1:-1:-1;;;;;18771:48:0;;;18640:187;;;;:::o;7915:105::-;352:5;;-1:-1:-1;;;;;352:5:0;338:10;:19;330:28;;;;;;7988:13;:24;;-1:-1:-1;;;;;;7988:24:0;-1:-1:-1;;;;;7988:24:0;;;;;;;;;;7915:105::o;17318:329::-;8795:13;;:24;;;-1:-1:-1;;;8795:24:0;;;;17449:4;;-1:-1:-1;;;;;8795:13:0;;:22;;:24;;;;;;;;;;;;;;:13;:24;;;5:2:-1;;;;30:1;27;20:12;5:2;8795:24:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8795:24:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;8795:24:0;8794:25;8786:62;;;;;-1:-1:-1;;;8786:62:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;8786:62:0;;;;;;;;;;;;;;;8632:12;;:30;;;-1:-1:-1;;;8632:30:0;;17419:10;8632:30;;;;;;;;17419:10;;-1:-1:-1;;;;;8632:12:0;;:24;;:30;;;;;;;;;;;;;;;:12;:30;;;5:2:-1;;;;30:1;27;20:12;5:2;8632:30:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8632:30:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;8632:30:0;8631:31;8609:113;;;;;-1:-1:-1;;;8609:113:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;8609:113:0;;;;;;;;;;;;;;;17479:20;17488:10;17479:8;:20::i;:::-;17471:29;;;;;;17516:11;;:44;;;;;;17540:10;17516:44;;;;;;;;;;;;-1:-1:-1;;;;;17516:11:0;;;;:23;;:44;;;;;;;;;;;;;;;:11;;:44;;;5:2:-1;;;;30:1;27;20:12;5:2;17516:44:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;17516:44:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;17516:44:0;17511:107;;17577:29;;;-1:-1:-1;;;17577:29:0;;;;;;;;;;;;;;;;;;;;;;;;;;;17511:107;-1:-1:-1;17635:4:0;;17318:329;-1:-1:-1;;17318:329:0:o;12855:343::-;8795:13;;:24;;;-1:-1:-1;;;8795:24:0;;;;13067:12;;-1:-1:-1;;;;;8795:13:0;;:22;;:24;;;;;;;;;;;;;;:13;:24;;;5:2:-1;;;;30:1;27;20:12;5:2;8795:24:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8795:24:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;8795:24:0;8794:25;8786:62;;;;;-1:-1:-1;;;8786:62:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;8786:62:0;;;;;;;;;;;;;;;8632:12;;:30;;;-1:-1:-1;;;8632:30:0;;-1:-1:-1;;;;;8632:30:0;;;;;;;;;13025:4;;8632:12;;;;;:24;;:30;;;;;;;;;;;;;;;:12;:30;;;5:2:-1;;;;30:1;27;20:12;5:2;8632:30:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8632:30:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;8632:30:0;8631:31;8609:113;;;;;-1:-1:-1;;;8609:113:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;8609:113:0;;;;;;;;;;;;;;;352:5;;-1:-1:-1;;;;;352:5:0;338:10;:19;330:28;;;;;;13105:14;13114:4;13105:8;:14::i;:::-;13097:23;;;;;;13138:13;;;:52;;;-1:-1:-1;;;13138:52:0;;-1:-1:-1;;;;;13138:52:0;;;;;;;;;;;;;;;;;;;;;;;;;:13;;;;;:22;;:52;;;;;;;;;;;;;;;:13;;:52;;;5:2:-1;;;;30:1;27;20:12;5:2;13138:52:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;13138:52:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;13138:52:0;;12855:343;-1:-1:-1;;;;;12855:343:0:o;18098:89::-;352:5;;-1:-1:-1;;;;;352:5:0;338:10;:19;330:28;;;;;;18160:9;:19;;;;;-1:-1:-1;;;18160:19:0;;;;;;;;;;;18098:89::o;8248:111::-;352:5;;-1:-1:-1;;;;;352:5:0;338:10;:19;330:28;;;;;;8325:15;:26;;-1:-1:-1;;;;;;8325:26:0;-1:-1:-1;;;;;8325:26:0;;;;;;;;;;8248:111::o;15898:364::-;8795:13;;:24;;;-1:-1:-1;;;8795:24:0;;;;16058:4;;-1:-1:-1;;;;;8795:13:0;;:22;;:24;;;;;;;;;;;;;;:13;:24;;;5:2:-1;;;;30:1;27;20:12;5:2;8795:24:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8795:24:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;8795:24:0;8794:25;8786:62;;;;;-1:-1:-1;;;8786:62:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;8786:62:0;;;;;;;;;;;;;;;8632:12;;:30;;;-1:-1:-1;;;8632:30:0;;16037:10;8632:30;;;;;;;;16037:10;;-1:-1:-1;;;;;8632:12:0;;:24;;:30;;;;;;;;;;;;;;;:12;:30;;;5:2:-1;;;;30:1;27;20:12;5:2;8632:30:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8632:30:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;8632:30:0;8631:31;8609:113;;;;;-1:-1:-1;;;8609:113:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;8609:113:0;;;;;;;;;;;;;;;16083:20;16092:10;16083:8;:20::i;:::-;16075:29;;;;;;16120:11;;:59;;;;;;-1:-1:-1;;;;;16120:59:0;;;;;;;16152:10;16120:59;;;;;;;;;;;;;;;;;;:11;;;;;:16;;:59;;;;;;;;;;;;;;:11;;:59;;;5:2:-1;;;;30:1;27;20:12;5:2;16120:59:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;16120:59:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;16120:59:0;16115:118;;16196:25;;;-1:-1:-1;;;16196:25:0;;;;;;;;;;;;;;;;;;;;;;;;;;;16115:118;-1:-1:-1;16250:4:0;;15898:364;-1:-1:-1;;;;15898:364:0:o;13613:817::-;8795:13;;;;;;;;;-1:-1:-1;;;;;8795:13:0;-1:-1:-1;;;;;8795:22:0;;:24;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8795:24:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8795:24:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;8795:24:0;8794:25;8786:62;;;;;-1:-1:-1;;;8786:62:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;8786:62:0;;;;;;;;;;;;;;;8632:12;;:30;;;-1:-1:-1;;;8632:30:0;;13748:10;8632:30;;;;;;;;13748:10;;-1:-1:-1;;;;;8632:12:0;;:24;;:30;;;;;;;;;;;;;;;:12;:30;;;5:2:-1;;;;30:1;27;20:12;5:2;8632:30:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8632:30:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;8632:30:0;8631:31;8609:113;;;;;-1:-1:-1;;;8609:113:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;8609:113:0;;;;;;;;;;;;;;;13788:13;;-1:-1:-1;;;;;13780:39:0;;;13788:13;;13780:39;13776:647;;;13864:13;;13840:56;;-1:-1:-1;;;;;13864:13:0;;;;13886:9;13840:56;;;;;13864:13;13840:56;13864:13;13840:56;13886:9;13864:13;13840:56;;;;;;;13836:348;;;13947:13;;;:57;;;-1:-1:-1;;;13947:57:0;;-1:-1:-1;;;;;13947:57:0;;;;;;;;;;13982:10;13947:57;;;;13994:9;13947:57;;;;;;:13;;;;;:19;;:57;;;;;;;;;;;;;;;:13;;:57;;;5:2:-1;;;;30:1;27;20:12;5:2;13947:57:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;13947:57:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;13947:57:0;13917:106;;;;;;14047:11;;:55;;;-1:-1:-1;;;14047:55:0;;-1:-1:-1;;;;;14047:55:0;;;;;;;14080:10;14047:55;;;;14092:9;14047:55;;;;;;:11;;;;;:17;;:55;;;;;;;;;;;;;;:11;;:55;;;5:2:-1;;;;30:1;27;20:12;5:2;14047:55:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;14047:55:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;14047:55:0;14042:127;;14127:22;;;-1:-1:-1;;;14127:22:0;;;;;;;;;;;;-1:-1:-1;;;14127:22:0;;;;;;;;;;;;;;14042:127;13776:647;;;14224:13;;;:55;;;-1:-1:-1;;;14224:55:0;;-1:-1:-1;;;;;14224:55:0;;;;;;;;;;14259:10;14224:55;;;;;;;;;;;;:13;;;;;:19;;:55;;;;;;;;;;;;;;;:13;;:55;;;5:2:-1;;;;30:1;27;20:12;5:2;14224:55:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;14224:55:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;14224:55:0;14216:64;;;;;;14300:11;;:53;;;-1:-1:-1;;;14300:53:0;;-1:-1:-1;;;;;14300:53:0;;;;;;;14333:10;14300:53;;;;;;;;;;;;:11;;;;;:17;;:53;;;;;;;;;;;;;;:11;;:53;;;5:2:-1;;;;30:1;27;20:12;5:2;14300:53:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;14300:53:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;14300:53:0;14295:117;;14374:22;;;-1:-1:-1;;;14374:22:0;;;;;;;;;;;;-1:-1:-1;;;14374:22:0;;;;;;;;;;;;;;14295:117;8859:1;13613:817;;:::o;8939:128::-;9030:12;;:29;;;;;;-1:-1:-1;;;;;9030:29:0;;;;;;;;;8994:16;;9030:12;;;;;:23;;:29;;;;;;;;;;;;;;;:12;:29;;;5:2:-1;;;;30:1;27;20:12;5:2;9030:29:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;9030:29:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;9030:29:0;;8939:128;-1:-1:-1;;8939:128:0:o;16635:332::-;8795:13;;:24;;;-1:-1:-1;;;8795:24:0;;;;16767:4;;-1:-1:-1;;;;;8795:13:0;;:22;;:24;;;;;;;;;;;;;;:13;:24;;;5:2:-1;;;;30:1;27;20:12;5:2;8795:24:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8795:24:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;8795:24:0;8794:25;8786:62;;;;;-1:-1:-1;;;8786:62:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;8786:62:0;;;;;;;;;;;;;;;8632:12;;:30;;;-1:-1:-1;;;8632:30:0;;16737:10;8632:30;;;;;;;;16737:10;;-1:-1:-1;;;;;8632:12:0;;:24;;:30;;;;;;;;;;;;;;;:12;:30;;;5:2:-1;;;;30:1;27;20:12;5:2;8632:30:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8632:30:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;8632:30:0;8631:31;8609:113;;;;;-1:-1:-1;;;8609:113:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;8609:113:0;;;;;;;;;;;;;;;16797:20;16806:10;16797:8;:20::i;:::-;16789:29;;;;;;16834:11;;:45;;;;;;16859:10;16834:45;;;;;;;;;;;;-1:-1:-1;;;;;16834:11:0;;;;:24;;:45;;;;;;;;;;;;;;;:11;;:45;;;5:2:-1;;;;30:1;27;20:12;5:2;16834:45:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;16834:45:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;16834:45:0;16829:109;;16896:30;;;-1:-1:-1;;;16896:30:0;;;;;;;;;;;;;;;;;;;;;;;;;;;9222:297;9291:12;;:39;;;-1:-1:-1;;;9291:39:0;;-1:-1:-1;;;;;9291:39:0;;;;;;;9319:10;9291:39;;;;;;9270:4;;9291:12;;;;;:21;;:39;;;;;;;;;;;;;;;9270:4;9291:12;:39;;;5:2:-1;;;;30:1;27;20:12;5:2;9291:39:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;9291:39:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;9291:39:0;9287:202;;;9352:11;;:38;;;-1:-1:-1;;;9352:38:0;;-1:-1:-1;;;;;9352:38:0;;;;;;;9379:10;9352:38;;;;;;:11;;;;;:20;;:38;;;;;;;;;;;;;;:11;;:38;;;5:2:-1;;;;30:1;27;20:12;5:2;9352:38:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;9352:38:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;9352:38:0;9347:105;;9411:25;;;-1:-1:-1;;;9411:25:0;;;;;;;;;;;;;;;;;;;;;;;;;;;9347:105;-1:-1:-1;9473:4:0;9466:11;;9287:202;-1:-1:-1;9506:5:0;9222:297;;;:::o;11870:953::-;8795:13;;;;;;;;;-1:-1:-1;;;;;8795:13:0;-1:-1:-1;;;;;8795:22:0;;:24;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8795:24:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8795:24:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;8795:24:0;8794:25;8786:62;;;;;-1:-1:-1;;;8786:62:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;8786:62:0;;;;;;;;;;;;;;;8632:12;;:30;;;-1:-1:-1;;;8632:30:0;;12007:10;8632:30;;;;;;;;12007:10;;-1:-1:-1;;;;;8632:12:0;;:24;;:30;;;;;;;;;;;;;;;:12;:30;;;5:2:-1;;;;30:1;27;20:12;5:2;8632:30:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8632:30:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;8632:30:0;8631:31;8609:113;;;;;-1:-1:-1;;;8609:113:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;8609:113:0;;;;;;;;;;;;;;;12043:12;;-1:-1:-1;;;12043:12:0;;;;:20;;12059:4;12043:20;12035:29;;;;;;12083:20;12092:10;12083:8;:20::i;:::-;12075:29;;;;;;12129:13;;-1:-1:-1;;;;;12121:39:0;;;12129:13;;12121:39;12117:699;;;12205:13;;12181:56;;-1:-1:-1;;;;;12205:13:0;;;;12227:9;12181:56;;;;;12205:13;12181:56;12205:13;12181:56;12227:9;12205:13;12181:56;;;;;;;12177:394;;;12288:13;;;:59;;;-1:-1:-1;;;12288:59:0;;-1:-1:-1;;;;;12288:59:0;;;;;;;;;;12325:10;12288:59;;;;12337:9;12288:59;;;;;;:13;;;;;:21;;:59;;;;;;;;;;;;;;;:13;;:59;;;5:2:-1;;;;30:1;27;20:12;5:2;12288:59:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;12288:59:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;12288:59:0;12258:108;;;;;;12412:11;;:57;;;-1:-1:-1;;;12412:57:0;;-1:-1:-1;;;;;12412:57:0;;;;;;;12447:10;12412:57;;;;12459:9;12412:57;;;;;;:11;;;;;:19;;:57;;;;;;;;;;;;;;:11;;:57;;;5:2:-1;;;;30:1;27;20:12;5:2;12412:57:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;12412:57:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;12412:57:0;12385:171;;12512:24;;;-1:-1:-1;;;12512:24:0;;;;;;;;;;;;;;;;;;;;;;;;;;;12117:699;12611:13;;;:57;;;-1:-1:-1;;;12611:57:0;;-1:-1:-1;;;;;12611:57:0;;;;;;;;;;12648:10;12611:57;;;;;;;;;;;;:13;;;;;:21;;:57;;;;;;;;;;;;;;;:13;;:57;;;5:2:-1;;;;30:1;27;20:12;5:2;12611:57:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;12611:57:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;12611:57:0;12603:66;;;;;;12689:11;;:55;;;-1:-1:-1;;;12689:55:0;;-1:-1:-1;;;;;12689:55:0;;;;;;;12724:10;12689:55;;;;;;;;;;;;:11;;;;;:19;;:55;;;;;;;;;;;;;;:11;;:55;;;5:2:-1;;;;30:1;27;20:12;5:2;12689:55:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;12689:55:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;12689:55:0;12684:121;;12765:24;;;-1:-1:-1;;;12765:24:0;;;;;;;;;;;;;;;;;;;;;;;;;;;13219:372;8795:13;;:24;;;-1:-1:-1;;;8795:24:0;;;;13427:12;;-1:-1:-1;;;;;8795:13:0;;:22;;:24;;;;;;;;;;;;;;:13;:24;;;5:2:-1;;;;30:1;27;20:12;5:2;8795:24:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8795:24:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;8795:24:0;8794:25;8786:62;;;;;-1:-1:-1;;;8786:62:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;8786:62:0;;;;;;;;;;;;;;;8632:12;;:30;;;-1:-1:-1;;;8632:30:0;;-1:-1:-1;;;;;8632:30:0;;;;;;;;;13385:4;;8632:12;;;;;:24;;:30;;;;;;;;;;;;;;;:12;:30;;;5:2:-1;;;;30:1;27;20:12;5:2;8632:30:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8632:30:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;8632:30:0;8631:31;8609:113;;;;;-1:-1:-1;;;8609:113:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;8609:113:0;;;;;;;;;;;;;;;352:5;;-1:-1:-1;;;;;352:5:0;338:10;:19;330:28;;;;;;13465:9;;-1:-1:-1;;;13465:9:0;;;;:17;;13478:4;13465:17;13457:26;;;;;;13502:14;13511:4;13502:8;:14::i;:::-;13494:23;;;;;;13535:13;;;:48;;;;;;-1:-1:-1;;;;;13535:48:0;;;;;;;;;;;;;;;;;;;;;;;;;:13;;;;;:18;;:48;;;;;;;;;;;;;;;:13;;:48;;;5:2:-1;;;;30:1;27;20:12;8028:99:0;352:5;;-1:-1:-1;;;;;352:5:0;338:10;:19;330:28;;;;;;8097:11;:22;;-1:-1:-1;;;;;;8097:22:0;-1:-1:-1;;;;;8097:22:0;;;;;;;;;;8028:99::o;18947:282::-;19195:12;;:26;;;;;;-1:-1:-1;;;;;19195:26:0;;;;;;;;;19040:10;;;;;;;;;;19195:12;;;;;:20;;:26;;;;;;;;;;;;;;;:12;:26;;;5:2:-1;;;;30:1;27;20:12;5:2;19195:26:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;19195:26:0;;;;;;;13:3:-1;8;5:12;2:2;;;30:1;27;20:12;2:2;-1:-1;19195:26:0;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;19195:26:0;-1:-1:-1;19195:26:0;;-1:-1:-1;19195:26:0;-1:-1:-1;18947:282:0;-1:-1:-1;;18947:282:0:o;16975:335::-;8795:13;;:24;;;-1:-1:-1;;;8795:24:0;;;;17108:4;;-1:-1:-1;;;;;8795:13:0;;:22;;:24;;;;;;;;;;;;;;:13;:24;;;5:2:-1;;;;30:1;27;20:12;5:2;8795:24:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8795:24:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;8795:24:0;8794:25;8786:62;;;;;-1:-1:-1;;;8786:62:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;8786:62:0;;;;;;;;;;;;;;;8632:12;;:30;;;-1:-1:-1;;;8632:30:0;;17078:10;8632:30;;;;;;;;17078:10;;-1:-1:-1;;;;;8632:12:0;;:24;;:30;;;;;;;;;;;;;;;:12;:30;;;5:2:-1;;;;30:1;27;20:12;5:2;8632:30:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8632:30:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;8632:30:0;8631:31;8609:113;;;;;-1:-1:-1;;;8609:113:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;8609:113:0;;;;;;;;;;;;;;;17138:20;17147:10;17138:8;:20::i;:::-;17130:29;;;;;;17175:11;;:46;;;;;;17201:10;17175:46;;;;;;;;;;;;-1:-1:-1;;;;;17175:11:0;;;;:25;;:46;;;;;;;;;;;;;;;:11;;:46;;;5:2:-1;;;;30:1;27;20:12;5:2;17175:46:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;17175:46:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;17175:46:0;17170:111;;17238:31;;;-1:-1:-1;;;17238:31:0;;;;;;;;;;;;;;;;;;;;;;;;;;;10417:676;8795:13;;;;;;;;;-1:-1:-1;;;;;8795:13:0;-1:-1:-1;;;;;8795:22:0;;:24;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8795:24:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8795:24:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;8795:24:0;8794:25;8786:62;;;;;-1:-1:-1;;;8786:62:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;8786:62:0;;;;;;;;;;;;;;;8632:12;;:30;;;-1:-1:-1;;;8632:30:0;;10558:10;8632:30;;;;;;;;10558:10;;-1:-1:-1;;;;;8632:12:0;;:24;;:30;;;;;;;;;;;;;;;:12;:30;;;5:2:-1;;;;30:1;27;20:12;5:2;8632:30:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8632:30:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;8632:30:0;8631:31;8609:113;;;;;-1:-1:-1;;;8609:113:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;8609:113:0;;;;;;;;;;;;;;;10594:20;10603:10;10594:8;:20::i;:::-;10586:29;;;;;;10638:13;;-1:-1:-1;;;;;10630:39:0;;;10638:13;;10630:39;10626:252;;;10714:13;;10690:56;;-1:-1:-1;;;;;10714:13:0;;;;10736:9;10690:56;;;;;10714:13;10690:56;10714:13;10690:56;10736:9;10714:13;10690:56;;;;;;;10686:181;;;10777:9;10767:19;;10686:181;;;10827:24;;;-1:-1:-1;;;10827:24:0;;;;;;;;;;;;;;;;;;;;;;;;;;;10686:181;10896:13;;;:61;;;-1:-1:-1;;;10896:61:0;;-1:-1:-1;;;;;10896:61:0;;;;;;;;;;10937:10;10896:61;;;;;;;;;;;;:13;;;;;:25;;:61;;;;;;;;;;;;;;;:13;;:61;;;5:2:-1;;;;30:1;27;20:12;5:2;10896:61:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;10896:61:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;10896:61:0;10888:70;;;;;;10974:11;;:59;;;-1:-1:-1;;;10974:59:0;;-1:-1:-1;;;;;10974:59:0;;;;;;;11013:10;10974:59;;;;;;;;;;;;:11;;;;;:23;;:59;;;;;;;;;;;;;;:11;;:59;;;5:2:-1;;;;30:1;27;20:12;5:2;10974:59:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;10974:59:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;10974:59:0;10969:117;;11050:24;;;-1:-1:-1;;;11050:24:0;;;;;;;;;;;;;;;;;;;;;;;;;;;17995:95;352:5;;-1:-1:-1;;;;;352:5:0;338:10;:19;330:28;;;;;;18060:12;:22;;;;;-1:-1:-1;;;18060:22:0;;;;;;;;;;;17995:95::o;11120:726::-;8795:13;;;;;;;;;-1:-1:-1;;;;;8795:13:0;-1:-1:-1;;;;;8795:22:0;;:24;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8795:24:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8795:24:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;8795:24:0;8794:25;8786:62;;;;;-1:-1:-1;;;8786:62:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;8786:62:0;;;;;;;;;;;;;;;8632:12;;:30;;;-1:-1:-1;;;8632:30:0;;11258:10;8632:30;;;;;;;;11258:10;;-1:-1:-1;;;;;8632:12:0;;:24;;:30;;;;;;;;;;;;;;;:12;:30;;;5:2:-1;;;;30:1;27;20:12;5:2;8632:30:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8632:30:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;8632:30:0;8631:31;8609:113;;;;;-1:-1:-1;;;8609:113:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;8609:113:0;;;;;;;;;;;;;;;11294:20;11303:10;11294:8;:20::i;:::-;11286:29;;;;;;11338:13;;-1:-1:-1;;;;;11330:39:0;;;11338:13;;11330:39;11326:255;;;11414:13;;11390:56;;-1:-1:-1;;;;;11414:13:0;;;;11436:9;11390:56;;;;;11414:13;11390:56;11414:13;11390:56;11436:9;11414:13;11390:56;;;;;;;11386:184;;;11477:9;11467:19;;11386:184;;;11527:27;;;-1:-1:-1;;;11527:27:0;;;;;;;;;;;;;;;;;;;;;;;;;;;11386:184;11599:13;;;:58;;;-1:-1:-1;;;11599:58:0;;-1:-1:-1;;;;;11599:58:0;;;;;;;;;;11637:10;11599:58;;;;;;;;;;;;:13;;;;;:22;;:58;;;;;;;;;;;;;;;:13;;:58;;;5:2:-1;;;;30:1;27;20:12;5:2;11599:58:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;11599:58:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;11599:58:0;11591:67;;;;;;11677:12;;:33;;;;;;11699:10;11677:33;;;;;;-1:-1:-1;;;;;11677:12:0;;;;:21;;:33;;;;;;;;;;;;;;;:12;;:33;;;5:2:-1;;;;30:1;27;20:12;5:2;11677:33:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;11677:33:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;11677:33:0;11669:42;;;;;;11727:11;;:56;;;-1:-1:-1;;;11727:56:0;;-1:-1:-1;;;;;11727:56:0;;;;;;;11763:10;11727:56;;;;;;;;;;;;:11;;;;;:20;;:56;;;;;;;;;;;;;;:11;;:56;;;5:2:-1;;;;30:1;27;20:12;5:2;11727:56:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;11727:56:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;11727:56:0;11722:117;;11800:27;;;-1:-1:-1;;;11800:27:0;;;;;;;;;;;;;;;;;;;;;;;;;;;18309:97;18389:9;;-1:-1:-1;;;18389:9:0;;;;;18309:97::o;204:20::-;;;-1:-1:-1;;;;;204:20:0;;:::o;9075:122::-;9162:12;;:27;;;;;;-1:-1:-1;;;;;9162:27:0;;;;;;;;;9128:14;;9162:12;;;;;:21;;:27;;;;;;;;;;;;;;;:12;:27;;;5:2:-1;;;;30:1;27;20:12;7804:103:0;352:5;;-1:-1:-1;;;;;352:5:0;338:10;:19;330:28;;;;;;7876:12;:23;;-1:-1:-1;;;;;;7876:23:0;-1:-1:-1;;;;;7876:23:0;;;;;;;;;;7804:103::o;8135:105::-;352:5;;-1:-1:-1;;;;;352:5:0;338:10;:19;330:28;;;;;;8208:13;:24;;-1:-1:-1;;;;;;8208:24:0;-1:-1:-1;;;;;8208:24:0;;;;;;;;;;8135:105::o;9547:841::-;8795:13;;;;;;;;;-1:-1:-1;;;;;8795:13:0;-1:-1:-1;;;;;8795:22:0;;:24;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8795:24:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8795:24:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;8795:24:0;8794:25;8786:62;;;;;-1:-1:-1;;;8786:62:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;8786:62:0;;;;;;;;;;;;;;;8632:12;;:30;;;-1:-1:-1;;;8632:30:0;;9699:10;8632:30;;;;;;;;9699:10;;-1:-1:-1;;;;;8632:12:0;;:24;;:30;;;;;;;;;;;;;;;:12;:30;;;5:2:-1;;;;30:1;27;20:12;5:2;8632:30:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8632:30:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;8632:30:0;8631:31;8609:113;;;;;-1:-1:-1;;;8609:113:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;8609:113:0;;;;;;;;;;;;;;;9730:10;-1:-1:-1;;;;;9730:18:0;;;;9722:27;;;;;;9765:22;9776:10;9765;:22::i;:::-;9760:95;;9804:12;;:39;;;-1:-1:-1;;;9804:39:0;;-1:-1:-1;;;;;9804:39:0;;;;;;;9832:10;9804:39;;;;;;:12;;;;;:21;;:39;;;;;;;;;;;;;;:12;;:39;;;5:2:-1;;;;30:1;27;20:12;5:2;9804:39:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;9804:39:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;9760:95:0;9877:13;;-1:-1:-1;;;;;9869:39:0;;;9877:13;;9869:39;9865:251;;;9953:13;;9929:56;;-1:-1:-1;;;;;9953:13:0;;;;9975:9;9929:56;;;;;9953:13;9929:56;9953:13;9929:56;9975:9;9953:13;9929:56;;;;;;;9925:180;;;10016:9;10006:19;;9925:180;;;10066:23;;;-1:-1:-1;;;10066:23:0;;;;;;;;;;;;-1:-1:-1;;;10066:23:0;;;;;;;;;;;;;;9925:180;10134:13;;;:60;;;;;;-1:-1:-1;;;;;10134:60:0;;;;;;;;;;10174:10;10134:60;;;;;;;;;;;;:13;;;;;:24;;:60;;;;;;;;;;;;;;;:13;;:60;;;5:2:-1;;;;30:1;27;20:12;5:2;10134:60:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;10134:60:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;10134:60:0;10126:69;;;;;;10214:12;;:34;;;;;;10237:10;10214:34;;;;;;-1:-1:-1;;;;;10214:12:0;;;;:22;;:34;;;;;;;;;;;;;;;:12;;:34;;;5:2:-1;;;;30:1;27;20:12;5:2;10214:34:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;10214:34:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;10214:34:0;10206:43;;;;;;10265:11;;:64;;;;;;-1:-1:-1;;;;;10265:64:0;;;;;;;;;;;;;;10309:10;10265:64;;;;;;;;;;;;:11;;;;;:22;;:64;;;;;;;;;;;;;;:11;;:64;;;5:2:-1;;;;30:1;27;20:12;5:2;10265:64:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;10265:64:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;10265:64:0;10260:121;;10346:23;;;-1:-1:-1;;;10346:23:0;;;;;;;;;;;;-1:-1:-1;;;10346:23:0;;;;;;;;;;;;;;10260:121;8859:1;9547:841;;;:::o;18835:104::-;18907:13;;:24;;;-1:-1:-1;;;18907:24:0;;;;18876:11;;-1:-1:-1;;;;;18907:13:0;;:22;;:24;;;;;;;;;;;;;;:13;:24;;;5:2:-1;;;;30:1;27;20:12;5:2;18907:24:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;18907:24:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;18907:24:0;;-1:-1:-1;18835:104:0;:::o;14456:1434::-;8795:13;;;;;;;;;-1:-1:-1;;;;;8795:13:0;-1:-1:-1;;;;;8795:22:0;;:24;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8795:24:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8795:24:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;8795:24:0;8794:25;8786:62;;;;;-1:-1:-1;;;8786:62:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;8786:62:0;;;;;;;;;;;;;;;8632:12;;:30;;;-1:-1:-1;;;8632:30:0;;14632:10;8632:30;;;;;;;;14632:10;;-1:-1:-1;;;;;8632:12:0;;:24;;:30;;;;;;;;;;;;;;;:12;:30;;;5:2:-1;;;;30:1;27;20:12;5:2;8632:30:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8632:30:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;8632:30:0;8631:31;8609:113;;;;;-1:-1:-1;;;8609:113:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;8609:113:0;;;;;;;;;;;;;;;14663:16;14672:6;14663:8;:16::i;:::-;14655:25;;;;;;14699:20;14708:10;14699:8;:20::i;:::-;14691:29;;;;;;14743:13;;-1:-1:-1;;;;;14735:39:0;;;14743:13;;14735:39;14731:1152;;;14819:13;;14795:56;;-1:-1:-1;;;;;14819:13:0;;;;14841:9;14795:56;;;;;14819:13;14795:56;14819:13;14795:56;14841:9;14819:13;14795:56;;;;;;;14791:660;;;14902:13;;;:192;;;-1:-1:-1;;;14902:192:0;;-1:-1:-1;;;;;14902:192:0;;;;;;;;;;14992:10;14902:192;;;;;;;;;;;15062:9;14902:192;;;;;;:13;;;;;:23;;:192;;;;;;;;;;;;;;;:13;;:192;;;5:2:-1;;;;30:1;27;20:12;5:2;14902:192:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;14902:192:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;14902:192:0;14872:241;;;;;;15159:11;;:188;;;-1:-1:-1;;;15159:188:0;;-1:-1:-1;;;;;15159:188:0;;;;;;;15247:10;15159:188;;;;15284:9;15159:188;;;;;;;;;;;;:11;;;;;:21;;:188;;;;;;;;;;;;;;:11;;:188;;;5:2:-1;;;;30:1;27;20:12;5:2;15159:188:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;15159:188:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;15159:188:0;15132:304;;15390:26;;;-1:-1:-1;;;15390:26:0;;;;;;;;;;;;;;;;;;;;;;;;;;;15132:304;14731:1152;;;15509:13;;;:170;;;-1:-1:-1;;;15509:170:0;;-1:-1:-1;;;;;15509:170:0;;;;;;;;;;15591:10;15509:170;;;;;;;;;;;;;;;;;;;:13;;;;;:23;;:170;;;;;;;;;;;;;;;:13;;:170;;;5:2:-1;;;;30:1;27;20:12;5:2;15509:170:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;15509:170:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;15509:170:0;15483:211;;;;;;15732:11;;:63;;;-1:-1:-1;;;15732:63:0;;-1:-1:-1;;;;;15732:63:0;;;;;;;15769:10;15732:63;;;;;;;;;;;;;;;;;;:11;;;;;:21;;:63;;;;;;;;;;;;;;:11;;:63;;;5:2:-1;;;;30:1;27;20:12;5:2;15732:63:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;15732:63:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;15732:63:0;15709:163;;15830:26;;;-1:-1:-1;;;15830:26:0;;;;;;;;;;;;;;;;;;;;;;;;;;;15709:163;8859:1;14456:1434;;;;:::o;17655:332::-;8795:13;;:24;;;-1:-1:-1;;;8795:24:0;;;;17787:4;;-1:-1:-1;;;;;8795:13:0;;:22;;:24;;;;;;;;;;;;;;:13;:24;;;5:2:-1;;;;30:1;27;20:12;5:2;8795:24:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8795:24:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;8795:24:0;8794:25;8786:62;;;;;-1:-1:-1;;;8786:62:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;8786:62:0;;;;;;;;;;;;;;;8632:12;;:30;;;-1:-1:-1;;;8632:30:0;;17757:10;8632:30;;;;;;;;17757:10;;-1:-1:-1;;;;;8632:12:0;;:24;;:30;;;;;;;;;;;;;;;:12;:30;;;5:2:-1;;;;30:1;27;20:12;5:2;8632:30:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8632:30:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;8632:30:0;8631:31;8609:113;;;;;-1:-1:-1;;;8609:113:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;8609:113:0;;;;;;;;;;;;;;;17817:20;17826:10;17817:8;:20::i;:::-;17809:29;;;;;;17854:11;;:45;;;;;;17879:10;17854:45;;;;;;;;;;;;-1:-1:-1;;;;;17854:11:0;;;;:24;;:45;;;;;;;;;;;;;;;:11;;:45;;;5:2:-1;;;;30:1;27;20:12;5:2;17854:45:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;17854:45:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;17854:45:0;17849:109;;17916:30;;;-1:-1:-1;;;17916:30:0;;;;;;;;;;;;;;;;;;;;;;;;;;;7694:102;352:5;;-1:-1:-1;;;;;352:5:0;338:10;:19;330:28;;;;;;7765:12;:23;;-1:-1:-1;;;;;;7765:23:0;-1:-1:-1;;;;;7765:23:0;;;;;;;;;;7694:102::o;18195:106::-;18281:12;;-1:-1:-1;;;18281:12:0;;;;;18195:106::o;390:150::-;352:5;;-1:-1:-1;;;;;352:5:0;338:10;:19;330:28;;;;;;-1:-1:-1;;;;;466:22:0;;;462:71;;505:5;:16;;-1:-1:-1;;;;;;505:16:0;-1:-1:-1;;;;;505:16:0;;;;;462:71;390:150;:::o;16270:357::-;8795:13;;:24;;;-1:-1:-1;;;8795:24:0;;;;16421:4;;-1:-1:-1;;;;;8795:13:0;;:22;;:24;;;;;;;;;;;;;;:13;:24;;;5:2:-1;;;;30:1;27;20:12;5:2;8795:24:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8795:24:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;8795:24:0;8794:25;8786:62;;;;;-1:-1:-1;;;8786:62:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;8786:62:0;;;;;;;;;;;;;;;8632:12;;:30;;;-1:-1:-1;;;8632:30:0;;16391:10;8632:30;;;;;;;;16391:10;;-1:-1:-1;;;;;8632:12:0;;:24;;:30;;;;;;;;;;;;;;;:12;:30;;;5:2:-1;;;;30:1;27;20:12;5:2;8632:30:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8632:30:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;8632:30:0;8631:31;8609:113;;;;;-1:-1:-1;;;8609:113:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;8609:113:0;;;;;;;;;;;;;;;16451:20;16460:10;16451:8;:20::i;:::-;16443:29;;;;;;16488:11;;:56;;;-1:-1:-1;;;16488:56:0;;-1:-1:-1;;;;;16488:56:0;;;;;;;16524:10;16488:56;;;;;;;;;;;;:11;;;;;:20;;:56;;;;;;;;;;;;;;:11;;:56;;;5:2:-1;;;;30:1;27;20:12;5:2;16488:56:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;16488:56:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;16488:56:0;16483:115;;16561:25;;;-1:-1:-1;;;16561:25:0;;;;;;;;;;;;;;;;;;;;;;;;;;;16483:115;-1:-1:-1;16615:4:0;;16270:357;-1:-1:-1;;;16270:357:0:o;18441:191::-;18545:15;18594:13;-1:-1:-1;;;;;18585:33:0;;18619:4;18585:39;;;;;;;;;;;;;-1:-1:-1;;;;;18585:39:0;-1:-1:-1;;;;;18585:39:0;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;18585:39:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;18585:39:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;18585:39:0;;18441:191;-1:-1:-1;;;18441:191:0:o

Swarm Source

bzzr://c60e0d7be275f92f306c654200315a7be84db79c5617671e2874ca99287d22ea

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.