Contract 0xb9deb36aade32f861d6154b00b2c5bfafc9c2b29

 

Contract Overview

Balance:
0 BNB

BNB Value:
$0.00

Token:
 
Txn Hash Method
Block
From
To
Value [Txn Fee]
0xe6c5ac3b5aa849e84eb8aa1841ac5a807858aac080ec2564fbabbeaf20221780Approve114564072021-10-03 17:34:1755 days 9 hrs ago0x8482df48b4f9a785673004ae129f99e82b4828da IN  0xb9deb36aade32f861d6154b00b2c5bfafc9c2b290 BNB0.000222625
0xd38c583a1f1cf70df427cbf17179464bd34828dc85acd65871c1c0906e74cc72Transfer114544482021-10-03 15:56:0555 days 10 hrs ago0x5753c8a9713421580ab6e33c80db233437790a0e IN  0xb9deb36aade32f861d6154b00b2c5bfafc9c2b290 BNB0.000508375
0x3f3b0e281282e037001ee9c3390c382cee9a7d785ed5d6ff3b0691954cc4baceApprove114359412021-10-03 0:26:1856 days 2 hrs ago0xb8ae64c415777b5096e6b201dab296e0cf54ca73 IN  0xb9deb36aade32f861d6154b00b2c5bfafc9c2b290 BNB0.000222625
0x14adf743e7c232f83db0c31f057e5f082ff11a631c5ff1dd85fa3fbc7c2f9ad0Approve114358862021-10-03 0:23:3356 days 2 hrs ago0xf5b1dac0b37da0b17e2e1dbb440572a74058c740 IN  0xb9deb36aade32f861d6154b00b2c5bfafc9c2b290 BNB0.000222625
0x2c9630d1f9bc60353c1ccd18ec9dcb94d1e20807a5087038f2bd020410a2ed6aApprove114358822021-10-03 0:23:2156 days 2 hrs ago0xf46239cd05490e2eb2171b168dd3463cf541f0e3 IN  0xb9deb36aade32f861d6154b00b2c5bfafc9c2b290 BNB0.000222625
0x634e32f58b6acb3656a845919a3a068cf415b0c218cbede71a76bf41e789ff36Approve114358772021-10-03 0:23:0656 days 2 hrs ago0x7df533514ae4538dda310e940768de6b23a2fac8 IN  0xb9deb36aade32f861d6154b00b2c5bfafc9c2b290 BNB0.000126625
0xfb65752e893d179c4a7467106eb99e475f5b54781d9407f61bd88265f7627fffApprove114358712021-10-03 0:22:4856 days 2 hrs ago0x7df533514ae4538dda310e940768de6b23a2fac8 IN  0xb9deb36aade32f861d6154b00b2c5bfafc9c2b290 BNB0.000222625
0x0a4317a729835d411000d9df68bad254128501f08ceb2ec7a35c88b107c57bd6Approve114353942021-10-02 23:58:5756 days 2 hrs ago0x57efac8b7fc9f8429d8fba7bc96de2d8316dd047 IN  0xb9deb36aade32f861d6154b00b2c5bfafc9c2b290 BNB0.000222625
0x66fd247786e5244e493b7a0dbf6743627f29bf994a72fb3addad062a6678df88Approve114353282021-10-02 23:55:3956 days 2 hrs ago0x2239ac30dbd44735667026a7d85b95de5d8e2e58 IN  0xb9deb36aade32f861d6154b00b2c5bfafc9c2b290 BNB0.000222625
0x6aaa68f25204da26f9a53ed7b417eb38d7121ef80c2dc2db25fe5c2e89db7727Approve114351952021-10-02 23:49:0056 days 2 hrs ago0x8084f3df6997d9c34156209f46e2c89ea0b9fe1d IN  0xb9deb36aade32f861d6154b00b2c5bfafc9c2b290 BNB0.000222625
0xea6e2a0a83636d4ff95c3cb7a4662722d129dfb78b769db2fd22171ec1fe28c5Approve114351312021-10-02 23:45:4856 days 2 hrs ago0x0a3e18d323d6e6f1da899365ceb3af8949c36d8f IN  0xb9deb36aade32f861d6154b00b2c5bfafc9c2b290 BNB0.000222625
0xb9631c5bb42d065b8872256df155fbc355218ec6b0e5c098dc6f11a72aba46bdApprove114350722021-10-02 23:42:5156 days 2 hrs ago0x8f4d237f9dec13f8e054a08bc51b41d8899d506a IN  0xb9deb36aade32f861d6154b00b2c5bfafc9c2b290 BNB0.000222625
0x65e42f191bab8093190202998fa65c14174cc700acc63f381fe7889f4bb0dea1Approve114350452021-10-02 23:41:3056 days 2 hrs ago0x7817451f00a2cc72ec28eba72f35eeb025c25a13 IN  0xb9deb36aade32f861d6154b00b2c5bfafc9c2b290 BNB0.000222625
0x472dbfa17aeffe78ba135505847e2858b54147fa147050deee6b2203a3d0cbbbApprove114349742021-10-02 23:37:5756 days 3 hrs ago0xfdea3d1b67c2a202708ee2e94bbc9055ac99b0f9 IN  0xb9deb36aade32f861d6154b00b2c5bfafc9c2b290 BNB0.000222625
0x2a8b42f9d16531309bba0b59cd83b2d065a70db5f30bb66048f66c69f099dc8aApprove114349402021-10-02 23:36:1556 days 3 hrs ago0x456da1fb5f4e463c3c880a4d0cdf7b05262e8227 IN  0xb9deb36aade32f861d6154b00b2c5bfafc9c2b290 BNB0.000222625
0x97fab16663452b1e372a44588bf43794b572fa4929fdd0d280dcc5349a45d8bdApprove114348802021-10-02 23:33:1456 days 3 hrs ago0x5df23ad17a9baf3ca4da6532aacf7896b766fdfb IN  0xb9deb36aade32f861d6154b00b2c5bfafc9c2b290 BNB0.000222625
0xd0e3a0340f8967441342c13fe877feaf9f91020b6a15de7c7ab059b193b8a0e7Approve114347562021-10-02 23:27:0156 days 3 hrs ago0x1006e1b252a6b2ead173e0bbed51ff36b4909db6 IN  0xb9deb36aade32f861d6154b00b2c5bfafc9c2b290 BNB0.000222625
0x8c48bce83ecb884f57be27452438811a9cc837e153270f46bf910f6b83011ee3Approve114347242021-10-02 23:25:2556 days 3 hrs ago0x511c20ee5a67ad1bbf4d6d35e33fb1a8d6b7c994 IN  0xb9deb36aade32f861d6154b00b2c5bfafc9c2b290 BNB0.000222625
0x6943986ea664295fa479ad7ea25c4d33fbdbaaba3699413a387569479d135c4aTransfer114347172021-10-02 23:25:0456 days 3 hrs ago0x6e3b577a384e9dbcb87e2bdb1c14ad2df8d98980 IN  0xb9deb36aade32f861d6154b00b2c5bfafc9c2b290 BNB0.01214072
0x2dd56e3d81041210cbe4a99b8a15a02dbe2fe54cc0520bc991315205c72e5323Approve114346962021-10-02 23:24:0156 days 3 hrs ago0x786ce7f6d747e4c1771cf8814818c16a81059192 IN  0xb9deb36aade32f861d6154b00b2c5bfafc9c2b290 BNB0.000222625
0xd3d23e178415fce50355df8db3acdb5f176611804e4cfc57d97abe4bffded7a5Approve114346812021-10-02 23:23:1656 days 3 hrs ago0x8fcc3a8dfd9b2fc622e4fa7bab3b3a64df27a7b1 IN  0xb9deb36aade32f861d6154b00b2c5bfafc9c2b290 BNB0.000222625
0x826a91af29a4dd3ca3997904a2db917047d22f2dcff3b8b2526a64812f440cb6Approve114346782021-10-02 23:23:0756 days 3 hrs ago0xc9af1c1320d7771f338b80494bf827c3c9c3a44f IN  0xb9deb36aade32f861d6154b00b2c5bfafc9c2b290 BNB0.000222645
0x118f7233851c3bb5b4eddf1626aff693246c8dcc3b095a5d07dff8397ddee6e1Approve114346782021-10-02 23:23:0756 days 3 hrs ago0x806aa1d969ec5d669b76a658005c7bcc87edb805 IN  0xb9deb36aade32f861d6154b00b2c5bfafc9c2b290 BNB0.000222645
0xc648cfab504c1443e577aa23304102b3d93c8c0e1e89a4ed59a43a1844f8fcc2Approve114346772021-10-02 23:23:0456 days 3 hrs ago0x568b1b509208335f93076346da1ece4d88cd8af0 IN  0xb9deb36aade32f861d6154b00b2c5bfafc9c2b290 BNB0.000267174
0xf7ec3e16b0c8e2e7379d282f5cbaf34964e63b8a680ee1200379adf99cd83a61Approve114346392021-10-02 23:21:0756 days 3 hrs ago0x5753c8a9713421580ab6e33c80db233437790a0e IN  0xb9deb36aade32f861d6154b00b2c5bfafc9c2b290 BNB0.00026715
[ Download CSV Export 
Latest 25 internal transaction
Parent Txn Hash Block From To Value
0x4d56b26ef1135bb10e420d606951530c20845facca548686be911a58ccda8bf7114604302021-10-03 20:57:0455 days 5 hrs ago 0xb9deb36aade32f861d6154b00b2c5bfafc9c2b290xb8ae64c415777b5096e6b201dab296e0cf54ca730.004895408645421609 BNB
0x4d56b26ef1135bb10e420d606951530c20845facca548686be911a58ccda8bf7114604302021-10-03 20:57:0455 days 5 hrs ago PancakeSwap: Router v2 0xb9deb36aade32f861d6154b00b2c5bfafc9c2b290.004801432313130095 BNB
0x4d56b26ef1135bb10e420d606951530c20845facca548686be911a58ccda8bf7114604302021-10-03 20:57:0455 days 5 hrs ago PancakeSwap: Router v2 0xb9deb36aade32f861d6154b00b2c5bfafc9c2b290.000093976332291514 BNB
0x4d56b26ef1135bb10e420d606951530c20845facca548686be911a58ccda8bf7114604302021-10-03 20:57:0455 days 5 hrs ago 0xb9deb36aade32f861d6154b00b2c5bfafc9c2b29 PancakeSwap: Router v20.001931589018705564 BNB
0x4d56b26ef1135bb10e420d606951530c20845facca548686be911a58ccda8bf7114604302021-10-03 20:57:0455 days 5 hrs ago PancakeSwap: Router v2 0xb9deb36aade32f861d6154b00b2c5bfafc9c2b290.001931589018705564 BNB
0x9390de06d6ec3247ff02c599eee8437156cdc7cd95c70f1f28e5d23ed8d4bbc3114359542021-10-03 0:26:5756 days 2 hrs ago 0xb9deb36aade32f861d6154b00b2c5bfafc9c2b290xb8ae64c415777b5096e6b201dab296e0cf54ca730.006922800051840993 BNB
0x9390de06d6ec3247ff02c599eee8437156cdc7cd95c70f1f28e5d23ed8d4bbc3114359542021-10-03 0:26:5756 days 2 hrs ago PancakeSwap: Router v2 0xb9deb36aade32f861d6154b00b2c5bfafc9c2b290.00692005192403214 BNB
0x9390de06d6ec3247ff02c599eee8437156cdc7cd95c70f1f28e5d23ed8d4bbc3114359542021-10-03 0:26:5756 days 2 hrs ago PancakeSwap: Router v2 0xb9deb36aade32f861d6154b00b2c5bfafc9c2b290.000002748127808853 BNB
0x9390de06d6ec3247ff02c599eee8437156cdc7cd95c70f1f28e5d23ed8d4bbc3114359542021-10-03 0:26:5756 days 2 hrs ago 0xb9deb36aade32f861d6154b00b2c5bfafc9c2b29 PancakeSwap: Router v20.002340525335079479 BNB
0x9390de06d6ec3247ff02c599eee8437156cdc7cd95c70f1f28e5d23ed8d4bbc3114359542021-10-03 0:26:5756 days 2 hrs ago PancakeSwap: Router v2 0xb9deb36aade32f861d6154b00b2c5bfafc9c2b290.002340525335079479 BNB
0x504c8626a3751e618915d72c59d968f3d406a267195941f14b313a7c5eb4f7eb114359172021-10-03 0:25:0656 days 2 hrs ago 0xb9deb36aade32f861d6154b00b2c5bfafc9c2b290xb8ae64c415777b5096e6b201dab296e0cf54ca730.00765818071237554 BNB
0x504c8626a3751e618915d72c59d968f3d406a267195941f14b313a7c5eb4f7eb114359172021-10-03 0:25:0656 days 2 hrs ago PancakeSwap: Router v2 0xb9deb36aade32f861d6154b00b2c5bfafc9c2b290.007654599898019824 BNB
0x504c8626a3751e618915d72c59d968f3d406a267195941f14b313a7c5eb4f7eb114359172021-10-03 0:25:0656 days 2 hrs ago PancakeSwap: Router v2 0xb9deb36aade32f861d6154b00b2c5bfafc9c2b290.000003580814355716 BNB
0x504c8626a3751e618915d72c59d968f3d406a267195941f14b313a7c5eb4f7eb114359172021-10-03 0:25:0656 days 2 hrs ago 0xb9deb36aade32f861d6154b00b2c5bfafc9c2b29 PancakeSwap: Router v20.002591082758699773 BNB
0x504c8626a3751e618915d72c59d968f3d406a267195941f14b313a7c5eb4f7eb114359172021-10-03 0:25:0656 days 2 hrs ago PancakeSwap: Router v2 0xb9deb36aade32f861d6154b00b2c5bfafc9c2b290.002591082758699773 BNB
0x443b76a979f6d2842a0d928b631b45b2d817be80b4bc100121a354f6c92dadb2114359052021-10-03 0:24:3056 days 2 hrs ago 0xb9deb36aade32f861d6154b00b2c5bfafc9c2b290xb8ae64c415777b5096e6b201dab296e0cf54ca730.00966734980684986 BNB
0x443b76a979f6d2842a0d928b631b45b2d817be80b4bc100121a354f6c92dadb2114359052021-10-03 0:24:3056 days 2 hrs ago PancakeSwap: Router v2 0xb9deb36aade32f861d6154b00b2c5bfafc9c2b290.009661169817326895 BNB
0x443b76a979f6d2842a0d928b631b45b2d817be80b4bc100121a354f6c92dadb2114359052021-10-03 0:24:3056 days 2 hrs ago PancakeSwap: Router v2 0xb9deb36aade32f861d6154b00b2c5bfafc9c2b290.000006179989522965 BNB
0x443b76a979f6d2842a0d928b631b45b2d817be80b4bc100121a354f6c92dadb2114359052021-10-03 0:24:3056 days 2 hrs ago 0xb9deb36aade32f861d6154b00b2c5bfafc9c2b29 PancakeSwap: Router v20.00327678469920251 BNB
0x443b76a979f6d2842a0d928b631b45b2d817be80b4bc100121a354f6c92dadb2114359052021-10-03 0:24:3056 days 2 hrs ago PancakeSwap: Router v2 0xb9deb36aade32f861d6154b00b2c5bfafc9c2b290.00327678469920251 BNB
0x0ddf644b76865f957eeda648d990201133436b93207c2509254b0db0fbb785f5114358992021-10-03 0:24:1256 days 2 hrs ago 0xb9deb36aade32f861d6154b00b2c5bfafc9c2b29 PancakeSwap: Router v20.00327678469920251 BNB
0x0ddf644b76865f957eeda648d990201133436b93207c2509254b0db0fbb785f5114358992021-10-03 0:24:1256 days 2 hrs ago PancakeSwap: Router v2 0xb9deb36aade32f861d6154b00b2c5bfafc9c2b290.00327678469920251 BNB
0x6d71e243e36ac94d8180c60b68b8d4e2bb8cba10772d5f8be2564148652ba4ad114358932021-10-03 0:23:5456 days 2 hrs ago 0xb9deb36aade32f861d6154b00b2c5bfafc9c2b290xb8ae64c415777b5096e6b201dab296e0cf54ca730.012968338487093478 BNB
0x6d71e243e36ac94d8180c60b68b8d4e2bb8cba10772d5f8be2564148652ba4ad114358932021-10-03 0:23:5456 days 2 hrs ago PancakeSwap: Router v2 0xb9deb36aade32f861d6154b00b2c5bfafc9c2b290.012956824648120634 BNB
0x6d71e243e36ac94d8180c60b68b8d4e2bb8cba10772d5f8be2564148652ba4ad114358932021-10-03 0:23:5456 days 2 hrs ago PancakeSwap: Router v2 0xb9deb36aade32f861d6154b00b2c5bfafc9c2b290.000011513838972844 BNB
[ Download CSV Export 
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
BabyMiniNuke

Compiler Version
v0.6.12+commit.27d51765

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, Unlicense license

Contract Source Code (Solidity)

/**
 *Submitted for verification at BscScan.com on 2021-10-02
*/

pragma solidity ^0.6.12;

// SPDX-License-Identifier: Unlicensed



interface IBEP20 {
    function totalSupply() external view returns (uint256);

    function decimals() external view returns (uint8);

    function symbol() external view returns (string memory);

    function name() external view returns (string memory);

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

    function transfer(address recipient, uint256 amount)
        external
        returns (bool);

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

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

    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) external returns (bool);

    event Transfer(address indexed from, address indexed to, uint256 value);

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

contract Context {
    constructor() internal {}

    function _msgSender() internal view returns (address payable) {
        return msg.sender;
    }

    function _msgData() internal view returns (bytes memory) {
        this; 
        return msg.data;
    }
}

library SafeMath {

    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        require(c >= a, "SafeMath: addition overflow");

        return c;
    }

    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return sub(a, b, "SafeMath: subtraction overflow");
    }

    function sub(
        uint256 a,
        uint256 b,
        string memory errorMessage
    ) internal pure returns (uint256) {
        require(b <= a, errorMessage);
        uint256 c = a - b;

        return c;
    }

    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        if (a == 0) {
            return 0;
        }

        uint256 c = a * b;
        require(c / a == b, "SafeMath: multiplication overflow");

        return c;
    }

    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return div(a, b, "SafeMath: division by zero");
    }

    function div(
        uint256 a,
        uint256 b,
        string memory errorMessage
    ) internal pure returns (uint256) {
        require(b > 0, errorMessage);
        uint256 c = a / b;

        return c;
    }

    function mod(uint256 a, uint256 b) internal pure returns (uint256) {
        return mod(a, b, "SafeMath: modulo by zero");
    }

    function mod(
        uint256 a,
        uint256 b,
        string memory errorMessage
    ) internal pure returns (uint256) {
        require(b != 0, errorMessage);
        return a % b;
    }
}

