Contract 0x38db3b4887d1bffda2ba89349f34242fbf65e665

Contract Overview

Balance:
4 MATIC
Txn Hash Method
Block
From
To
Value [Txn Fee]
0x3ef06def76df4191695df1d8c3e8aca7aa0a62953830495e7946a23b3780bfc8Bet End273193602022-07-24 23:04:2317 days 5 hrs ago0xe3c9fe2a48fc6967065a0858823f6d308a2e71a4 IN  0x38db3b4887d1bffda2ba89349f34242fbf65e6650 MATIC0.002149086204 39.358390641
0x6a90584708b53758138551280ae02543c840f611072876c3bc023dee228967dcBet Begin273193452022-07-24 23:03:0717 days 5 hrs ago0xe3c9fe2a48fc6967065a0858823f6d308a2e71a4 IN  0x38db3b4887d1bffda2ba89349f34242fbf65e6650 MATIC0.002341154124 42.476080416
0x0b915ae13cc8f1db8a94b01f59ce99a39fcce33d1a1c2a768696913fe3531644Reset273193432022-07-24 23:02:5717 days 5 hrs ago0xe3c9fe2a48fc6967065a0858823f6d308a2e71a4 IN  0x38db3b4887d1bffda2ba89349f34242fbf65e6650 MATIC0.001438768692 40.666158648
0xc767ae691ff748147378bdee263aa3101bfc789d822d51b1555731105f5bcbc6Reset273052002022-07-23 23:15:2118 days 5 hrs ago0xe3c9fe2a48fc6967065a0858823f6d308a2e71a4 IN  0x38db3b4887d1bffda2ba89349f34242fbf65e6650 MATIC0.001183337807 33.446518009
0x69e0e883bb5703a7429faee43a73db852db403f95c3014d06b917c9a8290fbbaReset273034322022-07-23 20:10:1418 days 8 hrs ago0xe3c9fe2a48fc6967065a0858823f6d308a2e71a4 IN  0x38db3b4887d1bffda2ba89349f34242fbf65e6650 MATIC0.001504679959 42.529111357
0xc621ff4493cc5f53c8ab398aee672db34ae989c84de1afe10acd59df913fefabReset272594232022-07-20 16:29:5821 days 12 hrs ago0xe3c9fe2a48fc6967065a0858823f6d308a2e71a4 IN  0x38db3b4887d1bffda2ba89349f34242fbf65e6650 MATIC0.002484032427 65.061090291
0xe3903cb172d62780d644053cf7179f0e44d25ed248b90767d5c8ea2b009b2c35Bet Begin272594052022-07-20 16:28:2821 days 12 hrs ago0xe3c9fe2a48fc6967065a0858823f6d308a2e71a4 IN  0x38db3b4887d1bffda2ba89349f34242fbf65e6650 MATIC0.0048317033 87.643586877
0x282c7d031cadd757d26c25cbe5444bd9d140c3feb74cd6470d8adeb50700a72dBet End272594002022-07-20 16:28:0321 days 12 hrs ago0xe3c9fe2a48fc6967065a0858823f6d308a2e71a4 IN  0x38db3b4887d1bffda2ba89349f34242fbf65e6650 MATIC0.003265759235 59.798202548
0x1b69e940c47b1c5205486712dade3568feebc9cf9e5c1280132f8df3fc131d49Bet Begin272593852022-07-20 16:26:4721 days 12 hrs ago0xe3c9fe2a48fc6967065a0858823f6d308a2e71a4 IN  0x38db3b4887d1bffda2ba89349f34242fbf65e6650 MATIC0.004300510155 78.008129217
0xffe7390e7953fc09dcd79eb2fe3c08e75e58cfd63039e9c677120ae3d23565aaBet End272593812022-07-20 16:26:2721 days 12 hrs ago0xe3c9fe2a48fc6967065a0858823f6d308a2e71a4 IN  0x38db3b4887d1bffda2ba89349f34242fbf65e6650 MATIC0.004014220349 73.516479857
0xe3bf8a0d03b8723352cfc844efc48b6c6ed1defb4796985a2ec43fb30ed7331cBet Begin272593672022-07-20 16:25:1721 days 12 hrs ago0xe3c9fe2a48fc6967065a0858823f6d308a2e71a4 IN  0x38db3b4887d1bffda2ba89349f34242fbf65e6650 MATIC0.002324469538 42.173368255
0x17f1b2646a026e09f3225af649ae41719eed7baeb58a1b9e5e67dbe06330395fBet End272593622022-07-20 16:24:5221 days 12 hrs ago0xe3c9fe2a48fc6967065a0858823f6d308a2e71a4 IN  0x38db3b4887d1bffda2ba89349f34242fbf65e6650 MATIC0.002369882911 43.402064206
0xc946438e37aaf01bcf68ccc21cac8be5c68a7eb55cf7442d479d676fbf73a6c0Bet Begin272593482022-07-20 16:23:4221 days 12 hrs ago0xe3c9fe2a48fc6967065a0858823f6d308a2e71a4 IN  0x38db3b4887d1bffda2ba89349f34242fbf65e6650 MATIC0.002830116511 51.336256986
0x12017d0172e1109aeb8508d862e3d91b42a6033bbdeae8c004b0a5069ecc53c0Bet End272593442022-07-20 16:23:2221 days 12 hrs ago0xe3c9fe2a48fc6967065a0858823f6d308a2e71a4 IN  0x38db3b4887d1bffda2ba89349f34242fbf65e6650 MATIC0.002627775922 48.135698596
0x4ae1f6ebe05019d91dcfab7b9dc64717be0793be30a83c9c1abb238c8c9e4a7fBet Begin272593302022-07-20 16:22:1221 days 12 hrs ago0xe3c9fe2a48fc6967065a0858823f6d308a2e71a4 IN  0x38db3b4887d1bffda2ba89349f34242fbf65e6650 MATIC0.002234008704 40.532117208
0xae99a029a076271a188c8a0de59a5d6f1ed3517a22b9268a36396061f351efcfBet End272593262022-07-20 16:21:5121 days 12 hrs ago0xe3c9fe2a48fc6967065a0858823f6d308a2e71a4 IN  0x38db3b4887d1bffda2ba89349f34242fbf65e6650 MATIC0.002141561675 39.220586338
0x2c27a0d6ed499190fff53c441c145753b30126b22a907c60e3a1b224a6c5d0e4Bet Begin272593112022-07-20 16:20:3621 days 12 hrs ago0xe3c9fe2a48fc6967065a0858823f6d308a2e71a4 IN  0x38db3b4887d1bffda2ba89349f34242fbf65e6650 MATIC0.002187958047 39.687969082
0xbaab9cdf2b001443c24ed9b403ce4bf633f9597fc15c29226edd9b346f61a119Bet End272593062022-07-20 16:20:1121 days 12 hrs ago0xe3c9fe2a48fc6967065a0858823f6d308a2e71a4 IN  0x38db3b4887d1bffda2ba89349f34242fbf65e6650 MATIC0.002486982194 45.546621886
0x9b636e6fdae15244fa33951627e28a1b3f3e773e8a67163fa46bda2f2d18b160Bet Begin272592912022-07-20 16:18:5621 days 12 hrs ago0xe3c9fe2a48fc6967065a0858823f6d308a2e71a4 IN  0x38db3b4887d1bffda2ba89349f34242fbf65e6650 MATIC0.003196940098 57.990170307
0x85f25571e9124d7883c68d76e0cd222421afb330f54824c6581f126ba84c912bBet End272592862022-07-20 16:18:3121 days 12 hrs ago0xe3c9fe2a48fc6967065a0858823f6d308a2e71a4 IN  0x38db3b4887d1bffda2ba89349f34242fbf65e6650 MATIC0.003197625406 58.561350226
0xf19f12010af27432301d6696310d96e83a21ec6a5ee98e395a6f52ab63f003ebBet Begin272592712022-07-20 16:17:1621 days 12 hrs ago0xe3c9fe2a48fc6967065a0858823f6d308a2e71a4 IN  0x38db3b4887d1bffda2ba89349f34242fbf65e6650 MATIC0.002035899959 36.945829949
0xbcf7283dbb7d9d5cf1795f3de5bd6af3a39bb9faa65d9bc1cc2838f4a1efd3b3Bet End272592662022-07-20 16:16:5121 days 12 hrs ago0xe3c9fe2a48fc6967065a0858823f6d308a2e71a4 IN  0x38db3b4887d1bffda2ba89349f34242fbf65e6650 MATIC0.002322988348 42.543236605
0x499931fda6fcdaabf93b16cdcdd0370f47ca4f88ce3be3c2391958eef5c55c21Bet Begin272592572022-07-20 16:15:3521 days 12 hrs ago0xe3c9fe2a48fc6967065a0858823f6d308a2e71a4 IN  0x38db3b4887d1bffda2ba89349f34242fbf65e6650 MATIC0.002015605189 36.561613486
0x0fc40985d286b3876e76dc53198f43d6f14f1f215e22230c1fb7585b4904afceBet End272592542022-07-20 16:15:0521 days 12 hrs ago0xe3c9fe2a48fc6967065a0858823f6d308a2e71a4 IN  0x38db3b4887d1bffda2ba89349f34242fbf65e6650 MATIC0.002181504453 39.944783355
0xa3c6d776d079d7128cb8ccdb1b15dad9697e754c4a7f672ef2b7581e2600693fBet Begin272592462022-07-20 16:13:4521 days 12 hrs ago0xe3c9fe2a48fc6967065a0858823f6d308a2e71a4 IN  0x38db3b4887d1bffda2ba89349f34242fbf65e6650 MATIC0.004214440122 76.44688136
[ Download CSV Export 
Latest 12 internal transactions
Parent Txn Hash Block From To Value
0x8d011c0c181237852db21ad86aabae4b5aff8d73d70fbb9d3b0cb6f090439ce5270556802022-07-06 13:52:5435 days 15 hrs ago 0x38db3b4887d1bffda2ba89349f34242fbf65e6650xe3c9fe2a48fc6967065a0858823f6d308a2e71a41.13768 MATIC
0xf39770277a8a579be9ea2cc22403c45235697d1afb964cfdf27542587ff9d518269649752022-06-30 2:31:4842 days 2 hrs ago 0x38db3b4887d1bffda2ba89349f34242fbf65e6650xc6f1fc7a9d3e9586f40ef6989dfd2c0b549c7dd10.2156 MATIC
0x4220e9d2db04e2374768c5959e9726a4c776e63050ace2ef95438c208afb00e9269422392022-06-28 10:21:2043 days 18 hrs ago 0x38db3b4887d1bffda2ba89349f34242fbf65e6650x4a4d49edeee164994c817c69fa961b46c12f3b6a0.196 MATIC
0xc79d20417d916695b79058c7cda48e557b25e59477a14cc27ac670f22a961e3d269422212022-06-28 10:18:2043 days 18 hrs ago 0x38db3b4887d1bffda2ba89349f34242fbf65e6650x4a4d49edeee164994c817c69fa961b46c12f3b6a0.392 MATIC
0xd8bce690dbbcdb341544aee7f669e4d86ca9188a82a0f559824e43be7a932947269421812022-06-28 10:13:4943 days 18 hrs ago 0x38db3b4887d1bffda2ba89349f34242fbf65e6650x4a4d49edeee164994c817c69fa961b46c12f3b6a0.4312 MATIC
0x3a8e6953b98048836202a3d9bd0e931ab0fdb682cb8a9cf3efbd04a519e8e4c9269405322022-06-28 7:31:2843 days 21 hrs ago 0x38db3b4887d1bffda2ba89349f34242fbf65e6650x4a4d49edeee164994c817c69fa961b46c12f3b6a0.392 MATIC
0x792980f083c7eea79c5939fa950ab888062d78a4664a0d6466e48bc4aa9b5cab269290962022-06-27 9:54:1044 days 19 hrs ago 0x38db3b4887d1bffda2ba89349f34242fbf65e6650x4a4d49edeee164994c817c69fa961b46c12f3b6a0.2156 MATIC
0xe9632296e9b6ad9cc114ed8cfc98974f1c2a617b119d9baad0184a6bf0e9375c269186932022-06-26 17:05:5245 days 11 hrs ago 0x38db3b4887d1bffda2ba89349f34242fbf65e6650x4a4d49edeee164994c817c69fa961b46c12f3b6a0.196 MATIC
0x3830f59ac5a2927da6ccb692245ea265c3d9c3d9eb9b958c27d499fb1a51cc88268842932022-06-24 6:46:4547 days 22 hrs ago 0x38db3b4887d1bffda2ba89349f34242fbf65e6650x4a4d49edeee164994c817c69fa961b46c12f3b6a0.00392 MATIC
0x56316ff60b7a620dd5846a6521c0787fff07b37eb7d400ebaff113c88493251e268842262022-06-24 6:40:3947 days 22 hrs ago 0x38db3b4887d1bffda2ba89349f34242fbf65e6650x4a4d49edeee164994c817c69fa961b46c12f3b6a0.001 MATIC
0x0de54bde25cd36a4b43227f6cb5326d0447716cb6406284cdcc10f3ba193762b266388402022-06-07 8:08:0864 days 20 hrs ago 0x38db3b4887d1bffda2ba89349f34242fbf65e6650xe956c3754d1a2035021e48a1c04ffb285465c6920.392 MATIC
0x52c36cc2532bb661c237a434acf8f4647b0c2a94c8540339c5cb18664a22275f266382872022-06-07 7:16:3564 days 21 hrs ago 0x38db3b4887d1bffda2ba89349f34242fbf65e6650xe956c3754d1a2035021e48a1c04ffb285465c6920.1 MATIC
[ Download CSV Export 
Loading

Similar Match Source Code
Note: This contract matches the deployed ByteCode of the Source Code for Contract 0x259947F38EdFBEb01579014Ad7AC55508985fD14

Contract Name:
dice

Compiler Version
v0.8.7+commit.e28d00a7

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license
/**
 *Submitted for verification at polygonscan.com on 2022-06-03
*/

// SPDX-License-Identifier: GPL-3.0
pragma solidity ^0.8.0;

contract dice {

    //开始,准备,投注,结算,维护中
    enum GameState {
        Ready,
        Betting,
        Settlement,
        Maintain
    }

    // 投注区域, 大小
    enum BetRegion {
        None,
        Big,
        Small
    }

    //投注记录, 谁在x区域投注多少钱,派彩多钱
    struct BetRecord {
        address account;
        BetRegion region;
        uint256 amount;
        uint256 payout;
        uint256 profit;
    }

    GameState public state;
    address public owner; //庄家
    bool private isWaitingForMaintain; //等待维护
    BetRecord[] public bets; //投注记录
    mapping(BetRegion => uint256) public odds; //赔率 * 10000, 支持到 1 : 1.15 这样
    uint256 public profitRatio = 200; //抽水比例, 计算时候 /10000
    uint256 public availableBetAmount; //可用投注额

    uint256 public betEndTime; //投注结束时间

    uint256 public randomNumHashed; //随机数hash后

    string public orderId; //局号

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

    //初始化数据
    function reset() public isOwner {
        //把钱还给玩家
        for (uint256 i = 0; i < bets.length; i++) {
            payable(bets[i].account).transfer(bets[i].amount);
        }

        delete bets;
        state = GameState.Ready;
        isWaitingForMaintain = false;
        initOdds();
        emit Reset(orderId);
    }

    function initOdds() private {
        odds[BetRegion.Big] = 1.00 * 10000;
        odds[BetRegion.Small] = 1.00 * 10000;
    }

    // modifier to check if caller is owner
    modifier isOwner() {
        require(msg.sender == owner, "caller is not owner.");
        _;
    }

    event Reset(string orderId); //重置通知
    event BetBegin(string orderId, uint256 randomNumHashed, uint256 betEndTime); //游戏开始通知
    event BetSuccess(string orderId, address betMan, BetRegion betRegion, uint256 betAmount); //下注成功通知
    event SettlementEnd(string orderId, uint256 randomNum, uint256 randomNumHashed, uint256[] cards, BetRegion[] winRegions, address[] accounts, BetRegion[] betRegions, uint256[] betAmounts, uint256[] payouts, uint256[] profits, uint256 contractBalance); //结算完成
    event Maintain(string message); //维护通知
    event MaintainEnd(string message); //维护通知

    event OwnerDeposit();
    event OwnerWithdraw();

    /// @param _randomNumHashed 随机数的哈希值  _randomNumHashed = keccak256(abi.encodePacked((randomNum))
    /// 游戏开始, 定时任务调用
    function betBegin(
        string memory _orderId,
        uint _bettingSeconds,
        uint256 _randomNumHashed
    ) public isOwner {
        require(state == GameState.Ready || state == GameState.Betting, "not ready or betting state.");
        require(address(this).balance > 0, "owner don't have any money.");
        require(bytes(_orderId).length > 0, "orderid is empty.");
        require(_bettingSeconds > 0, "betting seconds need gt zero.");

        //有时候调用没返回或报错(调用成功,没响应),会重复调用该函数,直接返回emit
        betEndTime = block.timestamp + _bettingSeconds;
        if(state == GameState.Betting) {
            emit BetBegin(orderId, randomNumHashed,betEndTime);
            return;
        }

        delete bets;
        orderId = _orderId;
        randomNumHashed = _randomNumHashed;
        availableBetAmount = address(this).balance;
        state = GameState.Betting;
        emit BetBegin(orderId, randomNumHashed,betEndTime);
    }

    //玩家投注
    function bet(BetRegion betRegion) public payable {
        require(msg.sender != owner, "the owner is not allowed to bet.");
        require(state == GameState.Betting, "not betting time.");
        require(betRegion != BetRegion.None, "please select bet region.");
        require(block.timestamp < betEndTime, "betting time has ended.");
        require(msg.value > 0, "bet amount need ge 0.");
        require(availableBetAmount - msg.value - msg.value / 10000 * odds[betRegion]  > 0, "bet amount has over the owner's capacity.");

        availableBetAmount -= msg.value + msg.value / 10000 * odds[betRegion] ; //庄家余额还能赔付多钱
        bets.push(BetRecord(msg.sender, betRegion, msg.value, 0, 0));
        emit BetSuccess(orderId, msg.sender, betRegion, msg.value);
    }

    /// 投注结束 定时任务调用 披露原随机数
    function betEnd(uint256 _randomNum) public isOwner {
        require(state == GameState.Betting || state == GameState.Ready, "betend can be called only in betting or ready state.");
        require(block.timestamp >= betEndTime, "haven't reached the end time yet.");
        require(randomNumHashed == uint256(keccak256(abi.encodePacked((_randomNum)))),"randomNum is wrong.");

        uint256[] memory cards = resolveRandomNum(_randomNum, 3);
        //说明已经结算过了,直接返回结算结果
        if (state == GameState.Ready){
            BetRegion[] memory winRegions = calculateWinRegion(cards);

            address[] memory accounts = new address[](bets.length);
            BetRegion[] memory betRegions = new BetRegion[](bets.length);
            uint256[] memory betAmounts = new uint256[](bets.length);
            uint256[] memory payouts = new uint256[](bets.length);
            uint256[] memory profits = new uint256[](bets.length);
            for (uint256 i = 0; i < bets.length; i++) {
                accounts[i] = bets[i].account;
                betRegions[i] = bets[i].region;
                betAmounts[i] = bets[i].amount;
                payouts[i] = bets[i].payout;
                profits[i] = bets[i].profit;
            }
            emit SettlementEnd(orderId, _randomNum, randomNumHashed, cards, winRegions, accounts, betRegions, betAmounts, payouts,profits, address(this).balance);
            return;
        }

        state = GameState.Ready;
        doSettlement(_randomNum, cards);
    }

    /// keccak256计算
    function getKeccak256(uint256 origin) public pure returns (uint256) {
        return uint256(keccak256(abi.encodePacked(origin)));
    }

    function resolveRandomNum(uint256 randomValue, uint n) private pure returns (uint256[] memory) {
        uint256[] memory results = new uint256[](n);
        for (uint i = 0; i < n; i++) {
            uint256 expandedValue = uint256(keccak256(abi.encodePacked(randomValue, i)));
            uint256 remainder = (expandedValue % 6) + 1;
            results[i] = remainder;
        }
        return results;
    }

    /// 结算
    function doSettlement(uint256 randomNum, uint256[] memory cards) private {
        BetRegion[] memory winRegions = calculateWinRegion(cards);
        for (uint256 i = 0; i < winRegions.length; i++) {
            BetRegion winRegion = winRegions[i];

            for (uint256 j = 0; j < bets.length; j++) {
                if (bets[j].region != winRegion) {
                    continue;
                }

                //玩家的每一笔投注, 都单独派奖
                uint256 winall = bets[j].amount + bets[j].amount / 10000 * odds[winRegion];
                uint256 profit = winall / 10000 * profitRatio;
                bets[j].profit = profit;
                bets[j].payout = winall - profit;
                payable(bets[j].account).transfer(winall - profit);
                
            }
        }

        address[] memory accounts = new address[](bets.length);
        BetRegion[] memory betRegions = new BetRegion[](bets.length);
        uint256[] memory betAmounts = new uint256[](bets.length);
        uint256[] memory payouts = new uint256[](bets.length);
        uint256[] memory profits = new uint256[](bets.length);

        for (uint256 i = 0; i < bets.length; i++) {
            accounts[i] = bets[i].account;
            betRegions[i] = bets[i].region;
            betAmounts[i] = bets[i].amount;
            payouts[i] = bets[i].payout;
            profits[i] = bets[i].profit;
        }
        emit SettlementEnd(orderId, randomNum, randomNumHashed, cards, winRegions, accounts, betRegions, betAmounts, payouts, profits, address(this).balance);

        if (isWaitingForMaintain) {
            isWaitingForMaintain = false;
            state = GameState.Maintain;
            emit Maintain("our website is in maintenance.");
        }

        // delete bets;
    }

    function calculateWinRegion(uint256[] memory results)
        private
        pure
        returns (BetRegion[] memory)
    {
        uint256 sum = 0;
        for (uint256 i = 0; i < results.length; i++) {
            sum += results[i];
        }

        //3-10 小, 11-18 大
        BetRegion winRegion;
        if (sum >= 3 && sum <= 10) {
            winRegion = BetRegion.Small;
        } else {
            winRegion = BetRegion.Big;
        }

        BetRegion[] memory winRegions = new BetRegion[](1);
        winRegions[0] = winRegion;
        return winRegions;
    }

    /// 庄家补钱
    function ownerDeposit() public payable isOwner {
        require(state == GameState.Ready, "only deposit in ready state.");
        require(msg.value > 0, "owner deposit amount need gt 0.");

        emit OwnerDeposit();
    }

    /// 庄家提现
    function ownerWithdraw() public isOwner {
        require(state == GameState.Ready, "only withdraw in ready state.");

        payable(owner).transfer(address(this).balance);
        emit OwnerWithdraw();
    }

    /// 系统维护, 该局结束后
    function maintainBegin() public isOwner {
        isWaitingForMaintain = true;
    }

    /// 维护结束
    function maintainEnd() public isOwner {
        require(state == GameState.Maintain, "game is not in maintain state.");
        state = GameState.Ready;

        emit MaintainEnd("maintenance is end.");
    }
}

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"string","name":"orderId","type":"string"},{"indexed":false,"internalType":"uint256","name":"randomNumHashed","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"betEndTime","type":"uint256"}],"name":"BetBegin","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"string","name":"orderId","type":"string"},{"indexed":false,"internalType":"address","name":"betMan","type":"address"},{"indexed":false,"internalType":"enum dice.BetRegion","name":"betRegion","type":"uint8"},{"indexed":false,"internalType":"uint256","name":"betAmount","type":"uint256"}],"name":"BetSuccess","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"string","name":"message","type":"string"}],"name":"Maintain","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"string","name":"message","type":"string"}],"name":"MaintainEnd","type":"event"},{"anonymous":false,"inputs":[],"name":"OwnerDeposit","type":"event"},{"anonymous":false,"inputs":[],"name":"OwnerWithdraw","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"string","name":"orderId","type":"string"}],"name":"Reset","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"string","name":"orderId","type":"string"},{"indexed":false,"internalType":"uint256","name":"randomNum","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"randomNumHashed","type":"uint256"},{"indexed":false,"internalType":"uint256[]","name":"cards","type":"uint256[]"},{"indexed":false,"internalType":"enum dice.BetRegion[]","name":"winRegions","type":"uint8[]"},{"indexed":false,"internalType":"address[]","name":"accounts","type":"address[]"},{"indexed":false,"internalType":"enum dice.BetRegion[]","name":"betRegions","type":"uint8[]"},{"indexed":false,"internalType":"uint256[]","name":"betAmounts","type":"uint256[]"},{"indexed":false,"internalType":"uint256[]","name":"payouts","type":"uint256[]"},{"indexed":false,"internalType":"uint256[]","name":"profits","type":"uint256[]"},{"indexed":false,"internalType":"uint256","name":"contractBalance","type":"uint256"}],"name":"SettlementEnd","type":"event"},{"inputs":[],"name":"availableBetAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"enum dice.BetRegion","name":"betRegion","type":"uint8"}],"name":"bet","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"string","name":"_orderId","type":"string"},{"internalType":"uint256","name":"_bettingSeconds","type":"uint256"},{"internalType":"uint256","name":"_randomNumHashed","type":"uint256"}],"name":"betBegin","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_randomNum","type":"uint256"}],"name":"betEnd","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"betEndTime","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"bets","outputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"enum dice.BetRegion","name":"region","type":"uint8"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"payout","type":"uint256"},{"internalType":"uint256","name":"profit","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"origin","type":"uint256"}],"name":"getKeccak256","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"maintainBegin","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"maintainEnd","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"enum dice.BetRegion","name":"","type":"uint8"}],"name":"odds","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"orderId","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"ownerDeposit","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"ownerWithdraw","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"profitRatio","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"randomNumHashed","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"reset","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"state","outputs":[{"internalType":"enum dice.GameState","name":"","type":"uint8"}],"stateMutability":"view","type":"function"}]