contract Ownable is Context {
    address private _owner;

    event OwnershipTransferred(
        address indexed previousOwner,
        address indexed newOwner
    );

    constructor() internal {
        address msgSender = _msgSender();
        _owner = msgSender;
        emit OwnershipTransferred(address(0), msgSender);
    }

    function owner() public view returns (address) {
        return _owner;
    }

    modifier onlyOwner() {
        require(_owner == _msgSender(), "Ownable: caller is not the owner");
        _;
    }

    function renounceOwnership() public onlyOwner {
        emit OwnershipTransferred(_owner, address(0));
        _owner = address(0);
    }

    function transferOwnership(address newOwner) public onlyOwner {
        _transferOwnership(newOwner);
    }

    function _transferOwnership(address newOwner) internal {
        require(
            newOwner != address(0),
            "Ownable: new owner is the zero address"
        );
        emit OwnershipTransferred(_owner, newOwner);
        _owner = newOwner;
    }
}

pragma solidity >=0.6.2;

interface IPancakeRouter01 {
    function factory() external pure returns (address);

    function WETH() external pure returns (address);

    function addLiquidity(
        address tokenA,
        address tokenB,
        uint256 amountADesired,
        uint256 amountBDesired,
        uint256 amountAMin,
        uint256 amountBMin,
        address to,
        uint256 deadline
    )
        external
        returns (
            uint256 amountA,
            uint256 amountB,
            uint256 liquidity
        );

    function addLiquidityETH(
        address token,
        uint256 amountTokenDesired,
        uint256 amountTokenMin,
        uint256 amountETHMin,
        address to,
        uint256 deadline
    )
        external
        payable
        returns (
            uint256 amountToken,
            uint256 amountETH,
            uint256 liquidity
        );

    function removeLiquidity(
        address tokenA,
        address tokenB,
        uint256 liquidity,
        uint256 amountAMin,
        uint256 amountBMin,
        address to,
        uint256 deadline
    ) external returns (uint256 amountA, uint256 amountB);

    function removeLiquidityETH(
        address token,
        uint256 liquidity,
        uint256 amountTokenMin,
        uint256 amountETHMin,
        address to,
        uint256 deadline
    ) external returns (uint256 amountToken, uint256 amountETH);

    function removeLiquidityWithPermit(
        address tokenA,
        address tokenB,
        uint256 liquidity,
        uint256 amountAMin,
        uint256 amountBMin,
        address to,
        uint256 deadline,
        bool approveMax,
        uint8 v,
        bytes32 r,
        bytes32 s
    ) external returns (uint256 amountA, uint256 amountB);

    function removeLiquidityETHWithPermit(
        address token,
        uint256 liquidity,
        uint256 amountTokenMin,
        uint256 amountETHMin,
        address to,
        uint256 deadline,
        bool approveMax,
        uint8 v,
        bytes32 r,
        bytes32 s
    ) external returns (uint256 amountToken, uint256 amountETH);