608060405260c86003553480156200001657600080fd5b5033600060016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550620000686200006e60201b60201c565b62000128565b61271060026000600160028111156200008c576200008b620000f9565b5b6002811115620000a157620000a0620000f9565b5b81526020019081526020016000208190555061271060026000600280811115620000d057620000cf620000f9565b5b6002811115620000e557620000e4620000f9565b5b815260200190815260200160002081905550565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b613a8780620001386000396000f3fe6080604052600436106101095760003560e01c8063b1c7352511610095578063d2045d1211610064578063d2045d121461032f578063d826f88f14610346578063e377b13b1461035d578063fba0c05714610374578063fff5ea941461039f57610109565b8063b1c7352514610280578063b670da5a146102bd578063c19d93fb146102e8578063d0821b0e1461031357610109565b80634311de8f116100dc5780634311de8f146101e05780637b1aa45f146101f75780638da5cb5b146102015780639cb5018f1461022c5780639d9fa3731461025757610109565b8063163de5e51461010e5780631b24bfc3146101395780631ca8fcd81461016257806322af00fa1461019f575b600080fd5b34801561011a57600080fd5b506101236103ca565b6040516101309190612cdb565b60405180910390f35b34801561014557600080fd5b50610160600480360381019061015b9190612687565b610458565b005b34801561016e57600080fd5b50610189600480360381019061018491906125eb565b610acb565b604051610196919061310c565b60405180910390f35b3480156101ab57600080fd5b506101c660048036038101906101c19190612687565b610ae3565b6040516101d7959493929190612c6d565b60405180910390f35b3480156101ec57600080fd5b506101f5610b56565b005b6101ff610cf1565b005b34801561020d57600080fd5b50610216610e66565b6040516102239190612c52565b60405180910390f35b34801561023857600080fd5b50610241610e8c565b60405161024e919061310c565b60405180910390f35b34801561026357600080fd5b5061027e60048036038101906102799190612618565b610e92565b005b34801561028c57600080fd5b506102a760048036038101906102a29190612687565b6111d0565b6040516102b4919061310c565b60405180910390f35b3480156102c957600080fd5b506102d2611203565b6040516102df919061310c565b60405180910390f35b3480156102f457600080fd5b506102fd611209565b60405161030a9190612cc0565b60405180910390f35b61032d600480360381019061032891906125eb565b61121a565b005b34801561033b57600080fd5b5061034461167f565b005b34801561035257600080fd5b5061035b6117e3565b005b34801561036957600080fd5b506103726119dc565b005b34801561038057600080fd5b50610389611a89565b604051610396919061310c565b60405180910390f35b3480156103ab57600080fd5b506103b4611a8f565b6040516103c1919061310c565b60405180910390f35b600780546103d790613436565b80601f016020809104026020016040519081016040528092919081815260200182805461040390613436565b80156104505780601f1061042557610100808354040283529160200191610450565b820191906000526020600020905b81548152906001019060200180831161043357829003601f168201915b505050505081565b600060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146104e8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104df9061308c565b60405180910390fd5b600160038111156104fc576104fb61357b565b5b60008054906101000a900460ff16600381111561051c5761051b61357b565b5b14806105595750600060038111156105375761053661357b565b5b60008054906101000a900460ff1660038111156105575761055661357b565b5b145b610598576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161058f9061300c565b60405180910390fd5b6005544210156105dd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105d4906130cc565b60405180910390fd5b806040516020016105ee9190612c0b565b6040516020818303038152906040528051906020012060001c6006541461064a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106419061304c565b60405180910390fd5b6000610657826003611a95565b90506000600381111561066d5761066c61357b565b5b60008054906101000a900460ff16600381111561068d5761068c61357b565b5b1415610a9257600061069e82611b7c565b9050600060018054905067ffffffffffffffff8111156106c1576106c0613608565b5b6040519080825280602002602001820160405280156106ef5781602001602082028036833780820191505090505b509050600060018054905067ffffffffffffffff81111561071357610712613608565b5b6040519080825280602002602001820160405280156107415781602001602082028036833780820191505090505b509050600060018054905067ffffffffffffffff81111561076557610764613608565b5b6040519080825280602002602001820160405280156107935781602001602082028036833780820191505090505b509050600060018054905067ffffffffffffffff8111156107b7576107b6613608565b5b6040519080825280602002602001820160405280156107e55781602001602082028036833780820191505090505b509050600060018054905067ffffffffffffffff81111561080957610808613608565b5b6040519080825280602002602001820160405280156108375781602001602082028036833780820191505090505b50905060005b600180549050811015610a37576001818154811061085e5761085d6135d9565b5b906000526020600020906004020160000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168682815181106108a3576108a26135d9565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600181815481106108f1576108f06135d9565b5b906000526020600020906004020160000160149054906101000a900460ff16858281518110610923576109226135d9565b5b6020026020010190600281111561093d5761093c61357b565b5b908160028111156109515761095061357b565b5b8152505060018181548110610969576109686135d9565b5b90600052602060002090600402016001015484828151811061098e5761098d6135d9565b5b602002602001018181525050600181815481106109ae576109ad6135d9565b5b9060005260206000209060040201600201548382815181106109d3576109d26135d9565b5b602002602001018181525050600181815481106109f3576109f26135d9565b5b906000526020600020906004020160030154828281518110610a1857610a176135d9565b5b6020026020010181815250508080610a2f90613499565b91505061083d565b507f85dbf412f2dca0e8fbe2bd76101a18498d2c77883c3fde351f21de30a41cab926007896006548a8a8a8a8a8a8a47604051610a7e9b9a99989796959493929190612da9565b60405180910390a150505050505050610ac8565b60008060006101000a81548160ff02191690836003811115610ab757610ab661357b565b5b0217905550610ac68282611c8e565b505b50565b60026020528060005260406000206000915090505481565b60018181548110610af357600080fd5b90600052602060002090600402016000915090508060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060000160149054906101000a900460ff16908060010154908060020154908060030154905085565b600060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610be6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bdd9061308c565b60405180910390fd5b60006003811115610bfa57610bf961357b565b5b60008054906101000a900460ff166003811115610c1a57610c1961357b565b5b14610c5a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c5190612ecc565b60405180910390fd5b600060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc479081150290604051600060405180830381858888f19350505050158015610cc2573d6000803e3d6000fd5b507f2c84d560351c0b1519df362e5e9403820d03bd4569761c712a99064fc8471f4d60405160405180910390a1565b600060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610d81576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d789061308c565b60405180910390fd5b60006003811115610d9557610d9461357b565b5b60008054906101000a900460ff166003811115610db557610db461357b565b5b14610df5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610dec90612fcc565b60405180910390fd5b60003411610e38576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e2f9061306c565b60405180910390fd5b7fd6e0bf298611e161af7e067ec314f6c61e76a1a32b973ed208728dde8e9df18a60405160405180910390a1565b600060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60045481565b600060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610f22576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f199061308c565b60405180910390fd5b60006003811115610f3657610f3561357b565b5b60008054906101000a900460ff166003811115610f5657610f5561357b565b5b1480610f93575060016003811115610f7157610f7061357b565b5b60008054906101000a900460ff166003811115610f9157610f9061357b565b5b145b610fd2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fc990612fec565b60405180910390fd5b60004711611015576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161100c906130ac565b60405180910390fd5b6000835111611059576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161105090612f6c565b60405180910390fd5b6000821161109c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161109390612f4c565b60405180910390fd5b81426110a89190613259565b600581905550600160038111156110c2576110c161357b565b5b60008054906101000a900460ff1660038111156110e2576110e161357b565b5b141561112d577fc494e5e12ec21bfe722676849fe93d7f2d043456bddea7645bb8b57d8b530af3600760065460055460405161112093929190612d6b565b60405180910390a16111cb565b6001600061113b9190612420565b8260079080519060200190611151929190612444565b50806006819055504760048190555060016000806101000a81548160ff021916908360038111156111855761118461357b565b5b02179055507fc494e5e12ec21bfe722676849fe93d7f2d043456bddea7645bb8b57d8b530af360076006546005546040516111c293929190612d6b565b60405180910390a15b505050565b6000816040516020016111e39190612c0b565b6040516020818303038152906040528051906020012060001c9050919050565b60055481565b60008054906101000a900460ff1681565b600060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614156112ab576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112a2906130ec565b60405180910390fd5b600160038111156112bf576112be61357b565b5b60008054906101000a900460ff1660038111156112df576112de61357b565b5b1461131f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161131690612f8c565b60405180910390fd5b600060028111156113335761133261357b565b5b8160028111156113465761134561357b565b5b1415611387576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161137e90612fac565b60405180910390fd5b60055442106113cb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113c290612e8c565b60405180910390fd5b6000341161140e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114059061302c565b60405180910390fd5b6000600260008360028111156114275761142661357b565b5b60028111156114395761143861357b565b5b8152602001908152602001600020546127103461145691906132af565b61146091906132e0565b3460045461146e919061333a565b611478919061333a565b116114b8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114af90612f0c565b60405180910390fd5b600260008260028111156114cf576114ce61357b565b5b60028111156114e1576114e061357b565b5b815260200190815260200160002054612710346114fe91906132af565b61150891906132e0565b346115139190613259565b60046000828254611524919061333a565b9250508190555060016040518060a001604052803373ffffffffffffffffffffffffffffffffffffffff1681526020018360028111156115675761156661357b565b5b8152602001348152602001600081526020016000815250908060018154018082558091505060019003906000526020600020906004020160009091909190915060008201518160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060208201518160000160146101000a81548160ff021916908360028111156116195761161861357b565b5b021790555060408201518160010155606082015181600201556080820151816003015550507ff742c91c0e6cc71ff46180c5301e8b5e164dfcd8f77dfc98132783e0807b82ff60073383346040516116749493929190612d1f565b60405180910390a150565b600060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461170f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117069061308c565b60405180910390fd5b6003808111156117225761172161357b565b5b60008054906101000a900460ff1660038111156117425761174161357b565b5b14611782576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161177990612f2c565b60405180910390fd5b60008060006101000a81548160ff021916908360038111156117a7576117a661357b565b5b02179055507fd2f44968ce99675888d6ba9125930306c628497a2ae24f85435138abd2c522d96040516117d990612eec565b60405180910390a1565b600060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611873576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161186a9061308c565b60405180910390fd5b60005b6001805490508110156119475760018181548110611897576118966135d9565b5b906000526020600020906004020160000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc600183815481106118f6576118f56135d9565b5b9060005260206000209060040201600101549081150290604051600060405180830381858888f19350505050158015611933573d6000803e3d6000fd5b50808061193f90613499565b915050611876565b50600160006119569190612420565b60008060006101000a81548160ff0219169083600381111561197b5761197a61357b565b5b021790555060008060156101000a81548160ff0219169083151502179055506119a26123a1565b7fa204ec6a4c301f826e1580f4ca8da0c3f3ad2d807d9f613ad7df4f1d286c7bcc60076040516119d29190612cfd565b60405180910390a1565b600060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611a6c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a639061308c565b60405180910390fd5b6001600060156101000a81548160ff021916908315150217905550565b60065481565b60035481565b606060008267ffffffffffffffff811115611ab357611ab2613608565b5b604051908082528060200260200182016040528015611ae15781602001602082028036833780820191505090505b50905060005b83811015611b715760008582604051602001611b04929190612c26565b6040516020818303038152906040528051906020012060001c905060006001600683611b3091906134ec565b611b3a9190613259565b905080848481518110611b5057611b4f6135d9565b5b60200260200101818152505050508080611b6990613499565b915050611ae7565b508091505092915050565b60606000805b8351811015611bc657838181518110611b9e57611b9d6135d9565b5b602002602001015182611bb19190613259565b91508080611bbe90613499565b915050611b82565b50600060038210158015611bdb5750600a8211155b15611be95760029050611bee565b600190505b6000600167ffffffffffffffff811115611c0b57611c0a613608565b5b604051908082528060200260200182016040528015611c395781602001602082028036833780820191505090505b5090508181600081518110611c5157611c506135d9565b5b60200260200101906002811115611c6b57611c6a61357b565b5b90816002811115611c7f57611c7e61357b565b5b81525050809350505050919050565b6000611c9982611b7c565b905060005b8151811015611f21576000828281518110611cbc57611cbb6135d9565b5b6020026020010151905060005b600180549050811015611f0c57816002811115611ce957611ce861357b565b5b60018281548110611cfd57611cfc6135d9565b5b906000526020600020906004020160000160149054906101000a900460ff166002811115611d2e57611d2d61357b565b5b14611d3857611ef9565b600060026000846002811115611d5157611d5061357b565b5b6002811115611d6357611d6261357b565b5b81526020019081526020016000205461271060018481548110611d8957611d886135d9565b5b906000526020600020906004020160010154611da591906132af565b611daf91906132e0565b60018381548110611dc357611dc26135d9565b5b906000526020600020906004020160010154611ddf9190613259565b9050600060035461271083611df491906132af565b611dfe91906132e0565b90508060018481548110611e1557611e146135d9565b5b9060005260206000209060040201600301819055508082611e36919061333a565b60018481548110611e4a57611e496135d9565b5b90600052602060002090600402016002018190555060018381548110611e7357611e726135d9565b5b906000526020600020906004020160000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc8284611eca919061333a565b9081150290604051600060405180830381858888f19350505050158015611ef5573d6000803e3d6000fd5b5050505b8080611f0490613499565b915050611cc9565b50508080611f1990613499565b915050611c9e565b50600060018054905067ffffffffffffffff811115611f4357611f42613608565b5b604051908082528060200260200182016040528015611f715781602001602082028036833780820191505090505b509050600060018054905067ffffffffffffffff811115611f9557611f94613608565b5b604051908082528060200260200182016040528015611fc35781602001602082028036833780820191505090505b509050600060018054905067ffffffffffffffff811115611fe757611fe6613608565b5b6040519080825280602002602001820160405280156120155781602001602082028036833780820191505090505b509050600060018054905067ffffffffffffffff81111561203957612038613608565b5b6040519080825280602002602001820160405280156120675781602001602082028036833780820191505090505b509050600060018054905067ffffffffffffffff81111561208b5761208a613608565b5b6040519080825280602002602001820160405280156120b95781602001602082028036833780820191505090505b50905060005b6001805490508110156122b957600181815481106120e0576120df6135d9565b5b906000526020600020906004020160000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16868281518110612125576121246135d9565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505060018181548110612173576121726135d9565b5b906000526020600020906004020160000160149054906101000a900460ff168582815181106121a5576121a46135d9565b5b602002602001019060028111156121bf576121be61357b565b5b908160028111156121d3576121d261357b565b5b81525050600181815481106121eb576121ea6135d9565b5b9060005260206000209060040201600101548482815181106122105761220f6135d9565b5b602002602001018181525050600181815481106122305761222f6135d9565b5b906000526020600020906004020160020154838281518110612255576122546135d9565b5b60200260200101818152505060018181548110612275576122746135d9565b5b90600052602060002090600402016003015482828151811061229a576122996135d9565b5b60200260200101818152505080806122b190613499565b9150506120bf565b507f85dbf412f2dca0e8fbe2bd76101a18498d2c77883c3fde351f21de30a41cab926007896006548a8a8a8a8a8a8a476040516123009b9a99989796959493929190612da9565b60405180910390a1600060159054906101000a900460ff16156123975760008060156101000a81548160ff02191690831515021790555060036000806101000a81548160ff0219169083600381111561235c5761235b61357b565b5b02179055507ffe7cecef9f342e9f89353182c4752a4a4ab9ed422fa85435ed7beaccea24af4b60405161238e90612eac565b60405180910390a15b5050505050505050565b61271060026000600160028111156123bc576123bb61357b565b5b60028111156123ce576123cd61357b565b5b815260200190815260200160002081905550612710600260006002808111156123fa576123f961357b565b5b600281111561240c5761240b61357b565b5b815260200190815260200160002081905550565b508054600082556004029060005260206000209081019061244191906124ca565b50565b82805461245090613436565b90600052602060002090601f01602090048101928261247257600085556124b9565b82601f1061248b57805160ff19168380011785556124b9565b828001600101855582156124b9579182015b828111156124b857825182559160200191906001019061249d565b5b5090506124c69190612534565b5090565b5b8082111561253057600080820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556000820160146101000a81549060ff0219169055600182016000905560028201600090556003820160009055506004016124cb565b5090565b5b8082111561254d576000816000905550600101612535565b5090565b600061256461255f8461314c565b613127565b9050828152602081018484840111156125805761257f61363c565b5b61258b8482856133f4565b509392505050565b6000813590506125a281613a2a565b92915050565b600082601f8301126125bd576125bc613637565b5b81356125cd848260208601612551565b91505092915050565b6000813590506125e581613a3a565b92915050565b60006020828403121561260157612600613646565b5b600061260f84828501612593565b91505092915050565b60008060006060848603121561263157612630613646565b5b600084013567ffffffffffffffff81111561264f5761264e613641565b5b61265b868287016125a8565b935050602061266c868287016125d6565b925050604061267d868287016125d6565b9150509250925092565b60006020828403121561269d5761269c613646565b5b60006126ab848285016125d6565b91505092915050565b60006126c083836126fc565b60208301905092915050565b60006126d88383612834565b60208301905092915050565b60006126f08383612bd6565b60208301905092915050565b6127058161336e565b82525050565b6127148161336e565b82525050565b6000612725826131c2565b61272f8185613215565b935061273a8361317d565b8060005b8381101561276b57815161275288826126b4565b975061275d836131ee565b92505060018101905061273e565b5085935050505092915050565b6000612783826131cd565b61278d8185613237565b93506127988361318d565b8060005b838110156127c95781516127b088826126cc565b97506127bb836131fb565b92505060018101905061279c565b5085935050505092915050565b60006127e1826131d8565b6127eb8185613226565b93506127f68361319d565b8060005b8381101561282757815161280e88826126e4565b975061281983613208565b9250506001810190506127fa565b5085935050505092915050565b61283d816133d0565b82525050565b61284c816133d0565b82525050565b61285b816133e2565b82525050565b600061286c826131e3565b6128768185613248565b9350612886818560208601613403565b61288f8161364b565b840191505092915050565b600081546128a781613436565b6128b18186613248565b945060018216600081146128cc57600181146128de57612911565b60ff1983168652602086019350612911565b6128e7856131ad565b60005b83811015612909578154818901526001820191506020810190506128ea565b808801955050505b50505092915050565b6000612927601783613248565b91506129328261365c565b602082019050919050565b600061294a601e83613248565b915061295582613685565b602082019050919050565b600061296d601d83613248565b9150612978826136ae565b602082019050919050565b6000612990601383613248565b915061299b826136d7565b602082019050919050565b60006129b3602983613248565b91506129be82613700565b604082019050919050565b60006129d6601e83613248565b91506129e18261374f565b602082019050919050565b60006129f9601d83613248565b9150612a0482613778565b602082019050919050565b6000612a1c601183613248565b9150612a27826137a1565b602082019050919050565b6000612a3f601183613248565b9150612a4a826137ca565b602082019050919050565b6000612a62601983613248565b9150612a6d826137f3565b602082019050919050565b6000612a85601c83613248565b9150612a908261381c565b602082019050919050565b6000612aa8601b83613248565b9150612ab382613845565b602082019050919050565b6000612acb603483613248565b9150612ad68261386e565b604082019050919050565b6000612aee601583613248565b9150612af9826138bd565b602082019050919050565b6000612b11601383613248565b9150612b1c826138e6565b602082019050919050565b6000612b34601f83613248565b9150612b3f8261390f565b602082019050919050565b6000612b57601483613248565b9150612b6282613938565b602082019050919050565b6000612b7a601b83613248565b9150612b8582613961565b602082019050919050565b6000612b9d602183613248565b9150612ba88261398a565b604082019050919050565b6000612bc0602083613248565b9150612bcb826139d9565b602082019050919050565b612bdf816133c6565b82525050565b612bee816133c6565b82525050565b612c05612c00826133c6565b6134e2565b82525050565b6000612c178284612bf4565b60208201915081905092915050565b6000612c328285612bf4565b602082019150612c428284612bf4565b6020820191508190509392505050565b6000602082019050612c67600083018461270b565b92915050565b600060a082019050612c82600083018861270b565b612c8f6020830187612843565b612c9c6040830186612be5565b612ca96060830185612be5565b612cb66080830184612be5565b9695505050505050565b6000602082019050612cd56000830184612852565b92915050565b60006020820190508181036000830152612cf58184612861565b905092915050565b60006020820190508181036000830152612d17818461289a565b905092915050565b60006080820190508181036000830152612d39818761289a565b9050612d48602083018661270b565b612d556040830185612843565b612d626060830184612be5565b95945050505050565b60006060820190508181036000830152612d85818661289a565b9050612d946020830185612be5565b612da16040830184612be5565b949350505050565b6000610160820190508181036000830152612dc4818e61289a565b9050612dd3602083018d612be5565b612de0604083018c612be5565b8181036060830152612df2818b6127d6565b90508181036080830152612e06818a612778565b905081810360a0830152612e1a818961271a565b905081810360c0830152612e2e8188612778565b905081810360e0830152612e4281876127d6565b9050818103610100830152612e5781866127d6565b9050818103610120830152612e6c81856127d6565b9050612e7c610140830184612be5565b9c9b505050505050505050505050565b60006020820190508181036000830152612ea58161291a565b9050919050565b60006020820190508181036000830152612ec58161293d565b9050919050565b60006020820190508181036000830152612ee581612960565b9050919050565b60006020820190508181036000830152612f0581612983565b9050919050565b60006020820190508181036000830152612f25816129a6565b9050919050565b60006020820190508181036000830152612f45816129c9565b9050919050565b60006020820190508181036000830152612f65816129ec565b9050919050565b60006020820190508181036000830152612f8581612a0f565b9050919050565b60006020820190508181036000830152612fa581612a32565b9050919050565b60006020820190508181036000830152612fc581612a55565b9050919050565b60006020820190508181036000830152612fe581612a78565b9050919050565b6000602082019050818103600083015261300581612a9b565b9050919050565b6000602082019050818103600083015261302581612abe565b9050919050565b6000602082019050818103600083015261304581612ae1565b9050919050565b6000602082019050818103600083015261306581612b04565b9050919050565b6000602082019050818103600083015261308581612b27565b9050919050565b600060208201905081810360008301526130a581612b4a565b9050919050565b600060208201905081810360008301526130c581612b6d565b9050919050565b600060208201905081810360008301526130e581612b90565b9050919050565b6000602082019050818103600083015261310581612bb3565b9050919050565b60006020820190506131216000830184612be5565b92915050565b6000613131613142565b905061313d8282613468565b919050565b6000604051905090565b600067ffffffffffffffff82111561316757613166613608565b5b6131708261364b565b9050602081019050919050565b6000819050602082019050919050565b6000819050602082019050919050565b6000819050602082019050919050565b60008190508160005260206000209050919050565b600081519050919050565b600081519050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b6000602082019050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b6000613264826133c6565b915061326f836133c6565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156132a4576132a361351d565b5b828201905092915050565b60006132ba826133c6565b91506132c5836133c6565b9250826132d5576132d461354c565b5b828204905092915050565b60006132eb826133c6565b91506132f6836133c6565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561332f5761332e61351d565b5b828202905092915050565b6000613345826133c6565b9150613350836133c6565b9250828210156133635761336261351d565b5b828203905092915050565b6000613379826133a6565b9050919050565b600081905061338e82613a02565b919050565b60008190506133a182613a16565b919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b60006133db82613380565b9050919050565b60006133ed82613393565b9050919050565b82818337600083830152505050565b60005b83811015613421578082015181840152602081019050613406565b83811115613430576000848401525b50505050565b6000600282049050600182168061344e57607f821691505b60208210811415613462576134616135aa565b5b50919050565b6134718261364b565b810181811067ffffffffffffffff821117156134905761348f613608565b5b80604052505050565b60006134a4826133c6565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8214156134d7576134d661351d565b5b600182019050919050565b6000819050919050565b60006134f7826133c6565b9150613502836133c6565b9250826135125761351161354c565b5b828206905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f62657474696e672074696d652068617320656e6465642e000000000000000000600082015250565b7f6f7572207765627369746520697320696e206d61696e74656e616e63652e0000600082015250565b7f6f6e6c7920776974686472617720696e2072656164792073746174652e000000600082015250565b7f6d61696e74656e616e636520697320656e642e00000000000000000000000000600082015250565b7f62657420616d6f756e7420686173206f76657220746865206f776e657227732060008201527f63617061636974792e0000000000000000000000000000000000000000000000602082015250565b7f67616d65206973206e6f7420696e206d61696e7461696e2073746174652e0000600082015250565b7f62657474696e67207365636f6e6473206e656564206774207a65726f2e000000600082015250565b7f6f72646572696420697320656d7074792e000000000000000000000000000000600082015250565b7f6e6f742062657474696e672074696d652e000000000000000000000000000000600082015250565b7f706c656173652073656c6563742062657420726567696f6e2e00000000000000600082015250565b7f6f6e6c79206465706f73697420696e2072656164792073746174652e00000000600082015250565b7f6e6f74207265616479206f722062657474696e672073746174652e0000000000600082015250565b7f626574656e642063616e2062652063616c6c6564206f6e6c7920696e2062657460008201527f74696e67206f722072656164792073746174652e000000000000000000000000602082015250565b7f62657420616d6f756e74206e65656420676520302e0000000000000000000000600082015250565b7f72616e646f6d4e756d2069732077726f6e672e00000000000000000000000000600082015250565b7f6f776e6572206465706f73697420616d6f756e74206e65656420677420302e00600082015250565b7f63616c6c6572206973206e6f74206f776e65722e000000000000000000000000600082015250565b7f6f776e657220646f6e2774206861766520616e79206d6f6e65792e0000000000600082015250565b7f686176656e277420726561636865642074686520656e642074696d652079657460008201527f2e00000000000000000000000000000000000000000000000000000000000000602082015250565b7f746865206f776e6572206973206e6f7420616c6c6f77656420746f206265742e600082015250565b60038110613a1357613a1261357b565b5b50565b60048110613a2757613a2661357b565b5b50565b60038110613a3757600080fd5b50565b613a43816133c6565b8114613a4e57600080fd5b5056fea2646970667358221220622e6a132b3b63190d02dfde05beef19ee62e543eca2b648b57d051dd74a403f64736f6c63430008070033

Deployed ByteCode Sourcemap

64:10101:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1069:21;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4640:1565;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;729:41;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;684:23;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;;;;:::i;:::-;;;;;;;;9571:215;;;;;;;;;;;;;:::i;:::-;;9310:231;;;:::i;:::-;;593:20;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;896:33;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2718:1024;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6238:138;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;956:25;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;564:22;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3770:802;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;9949:213;;;;;;;;;;;;;:::i;:::-;;1211:346;;;;;;;;;;;;;:::i;:::-;;9833:86;;;;;;;;;;;;;:::i;:::-;;1011:30;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;821:32;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1069:21;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;4640:1565::-;1798:5;;;;;;;;;;;1784:19;;:10;:19;;;1776:52;;;;;;;;;;;;:::i;:::-;;;;;;;;;4719:17:::1;4710:26;;;;;;;;:::i;:::-;;:5;::::0;::::1;;;;;;;;:26;;;;;;;;:::i;:::-;;;:54;;;;4749:15;4740:24;;;;;;;;:::i;:::-;;:5;::::0;::::1;;;;;;;;:24;;;;;;;;:::i;:::-;;;4710:54;4702:119;;;;;;;;;;;;:::i;:::-;;;;;;;;;4859:10;;4840:15;:29;;4832:75;;;;;;;;;;;;:::i;:::-;;;;;;;;;4981:10;4963:30;;;;;;;;:::i;:::-;;;;;;;;;;;;;4953:41;;;;;;4945:50;;4926:15;;:69;4918:100;;;;;;;;;;;;:::i;:::-;;;;;;;;;5031:22;5056:31;5073:10;5085:1;5056:16;:31::i;:::-;5031:56;;5172:15;5163:24;;;;;;;;:::i;:::-;;:5;::::0;::::1;;;;;;;;:24;;;;;;;;:::i;:::-;;;5159:961;;;5203:29;5235:25;5254:5;5235:18;:25::i;:::-;5203:57;;5277:25;5319:4;:11;;;;5305:26;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5277:54;;5346:29;5394:4;:11;;;;5378:28;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5346:60;;5421:27;5465:4;:11;;;;5451:26;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5421:56;;5492:24;5533:4;:11;;;;5519:26;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5492:53;;5560:24;5601:4;:11;;;;5587:26;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5560:53;;5633:9;5628:296;5652:4;:11;;;;5648:1;:15;5628:296;;;5703:4;5708:1;5703:7;;;;;;;;:::i;:::-;;;;;;;;;;;;:15;;;;;;;;;;;;5689:8;5698:1;5689:11;;;;;;;;:::i;:::-;;;;;;;:29;;;;;;;;;::::0;::::1;5753:4;5758:1;5753:7;;;;;;;;:::i;:::-;;;;;;;;;;;;:14;;;;;;;;;;;;5737:10;5748:1;5737:13;;;;;;;;:::i;:::-;;;;;;;:30;;;;;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;;;;::::0;::::1;5802:4;5807:1;5802:7;;;;;;;;:::i;:::-;;;;;;;;;;;;:14;;;5786:10;5797:1;5786:13;;;;;;;;:::i;:::-;;;;;;;:30;;;::::0;::::1;5848:4;5853:1;5848:7;;;;;;;;:::i;:::-;;;;;;;;;;;;:14;;;5835:7;5843:1;5835:10;;;;;;;;:::i;:::-;;;;;;;:27;;;::::0;::::1;5894:4;5899:1;5894:7;;;;;;;;:::i;:::-;;;;;;;;;;;;:14;;;5881:7;5889:1;5881:10;;;;;;;;:::i;:::-;;;;;;;:27;;;::::0;::::1;5665:3;;;;;:::i;:::-;;;;5628:296;;;;5943:144;5957:7;5966:10;5978:15;;5995:5;6002:10;6014:8;6024:10;6036;6048:7;6056;6065:21;5943:144;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;6102:7;;;;;;;;;5159:961;6140:15;6132:5:::0;::::1;:23;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;6166:31;6179:10;6191:5;6166:12;:31::i;:::-;4691:1514;1839:1;4640:1565:::0;:::o;729:41::-;;;;;;;;;;;;;;;;;:::o;684:23::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;9571:215::-;1798:5;;;;;;;;;;;1784:19;;:10;:19;;;1776:52;;;;;;;;;;;;:::i;:::-;;;;;;;;;9639:15:::1;9630:24;;;;;;;;:::i;:::-;;:5;::::0;::::1;;;;;;;;:24;;;;;;;;:::i;:::-;;;9622:66;;;;;;;;;;;;:::i;:::-;;;;;;;;;9709:5;;;;;;;;;;;9701:23;;:46;9725:21;9701:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;9763:15;;;;;;;;;;9571:215::o:0;9310:231::-;1798:5;;;;;;;;;;;1784:19;;:10;:19;;;1776:52;;;;;;;;;;;;:::i;:::-;;;;;;;;;9385:15:::1;9376:24;;;;;;;;:::i;:::-;;:5;::::0;::::1;;;;;;;;:24;;;;;;;;:::i;:::-;;;9368:65;;;;;;;;;;;;:::i;:::-;;;;;;;;;9464:1;9452:9;:13;9444:57;;;;;;;;;;;;:::i;:::-;;;;;;;;;9519:14;;;;;;;;;;9310:231::o:0;593:20::-;;;;;;;;;;;;;:::o;896:33::-;;;;:::o;2718:1024::-;1798:5;;;;;;;;;;;1784:19;;:10;:19;;;1776:52;;;;;;;;;;;;:::i;:::-;;;;;;;;;2885:15:::1;2876:24;;;;;;;;:::i;:::-;;:5;::::0;::::1;;;;;;;;:24;;;;;;;;:::i;:::-;;;:54;;;;2913:17;2904:26;;;;;;;;:::i;:::-;;:5;::::0;::::1;;;;;;;;:26;;;;;;;;:::i;:::-;;;2876:54;2868:94;;;;;;;;;;;;:::i;:::-;;;;;;;;;3005:1;2981:21;:25;2973:65;;;;;;;;;;;;:::i;:::-;;;;;;;;;3082:1;3063:8;3057:22;:26;3049:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;3142:1;3124:15;:19;3116:61;;;;;;;;;;;;:::i;:::-;;;;;;;;;3332:15;3314;:33;;;;:::i;:::-;3301:10;:46;;;;3370:17;3361:26;;;;;;;;:::i;:::-;;:5;::::0;::::1;;;;;;;;:26;;;;;;;;:::i;:::-;;;3358:129;;;3409:45;3418:7;3427:15;;3443:10;;3409:45;;;;;;;;:::i;:::-;;;;;;;;3469:7;;3358:129;3506:4;;3499:11;;;;:::i;:::-;3531:8;3521:7;:18;;;;;;;;;;;;:::i;:::-;;3568:16;3550:15;:34;;;;3616:21;3595:18;:42;;;;3656:17;3648:5;::::0;:25:::1;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;3689:45;3698:7;3707:15;;3723:10;;3689:45;;;;;;;;:::i;:::-;;;;;;;;1839:1;2718:1024:::0;;;:::o;6238:138::-;6297:7;6359:6;6342:24;;;;;;;;:::i;:::-;;;;;;;;;;;;;6332:35;;;;;;6324:44;;6317:51;;6238:138;;;:::o;956:25::-;;;;:::o;564:22::-;;;;;;;;;;;;:::o;3770:802::-;3852:5;;;;;;;;;;;3838:19;;:10;:19;;;;3830:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;3922:17;3913:26;;;;;;;;:::i;:::-;;:5;;;;;;;;;;:26;;;;;;;;:::i;:::-;;;3905:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;3993:14;3980:27;;;;;;;;:::i;:::-;;:9;:27;;;;;;;;:::i;:::-;;;;3972:65;;;;;;;;;;;;:::i;:::-;;;;;;;;;4074:10;;4056:15;:28;4048:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;4143:1;4131:9;:13;4123:47;;;;;;;;;;;;:::i;:::-;;;;;;;;;4261:1;4242:4;:15;4247:9;4242:15;;;;;;;;:::i;:::-;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;4234:5;4222:9;:17;;;;:::i;:::-;:35;;;;:::i;:::-;4210:9;4189:18;;:30;;;;:::i;:::-;:68;;;;:::i;:::-;:73;4181:127;;;;;;;;;;;;:::i;:::-;;;;;;;;;4375:4;:15;4380:9;4375:15;;;;;;;;:::i;:::-;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;4367:5;4355:9;:17;;;;:::i;:::-;:35;;;;:::i;:::-;4343:9;:47;;;;:::i;:::-;4321:18;;:69;;;;;;;:::i;:::-;;;;;;;;4435:4;4445:49;;;;;;;;4455:10;4445:49;;;;;;4467:9;4445:49;;;;;;;;:::i;:::-;;;;;;4478:9;4445:49;;;;4489:1;4445:49;;;;4492:1;4445:49;;;4435:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4511:53;4522:7;4531:10;4543:9;4554;4511:53;;;;;;;;;:::i;:::-;;;;;;;;3770:802;:::o;9949:213::-;1798:5;;;;;;;;;;;1784:19;;:10;:19;;;1776:52;;;;;;;;;;;;:::i;:::-;;;;;;;;;10015:18:::1;10006:27:::0;::::1;;;;;;;:::i;:::-;;:5;::::0;::::1;;;;;;;;:27;;;;;;;;:::i;:::-;;;9998:70;;;;;;;;;;;;:::i;:::-;;;;;;;;;10087:15;10079:5:::0;::::1;:23;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;10120:34;;;;;;:::i;:::-;;;;;;;;9949:213::o:0;1211:346::-;1798:5;;;;;;;;;;;1784:19;;:10;:19;;;1776:52;;;;;;;;;;;;:::i;:::-;;;;;;;;;1289:9:::1;1284:118;1308:4;:11;;;;1304:1;:15;1284:118;;;1349:4;1354:1;1349:7;;;;;;;;:::i;:::-;;;;;;;;;;;;:15;;;;;;;;;;;;1341:33;;:49;1375:4;1380:1;1375:7;;;;;;;;:::i;:::-;;;;;;;;;;;;:14;;;1341:49;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;1321:3;;;;;:::i;:::-;;;;1284:118;;;;1421:4;;1414:11;;;;:::i;:::-;1444:15;1436:5:::0;::::1;:23;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;1493:5;1470:20:::0;::::1;:28;;;;;;;;;;;;;;;;;;1509:10;:8;:10::i;:::-;1535:14;1541:7;1535:14;;;;;;:::i;:::-;;;;;;;;1211:346::o:0;9833:86::-;1798:5;;;;;;;;;;;1784:19;;:10;:19;;;1776:52;;;;;;;;;;;;:::i;:::-;;;;;;;;;9907:4:::1;9884:20;;:27;;;;;;;;;;;;;;;;;;9833:86::o:0;1011:30::-;;;;:::o;821:32::-;;;;:::o;6384:419::-;6461:16;6490:24;6531:1;6517:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6490:43;;6549:6;6544:227;6565:1;6561;:5;6544:227;;;6588:21;6647:11;6660:1;6630:32;;;;;;;;;:::i;:::-;;;;;;;;;;;;;6620:43;;;;;;6612:52;;6588:76;;6679:17;6721:1;6716;6700:13;:17;;;;:::i;:::-;6699:23;;;;:::i;:::-;6679:43;;6750:9;6737:7;6745:1;6737:10;;;;;;;;:::i;:::-;;;;;;;:22;;;;;6573:198;;6568:3;;;;;:::i;:::-;;;;6544:227;;;;6788:7;6781:14;;;6384:419;;;;:::o;8680:600::-;8783:18;8819:11;8850:9;8845:89;8869:7;:14;8865:1;:18;8845:89;;;8912:7;8920:1;8912:10;;;;;;;;:::i;:::-;;;;;;;;8905:17;;;;;:::i;:::-;;;8885:3;;;;;:::i;:::-;;;;8845:89;;;;8977:19;9018:1;9011:3;:8;;:21;;;;;9030:2;9023:3;:9;;9011:21;9007:139;;;9061:15;9049:27;;9007:139;;;9121:13;9109:25;;9007:139;9158:29;9206:1;9190:18;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9158:50;;9235:9;9219:10;9230:1;9219:13;;;;;;;;:::i;:::-;;;;;;;:25;;;;;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;;;;;;9262:10;9255:17;;;;;8680:600;;;:::o;6827:1845::-;6911:29;6943:25;6962:5;6943:18;:25::i;:::-;6911:57;;6984:9;6979:686;7003:10;:17;6999:1;:21;6979:686;;;7042:19;7064:10;7075:1;7064:13;;;;;;;;:::i;:::-;;;;;;;;7042:35;;7099:9;7094:560;7118:4;:11;;;;7114:1;:15;7094:560;;;7177:9;7159:27;;;;;;;;:::i;:::-;;:4;7164:1;7159:7;;;;;;;;:::i;:::-;;;;;;;;;;;;:14;;;;;;;;;;;;:27;;;;;;;;:::i;:::-;;;7155:84;;7211:8;;7155:84;7320:14;7379:4;:15;7384:9;7379:15;;;;;;;;:::i;:::-;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;7371:5;7354:4;7359:1;7354:7;;;;;;;;:::i;:::-;;;;;;;;;;;;:14;;;:22;;;;:::i;:::-;:40;;;;:::i;:::-;7337:4;7342:1;7337:7;;;;;;;;:::i;:::-;;;;;;;;;;;;:14;;;:57;;;;:::i;:::-;7320:74;;7413:14;7447:11;;7439:5;7430:6;:14;;;;:::i;:::-;:28;;;;:::i;:::-;7413:45;;7494:6;7477:4;7482:1;7477:7;;;;;;;;:::i;:::-;;;;;;;;;;;;:14;;:23;;;;7545:6;7536;:15;;;;:::i;:::-;7519:4;7524:1;7519:7;;;;;;;;:::i;:::-;;;;;;;;;;;;:14;;:32;;;;7578:4;7583:1;7578:7;;;;;;;;:::i;:::-;;;;;;;;;;;;:15;;;;;;;;;;;;7570:33;;:50;7613:6;7604;:15;;;;:::i;:::-;7570:50;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7136:518;;7094:560;7131:3;;;;;:::i;:::-;;;;7094:560;;;;7027:638;7022:3;;;;;:::i;:::-;;;;6979:686;;;;7677:25;7719:4;:11;;;;7705:26;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7677:54;;7742:29;7790:4;:11;;;;7774:28;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7742:60;;7813:27;7857:4;:11;;;;7843:26;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7813:56;;7880:24;7921:4;:11;;;;7907:26;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7880:53;;7944:24;7985:4;:11;;;;7971:26;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7944:53;;8015:9;8010:272;8034:4;:11;;;;8030:1;:15;8010:272;;;8081:4;8086:1;8081:7;;;;;;;;:::i;:::-;;;;;;;;;;;;:15;;;;;;;;;;;;8067:8;8076:1;8067:11;;;;;;;;:::i;:::-;;;;;;;:29;;;;;;;;;;;8127:4;8132:1;8127:7;;;;;;;;:::i;:::-;;;;;;;;;;;;:14;;;;;;;;;;;;8111:10;8122:1;8111:13;;;;;;;;:::i;:::-;;;;;;;:30;;;;;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;;;;;;8172:4;8177:1;8172:7;;;;;;;;:::i;:::-;;;;;;;;;;;;:14;;;8156:10;8167:1;8156:13;;;;;;;;:::i;:::-;;;;;;;:30;;;;;8214:4;8219:1;8214:7;;;;;;;;:::i;:::-;;;;;;;;;;;;:14;;;8201:7;8209:1;8201:10;;;;;;;;:::i;:::-;;;;;;;:27;;;;;8256:4;8261:1;8256:7;;;;;;;;:::i;:::-;;;;;;;;;;;;:14;;;8243:7;8251:1;8243:10;;;;;;;;:::i;:::-;;;;;;;:27;;;;;8047:3;;;;;:::i;:::-;;;;8010:272;;;;8297:144;8311:7;8320:9;8331:15;;8348:5;8355:10;8367:8;8377:10;8389;8401:7;8410;8419:21;8297:144;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;8458:20;;;;;;;;;;;8454:184;;;8518:5;8495:20;;:28;;;;;;;;;;;;;;;;;;8546:18;8538:5;;:26;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;8584:42;;;;;;:::i;:::-;;;;;;;;8454:184;6900:1772;;;;;;6827:1845;;:::o;1565:128::-;1626:12;1604:4;:19;1609:13;1604:19;;;;;;;;:::i;:::-;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;:34;;;;1673:12;1649:4;:21;1654:15;1649:21;;;;;;;;:::i;:::-;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;:36;;;;1565:128::o;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::o;:::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;:::o;7:412:1:-;85:5;110:66;126:49;168:6;126:49;:::i;:::-;110:66;:::i;:::-;101:75;;199:6;192:5;185:21;237:4;230:5;226:16;275:3;266:6;261:3;257:16;254:25;251:112;;;282:79;;:::i;:::-;251:112;372:41;406:6;401:3;396;372:41;:::i;:::-;91:328;7:412;;;;;:::o;425:163::-;483:5;521:6;508:20;499:29;;537:45;576:5;537:45;:::i;:::-;425:163;;;;:::o;608:340::-;664:5;713:3;706:4;698:6;694:17;690:27;680:122;;721:79;;:::i;:::-;680:122;838:6;825:20;863:79;938:3;930:6;923:4;915:6;911:17;863:79;:::i;:::-;854:88;;670:278;608:340;;;;:::o;954:139::-;1000:5;1038:6;1025:20;1016:29;;1054:33;1081:5;1054:33;:::i;:::-;954:139;;;;:::o;1099:353::-;1170:6;1219:2;1207:9;1198:7;1194:23;1190:32;1187:119;;;1225:79;;:::i;:::-;1187:119;1345:1;1370:65;1427:7;1418:6;1407:9;1403:22;1370:65;:::i;:::-;1360:75;;1316:129;1099:353;;;;:::o;1458:799::-;1545:6;1553;1561;1610:2;1598:9;1589:7;1585:23;1581:32;1578:119;;;1616:79;;:::i;:::-;1578:119;1764:1;1753:9;1749:17;1736:31;1794:18;1786:6;1783:30;1780:117;;;1816:79;;:::i;:::-;1780:117;1921:63;1976:7;1967:6;1956:9;1952:22;1921:63;:::i;:::-;1911:73;;1707:287;2033:2;2059:53;2104:7;2095:6;2084:9;2080:22;2059:53;:::i;:::-;2049:63;;2004:118;2161:2;2187:53;2232:7;2223:6;2212:9;2208:22;2187:53;:::i;:::-;2177:63;;2132:118;1458:799;;;;;:::o;2263:329::-;2322:6;2371:2;2359:9;2350:7;2346:23;2342:32;2339:119;;;2377:79;;:::i;:::-;2339:119;2497:1;2522:53;2567:7;2558:6;2547:9;2543:22;2522:53;:::i;:::-;2512:63;;2468:117;2263:329;;;;:::o;2598:179::-;2667:10;2688:46;2730:3;2722:6;2688:46;:::i;:::-;2766:4;2761:3;2757:14;2743:28;;2598:179;;;;:::o;2783:199::-;2862:10;2883:56;2935:3;2927:6;2883:56;:::i;:::-;2971:4;2966:3;2962:14;2948:28;;2783:199;;;;:::o;2988:179::-;3057:10;3078:46;3120:3;3112:6;3078:46;:::i;:::-;3156:4;3151:3;3147:14;3133:28;;2988:179;;;;:::o;3173:108::-;3250:24;3268:5;3250:24;:::i;:::-;3245:3;3238:37;3173:108;;:::o;3287:118::-;3374:24;3392:5;3374:24;:::i;:::-;3369:3;3362:37;3287:118;;:::o;3441:732::-;3560:3;3589:54;3637:5;3589:54;:::i;:::-;3659:86;3738:6;3733:3;3659:86;:::i;:::-;3652:93;;3769:56;3819:5;3769:56;:::i;:::-;3848:7;3879:1;3864:284;3889:6;3886:1;3883:13;3864:284;;;3965:6;3959:13;3992:63;4051:3;4036:13;3992:63;:::i;:::-;3985:70;;4078:60;4131:6;4078:60;:::i;:::-;4068:70;;3924:224;3911:1;3908;3904:9;3899:14;;3864:284;;;3868:14;4164:3;4157:10;;3565:608;;;3441:732;;;;:::o;4219:786::-;4348:3;4377:66;4437:5;4377:66;:::i;:::-;4459:84;4536:6;4531:3;4459:84;:::i;:::-;4452:91;;4567:68;4629:5;4567:68;:::i;:::-;4658:7;4689:1;4674:306;4699:6;4696:1;4693:13;4674:306;;;4775:6;4769:13;4802:73;4871:3;4856:13;4802:73;:::i;:::-;4795:80;;4898:72;4963:6;4898:72;:::i;:::-;4888:82;;4734:246;4721:1;4718;4714:9;4709:14;;4674:306;;;4678:14;4996:3;4989:10;;4353:652;;;4219:786;;;;:::o;5041:732::-;5160:3;5189:54;5237:5;5189:54;:::i;:::-;5259:86;5338:6;5333:3;5259:86;:::i;:::-;5252:93;;5369:56;5419:5;5369:56;:::i;:::-;5448:7;5479:1;5464:284;5489:6;5486:1;5483:13;5464:284;;;5565:6;5559:13;5592:63;5651:3;5636:13;5592:63;:::i;:::-;5585:70;;5678:60;5731:6;5678:60;:::i;:::-;5668:70;;5524:224;5511:1;5508;5504:9;5499:14;;5464:284;;;5468:14;5764:3;5757:10;;5165:608;;;5041:732;;;;:::o;5779:141::-;5866:47;5907:5;5866:47;:::i;:::-;5861:3;5854:60;5779:141;;:::o;5926:151::-;6023:47;6064:5;6023:47;:::i;:::-;6018:3;6011:60;5926:151;;:::o;6083:149::-;6179:46;6219:5;6179:46;:::i;:::-;6174:3;6167:59;6083:149;;:::o;6238:364::-;6326:3;6354:39;6387:5;6354:39;:::i;:::-;6409:71;6473:6;6468:3;6409:71;:::i;:::-;6402:78;;6489:52;6534:6;6529:3;6522:4;6515:5;6511:16;6489:52;:::i;:::-;6566:29;6588:6;6566:29;:::i;:::-;6561:3;6557:39;6550:46;;6330:272;6238:364;;;;:::o;6632:802::-;6717:3;6754:5;6748:12;6783:36;6809:9;6783:36;:::i;:::-;6835:71;6899:6;6894:3;6835:71;:::i;:::-;6828:78;;6937:1;6926:9;6922:17;6953:1;6948:135;;;;7097:1;7092:336;;;;6915:513;;6948:135;7032:4;7028:9;7017;7013:25;7008:3;7001:38;7068:4;7063:3;7059:14;7052:21;;6948:135;;7092:336;7159:38;7191:5;7159:38;:::i;:::-;7219:1;7233:154;7247:6;7244:1;7241:13;7233:154;;;7321:7;7315:14;7311:1;7306:3;7302:11;7295:35;7371:1;7362:7;7358:15;7347:26;;7269:4;7266:1;7262:12;7257:17;;7233:154;;;7416:1;7411:3;7407:11;7400:18;;7099:329;;6915:513;;6721:713;;6632:802;;;;:::o;7440:366::-;7582:3;7603:67;7667:2;7662:3;7603:67;:::i;:::-;7596:74;;7679:93;7768:3;7679:93;:::i;:::-;7797:2;7792:3;7788:12;7781:19;;7440:366;;;:::o;7812:::-;7954:3;7975:67;8039:2;8034:3;7975:67;:::i;:::-;7968:74;;8051:93;8140:3;8051:93;:::i;:::-;8169:2;8164:3;8160:12;8153:19;;7812:366;;;:::o;8184:::-;8326:3;8347:67;8411:2;8406:3;8347:67;:::i;:::-;8340:74;;8423:93;8512:3;8423:93;:::i;:::-;8541:2;8536:3;8532:12;8525:19;;8184:366;;;:::o;8556:::-;8698:3;8719:67;8783:2;8778:3;8719:67;:::i;:::-;8712:74;;8795:93;8884:3;8795:93;:::i;:::-;8913:2;8908:3;8904:12;8897:19;;8556:366;;;:::o;8928:::-;9070:3;9091:67;9155:2;9150:3;9091:67;:::i;:::-;9084:74;;9167:93;9256:3;9167:93;:::i;:::-;9285:2;9280:3;9276:12;9269:19;;8928:366;;;:::o;9300:::-;9442:3;9463:67;9527:2;9522:3;9463:67;:::i;:::-;9456:74;;9539:93;9628:3;9539:93;:::i;:::-;9657:2;9652:3;9648:12;9641:19;;9300:366;;;:::o;9672:::-;9814:3;9835:67;9899:2;9894:3;9835:67;:::i;:::-;9828:74;;9911:93;10000:3;9911:93;:::i;:::-;10029:2;10024:3;10020:12;10013:19;;9672:366;;;:::o;10044:::-;10186:3;10207:67;10271:2;10266:3;10207:67;:::i;:::-;10200:74;;10283:93;10372:3;10283:93;:::i;:::-;10401:2;10396:3;10392:12;10385:19;;10044:366;;;:::o;10416:::-;10558:3;10579:67;10643:2;10638:3;10579:67;:::i;:::-;10572:74;;10655:93;10744:3;10655:93;:::i;:::-;10773:2;10768:3;10764:12;10757:19;;10416:366;;;:::o;10788:::-;10930:3;10951:67;11015:2;11010:3;10951:67;:::i;:::-;10944:74;;11027:93;11116:3;11027:93;:::i;:::-;11145:2;11140:3;11136:12;11129:19;;10788:366;;;:::o;11160:::-;11302:3;11323:67;11387:2;11382:3;11323:67;:::i;:::-;11316:74;;11399:93;11488:3;11399:93;:::i;:::-;11517:2;11512:3;11508:12;11501:19;;11160:366;;;:::o;11532:::-;11674:3;11695:67;11759:2;11754:3;11695:67;:::i;:::-;11688:74;;11771:93;11860:3;11771:93;:::i;:::-;11889:2;11884:3;11880:12;11873:19;;11532:366;;;:::o;11904:::-;12046:3;12067:67;12131:2;12126:3;12067:67;:::i;:::-;12060:74;;12143:93;12232:3;12143:93;:::i;:::-;12261:2;12256:3;12252:12;12245:19;;11904:366;;;:::o;12276:::-;12418:3;12439:67;12503:2;12498:3;12439:67;:::i;:::-;12432:74;;12515:93;12604:3;12515:93;:::i;:::-;12633:2;12628:3;12624:12;12617:19;;12276:366;;;:::o;12648:::-;12790:3;12811:67;12875:2;12870:3;12811:67;:::i;:::-;12804:74;;12887:93;12976:3;12887:93;:::i;:::-;13005:2;13000:3;12996:12;12989:19;;12648:366;;;:::o;13020:::-;13162:3;13183:67;13247:2;13242:3;13183:67;:::i;:::-;13176:74;;13259:93;13348:3;13259:93;:::i;:::-;13377:2;13372:3;13368:12;13361:19;;13020:366;;;:::o;13392:::-;13534:3;13555:67;13619:2;13614:3;13555:67;:::i;:::-;13548:74;;13631:93;13720:3;13631:93;:::i;:::-;13749:2;13744:3;13740:12;13733:19;;13392:366;;;:::o;13764:::-;13906:3;13927:67;13991:2;13986:3;13927:67;:::i;:::-;13920:74;;14003:93;14092:3;14003:93;:::i;:::-;14121:2;14116:3;14112:12;14105:19;;13764:366;;;:::o;14136:::-;14278:3;14299:67;14363:2;14358:3;14299:67;:::i;:::-;14292:74;;14375:93;14464:3;14375:93;:::i;:::-;14493:2;14488:3;14484:12;14477:19;;14136:366;;;:::o;14508:::-;14650:3;14671:67;14735:2;14730:3;14671:67;:::i;:::-;14664:74;;14747:93;14836:3;14747:93;:::i;:::-;14865:2;14860:3;14856:12;14849:19;;14508:366;;;:::o;14880:108::-;14957:24;14975:5;14957:24;:::i;:::-;14952:3;14945:37;14880:108;;:::o;14994:118::-;15081:24;15099:5;15081:24;:::i;:::-;15076:3;15069:37;14994:118;;:::o;15118:157::-;15223:45;15243:24;15261:5;15243:24;:::i;:::-;15223:45;:::i;:::-;15218:3;15211:58;15118:157;;:::o;15281:256::-;15393:3;15408:75;15479:3;15470:6;15408:75;:::i;:::-;15508:2;15503:3;15499:12;15492:19;;15528:3;15521:10;;15281:256;;;;:::o;15543:397::-;15683:3;15698:75;15769:3;15760:6;15698:75;:::i;:::-;15798:2;15793:3;15789:12;15782:19;;15811:75;15882:3;15873:6;15811:75;:::i;:::-;15911:2;15906:3;15902:12;15895:19;;15931:3;15924:10;;15543:397;;;;;:::o;15946:222::-;16039:4;16077:2;16066:9;16062:18;16054:26;;16090:71;16158:1;16147:9;16143:17;16134:6;16090:71;:::i;:::-;15946:222;;;;:::o;16174:684::-;16389:4;16427:3;16416:9;16412:19;16404:27;;16441:71;16509:1;16498:9;16494:17;16485:6;16441:71;:::i;:::-;16522:82;16600:2;16589:9;16585:18;16576:6;16522:82;:::i;:::-;16614:72;16682:2;16671:9;16667:18;16658:6;16614:72;:::i;:::-;16696;16764:2;16753:9;16749:18;16740:6;16696:72;:::i;:::-;16778:73;16846:3;16835:9;16831:19;16822:6;16778:73;:::i;:::-;16174:684;;;;;;;;:::o;16864:240::-;16966:4;17004:2;16993:9;16989:18;16981:26;;17017:80;17094:1;17083:9;17079:17;17070:6;17017:80;:::i;:::-;16864:240;;;;:::o;17110:313::-;17223:4;17261:2;17250:9;17246:18;17238:26;;17310:9;17304:4;17300:20;17296:1;17285:9;17281:17;17274:47;17338:78;17411:4;17402:6;17338:78;:::i;:::-;17330:86;;17110:313;;;;:::o;17429:307::-;17539:4;17577:2;17566:9;17562:18;17554:26;;17626:9;17620:4;17616:20;17612:1;17601:9;17597:17;17590:47;17654:75;17724:4;17715:6;17654:75;:::i;:::-;17646:83;;17429:307;;;;:::o;17742:658::-;17946:4;17984:3;17973:9;17969:19;17961:27;;18034:9;18028:4;18024:20;18020:1;18009:9;18005:17;17998:47;18062:75;18132:4;18123:6;18062:75;:::i;:::-;18054:83;;18147:72;18215:2;18204:9;18200:18;18191:6;18147:72;:::i;:::-;18229:82;18307:2;18296:9;18292:18;18283:6;18229:82;:::i;:::-;18321:72;18389:2;18378:9;18374:18;18365:6;18321:72;:::i;:::-;17742:658;;;;;;;:::o;18406:527::-;18572:4;18610:2;18599:9;18595:18;18587:26;;18659:9;18653:4;18649:20;18645:1;18634:9;18630:17;18623:47;18687:75;18757:4;18748:6;18687:75;:::i;:::-;18679:83;;18772:72;18840:2;18829:9;18825:18;18816:6;18772:72;:::i;:::-;18854;18922:2;18911:9;18907:18;18898:6;18854:72;:::i;:::-;18406:527;;;;;;:::o;18939:2514::-;19700:4;19738:3;19727:9;19723:19;19715:27;;19788:9;19782:4;19778:20;19774:1;19763:9;19759:17;19752:47;19816:75;19886:4;19877:6;19816:75;:::i;:::-;19808:83;;19901:72;19969:2;19958:9;19954:18;19945:6;19901:72;:::i;:::-;19983;20051:2;20040:9;20036:18;20027:6;19983:72;:::i;:::-;20102:9;20096:4;20092:20;20087:2;20076:9;20072:18;20065:48;20130:108;20233:4;20224:6;20130:108;:::i;:::-;20122:116;;20286:9;20280:4;20276:20;20270:3;20259:9;20255:19;20248:49;20314:118;20427:4;20418:6;20314:118;:::i;:::-;20306:126;;20480:9;20474:4;20470:20;20464:3;20453:9;20449:19;20442:49;20508:108;20611:4;20602:6;20508:108;:::i;:::-;20500:116;;20664:9;20658:4;20654:20;20648:3;20637:9;20633:19;20626:49;20692:118;20805:4;20796:6;20692:118;:::i;:::-;20684:126;;20858:9;20852:4;20848:20;20842:3;20831:9;20827:19;20820:49;20886:108;20989:4;20980:6;20886:108;:::i;:::-;20878:116;;21042:9;21036:4;21032:20;21026:3;21015:9;21011:19;21004:49;21070:108;21173:4;21164:6;21070:108;:::i;:::-;21062:116;;21226:9;21220:4;21216:20;21210:3;21199:9;21195:19;21188:49;21254:108;21357:4;21348:6;21254:108;:::i;:::-;21246:116;;21372:74;21441:3;21430:9;21426:19;21416:7;21372:74;:::i;:::-;18939:2514;;;;;;;;;;;;;;:::o;21459:419::-;21625:4;21663:2;21652:9;21648:18;21640:26;;21712:9;21706:4;21702:20;21698:1;21687:9;21683:17;21676:47;21740:131;21866:4;21740:131;:::i;:::-;21732:139;;21459:419;;;:::o;21884:::-;22050:4;22088:2;22077:9;22073:18;22065:26;;22137:9;22131:4;22127:20;22123:1;22112:9;22108:17;22101:47;22165:131;22291:4;22165:131;:::i;:::-;22157:139;;21884:419;;;:::o;22309:::-;22475:4;22513:2;22502:9;22498:18;22490:26;;22562:9;22556:4;22552:20;22548:1;22537:9;22533:17;22526:47;22590:131;22716:4;22590:131;:::i;:::-;22582:139;;22309:419;;;:::o;22734:::-;22900:4;22938:2;22927:9;22923:18;22915:26;;22987:9;22981:4;22977:20;22973:1;22962:9;22958:17;22951:47;23015:131;23141:4;23015:131;:::i;:::-;23007:139;;22734:419;;;:::o;23159:::-;23325:4;23363:2;23352:9;23348:18;23340:26;;23412:9;23406:4;23402:20;23398:1;23387:9;23383:17;23376:47;23440:131;23566:4;23440:131;:::i;:::-;23432:139;;23159:419;;;:::o;23584:::-;23750:4;23788:2;23777:9;23773:18;23765:26;;23837:9;23831:4;23827:20;23823:1;23812:9;23808:17;23801:47;23865:131;23991:4;23865:131;:::i;:::-;23857:139;;23584:419;;;:::o;24009:::-;24175:4;24213:2;24202:9;24198:18;24190:26;;24262:9;24256:4;24252:20;24248:1;24237:9;24233:17;24226:47;24290:131;24416:4;24290:131;:::i;:::-;24282:139;;24009:419;;;:::o;24434:::-;24600:4;24638:2;24627:9;24623:18;24615:26;;24687:9;24681:4;24677:20;24673:1;24662:9;24658:17;24651:47;24715:131;24841:4;24715:131;:::i;:::-;24707:139;;24434:419;;;:::o;24859:::-;25025:4;25063:2;25052:9;25048:18;25040:26;;25112:9;25106:4;25102:20;25098:1;25087:9;25083:17;25076:47;25140:131;25266:4;25140:131;:::i;:::-;25132:139;;24859:419;;;:::o;25284:::-;25450:4;25488:2;25477:9;25473:18;25465:26;;25537:9;25531:4;25527:20;25523:1;25512:9;25508:17;25501:47;25565:131;25691:4;25565:131;:::i;:::-;25557:139;;25284:419;;;:::o;25709:::-;25875:4;25913:2;25902:9;25898:18;25890:26;;25962:9;25956:4;25952:20;25948:1;25937:9;25933:17;25926:47;25990:131;26116:4;25990:131;:::i;:::-;25982:139;;25709:419;;;:::o;26134:::-;26300:4;26338:2;26327:9;26323:18;26315:26;;26387:9;26381:4;26377:20;26373:1;26362:9;26358:17;26351:47;26415:131;26541:4;26415:131;:::i;:::-;26407:139;;26134:419;;;:::o;26559:::-;26725:4;26763:2;26752:9;26748:18;26740:26;;26812:9;26806:4;26802:20;26798:1;26787:9;26783:17;26776:47;26840:131;26966:4;26840:131;:::i;:::-;26832:139;;26559:419;;;:::o;26984:::-;27150:4;27188:2;27177:9;27173:18;27165:26;;27237:9;27231:4;27227:20;27223:1;27212:9;27208:17;27201:47;27265:131;27391:4;27265:131;:::i;:::-;27257:139;;26984:419;;;:::o;27409:::-;27575:4;27613:2;27602:9;27598:18;27590:26;;27662:9;27656:4;27652:20;27648:1;27637:9;27633:17;27626:47;27690:131;27816:4;27690:131;:::i;:::-;27682:139;;27409:419;;;:::o;27834:::-;28000:4;28038:2;28027:9;28023:18;28015:26;;28087:9;28081:4;28077:20;28073:1;28062:9;28058:17;28051:47;28115:131;28241:4;28115:131;:::i;:::-;28107:139;;27834:419;;;:::o;28259:::-;28425:4;28463:2;28452:9;28448:18;28440:26;;28512:9;28506:4;28502:20;28498:1;28487:9;28483:17;28476:47;28540:131;28666:4;28540:131;:::i;:::-;28532:139;;28259:419;;;:::o;28684:::-;28850:4;28888:2;28877:9;28873:18;28865:26;;28937:9;28931:4;28927:20;28923:1;28912:9;28908:17;28901:47;28965:131;29091:4;28965:131;:::i;:::-;28957:139;;28684:419;;;:::o;29109:::-;29275:4;29313:2;29302:9;29298:18;29290:26;;29362:9;29356:4;29352:20;29348:1;29337:9;29333:17;29326:47;29390:131;29516:4;29390:131;:::i;:::-;29382:139;;29109:419;;;:::o;29534:::-;29700:4;29738:2;29727:9;29723:18;29715:26;;29787:9;29781:4;29777:20;29773:1;29762:9;29758:17;29751:47;29815:131;29941:4;29815:131;:::i;:::-;29807:139;;29534:419;;;:::o;29959:222::-;30052:4;30090:2;30079:9;30075:18;30067:26;;30103:71;30171:1;30160:9;30156:17;30147:6;30103:71;:::i;:::-;29959:222;;;;:::o;30187:129::-;30221:6;30248:20;;:::i;:::-;30238:30;;30277:33;30305:4;30297:6;30277:33;:::i;:::-;30187:129;;;:::o;30322:75::-;30355:6;30388:2;30382:9;30372:19;;30322:75;:::o;30403:308::-;30465:4;30555:18;30547:6;30544:30;30541:56;;;30577:18;;:::i;:::-;30541:56;30615:29;30637:6;30615:29;:::i;:::-;30607:37;;30699:4;30693;30689:15;30681:23;;30403:308;;;:::o;30717:132::-;30784:4;30807:3;30799:11;;30837:4;30832:3;30828:14;30820:22;;30717:132;;;:::o;30855:144::-;30934:4;30957:3;30949:11;;30987:4;30982:3;30978:14;30970:22;;30855:144;;;:::o;31005:132::-;31072:4;31095:3;31087:11;;31125:4;31120:3;31116:14;31108:22;;31005:132;;;:::o;31143:141::-;31192:4;31215:3;31207:11;;31238:3;31235:1;31228:14;31272:4;31269:1;31259:18;31251:26;;31143:141;;;:::o;31290:114::-;31357:6;31391:5;31385:12;31375:22;;31290:114;;;:::o;31410:126::-;31489:6;31523:5;31517:12;31507:22;;31410:126;;;:::o;31542:114::-;31609:6;31643:5;31637:12;31627:22;;31542:114;;;:::o;31662:99::-;31714:6;31748:5;31742:12;31732:22;;31662:99;;;:::o;31767:113::-;31837:4;31869;31864:3;31860:14;31852:22;;31767:113;;;:::o;31886:125::-;31968:4;32000;31995:3;31991:14;31983:22;;31886:125;;;:::o;32017:113::-;32087:4;32119;32114:3;32110:14;32102:22;;32017:113;;;:::o;32136:184::-;32235:11;32269:6;32264:3;32257:19;32309:4;32304:3;32300:14;32285:29;;32136:184;;;;:::o;32326:::-;32425:11;32459:6;32454:3;32447:19;32499:4;32494:3;32490:14;32475:29;;32326:184;;;;:::o;32516:182::-;32613:11;32647:6;32642:3;32635:19;32687:4;32682:3;32678:14;32663:29;;32516:182;;;;:::o;32704:169::-;32788:11;32822:6;32817:3;32810:19;32862:4;32857:3;32853:14;32838:29;;32704:169;;;;:::o;32879:305::-;32919:3;32938:20;32956:1;32938:20;:::i;:::-;32933:25;;32972:20;32990:1;32972:20;:::i;:::-;32967:25;;33126:1;33058:66;33054:74;33051:1;33048:81;33045:107;;;33132:18;;:::i;:::-;33045:107;33176:1;33173;33169:9;33162:16;;32879:305;;;;:::o;33190:185::-;33230:1;33247:20;33265:1;33247:20;:::i;:::-;33242:25;;33281:20;33299:1;33281:20;:::i;:::-;33276:25;;33320:1;33310:35;;33325:18;;:::i;:::-;33310:35;33367:1;33364;33360:9;33355:14;;33190:185;;;;:::o;33381:348::-;33421:7;33444:20;33462:1;33444:20;:::i;:::-;33439:25;;33478:20;33496:1;33478:20;:::i;:::-;33473:25;;33666:1;33598:66;33594:74;33591:1;33588:81;33583:1;33576:9;33569:17;33565:105;33562:131;;;33673:18;;:::i;:::-;33562:131;33721:1;33718;33714:9;33703:20;;33381:348;;;;:::o;33735:191::-;33775:4;33795:20;33813:1;33795:20;:::i;:::-;33790:25;;33829:20;33847:1;33829:20;:::i;:::-;33824:25;;33868:1;33865;33862:8;33859:34;;;33873:18;;:::i;:::-;33859:34;33918:1;33915;33911:9;33903:17;;33735:191;;;;:::o;33932:96::-;33969:7;33998:24;34016:5;33998:24;:::i;:::-;33987:35;;33932:96;;;:::o;34034:135::-;34083:7;34112:5;34101:16;;34118:45;34157:5;34118:45;:::i;:::-;34034:135;;;:::o;34175:133::-;34223:7;34252:5;34241:16;;34258:44;34296:5;34258:44;:::i;:::-;34175:133;;;:::o;34314:126::-;34351:7;34391:42;34384:5;34380:54;34369:65;;34314:126;;;:::o;34446:77::-;34483:7;34512:5;34501:16;;34446:77;;;:::o;34529:135::-;34589:9;34622:36;34652:5;34622:36;:::i;:::-;34609:49;;34529:135;;;:::o;34670:133::-;34729:9;34762:35;34791:5;34762:35;:::i;:::-;34749:48;;34670:133;;;:::o;34809:154::-;34893:6;34888:3;34883;34870:30;34955:1;34946:6;34941:3;34937:16;34930:27;34809:154;;;:::o;34969:307::-;35037:1;35047:113;35061:6;35058:1;35055:13;35047:113;;;35146:1;35141:3;35137:11;35131:18;35127:1;35122:3;35118:11;35111:39;35083:2;35080:1;35076:10;35071:15;;35047:113;;;35178:6;35175:1;35172:13;35169:101;;;35258:1;35249:6;35244:3;35240:16;35233:27;35169:101;35018:258;34969:307;;;:::o;35282:320::-;35326:6;35363:1;35357:4;35353:12;35343:22;;35410:1;35404:4;35400:12;35431:18;35421:81;;35487:4;35479:6;35475:17;35465:27;;35421:81;35549:2;35541:6;35538:14;35518:18;35515:38;35512:84;;;35568:18;;:::i;:::-;35512:84;35333:269;35282:320;;;:::o;35608:281::-;35691:27;35713:4;35691:27;:::i;:::-;35683:6;35679:40;35821:6;35809:10;35806:22;35785:18;35773:10;35770:34;35767:62;35764:88;;;35832:18;;:::i;:::-;35764:88;35872:10;35868:2;35861:22;35651:238;35608:281;;:::o;35895:233::-;35934:3;35957:24;35975:5;35957:24;:::i;:::-;35948:33;;36003:66;35996:5;35993:77;35990:103;;;36073:18;;:::i;:::-;35990:103;36120:1;36113:5;36109:13;36102:20;;35895:233;;;:::o;36134:79::-;36173:7;36202:5;36191:16;;36134:79;;;:::o;36219:176::-;36251:1;36268:20;36286:1;36268:20;:::i;:::-;36263:25;;36302:20;36320:1;36302:20;:::i;:::-;36297:25;;36341:1;36331:35;;36346:18;;:::i;:::-;36331:35;36387:1;36384;36380:9;36375:14;;36219:176;;;;:::o;36401:180::-;36449:77;36446:1;36439:88;36546:4;36543:1;36536:15;36570:4;36567:1;36560:15;36587:180;36635:77;36632:1;36625:88;36732:4;36729:1;36722:15;36756:4;36753:1;36746:15;36773:180;36821:77;36818:1;36811:88;36918:4;36915:1;36908:15;36942:4;36939:1;36932:15;36959:180;37007:77;37004:1;36997:88;37104:4;37101:1;37094:15;37128:4;37125:1;37118:15;37145:180;37193:77;37190:1;37183:88;37290:4;37287:1;37280:15;37314:4;37311:1;37304:15;37331:180;37379:77;37376:1;37369:88;37476:4;37473:1;37466:15;37500:4;37497:1;37490:15;37517:117;37626:1;37623;37616:12;37640:117;37749:1;37746;37739:12;37763:117;37872:1;37869;37862:12;37886:117;37995:1;37992;37985:12;38009:102;38050:6;38101:2;38097:7;38092:2;38085:5;38081:14;38077:28;38067:38;;38009:102;;;:::o;38117:173::-;38257:25;38253:1;38245:6;38241:14;38234:49;38117:173;:::o;38296:180::-;38436:32;38432:1;38424:6;38420:14;38413:56;38296:180;:::o;38482:179::-;38622:31;38618:1;38610:6;38606:14;38599:55;38482:179;:::o;38667:169::-;38807:21;38803:1;38795:6;38791:14;38784:45;38667:169;:::o;38842:228::-;38982:34;38978:1;38970:6;38966:14;38959:58;39051:11;39046:2;39038:6;39034:15;39027:36;38842:228;:::o;39076:180::-;39216:32;39212:1;39204:6;39200:14;39193:56;39076:180;:::o;39262:179::-;39402:31;39398:1;39390:6;39386:14;39379:55;39262:179;:::o;39447:167::-;39587:19;39583:1;39575:6;39571:14;39564:43;39447:167;:::o;39620:::-;39760:19;39756:1;39748:6;39744:14;39737:43;39620:167;:::o;39793:175::-;39933:27;39929:1;39921:6;39917:14;39910:51;39793:175;:::o;39974:178::-;40114:30;40110:1;40102:6;40098:14;40091:54;39974:178;:::o;40158:177::-;40298:29;40294:1;40286:6;40282:14;40275:53;40158:177;:::o;40341:239::-;40481:34;40477:1;40469:6;40465:14;40458:58;40550:22;40545:2;40537:6;40533:15;40526:47;40341:239;:::o;40586:171::-;40726:23;40722:1;40714:6;40710:14;40703:47;40586:171;:::o;40763:169::-;40903:21;40899:1;40891:6;40887:14;40880:45;40763:169;:::o;40938:181::-;41078:33;41074:1;41066:6;41062:14;41055:57;40938:181;:::o;41125:170::-;41265:22;41261:1;41253:6;41249:14;41242:46;41125:170;:::o;41301:177::-;41441:29;41437:1;41429:6;41425:14;41418:53;41301:177;:::o;41484:220::-;41624:34;41620:1;41612:6;41608:14;41601:58;41693:3;41688:2;41680:6;41676:15;41669:28;41484:220;:::o;41710:182::-;41850:34;41846:1;41838:6;41834:14;41827:58;41710:182;:::o;41898:117::-;41983:1;41976:5;41973:12;41963:46;;41989:18;;:::i;:::-;41963:46;41898:117;:::o;42021:116::-;42105:1;42098:5;42095:12;42085:46;;42111:18;;:::i;:::-;42085:46;42021:116;:::o;42143:111::-;42228:1;42221:5;42218:12;42208:40;;42244:1;42241;42234:12;42208:40;42143:111;:::o;42260:122::-;42333:24;42351:5;42333:24;:::i;:::-;42326:5;42323:35;42313:63;;42372:1;42369;42362:12;42313:63;42260:122;:::o

Swarm Source

ipfs://622e6a132b3b63190d02dfde05beef19ee62e543eca2b648b57d051dd74a403f
Block Transaction Gas Used Reward
Age Block Fee Address BC Fee Address Voting Power Jailed Incoming
Block Uncle Number Difficulty Gas Used Reward
Loading