    function swapExactTokensForTokens(
        uint256 amountIn,
        uint256 amountOutMin,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external returns (uint256[] memory amounts);

    function swapTokensForExactTokens(
        uint256 amountOut,
        uint256 amountInMax,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external returns (uint256[] memory amounts);

    function swapExactETHForTokens(
        uint256 amountOutMin,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external payable returns (uint256[] memory amounts);

    function swapTokensForExactETH(
        uint256 amountOut,
        uint256 amountInMax,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external returns (uint256[] memory amounts);

    function swapExactTokensForETH(
        uint256 amountIn,
        uint256 amountOutMin,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external returns (uint256[] memory amounts);

    function swapETHForExactTokens(
        uint256 amountOut,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external payable returns (uint256[] memory amounts);

    function quote(
        uint256 amountA,
        uint256 reserveA,
        uint256 reserveB
    ) external pure returns (uint256 amountB);

    function getAmountOut(
        uint256 amountIn,
        uint256 reserveIn,
        uint256 reserveOut
    ) external pure returns (uint256 amountOut);

    function getAmountIn(
        uint256 amountOut,
        uint256 reserveIn,
        uint256 reserveOut
    ) external pure returns (uint256 amountIn);

    function getAmountsOut(uint256 amountIn, address[] calldata path)
        external
        view
        returns (uint256[] memory amounts);

    function getAmountsIn(uint256 amountOut, address[] calldata path)
        external
        view
        returns (uint256[] memory amounts);
}

pragma solidity >=0.6.2;

interface IPancakeRouter02 is IPancakeRouter01 {
    function removeLiquidityETHSupportingFeeOnTransferTokens(
        address token,
        uint256 liquidity,
        uint256 amountTokenMin,
        uint256 amountETHMin,
        address to,
        uint256 deadline
    ) external returns (uint256 amountETH);

    function removeLiquidityETHWithPermitSupportingFeeOnTransferTokens(
        address token,
        uint256 liquidity,
        uint256 amountTokenMin,
        uint256 amountETHMin,
        address to,
        uint256 deadline,
        bool approveMax,
        uint8 v,
        bytes32 r,
        bytes32 s
    ) external returns (uint256 amountETH);

    function swapExactTokensForTokensSupportingFeeOnTransferTokens(
        uint256 amountIn,
        uint256 amountOutMin,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external;

    function swapExactETHForTokensSupportingFeeOnTransferTokens(
        uint256 amountOutMin,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external payable;

    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint256 amountIn,
        uint256 amountOutMin,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external;
}

pragma solidity >=0.5.0;

interface IPancakeFactory {
    event PairCreated(
        address indexed token0,
        address indexed token1,
        address pair,
        uint256
    );

    function feeTo() external view returns (address);

    function feeToSetter() external view returns (address);

    function getPair(address tokenA, address tokenB)
        external
        view
        returns (address pair);

    function allPairs(uint256) external view returns (address pair);

    function allPairsLength() external view returns (uint256);

    function createPair(address tokenA, address tokenB)
        external
        returns (address pair);

    function setFeeTo(address) external;

    function setFeeToSetter(address) external;

    function INIT_CODE_PAIR_HASH() external view returns (bytes32);
}

pragma solidity >=0.5.0;

interface IPancakePair {
    event Approval(
        address indexed owner,
        address indexed spender,
        uint256 value
    );
    event Transfer(address indexed from, address indexed to, uint256 value);

    function name() external pure returns (string memory);

    function symbol() external pure returns (string memory);

    function decimals() external pure 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 approve(address spender, uint256 value) external returns (bool);

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

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

    function DOMAIN_SEPARATOR() external view returns (bytes32);

    function PERMIT_TYPEHASH() external pure returns (bytes32);

    function nonces(address owner) external view returns (uint256);

    function permit(
        address owner,
        address spender,
        uint256 value,
        uint256 deadline,
        uint8 v,
        bytes32 r,
        bytes32 s
    ) external;

    event Mint(address indexed sender, uint256 amount0, uint256 amount1);
    event Burn(
        address indexed sender,
        uint256 amount0,
        uint256 amount1,
        address indexed to
    );
    event Swap(
        address indexed sender,
        uint256 amount0In,
        uint256 amount1In,
        uint256 amount0Out,
        uint256 amount1Out,
        address indexed to
    );
    event Sync(uint112 reserve0, uint112 reserve1);

    function MINIMUM_LIQUIDITY() external pure returns (uint256);

    function factory() external view returns (address);

    function token0() external view returns (address);

    function token1() external view returns (address);

    function getReserves()
        external
        view
        returns (
            uint112 reserve0,
            uint112 reserve1,
            uint32 blockTimestampLast
        );

    function price0CumulativeLast() external view returns (uint256);

    function price1CumulativeLast() external view returns (uint256);

    function kLast() external view returns (uint256);

    function mint(address to) external returns (uint256 liquidity);

    function burn(address to)
        external
        returns (uint256 amount0, uint256 amount1);

    function swap(
        uint256 amount0Out,
        uint256 amount1Out,
        address to,
        bytes calldata data
    ) external;

    function skim(address to) external;

    function sync() external;

    function initialize(address, address) external;
}

contract BabyMiniNuke is Context, IBEP20, Ownable {
    using SafeMath for uint256;

    mapping(address => uint256) private _rOwned;
    mapping(address => uint256) private _tOwned;
    mapping(address => mapping(address => uint256)) private _allowances;

    mapping(address => bool) private _isExcludedFromFee;

    address[] private _excluded;

    uint256 private constant MAX = ~uint256(0);
    bool private _inSwapAndLiquify;
    bool private _penaltiesEnabled;
    uint256 private constant _tTotal = 1000000000 * 10**6 * 10**9;
    uint256 private _rTotal = (MAX - (MAX % _tTotal));
    uint256 private _tFeeTotal;
    uint256 private _numOfTokensToExchange = 10000000 * 10**6 * 10**9;
    uint256 private _maxWallet = _tTotal.div(10**2).mul(100);
    uint256 public _taxFee = 1;
    uint256 public _liquidityFee = 9;
    uint256 public _previousTaxFee = _taxFee;
    uint256 public _previousLiquidityFee = _liquidityFee;

    IPancakeRouter02 public immutable pcsV2Router;
    address public immutable pcsV2Pair;

    string private _name = "BabyMiniNuke";
    string private _symbol = "BabyMiniNuke";
    uint8 private _decimals = 9;
    uint256 private _start_timestamp = block.timestamp;
    
    event LiquiditySwapped(
        uint256 tokensSwapped,
        uint256 ethReceived,
        uint256 tokensIntoLiqudity
    );
    
    event TokensSwapped(
        uint256 tokensSwapped,
        uint256 ethReceived,
        uint256 ethSent,
        address devWallet
    );

    constructor() public {
        _rOwned[_msgSender()] = _rTotal;
        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[address(this)] = true;

        IPancakeRouter02 _pancakeswapV2Router =
            IPancakeRouter02(0x10ED43C718714eb63d5aA57B78B54704E256024E);
        pcsV2Pair = IPancakeFactory(_pancakeswapV2Router.factory()).createPair(
            address(this),
            _pancakeswapV2Router.WETH()
        );
        pcsV2Router = _pancakeswapV2Router;

        emit Transfer(address(0), _msgSender(), _tTotal);
    }

    modifier lockTheSwap {
        _inSwapAndLiquify = true;
        _;
        _inSwapAndLiquify = false;
    }

    function name() public view override returns (string memory) {
        return _name;
    }

    function symbol() public view override returns (string memory) {
        return _symbol;
    }

    function decimals() public view override returns (uint8) {
         return _decimals;
    }
    
    function getEquivalentValue() public view returns(uint)
    {
        IPancakePair pair = IPancakePair(pcsV2Pair);
        (uint Res0, uint Res1,) = pair.getReserves();
        
        uint bnb;
        uint nativeToken;
        
        if(pair.token0() == pcsV2Router.WETH()){
            bnb = Res0;
            nativeToken = Res1;
        }
        else {
            bnb = Res1;
            nativeToken = Res0;
        }
        
        return (bnb.div(nativeToken));
    }

    
    function getPairReserves() public view returns(uint, uint)
    {
        IPancakePair pair = IPancakePair(pcsV2Pair);
        (uint Res0, uint Res1, ) = pair.getReserves();
        return (Res0, Res1);
    }

    function totalSupply() public view override returns (uint256) {
        return _tTotal;
    }

    function balanceOf(address account) public view override returns (uint256) {
        return tokenFromReflection(_rOwned[account]);
    }
    
    function isExcluded(address account) public view returns (bool) {
        return _isExcludedFromFee[account];
    }

    function transfer(address recipient, uint256 amount)
        public
        override
        returns (bool)
    {
        _transfer(_msgSender(), recipient, amount);
        return true;
    }

    function allowance(address owner, address spender)
        public
        view
        override
        returns (uint256)
    {
        return _allowances[owner][spender];
    }

    function approve(address spender, uint256 amount)
        public
        override
        returns (bool)
    {
        _approve(_msgSender(), spender, amount);
        return true;
    }

    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) public override returns (bool) {
        _transfer(sender, recipient, amount);
        _approve(
            sender,
            _msgSender(),
            _allowances[sender][_msgSender()].sub(
                amount,
                "ERC20: transfer amount exceeds allowance"
            )
        );
        return true;
    }

    function totalFees() public view returns (uint256) {
        return _tFeeTotal;
    }
    
    function inSwapAndLiquify() public view returns (bool) {
        return _inSwapAndLiquify;
    }

    function reflect(uint256 tAmount) public {
        address sender = _msgSender();
        (uint256 rAmount, , , , , ) = _getValues(tAmount);
        _rOwned[sender] = _rOwned[sender].sub(rAmount);
        _rTotal = _rTotal.sub(rAmount);
        _tFeeTotal = _tFeeTotal.add(tAmount);
    }

    function tokenFromReflection(uint256 rAmount)
        public
        view
        returns (uint256)
    {
        require(
            rAmount <= _rTotal,
            "Amount must be less than total reflections"
        );
        uint256 currentRate = _getRate();
        return rAmount.div(currentRate);
    }

    function _approve(
        address owner,
        address spender,
        uint256 amount
    ) private {
        require(owner != address(0), "ERC20: approve from the zero address");
        require(spender != address(0), "ERC20: approve to the zero address");

        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }

    function removeAllFee() private {
        if (_taxFee == 0 && _liquidityFee == 0) return;

        _previousTaxFee = _taxFee;
        _previousLiquidityFee = _liquidityFee;

        _taxFee = 0;
        _liquidityFee = 0;
    }
    
    function turnOffPenalties() private {
        _penaltiesEnabled = false;
    }
    
    function turnOnPenalties() private {
        _penaltiesEnabled = true;
    }

    function restoreAllFee() private {
        _taxFee = _previousTaxFee;
        _liquidityFee = _previousLiquidityFee;
    }
    
     function _transfer(
        address sender,
        address recipient,
        uint256 amount
    ) private {
        require(sender != address(0), "ERC20: transfer from the zero address");
        require(recipient != address(0), "ERC20: transfer to the zero address");
        require(amount > 0, "Transfer amount must be greater than zero");

        if (
            sender != owner() &&
            recipient != owner() &&
            recipient != address(1) &&
            recipient != pcsV2Pair
        ) {
            require (
                balanceOf(tx.origin) + 
                    amount <= _maxWallet,
                    "Exceeds maximum wallet token amount"
            );
            turnOnPenalties();
        }
                
        uint256 contractTokenBalance = balanceOf(address(this));

        if (contractTokenBalance > 0) {
            bool overMinTokenBalance = contractTokenBalance >= _numOfTokensToExchange;
            if (
                overMinTokenBalance &&        
                !_inSwapAndLiquify && 
                sender != pcsV2Pair    
            ) {
                uint tokensToSwap = _numOfTokensToExchange;
                swapAndLiquify(tokensToSwap);
            }
        }

        bool takeFee = true;

        if (
            _isExcludedFromFee[sender] ||
            _isExcludedFromFee[recipient]
        ) {
            takeFee = false;
        }

        if (!takeFee) removeAllFee();

        _transferStandard(sender, recipient, amount);

        if (!takeFee) restoreAllFee();
        
        turnOffPenalties();
    }

    function _transferStandard(address sender, address recipient, uint256 tAmount) private {
        (uint256 rAmount, uint256 rTransferAmount, uint256 rFee, uint256 tTransferAmount, uint256 tFee, uint256 tLiquidity) = _getValues(tAmount);
        _rOwned[sender] = _rOwned[sender].sub(rAmount);
        _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount);
        _takeLiquidity(tLiquidity);
        _reflectFee(rFee, tFee);
        emit Transfer(sender, recipient, tTransferAmount);
    }

    function _reflectFee(uint256 rFee, uint256 tFee) private {
        _rTotal = _rTotal.sub(rFee);
        _tFeeTotal = _tFeeTotal.add(tFee);
    }

    function _getValues(uint256 tAmount) private view returns (uint256, uint256, uint256, uint256, uint256, uint256) {
        (uint256 tTransferAmount, uint256 tFee, uint256 tLiquidity) = _getTValues(tAmount);
        (uint256 rAmount, uint256 rTransferAmount, uint256 rFee) = _getRValues(tAmount, tFee, tLiquidity, _getRate());
        return (rAmount, rTransferAmount, rFee, tTransferAmount, tFee, tLiquidity);
    }
    
    function _getAntiDumpMultiplier() private view returns (uint256) {
        uint256 time_since_start = block.timestamp - _start_timestamp;
        uint256 hour = 60 * 60;
        if (_penaltiesEnabled) {
            if (time_since_start < 1 * hour) {
                return (2);
            } else if (time_since_start < 2 * hour) {
                return (2);
            } else if (time_since_start < 3 * hour) {
                return (2);
            } else {
                return (2);
            }
        } else {
            return (2);
        }
    }

    function _getTValues(uint256 tAmount)
        private
        view
        returns (
            uint256,
            uint256,
            uint256
        )
    {
        uint256 multiplier = _getAntiDumpMultiplier();
        uint256 tFee = tAmount.div(10**2).mul(_taxFee).mul(multiplier);
        uint256 tLiquidity =
            tAmount.div(10**2).mul(_liquidityFee).mul(multiplier);
        uint256 tTransferAmount = tAmount.sub(tFee).sub(tLiquidity);
        return (tTransferAmount, tFee, tLiquidity);
    }

    function _getRValues(
        uint256 tAmount,
        uint256 tFee,
        uint256 tLiquidity,
        uint256 currentRate
    )
        private
        pure
        returns (
            uint256,
            uint256,
            uint256
        )
    {
        uint256 rAmount = tAmount.mul(currentRate);
        uint256 rFee = tFee.mul(currentRate);
        uint256 rLiquidity = tLiquidity.mul(currentRate);
        uint256 rTransferAmount = rAmount.sub(rFee).sub(rLiquidity);
        return (rAmount, rTransferAmount, rFee);
    }

    function _getRate() private view returns (uint256) {
        (uint256 rSupply, uint256 tSupply) = _getCurrentSupply();
        return rSupply.div(tSupply);
    }

    function _getCurrentSupply() private view returns (uint256, uint256) {
        uint256 rSupply = _rTotal;
        uint256 tSupply = _tTotal;
        for (uint256 i = 0; i < _excluded.length; i++) {
            if (
                _rOwned[_excluded[i]] > rSupply ||
                _tOwned[_excluded[i]] > tSupply
            ) return (_rTotal, _tTotal);
            rSupply = rSupply.sub(_rOwned[_excluded[i]]);
            tSupply = tSupply.sub(_tOwned[_excluded[i]]);
        }
        if (rSupply < _rTotal.div(_tTotal)) return (_rTotal, _tTotal);
        return (rSupply, tSupply);
    }

    function _takeLiquidity(uint256 tLiquidity) private {
        uint256 currentRate = _getRate();
        uint256 rLiquidity = tLiquidity.mul(currentRate);
        _rOwned[address(this)] = _rOwned[address(this)].add(rLiquidity);
    }

    function swapAndLiquify(uint256 contractTokenBalance) private lockTheSwap {
        address marketingswap =0xb8ae64C415777B5096E6b201DAB296E0cF54Ca73;
        uint256 liquidtyPortion = contractTokenBalance.div(10**2).mul(40);
        uint256 Portion = contractTokenBalance - liquidtyPortion;
        
        uint256 half = liquidtyPortion.div(2);
        uint256 otherHalf = liquidtyPortion.sub(half);

        uint256 initialBalanceForLiquify = address(this).balance;

        swapTokensForBNB(half);

        uint256 newBalanceFromLiquify = address(this).balance.sub(initialBalanceForLiquify);

        addLiquidity(otherHalf, newBalanceFromLiquify);

        emit LiquiditySwapped(half, newBalanceFromLiquify, otherHalf);
    
        
        uint256 initialBalanceForSwap = address(this).balance;
        
        swapTokensForBNB(Portion);
        
        uint256 BalanceReceived = address(this).balance.sub(initialBalanceForSwap);
        
        uint256 totalBalanceToSend = address(this).balance;
        
        TransferETH(payable(marketingswap), address(this).balance);
        
        emit TokensSwapped(Portion, BalanceReceived, totalBalanceToSend, marketingswap);
    }

    function swapTokensForBNB(uint256 tokenAmount) private {
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = pcsV2Router.WETH();

        _approve(address(this), address(pcsV2Router), tokenAmount);

        pcsV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0,
            path,
            address(this),
            block.timestamp
        );
    }

    function addLiquidity(uint256 tokenAmount, uint256 ethAmount) private {
        _approve(address(this), address(pcsV2Router), tokenAmount);

        pcsV2Router.addLiquidityETH{value: ethAmount}(
            address(this),
            tokenAmount,
            0, 
            0,
            owner(),
            block.timestamp
        );
    }
    
    function TransferETH(address payable recipient, uint256 amount) private {
        recipient.transfer(amount);
    }

    receive() external payable {}
}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"tokensSwapped","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"ethReceived","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"tokensIntoLiqudity","type":"uint256"}],"name":"LiquiditySwapped","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"tokensSwapped","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"ethReceived","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"ethSent","type":"uint256"},{"indexed":false,"internalType":"address","name":"devWallet","type":"address"}],"name":"TokensSwapped","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"_liquidityFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_previousLiquidityFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_previousTaxFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_taxFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getEquivalentValue","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getPairReserves","outputs":[{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"inSwapAndLiquify","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isExcluded","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","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":"pcsV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pcsV2Router","outputs":[{"internalType":"contract IPancakeRouter02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tAmount","type":"uint256"}],"name":"reflect","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"rAmount","type":"uint256"}],"name":"tokenFromReflection","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalFees","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

60c060405269d3c21bcecceda1000000600019816200001a57fe5b066000190360075569021e19e0c9bab24000006009556200006f60646200005b606469d3c21bcecceda1000000620005ed60201b6200144a1790919060201c565b6200063f60201b620014941790919060201c565b600a556001600b556009600c55600b54600d55600c54600e556040518060400160405280600c81526020017f426162794d696e694e756b650000000000000000000000000000000000000000815250600f9080519060200190620000d5929190620007c6565b506040518060400160405280600c81526020017f426162794d696e694e756b6500000000000000000000000000000000000000008152506010908051906020019062000123929190620007c6565b506009601160006101000a81548160ff021916908360ff160217905550426012553480156200015157600080fd5b50600062000164620006ca60201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3506007546001600062000219620006ca60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506001600460006200026d620006d260201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600460003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555060007310ed43c718714eb63d5aa57b78b54704e256024e90508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b1580156200037657600080fd5b505afa1580156200038b573d6000803e3d6000fd5b505050506040513d6020811015620003a257600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156200041657600080fd5b505afa1580156200042b573d6000803e3d6000fd5b505050506040513d60208110156200044257600080fd5b81019080805190602001909291905050506040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff16815260200192505050602060405180830381600087803b158015620004bd57600080fd5b505af1158015620004d2573d6000803e3d6000fd5b505050506040513d6020811015620004e957600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff1660a08173ffffffffffffffffffffffffffffffffffffffff1660601b815250508073ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff1660601b8152505062000577620006ca60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef69d3c21bcecceda10000006040518082815260200191505060405180910390a3506200086c565b60006200063783836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250620006fb60201b60201c565b905092915050565b600080831415620006545760009050620006c4565b60008284029050828482816200066657fe5b0414620006bf576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526021815260200180620038066021913960400191505060405180910390fd5b809150505b92915050565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60008083118290620007ab576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b838110156200076f57808201518184015260208101905062000752565b50505050905090810190601f1680156200079d5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b506000838581620007b857fe5b049050809150509392505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200080957805160ff19168380011785556200083a565b828001600101855582156200083a579182015b82811115620008395782518255916020019190600101906200081c565b5b5090506200084991906200084d565b5090565b5b80821115620008685760008160009055506001016200084e565b5090565b60805160601c60a05160601c612f3e620008c860003980610c535280610eb952806111905280611a645280611b69525080610b8b5280610d3652806128ea52806129d652806129fd5280612b085280612b2f5250612f3e6000f3fe60806040526004361061016a5760003560e01c80634bec9738116100d15780638da5cb5b1161008a578063a9059cbb11610064578063a9059cbb1461071b578063cba0e9961461078c578063dd62ed3e146107f3578063f2fde38b1461087857610171565b80638da5cb5b1461061857806395d89b41146106595780639df93f6c146106e957610171565b80634bec9738146104da57806352143290146105055780636bc87c3a1461054657806370a0823114610571578063715018a6146105d657806374c7b41c146105ed57610171565b806323b872dd1161012357806323b872dd146103355780632701a4f2146103c65780632d6abf87146103f15780632d83811914610432578063313ce567146104815780633b124fe7146104af57610171565b8063053ab1821461017657806306fdde03146101b1578063095ea7b31461024157806313114a9d146102b257806318160ddd146102dd578063220f66961461030857610171565b3661017157005b600080fd5b34801561018257600080fd5b506101af6004803603602081101561019957600080fd5b81019080803590602001909291905050506108c9565b005b3480156101bd57600080fd5b506101c66109b7565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156102065780820151818401526020810190506101eb565b50505050905090810190601f1680156102335780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561024d57600080fd5b5061029a6004803603604081101561026457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610a59565b60405180821515815260200191505060405180910390f35b3480156102be57600080fd5b506102c7610a77565b6040518082815260200191505060405180910390f35b3480156102e957600080fd5b506102f2610a81565b6040518082815260200191505060405180910390f35b34801561031457600080fd5b5061031d610a93565b60405180821515815260200191505060405180910390f35b34801561034157600080fd5b506103ae6004803603606081101561035857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610aaa565b60405180821515815260200191505060405180910390f35b3480156103d257600080fd5b506103db610b83565b6040518082815260200191505060405180910390f35b3480156103fd57600080fd5b50610406610b89565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561043e57600080fd5b5061046b6004803603602081101561045557600080fd5b8101908080359060200190929190505050610bad565b6040518082815260200191505060405180910390f35b34801561048d57600080fd5b50610496610c31565b604051808260ff16815260200191505060405180910390f35b3480156104bb57600080fd5b506104c4610c48565b6040518082815260200191505060405180910390f35b3480156104e657600080fd5b506104ef610c4e565b6040518082815260200191505060405180910390f35b34801561051157600080fd5b5061051a610eb7565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561055257600080fd5b5061055b610edb565b6040518082815260200191505060405180910390f35b34801561057d57600080fd5b506105c06004803603602081101561059457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610ee1565b6040518082815260200191505060405180910390f35b3480156105e257600080fd5b506105eb610f32565b005b3480156105f957600080fd5b506106026110b8565b6040518082815260200191505060405180910390f35b34801561062457600080fd5b5061062d6110be565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561066557600080fd5b5061066e6110e7565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156106ae578082015181840152602081019050610693565b50505050905090810190601f1680156106db5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156106f557600080fd5b506106fe611189565b604051808381526020018281526020019250505060405180910390f35b34801561072757600080fd5b506107746004803603604081101561073e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061127b565b60405180821515815260200191505060405180910390f35b34801561079857600080fd5b506107db600480360360208110156107af57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611299565b60405180821515815260200191505060405180910390f35b3480156107ff57600080fd5b506108626004803603604081101561081657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506112ef565b6040518082815260200191505060405180910390f35b34801561088457600080fd5b506108c76004803603602081101561089b57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611376565b005b60006108d361151a565b905060006108e083611522565b5050505050905061093981600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461157e90919063ffffffff16565b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506109918160075461157e90919063ffffffff16565b6007819055506109ac836008546115c890919063ffffffff16565b600881905550505050565b6060600f8054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610a4f5780601f10610a2457610100808354040283529160200191610a4f565b820191906000526020600020905b815481529060010190602001808311610a3257829003601f168201915b5050505050905090565b6000610a6d610a6661151a565b8484611650565b6001905092915050565b6000600854905090565b600069d3c21bcecceda1000000905090565b6000600660009054906101000a900460ff16905090565b6000610ab7848484611847565b610b7884610ac361151a565b610b7385604051806060016040528060288152602001612e6f60289139600360008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610b2961151a565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611cb89092919063ffffffff16565b611650565b600190509392505050565b600e5481565b7f000000000000000000000000000000000000000000000000000000000000000081565b6000600754821115610c0a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602a815260200180612db9602a913960400191505060405180910390fd5b6000610c14611d78565b9050610c29818461144a90919063ffffffff16565b915050919050565b6000601160009054906101000a900460ff16905090565b600b5481565b6000807f000000000000000000000000000000000000000000000000000000000000000090506000808273ffffffffffffffffffffffffffffffffffffffff16630902f1ac6040518163ffffffff1660e01b815260040160606040518083038186803b158015610cbd57600080fd5b505afa158015610cd1573d6000803e3d6000fd5b505050506040513d6060811015610ce757600080fd5b81019080805190602001909291908051906020019092919080519060200190929190505050506dffffffffffffffffffffffffffff1691506dffffffffffffffffffffffffffff1691506000807f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015610d9a57600080fd5b505afa158015610dae573d6000803e3d6000fd5b505050506040513d6020811015610dc457600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16630dfe16816040518163ffffffff1660e01b815260040160206040518083038186803b158015610e3157600080fd5b505afa158015610e45573d6000803e3d6000fd5b505050506040513d6020811015610e5b57600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff161415610e9357839150829050610e9a565b8291508390505b610ead818361144a90919063ffffffff16565b9550505050505090565b7f000000000000000000000000000000000000000000000000000000000000000081565b600c5481565b6000610f2b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610bad565b9050919050565b610f3a61151a565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610ffa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b600d5481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060108054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561117f5780601f106111545761010080835404028352916020019161117f565b820191906000526020600020905b81548152906001019060200180831161116257829003601f168201915b5050505050905090565b60008060007f000000000000000000000000000000000000000000000000000000000000000090506000808273ffffffffffffffffffffffffffffffffffffffff16630902f1ac6040518163ffffffff1660e01b815260040160606040518083038186803b1580156111fa57600080fd5b505afa15801561120e573d6000803e3d6000fd5b505050506040513d606081101561122457600080fd5b81019080805190602001909291908051906020019092919080519060200190929190505050506dffffffffffffffffffffffffffff1691506dffffffffffffffffffffffffffff1691508181945094505050509091565b600061128f61128861151a565b8484611847565b6001905092915050565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b61137e61151a565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461143e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b61144781611da3565b50565b600061148c83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611ee6565b905092915050565b6000808314156114a75760009050611514565b60008284029050828482816114b857fe5b041461150f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526021815260200180612e4e6021913960400191505060405180910390fd5b809150505b92915050565b600033905090565b60008060008060008060008060006115398a611fac565b92509250925060008060006115578d8686611552611d78565b612075565b9250925092508282828888889b509b509b509b509b509b5050505050505091939550919395565b60006115c083836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611cb8565b905092915050565b600080828401905083811015611646576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156116d6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526024815260200180612ee56024913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561175c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526022815260200180612e096022913960400191505060405180910390fd5b80600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040518082815260200191505060405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156118cd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526025815260200180612ec06025913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611953576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526023815260200180612d966023913960400191505060405180910390fd5b600081116119ac576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526029815260200180612e976029913960400191505060405180910390fd5b6119b46110be565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015611a2257506119f26110be565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015611a5b5750600173ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015611ab357507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b15611b2657600a5481611ac532610ee1565b011115611b1d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526023815260200180612e2b6023913960400191505060405180910390fd5b611b256120fe565b5b6000611b3130610ee1565b90506000811115611bd15760006009548210159050808015611b605750600660009054906101000a900460ff16155b8015611bb857507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b15611bcf5760006009549050611bcd8161211b565b505b505b600060019050600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680611c785750600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b15611c8257600090505b80611c9057611c8f6122e7565b5b611c9b85858561232a565b80611ca957611ca86124f5565b5b611cb1612509565b5050505050565b6000838311158290611d65576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611d2a578082015181840152602081019050611d0f565b50505050905090810190601f168015611d575780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008385039050809150509392505050565b6000806000611d85612526565b91509150611d9c818361144a90919063ffffffff16565b9250505090565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415611e29576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526026815260200180612de36026913960400191505060405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60008083118290611f92576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611f57578082015181840152602081019050611f3c565b50505050905090810190601f168015611f845780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b506000838581611f9e57fe5b049050809150509392505050565b600080600080611fba6127d7565b90506000611ff882611fea600b54611fdc60648b61144a90919063ffffffff16565b61149490919063ffffffff16565b61149490919063ffffffff16565b9050600061203683612028600c5461201a60648c61144a90919063ffffffff16565b61149490919063ffffffff16565b61149490919063ffffffff16565b9050600061205f82612051858b61157e90919063ffffffff16565b61157e90919063ffffffff16565b9050808383965096509650505050509193909250565b60008060008061208e858961149490919063ffffffff16565b905060006120a5868961149490919063ffffffff16565b905060006120bc878961149490919063ffffffff16565b905060006120e5826120d7858761157e90919063ffffffff16565b61157e90919063ffffffff16565b9050838184965096509650505050509450945094915050565b6001600660016101000a81548160ff021916908315150217905550565b6001600660006101000a81548160ff021916908315150217905550600073b8ae64c415777b5096e6b201dab296e0cf54ca7390506000612178602861216a60648661144a90919063ffffffff16565b61149490919063ffffffff16565b905060008184039050600061219760028461144a90919063ffffffff16565b905060006121ae828561157e90919063ffffffff16565b905060004790506121be83612854565b60006121d3824761157e90919063ffffffff16565b90506121df8382612b02565b7fba9fccb0b9c11f982c4ca6eef78f938cae053a5636eae1ae78503bafcf56341384828560405180848152602001838152602001828152602001935050505060405180910390a1600047905061223486612854565b6000612249824761157e90919063ffffffff16565b9050600047905061225a8a47612c53565b7ff69f2787ff7a460f3aa50fad5651603571f99d2b1d2434ada34d5ad75d80ebf18883838d604051808581526020018481526020018381526020018273ffffffffffffffffffffffffffffffffffffffff16815260200194505050505060405180910390a1505050505050505050506000600660006101000a81548160ff02191690831515021790555050565b6000600b541480156122fb57506000600c54145b1561230557612328565b600b54600d81905550600c54600e819055506000600b819055506000600c819055505b565b60008060008060008061233c87611522565b95509550955095509550955061239a86600160008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461157e90919063ffffffff16565b600160008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061242f85600160008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546115c890919063ffffffff16565b600160008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061247b81612c9e565b6124858483612d5b565b8773ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a3505050505050505050565b600d54600b81905550600e54600c81905550565b6000600660016101000a81548160ff021916908315150217905550565b60008060006007549050600069d3c21bcecceda1000000905060005b60058054905081101561278a5782600160006005848154811061256157fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054118061264857508160026000600584815481106125e057fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054115b156126675760075469d3c21bcecceda1000000945094505050506127d3565b6126f0600160006005848154811061267b57fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548461157e90919063ffffffff16565b925061277b600260006005848154811061270657fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548361157e90919063ffffffff16565b91508080600101915050612542565b506127aa69d3c21bcecceda100000060075461144a90919063ffffffff16565b8210156127ca5760075469d3c21bcecceda10000009350935050506127d3565b81819350935050505b9091565b600080601254420390506000610e109050600660019054906101000a900460ff161561284a578060010282101561281357600292505050612851565b8060020282101561282957600292505050612851565b8060030282101561283f57600292505050612851565b600292505050612851565b6002925050505b90565b6060600267ffffffffffffffff8111801561286e57600080fd5b5060405190808252806020026020018201604052801561289d5781602001602082028036833780820191505090505b50905030816000815181106128ae57fe5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b15801561294e57600080fd5b505afa158015612962573d6000803e3d6000fd5b505050506040513d602081101561297857600080fd5b81019080805190602001909291905050508160018151811061299657fe5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506129fb307f000000000000000000000000000000000000000000000000000000000000000084611650565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b815260040180868152602001858152602001806020018473ffffffffffffffffffffffffffffffffffffffff168152602001838152602001828103825285818151815260200191508051906020019060200280838360005b83811015612abd578082015181840152602081019050612aa2565b505050509050019650505050505050600060405180830381600087803b158015612ae657600080fd5b505af1158015612afa573d6000803e3d6000fd5b505050505050565b612b2d307f000000000000000000000000000000000000000000000000000000000000000084611650565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663f305d719823085600080612b776110be565b426040518863ffffffff1660e01b8152600401808773ffffffffffffffffffffffffffffffffffffffff1681526020018681526020018581526020018481526020018373ffffffffffffffffffffffffffffffffffffffff16815260200182815260200196505050505050506060604051808303818588803b158015612bfc57600080fd5b505af1158015612c10573d6000803e3d6000fd5b50505050506040513d6060811015612c2757600080fd5b810190808051906020019092919080519060200190929190805190602001909291905050505050505050565b8173ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015612c99573d6000803e3d6000fd5b505050565b6000612ca8611d78565b90506000612cbf828461149490919063ffffffff16565b9050612d1381600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546115c890919063ffffffff16565b600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505050565b612d708260075461157e90919063ffffffff16565b600781905550612d8b816008546115c890919063ffffffff16565b600881905550505056fe45524332303a207472616e7366657220746f20746865207a65726f2061646472657373416d6f756e74206d757374206265206c657373207468616e20746f74616c207265666c656374696f6e734f776e61626c653a206e6577206f776e657220697320746865207a65726f206164647265737345524332303a20617070726f766520746f20746865207a65726f206164647265737345786365656473206d6178696d756d2077616c6c657420746f6b656e20616d6f756e74536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7745524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e63655472616e7366657220616d6f756e74206d7573742062652067726561746572207468616e207a65726f45524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f2061646472657373a26469706673582212202aca36b256b5596e9edb80bdc5aaacd3524e774936f63135d29d4b9c0f721d8e64736f6c634300060c0033536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77

Deployed ByteCode Sourcemap

13530:14150:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18430:294;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;15752:92;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17570:193;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;18225:87;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;16793:95;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;18324:98;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;17771:446;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;14428:52;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;14489:45;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;18732:322;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;15956:93;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;14309:26;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;16061:498;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;14541:34;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;14342:32;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;16896:138;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;3476:140;;;;;;;;;;;;;:::i;:::-;;14381:40;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;3262:79;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;15852:96;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16573:212;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;17171:199;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;17046:117;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;17378:184;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;3624:109;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;18430:294;18482:14;18499:12;:10;:12::i;:::-;18482:29;;18523:15;18552:19;18563:7;18552:10;:19::i;:::-;18522:49;;;;;;;18600:28;18620:7;18600;:15;18608:6;18600:15;;;;;;;;;;;;;;;;:19;;:28;;;;:::i;:::-;18582:7;:15;18590:6;18582:15;;;;;;;;;;;;;;;:46;;;;18649:20;18661:7;18649;;:11;;:20;;;;:::i;:::-;18639:7;:30;;;;18693:23;18708:7;18693:10;;:14;;:23;;;;:::i;:::-;18680:10;:36;;;;18430:294;;;:::o;15752:92::-;15798:13;15831:5;15824:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15752:92;:::o;17570:193::-;17672:4;17694:39;17703:12;:10;:12::i;:::-;17717:7;17726:6;17694:8;:39::i;:::-;17751:4;17744:11;;17570:193;;;;:::o;18225:87::-;18267:7;18294:10;;18287:17;;18225:87;:::o;16793:95::-;16846:7;14052:26;16866:14;;16793:95;:::o;18324:98::-;18373:4;18397:17;;;;;;;;;;;18390:24;;18324:98;:::o;17771:446::-;17903:4;17920:36;17930:6;17938:9;17949:6;17920:9;:36::i;:::-;17967:220;17990:6;18011:12;:10;:12::i;:::-;18038:138;18094:6;18038:138;;;;;;;;;;;;;;;;;:11;:19;18050:6;18038:19;;;;;;;;;;;;;;;:33;18058:12;:10;:12::i;:::-;18038:33;;;;;;;;;;;;;;;;:37;;:138;;;;;:::i;:::-;17967:8;:220::i;:::-;18205:4;18198:11;;17771:446;;;;;:::o;14428:52::-;;;;:::o;14489:45::-;;;:::o;18732:322::-;18826:7;18884;;18873;:18;;18851:110;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18972:19;18994:10;:8;:10::i;:::-;18972:32;;19022:24;19034:11;19022:7;:11;;:24;;;;:::i;:::-;19015:31;;;18732:322;;;:::o;15956:93::-;16006:5;16032:9;;;;;;;;;;;16025:16;;15956:93;:::o;14309:26::-;;;;:::o;16061:498::-;16111:4;16133:17;16166:9;16133:43;;16188:9;16199;16213:4;:16;;;:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16187:44;;;;;;;;;16252:8;16271:16;16328:11;:16;;;:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16311:35;;:4;:11;;;:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:35;;;16308:194;;;16368:4;16362:10;;16401:4;16387:18;;16308:194;;;16453:4;16447:10;;16486:4;16472:18;;16308:194;16530:20;16538:11;16530:3;:7;;:20;;;;:::i;:::-;16522:29;;;;;;;16061:498;:::o;14541:34::-;;;:::o;14342:32::-;;;;:::o;16896:138::-;16962:7;16989:37;17009:7;:16;17017:7;17009:16;;;;;;;;;;;;;;;;16989:19;:37::i;:::-;16982:44;;16896:138;;;:::o;3476:140::-;3399:12;:10;:12::i;:::-;3389:22;;:6;;;;;;;;;;:22;;;3381:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3575:1:::1;3538:40;;3559:6;::::0;::::1;;;;;;;;3538:40;;;;;;;;;;;;3606:1;3589:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;3476:140::o:0;14381:40::-;;;;:::o;3262:79::-;3300:7;3327:6;;;;;;;;;;;3320:13;;3262:79;:::o;15852:96::-;15900:13;15933:7;15926:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15852:96;:::o;16573:212::-;16620:4;16626;16648:17;16681:9;16648:43;;16703:9;16714;16729:4;:16;;;:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16702:45;;;;;;;;;16766:4;16772;16758:19;;;;;;;16573:212;;:::o;17171:199::-;17276:4;17298:42;17308:12;:10;:12::i;:::-;17322:9;17333:6;17298:9;:42::i;:::-;17358:4;17351:11;;17171:199;;;;:::o;17046:117::-;17104:4;17128:18;:27;17147:7;17128:27;;;;;;;;;;;;;;;;;;;;;;;;;17121:34;;17046:117;;;:::o;17378:184::-;17495:7;17527:11;:18;17539:5;17527:18;;;;;;;;;;;;;;;:27;17546:7;17527:27;;;;;;;;;;;;;;;;17520:34;;17378:184;;;;:::o;3624:109::-;3399:12;:10;:12::i;:::-;3389:22;;:6;;;;;;;;;;:22;;;3381:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3697:28:::1;3716:8;3697:18;:28::i;:::-;3624:109:::0;:::o;2191:132::-;2249:7;2276:39;2280:1;2283;2276:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;2269:46;;2191:132;;;;:::o;1933:250::-;1991:7;2020:1;2015;:6;2011:47;;;2045:1;2038:8;;;;2011:47;2070:9;2086:1;2082;:5;2070:17;;2115:1;2110;2106;:5;;;;;;:10;2098:56;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2174:1;2167:8;;;1933:250;;;;;:::o;1120:98::-;1165:15;1200:10;1193:17;;1120:98;:::o;22316:419::-;22375:7;22384;22393;22402;22411;22420;22441:23;22466:12;22480:18;22502:20;22514:7;22502:11;:20::i;:::-;22440:82;;;;;;22534:15;22551:23;22576:12;22592:50;22604:7;22613:4;22619:10;22631;:8;:10::i;:::-;22592:11;:50::i;:::-;22533:109;;;;;;22661:7;22670:15;22687:4;22693:15;22710:4;22716:10;22653:74;;;;;;;;;;;;;;;;;;22316:419;;;;;;;:::o;1555:136::-;1613:7;1640:43;1644:1;1647;1640:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;1633:50;;1555:136;;;;:::o;1366:181::-;1424:7;1444:9;1460:1;1456;:5;1444:17;;1485:1;1480;:6;;1472:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1538:1;1531:8;;;1366:181;;;;:::o;19062:371::-;19206:1;19189:19;;:5;:19;;;;19181:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19287:1;19268:21;;:7;:21;;;;19260:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19371:6;19341:11;:18;19353:5;19341:18;;;;;;;;;;;;;;;:27;19360:7;19341:27;;;;;;;;;;;;;;;:36;;;;19409:7;19393:32;;19402:5;19393:32;;;19418:6;19393:32;;;;;;;;;;;;;;;;;;19062:371;;;:::o;20004:1639::-;20153:1;20135:20;;:6;:20;;;;20127:70;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20237:1;20216:23;;:9;:23;;;;20208:71;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20307:1;20298:6;:10;20290:64;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20395:7;:5;:7::i;:::-;20385:17;;:6;:17;;;;:54;;;;;20432:7;:5;:7::i;:::-;20419:20;;:9;:20;;;;20385:54;:94;;;;;20477:1;20456:23;;:9;:23;;;;20385:94;:133;;;;;20509:9;20496:22;;:9;:22;;;;20385:133;20367:389;;;20627:10;;20617:6;20572:20;20582:9;20572;:20::i;:::-;:51;:65;;20545:167;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20727:17;:15;:17::i;:::-;20367:389;20784:28;20815:24;20833:4;20815:9;:24::i;:::-;20784:55;;20879:1;20856:20;:24;20852:417;;;20897:24;20948:22;;20924:20;:46;;20897:73;;21007:19;:66;;;;;21056:17;;;;;;;;;;;21055:18;21007:66;:107;;;;;21105:9;21095:19;;:6;:19;;;;21007:107;20985:273;;;21153:17;21173:22;;21153:42;;21214:28;21229:12;21214:14;:28::i;:::-;20985:273;;20852:417;;21281:12;21296:4;21281:19;;21331:18;:26;21350:6;21331:26;;;;;;;;;;;;;;;;;;;;;;;;;:72;;;;21374:18;:29;21393:9;21374:29;;;;;;;;;;;;;;;;;;;;;;;;;21331:72;21313:144;;;21440:5;21430:15;;21313:144;21474:7;21469:28;;21483:14;:12;:14::i;:::-;21469:28;21510:44;21528:6;21536:9;21547:6;21510:17;:44::i;:::-;21572:7;21567:29;;21581:15;:13;:15::i;:::-;21567:29;21617:18;:16;:18::i;:::-;20004:1639;;;;;:::o;1699:226::-;1819:7;1852:1;1847;:6;;1855:12;1839:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1879:9;1895:1;1891;:5;1879:17;;1916:1;1909:8;;;1699:226;;;;;:::o;24429:164::-;24471:7;24492:15;24509;24528:19;:17;:19::i;:::-;24491:56;;;;24565:20;24577:7;24565;:11;;:20;;;;:::i;:::-;24558:27;;;;24429:164;:::o;3741:266::-;3849:1;3829:22;;:8;:22;;;;3807:110;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3962:8;3933:38;;3954:6;;;;;;;;;;3933:38;;;;;;;;;;;;3991:8;3982:6;;:17;;;;;;;;;;;;;;;;;;3741:266;:::o;2331:225::-;2451:7;2483:1;2479;:5;2486:12;2471:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2510:9;2526:1;2522;:5;;;;;;2510:17;;2547:1;2540:8;;;2331:225;;;;;:::o;23332:527::-;23433:7;23455;23477;23512:18;23533:24;:22;:24::i;:::-;23512:45;;23568:12;23583:47;23619:10;23583:31;23606:7;;23583:18;23595:5;23583:7;:11;;:18;;;;:::i;:::-;:22;;:31;;;;:::i;:::-;:35;;:47;;;;:::i;:::-;23568:62;;23641:18;23675:53;23717:10;23675:37;23698:13;;23675:18;23687:5;23675:7;:11;;:18;;;;:::i;:::-;:22;;:37;;;;:::i;:::-;:41;;:53;;;;:::i;:::-;23641:87;;23739:23;23765:33;23787:10;23765:17;23777:4;23765:7;:11;;:17;;;;:::i;:::-;:21;;:33;;;;:::i;:::-;23739:59;;23817:15;23834:4;23840:10;23809:42;;;;;;;;;;23332:527;;;;;:::o;23867:554::-;24066:7;24088;24110;24145:15;24163:24;24175:11;24163:7;:11;;:24;;;;:::i;:::-;24145:42;;24198:12;24213:21;24222:11;24213:4;:8;;:21;;;;:::i;:::-;24198:36;;24245:18;24266:27;24281:11;24266:10;:14;;:27;;;;:::i;:::-;24245:48;;24304:23;24330:33;24352:10;24330:17;24342:4;24330:7;:11;;:17;;;;:::i;:::-;:21;;:33;;;;:::i;:::-;24304:59;;24382:7;24391:15;24408:4;24374:39;;;;;;;;;;23867:554;;;;;;;;:::o;19780:78::-;19846:4;19826:17;;:24;;;;;;;;;;;;;;;;;;19780:78::o;25458:1219::-;15684:4;15664:17;;:24;;;;;;;;;;;;;;;;;;25543:21:::1;25566:42;25543:65;;25619:23;25645:39;25681:2;25645:31;25670:5;25645:20;:24;;:31;;;;:::i;:::-;:35;;:39;;;;:::i;:::-;25619:65;;25695:15;25736;25713:20;:38;25695:56;;25772:12;25787:22;25807:1;25787:15;:19;;:22;;;;:::i;:::-;25772:37;;25820:17;25840:25;25860:4;25840:15;:19;;:25;;;;:::i;:::-;25820:45;;25878:32;25913:21;25878:56;;25947:22;25964:4;25947:16;:22::i;:::-;25982:29;26014:51;26040:24;26014:21;:25;;:51;;;;:::i;:::-;25982:83;;26078:46;26091:9;26102:21;26078:12;:46::i;:::-;26142:56;26159:4;26165:21;26188:9;26142:56;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;26225:29;26257:21;26225:53;;26299:25;26316:7;26299:16;:25::i;:::-;26345:23;26371:48;26397:21;26371;:25;;:48;;;;:::i;:::-;26345:74;;26440:26;26469:21;26440:50;;26511:58;26531:13;26547:21;26511:11;:58::i;:::-;26595:74;26609:7;26618:15;26635:18;26655:13;26595:74;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15699:1;;;;;;;;;;15731:5:::0;15711:17;;:25;;;;;;;;;;;;;;;;;;25458:1219;:::o;19441:235::-;19499:1;19488:7;;:12;:34;;;;;19521:1;19504:13;;:18;19488:34;19484:47;;;19524:7;;19484:47;19561:7;;19543:15;:25;;;;19603:13;;19579:21;:37;;;;19639:1;19629:7;:11;;;;19667:1;19651:13;:17;;;;19441:235;:::o;21651:502::-;21750:15;21767:23;21792:12;21806:23;21831:12;21845:18;21867:19;21878:7;21867:10;:19::i;:::-;21749:137;;;;;;;;;;;;21915:28;21935:7;21915;:15;21923:6;21915:15;;;;;;;;;;;;;;;;:19;;:28;;;;:::i;:::-;21897:7;:15;21905:6;21897:15;;;;;;;;;;;;;;;:46;;;;21975:39;21998:15;21975:7;:18;21983:9;21975:18;;;;;;;;;;;;;;;;:22;;:39;;;;:::i;:::-;21954:7;:18;21962:9;21954:18;;;;;;;;;;;;;;;:60;;;;22025:26;22040:10;22025:14;:26::i;:::-;22062:23;22074:4;22080;22062:11;:23::i;:::-;22118:9;22101:44;;22110:6;22101:44;;;22129:15;22101:44;;;;;;;;;;;;;;;;;;21651:502;;;;;;;;;:::o;19866:125::-;19920:15;;19910:7;:25;;;;19962:21;;19946:13;:37;;;;19866:125::o;19688:80::-;19755:5;19735:17;;:25;;;;;;;;;;;;;;;;;;19688:80::o;24601:605::-;24652:7;24661;24681:15;24699:7;;24681:25;;24717:15;14052:26;24717:25;;24758:9;24753:338;24777:9;:16;;;;24773:1;:20;24753:338;;;24861:7;24837;:21;24845:9;24855:1;24845:12;;;;;;;;;;;;;;;;;;;;;;;;;24837:21;;;;;;;;;;;;;;;;:31;:83;;;;24913:7;24889;:21;24897:9;24907:1;24897:12;;;;;;;;;;;;;;;;;;;;;;;;;24889:21;;;;;;;;;;;;;;;;:31;24837:83;24815:146;;;24944:7;;14052:26;24936:25;;;;;;;;;24815:146;24986:34;24998:7;:21;25006:9;25016:1;25006:12;;;;;;;;;;;;;;;;;;;;;;;;;24998:21;;;;;;;;;;;;;;;;24986:7;:11;;:34;;;;:::i;:::-;24976:44;;25045:34;25057:7;:21;25065:9;25075:1;25065:12;;;;;;;;;;;;;;;;;;;;;;;;;25057:21;;;;;;;;;;;;;;;;25045:7;:11;;:34;;;;:::i;:::-;25035:44;;24795:3;;;;;;;24753:338;;;;25115:20;14052:26;25115:7;;:11;;:20;;;;:::i;:::-;25105:7;:30;25101:61;;;25145:7;;14052:26;25137:25;;;;;;;;25101:61;25181:7;25190;25173:25;;;;;;24601:605;;;:::o;22747:577::-;22803:7;22823:24;22868:16;;22850:15;:34;22823:61;;22895:12;22910:7;22895:22;;22932:17;;;;;;;;;;;22928:389;;;22993:4;22989:1;:8;22970:16;:27;22966:297;;;23026:1;23018:10;;;;;;22966:297;23077:4;23073:1;:8;23054:16;:27;23050:213;;;23110:1;23102:10;;;;;;23050:213;23161:4;23157:1;:8;23138:16;:27;23134:129;;;23194:1;23186:10;;;;;;23134:129;23245:1;23237:10;;;;;;22928:389;23303:1;23295:10;;;;22747:577;;:::o;26685:463::-;26751:21;26789:1;26775:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;26751:40;;26820:4;26802;26807:1;26802:7;;;;;;;;;;;;;:23;;;;;;;;;;;26846:11;:16;;;:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;26836:4;26841:1;26836:7;;;;;;;;;;;;;:28;;;;;;;;;;;26877:58;26894:4;26909:11;26923;26877:8;:58::i;:::-;26948:11;:62;;;27025:11;27051:1;27067:4;27094;27114:15;26948:192;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;26685:463;;:::o;27156:355::-;27237:58;27254:4;27269:11;27283;27237:8;:58::i;:::-;27308:11;:27;;;27343:9;27376:4;27396:11;27422:1;27439;27455:7;:5;:7::i;:::-;27477:15;27308:195;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;27156:355;;:::o;27523:117::-;27606:9;:18;;:26;27625:6;27606:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;27523:117;;:::o;25214:236::-;25277:19;25299:10;:8;:10::i;:::-;25277:32;;25320:18;25341:27;25356:11;25341:10;:14;;:27;;;;:::i;:::-;25320:48;;25404:38;25431:10;25404:7;:22;25420:4;25404:22;;;;;;;;;;;;;;;;:26;;:38;;;;:::i;:::-;25379:7;:22;25395:4;25379:22;;;;;;;;;;;;;;;:63;;;;25214:236;;;:::o;22161:147::-;22239:17;22251:4;22239:7;;:11;;:17;;;;:::i;:::-;22229:7;:27;;;;22280:20;22295:4;22280:10;;:14;;:20;;;;:::i;:::-;22267:10;:33;;;;22161:147;;:::o

Swarm Source

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