Contract 0x7Fd5b4c98E2ebAf1cB9109E68aee0c62Ab89bF65

 

Contract Overview

Balance:
0 ETH

ETH Value:
$0.00

Token:
Txn Hash Method
Block
From
To
Value [Txn Fee]
0x75c17cd9f6b3c54980bff5ff195d66ee85de80c15500b5185bc685cf5ec6d808Approve787457862023-04-09 18:41:34372 days 3 hrs ago0xea468c32b656119f5a5355fd3dc38c13a3adfcbb IN  0x7fd5b4c98e2ebaf1cb9109e68aee0c62ab89bf650 ETH0.00004395 0.1
0xa02de8ab55f90018d1deeb686ac3ad8722b5e3298aeca8b2d001be63714253bbApprove787457402023-04-09 18:41:22372 days 3 hrs ago0xea468c32b656119f5a5355fd3dc38c13a3adfcbb IN  0x7fd5b4c98e2ebaf1cb9109e68aee0c62ab89bf650 ETH0.00004375 0.1
0xaec02b11051db64f3fd88b601bbbdc2c6f5b3446f0daae483060b446177a471eApprove779436352023-04-07 10:13:40374 days 12 hrs ago0xea468c32b656119f5a5355fd3dc38c13a3adfcbb IN  0x7fd5b4c98e2ebaf1cb9109e68aee0c62ab89bf650 ETH0.00004107 0.1
0xa441e23da63fd9266aaf02261aee9cd12f9036ee8d1dff7df719287f9deb1794Approve753115082023-03-30 16:47:16382 days 5 hrs ago0x5f58aabfb25f49acad1252e508d7986faafbca5e IN  0x7fd5b4c98e2ebaf1cb9109e68aee0c62ab89bf650 ETH0.00008271 0.1
0x484325067ddc4ce038d6ffcd0a2fde42416386498ff0585a576dff2d4b563098Approve748007132023-03-29 5:18:46383 days 17 hrs ago0x7960bb70ea1f6b080ecb91c03145e9dd7eabcbb3 IN  0x7fd5b4c98e2ebaf1cb9109e68aee0c62ab89bf650 ETH0.00005238 0.1
0x829e40fdc4ebd577039584ae187f810b637106e33d676fad8443eb5775d8e43eApprove747998812023-03-29 5:15:18383 days 17 hrs ago0x7960bb70ea1f6b080ecb91c03145e9dd7eabcbb3 IN  0x7fd5b4c98e2ebaf1cb9109e68aee0c62ab89bf650 ETH0.00005437 0.1
0xf6739ebb79812a22e6f4eb2d30b5e26ea02390d2c4a33cafcd7eb8b7c8156950Approve746641932023-03-28 19:34:30384 days 3 hrs ago0xf3d756a3431182ee75e9e41652e21da76f2d97e0 IN  0x7fd5b4c98e2ebaf1cb9109e68aee0c62ab89bf650 ETH0.00006523 0.1
0x0afa2f139e9ec7b8e35e380139a738c347d63aeae48a692aa1d2ebfa48f4b7c0Approve743437502023-03-27 21:13:16385 days 1 hr ago0x499529b939ac988831d5e5ebf5074e43d7dc2321 IN  0x7fd5b4c98e2ebaf1cb9109e68aee0c62ab89bf650 ETH0.00006508 0.1
0xc3a6639c5c0821002c5539555cd37ddbe203e31cfa561adf08b53df08a7838feApprove743435842023-03-27 21:12:33385 days 1 hr ago0xddd0edb3985494923661a6e7939e8b79f81580db IN  0x7fd5b4c98e2ebaf1cb9109e68aee0c62ab89bf650 ETH0.00006410.1
0x905aa7dafb1d7a45cf45387559d78f3a99dcb3cc955d60b40100dc5106f484d3Transfer743434942023-03-27 21:12:06385 days 1 hr ago0x1b4f29be0db3565c4616e12f248d75d3aede354b IN  0x7fd5b4c98e2ebaf1cb9109e68aee0c62ab89bf650 ETH0.000064860.1
0xf23733b9d1eb7bbf1733522da75c6cd6e264ef3ee5d152822bcb409081acee17Transfer743427942023-03-27 21:09:10385 days 1 hr ago0x447a6d1b1a490c56691e1961d5faee7dbf580b3a IN  0x7fd5b4c98e2ebaf1cb9109e68aee0c62ab89bf650 ETH0.00008890.1
0x03e5e7c10eefb4a6a1652d5b448a5cb0156c9694f420fd48d352ba48c1583f20Approve743426882023-03-27 21:08:43385 days 1 hr ago0x1b4f29be0db3565c4616e12f248d75d3aede354b IN  0x7fd5b4c98e2ebaf1cb9109e68aee0c62ab89bf650 ETH0.000087810.1
0x3ce45ad43ac79e04438f863d113777e05833b002b6de264aa8b2d28cae534ae3Transfer743415532023-03-27 21:03:59385 days 1 hr ago0xb2737d1c2d5255157342429692203128c3af9bc5 IN  0x7fd5b4c98e2ebaf1cb9109e68aee0c62ab89bf650 ETH0.000097430.1
0xb0a78aa82d292ad1a4fcdd33dab2b79aa2f47ac1b8cea150b85c3e9b3520a4d1Transfer743397142023-03-27 20:56:09385 days 1 hr ago0xb2737d1c2d5255157342429692203128c3af9bc5 IN  0x7fd5b4c98e2ebaf1cb9109e68aee0c62ab89bf650 ETH0.000111520.1
0xaffbe25b2de80ef0a0da9488c01ccde7b667861348c7d77e6515a5dc5b0eaad0Approve742019722023-03-27 11:24:58385 days 11 hrs ago0xf946d74e7dfb0630485b17aeb5a1c510bc16c29c IN  0x7fd5b4c98e2ebaf1cb9109e68aee0c62ab89bf650 ETH0.000037730.1
0x89d5f0cc0da17f1bfbe56438ba70aef4cf8abf30f06193b8369861fc365c7f1dApprove742017132023-03-27 11:23:53385 days 11 hrs ago0xa2a33606b3c624a38e63a7912ce5e864a37ac8d8 IN  0x7fd5b4c98e2ebaf1cb9109e68aee0c62ab89bf650 ETH0.00003828 0.1
0xc1ddc933e3497a418c8228ee39515fc9c463adb5799734d818449d6bdb14d5c5Approve741986522023-03-27 11:11:21385 days 11 hrs ago0xcb7cdc60b72ae0cdca0ab5e046aa6fff1e9ef7f0 IN  0x7fd5b4c98e2ebaf1cb9109e68aee0c62ab89bf650 ETH0.00003627 0.1
0xa0d0d4cbad164ce362548789a53c3ea5eb6e355654bc3437a93264fb0b7cdcf6Exclude From Fee741720442023-03-27 9:21:33385 days 13 hrs ago0x1dffb9352149d87ea8d6ea994f01350f522f2847 IN  0x7fd5b4c98e2ebaf1cb9109e68aee0c62ab89bf650 ETH0.00003418 0.1
0xcd4fa2e5410283bea78da405b54db9def580ed412e73572f567e35c19ed057dcExclude From Fee741718932023-03-27 9:20:55385 days 13 hrs ago0x1dffb9352149d87ea8d6ea994f01350f522f2847 IN  0x7fd5b4c98e2ebaf1cb9109e68aee0c62ab89bf650 ETH0.00003418 0.1
0xb85ef517607f680fe9b319962a9ca47b49bb44e26b38765741e4e14d71276827Approve740535542023-03-27 1:12:24385 days 21 hrs ago0xcfa7e7d632d8608befc2bfaed4b836f1d7973a84 IN  0x7fd5b4c98e2ebaf1cb9109e68aee0c62ab89bf650 ETH0.00003003 0.1
0x287ba1876d312a33ca2b8749d53dcb7d189e9217dc4a9f2099a4a5574927a550Approve738413332023-03-26 10:28:55386 days 12 hrs ago0x9b12d0c99b71efa67d73da8691820e9d76b37abf IN  0x7fd5b4c98e2ebaf1cb9109e68aee0c62ab89bf650 ETH0.00003265 0.1
0xfd291e0c3c9dba1375bb7c72b0d88026146d43a76a497f26f423a7de1111e035Approve738340012023-03-26 9:58:33386 days 12 hrs ago0x441b01437439797a3498a9dd5d08f2f12cd22266 IN  0x7fd5b4c98e2ebaf1cb9109e68aee0c62ab89bf650 ETH0.00003561 0.1
0x269cdb2930a178854142f8979f6db0d28f8678e9230e17941924c9026b06e94eApprove737735942023-03-26 5:48:23386 days 16 hrs ago0x776cc64d608b82ebc835584638432441fd9856b2 IN  0x7fd5b4c98e2ebaf1cb9109e68aee0c62ab89bf650 ETH0.00002869 0.1
0x45d60df525bdebe3c1ad72d694ed9b6219f299999eb8385d503f8ad92cf785abApprove736684182023-03-25 22:19:10387 days 17 mins ago0x0c5b97401d84b5b799f1032b3323bc50405f57c8 IN  0x7fd5b4c98e2ebaf1cb9109e68aee0c62ab89bf650 ETH0.00002927 0.1
0xca399b496bffc569b2818ba780c079d614394a050a3ed3c17d24886069e4e0d3Approve736447832023-03-25 20:39:10387 days 1 hr ago0xeb9afa64f71244bd9157cc08831ec52ab79c51e4 IN  0x7fd5b4c98e2ebaf1cb9109e68aee0c62ab89bf650 ETH0.00004021 0.1
[ Download CSV Export 
Latest 25 internal transaction
Parent Txn Hash Block From To Value
0x71c52313ee80b649dd2cda966ef9d07e0add09869b2a9b50a3e0f340c9360b02779436682023-04-07 10:13:48374 days 12 hrs ago 0x7fd5b4c98e2ebaf1cb9109e68aee0c62ab89bf65 SushiSwap: Router0.000046815036114565 ETH
0x71c52313ee80b649dd2cda966ef9d07e0add09869b2a9b50a3e0f340c9360b02779436682023-04-07 10:13:48374 days 12 hrs ago SushiSwap: Router 0x7fd5b4c98e2ebaf1cb9109e68aee0c62ab89bf650.000046815036114565 ETH
0x71c52313ee80b649dd2cda966ef9d07e0add09869b2a9b50a3e0f340c9360b02779436682023-04-07 10:13:48374 days 12 hrs ago 0x7fd5b4c98e2ebaf1cb9109e68aee0c62ab89bf650x3b57d937c223dfc91327fd8d71ad4252f4d596150.000093676693414323 ETH
0x71c52313ee80b649dd2cda966ef9d07e0add09869b2a9b50a3e0f340c9360b02779436682023-04-07 10:13:48374 days 12 hrs ago 0x7fd5b4c98e2ebaf1cb9109e68aee0c62ab89bf650x64a91472c6044e1927b05c5911c1d3dc850be36f0.000093676693414323 ETH
0x71c52313ee80b649dd2cda966ef9d07e0add09869b2a9b50a3e0f340c9360b02779436682023-04-07 10:13:48374 days 12 hrs ago 0x7fd5b4c98e2ebaf1cb9109e68aee0c62ab89bf650xdac2d1a3f72d3d74ec8488c6803c5257bb4e02390.000093676693414323 ETH
0x71c52313ee80b649dd2cda966ef9d07e0add09869b2a9b50a3e0f340c9360b02779436682023-04-07 10:13:48374 days 12 hrs ago SushiSwap: Router 0x7fd5b4c98e2ebaf1cb9109e68aee0c62ab89bf650.000281030080242969 ETH
0xe71bdbe1382f3227478ae7e3076d3e47087ccc6bd96c2f0217ef8cfbb9e44be5753121022023-03-30 16:49:41382 days 5 hrs ago 0x7fd5b4c98e2ebaf1cb9109e68aee0c62ab89bf650xdac2d1a3f72d3d74ec8488c6803c5257bb4e02391 wei
0xe71bdbe1382f3227478ae7e3076d3e47087ccc6bd96c2f0217ef8cfbb9e44be5753121022023-03-30 16:49:41382 days 5 hrs ago 0x7fd5b4c98e2ebaf1cb9109e68aee0c62ab89bf65 SushiSwap: Router0.000052581343840309 ETH
0xe71bdbe1382f3227478ae7e3076d3e47087ccc6bd96c2f0217ef8cfbb9e44be5753121022023-03-30 16:49:41382 days 5 hrs ago SushiSwap: Router 0x7fd5b4c98e2ebaf1cb9109e68aee0c62ab89bf650.000052581343840309 ETH
0xe71bdbe1382f3227478ae7e3076d3e47087ccc6bd96c2f0217ef8cfbb9e44be5753121022023-03-30 16:49:41382 days 5 hrs ago 0x7fd5b4c98e2ebaf1cb9109e68aee0c62ab89bf650x3b57d937c223dfc91327fd8d71ad4252f4d596150.000105218192857902 ETH
0xe71bdbe1382f3227478ae7e3076d3e47087ccc6bd96c2f0217ef8cfbb9e44be5753121022023-03-30 16:49:41382 days 5 hrs ago 0x7fd5b4c98e2ebaf1cb9109e68aee0c62ab89bf650x64a91472c6044e1927b05c5911c1d3dc850be36f0.000105218192857902 ETH
0xe71bdbe1382f3227478ae7e3076d3e47087ccc6bd96c2f0217ef8cfbb9e44be5753121022023-03-30 16:49:41382 days 5 hrs ago 0x7fd5b4c98e2ebaf1cb9109e68aee0c62ab89bf650xdac2d1a3f72d3d74ec8488c6803c5257bb4e02390.000105218192857902 ETH
0xe71bdbe1382f3227478ae7e3076d3e47087ccc6bd96c2f0217ef8cfbb9e44be5753121022023-03-30 16:49:41382 days 5 hrs ago SushiSwap: Router 0x7fd5b4c98e2ebaf1cb9109e68aee0c62ab89bf650.000315654578573707 ETH
0x73979524d5d76e9ec6af616bac86cd936945b0eb19a0dff3a648f455fd08ccd9748002862023-03-29 5:17:03383 days 17 hrs ago 0x7fd5b4c98e2ebaf1cb9109e68aee0c62ab89bf65 SushiSwap: Router0.000054119242370321 ETH
0x73979524d5d76e9ec6af616bac86cd936945b0eb19a0dff3a648f455fd08ccd9748002862023-03-29 5:17:03383 days 17 hrs ago SushiSwap: Router 0x7fd5b4c98e2ebaf1cb9109e68aee0c62ab89bf650.000054119242370321 ETH
0x73979524d5d76e9ec6af616bac86cd936945b0eb19a0dff3a648f455fd08ccd9748002862023-03-29 5:17:03383 days 17 hrs ago 0x7fd5b4c98e2ebaf1cb9109e68aee0c62ab89bf650x3b57d937c223dfc91327fd8d71ad4252f4d596150.000108292867620773 ETH
0x73979524d5d76e9ec6af616bac86cd936945b0eb19a0dff3a648f455fd08ccd9748002862023-03-29 5:17:03383 days 17 hrs ago 0x7fd5b4c98e2ebaf1cb9109e68aee0c62ab89bf650x64a91472c6044e1927b05c5911c1d3dc850be36f0.000108292867620773 ETH
0x73979524d5d76e9ec6af616bac86cd936945b0eb19a0dff3a648f455fd08ccd9748002862023-03-29 5:17:03383 days 17 hrs ago 0x7fd5b4c98e2ebaf1cb9109e68aee0c62ab89bf650xdac2d1a3f72d3d74ec8488c6803c5257bb4e02390.000108292867620773 ETH
0x73979524d5d76e9ec6af616bac86cd936945b0eb19a0dff3a648f455fd08ccd9748002862023-03-29 5:17:03383 days 17 hrs ago SushiSwap: Router 0x7fd5b4c98e2ebaf1cb9109e68aee0c62ab89bf650.000324878602862319 ETH
0x5c4a0e48fb42b3ea62845608e363afe83edb3e8f6ed954d4ea6497a0b7493a9d746645812023-03-28 19:36:02384 days 3 hrs ago 0x7fd5b4c98e2ebaf1cb9109e68aee0c62ab89bf650xdac2d1a3f72d3d74ec8488c6803c5257bb4e02391 wei
0x5c4a0e48fb42b3ea62845608e363afe83edb3e8f6ed954d4ea6497a0b7493a9d746645812023-03-28 19:36:02384 days 3 hrs ago 0x7fd5b4c98e2ebaf1cb9109e68aee0c62ab89bf65 SushiSwap: Router0.000054306738087895 ETH
0x5c4a0e48fb42b3ea62845608e363afe83edb3e8f6ed954d4ea6497a0b7493a9d746645812023-03-28 19:36:02384 days 3 hrs ago SushiSwap: Router 0x7fd5b4c98e2ebaf1cb9109e68aee0c62ab89bf650.000054306738087895 ETH
0x5c4a0e48fb42b3ea62845608e363afe83edb3e8f6ed954d4ea6497a0b7493a9d746645812023-03-28 19:36:02384 days 3 hrs ago 0x7fd5b4c98e2ebaf1cb9109e68aee0c62ab89bf650x3b57d937c223dfc91327fd8d71ad4252f4d596150.000108668145923317 ETH
0x5c4a0e48fb42b3ea62845608e363afe83edb3e8f6ed954d4ea6497a0b7493a9d746645812023-03-28 19:36:02384 days 3 hrs ago 0x7fd5b4c98e2ebaf1cb9109e68aee0c62ab89bf650x64a91472c6044e1927b05c5911c1d3dc850be36f0.000108668145923317 ETH
0x5c4a0e48fb42b3ea62845608e363afe83edb3e8f6ed954d4ea6497a0b7493a9d746645812023-03-28 19:36:02384 days 3 hrs ago 0x7fd5b4c98e2ebaf1cb9109e68aee0c62ab89bf650xdac2d1a3f72d3d74ec8488c6803c5257bb4e02390.000108668145923317 ETH
[ Download CSV Export 
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
ArbiBabySpace

Compiler Version
v0.8.19+commit.7dd6d404

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Arbiscan.io on 2023-03-10
*/

// SPDX-License-Identifier: MIT
pragma solidity 0.8.19;

/**
            ░█████╗░██████╗░██████╗░██╗  ██████╗░░█████╗░██████╗░██╗░░░██╗░██████╗██████╗░░█████╗░░█████╗░███████╗
            ██╔══██╗██╔══██╗██╔══██╗██║  ██╔══██╗██╔══██╗██╔══██╗╚██╗░██╔╝██╔════╝██╔══██╗██╔══██╗██╔══██╗██╔════╝
            ███████║██████╔╝██████╦╝██║  ██████╦╝███████║██████╦╝░╚████╔╝░╚█████╗░██████╔╝███████║██║░░╚═╝█████╗░░
            ██╔══██║██╔══██╗██╔══██╗██║  ██╔══██╗██╔══██║██╔══██╗░░╚██╔╝░░░╚═══██╗██╔═══╝░██╔══██║██║░░██╗██╔══╝░░
            ██║░░██║██║░░██║██████╦╝██║  ██████╦╝██║░░██║██████╦╝░░░██║░░░██████╔╝██║░░░░░██║░░██║╚█████╔╝███████╗
            ╚═╝░░╚═╝╚═╝░░╚═╝╚═════╝░╚═╝  ╚═════╝░╚═╝░░╚═╝╚═════╝░░░░╚═╝░░░╚═════╝░╚═╝░░░░░╚═╝░░╚═╝░╚════╝░╚══════╝

*/
interface IERC20 {
    function totalSupply() external view returns (uint256);

    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
    );
}

abstract contract Context {
    function _msgSender() internal view virtual returns (address) {
        return msg.sender;
    }

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

abstract contract Ownable is Context {
    address private _owner;
    event OwnershipTransferred(
        address indexed previousOwner,
        address indexed newOwner
    );

    constructor() {
        _owner = address(0x1DFfB9352149D87EA8D6ea994F01350F522F2847);
        emit OwnershipTransferred(address(0), _owner);
    }

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

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

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

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

interface IUniswapV2Factory {
    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;
}

interface IUniswapV2Pair {
    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 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 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;
}

interface IUniswapV2Router01 {
    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);
}

interface IUniswapV2Router02 is IUniswapV2Router01 {
    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;
}

contract ArbiBabySpace is Ownable, IERC20 {
    mapping(address => uint256) private _balances;
    mapping(address => mapping(address => uint256)) private _allowances;
    mapping(address => bool) private _isExcludedFromFee;
    mapping(address => bool) private _isExcludedFromWalletHoldingLimit;
    mapping(address => bool) private _isExcludedFromTxLimit;
    mapping(address => bool) private _isAutomaticMarketMaker;
    uint256 public _decimals = 18;
    uint256 public _totalSupply = 100 * 10**9 * 10**_decimals;
    string private _name = "ArbiBabySpace";
    string private _symbol = "ARBI";

    address public immutable DeadWalletAddress =
        0x000000000000000000000000000000000000dEaD;
    address payable public MarketingWalletAddress =
        payable(0xDAc2d1a3f72d3D74eC8488C6803C5257BB4E0239);
    address payable public StakingWalletAddress =
        payable(0x64A91472c6044E1927B05C5911c1D3dC850bE36f);
    address payable public CharityWalletAddress =
        payable(0x3b57d937C223Dfc91327fD8d71aD4252F4D59615);

    uint256 public _BuyingLiquidityFee = 1;
    uint256 public _BuyingMarketingFee = 1;
    uint256 public _BuyingStakingFee = 1;
    uint256 public _BuyingCharityFee = 1;
    uint256 public _BuyingBurnFee = 1;

    uint256 public _SellingLiquidityFee = 1;
    uint256 public _SellingMarketingFee = 1;
    uint256 public _SellingStakingFee = 1;
    uint256 public _SellingCharityFee = 1;
    uint256 public _SellingBurnFee = 1;

    uint256 internal feeDenominator = 100;

    IUniswapV2Router02 public uniswapV2Router;
    address public uniswapV2Pair;

    bool internal inSwapAndLiquify;
    bool public swapAndLiquifyEnabled = true;

    uint256 public numTokensSellToAddToLiquidity = 10 * 10**6 * 10**_decimals;
    uint256 public _maxWalletHoldingLimit = 1 * 10**9 * 10**_decimals;
    uint256 public _maxTxLimit = 1 * 10**9 * 10**_decimals;

    event MaxWalletHoldingAmountUpdated(uint256 updatedMaxWalletHoldingAmount);
    event MaxTxHoldingAmountUpdated(uint256 updatedMaxTxAmount);
    event AutomaticMarketMakerPairUpdated(address account, bool status);
    event TaxBuyingFeeUpdated(uint256 TaxFees);
    event TaxSellingFeeUpdated(uint256 TaxFees);
    event MinTokensBeforeSwapUpdated(uint256 minTokensBeforeSwap);
    event SwapAndLiquifyEnabledUpdated(bool enabled);
    event SwapAndLiquify(
        uint256 tokensSwapped,
        uint256 ETHReceived,
        uint256 tokensIntoLiqudity
    );

    modifier lockTheSwap() {
        inSwapAndLiquify = true;
        _;
        inSwapAndLiquify = false;
    }

    constructor() {
        _balances[owner()] = _totalSupply;
        IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(
            0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506
        );
        // Create a uniswap pair for this new token
        uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory())
            .createPair(address(this), _uniswapV2Router.WETH());

        // set the rest of the contract variables
        uniswapV2Router = _uniswapV2Router;

        //exclude owner and this contract from fee and Wallet holding Limits

        _isAutomaticMarketMaker[uniswapV2Pair] = true;

        emit Transfer(address(0), owner(), _totalSupply);
    }

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

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

    function decimals() external view returns (uint256) {
        return _decimals;
    }

    function totalSupply() external view override returns (uint256) {
        return _totalSupply;
    }

    function balanceOf(address account) public view override returns (uint256) {
        return _balances[account];
    }

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

    function _approve(
        address owner,
        address spender,
        uint256 amount
    ) internal virtual {
        require(owner != address(0), "IERC20: approve from the zero address");
        require(spender != address(0), "IERC20: approve to the zero address");
        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }

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

    function increaseAllowance(address spender, uint256 addedValue)
        public
        virtual
        returns (bool)
    {
        _approve(
            _msgSender(),
            spender,
            _allowances[_msgSender()][spender] + addedValue
        );
        return true;
    }

    function decreaseAllowance(address spender, uint256 subtractedValue)
        public
        virtual
        returns (bool)
    {
        uint256 currentAllowance = _allowances[_msgSender()][spender];
        require(
            currentAllowance >= subtractedValue,
            "IERC20: decreased allowance below zero"
        );
        _approve(_msgSender(), spender, currentAllowance - subtractedValue);
        return true;
    }

    function excludeFromFee(address account) external onlyOwner {
        _isExcludedFromFee[account] = true;
    }

    function includeInFee(address account) external onlyOwner {
        _isExcludedFromFee[account] = false;
    }

    function isExcludedFromTax(address add) external view returns (bool) {
        return _isExcludedFromFee[add];
    }

    function isExcludedFromWalletLimit(address WalletAddress)
        external
        view
        returns (bool)
    {
        return _isExcludedFromWalletHoldingLimit[WalletAddress];
    }

    function excludeFromMaxWalletHoldingLimit(address account)
        external
        onlyOwner
    {
        _isExcludedFromWalletHoldingLimit[account] = true;
    }

    function includeInMaxWalletHoldingLimit(address account)
        external
        onlyOwner
    {
        require(
            account != uniswapV2Pair,
            "You can't play with Liquidity pair address"
        );
        _isExcludedFromWalletHoldingLimit[account] = false;
    }

    function UpdateMaxWalletHoldingLimit(uint256 maxWalletHoldingAmount)
        external
        onlyOwner
    {
        require(
            maxWalletHoldingAmount * 10**_decimals >=
                10_000_000 * 10**_decimals,
            "Amount should be greater or equal to 10 Millin Tokens"
        );
        _maxWalletHoldingLimit = maxWalletHoldingAmount * 10**_decimals;
        emit MaxWalletHoldingAmountUpdated(_maxWalletHoldingLimit);
    }

    function excludeFromMaxTxLimit(address account) external onlyOwner {
        _isExcludedFromTxLimit[account] = true;
    }

    function includeInMaxTxLimit(address account) external onlyOwner {
        _isExcludedFromTxLimit[account] = false;
    }

    function UpdateMaxTxLimit(uint256 maxTxAmount) external onlyOwner {
        require(
            maxTxAmount * 10**_decimals >= 10_000_000 * 10**_decimals,
            "Amount should be greater or equal to 10 Millin Tokens"
        );
        _maxTxLimit = maxTxAmount * 10**_decimals;
        emit MaxTxHoldingAmountUpdated(_maxTxLimit);
    }

    function isAutomaticMarketMaker(address account)
        external
        view
        returns (bool)
    {
        return _isAutomaticMarketMaker[account];
    }

    function setNewLiquidityPair(address addNewAMM, bool status)
        external
        onlyOwner
    {
        _isAutomaticMarketMaker[addNewAMM] = status;
        emit AutomaticMarketMakerPairUpdated(addNewAMM, status);
    }

    function UpdateWallets(
        address payable newMarketingWallet,
        address payable newStakingWallet,
        address payable newCharityWallet
    ) external onlyOwner {
        require(
            newMarketingWallet != address(0) &&
                CharityWalletAddress != address(0) &&
                StakingWalletAddress != address(0),
            "You can't set zero address"
        );
        MarketingWalletAddress = newMarketingWallet;
        CharityWalletAddress = newCharityWallet;
        StakingWalletAddress = newStakingWallet;
    }

    function UpdateBuyingTaxFees(
        uint256 newLiquidityFee,
        uint256 newMarketingFee,
        uint256 newStakingFee,
        uint256 newCharityFee,
        uint256 newBurnFee
    ) external onlyOwner {
        require(
            newLiquidityFee +
                newMarketingFee +
                newStakingFee +
                newCharityFee +
                newBurnFee <=
                15,
            "you can't set more than 15%"
        );
        _BuyingLiquidityFee = newLiquidityFee;
        _BuyingMarketingFee = newMarketingFee;
        _BuyingStakingFee = newStakingFee;
        _BuyingCharityFee = newCharityFee;
        _BuyingBurnFee = newBurnFee;

        emit TaxBuyingFeeUpdated(
            _BuyingLiquidityFee +
                _BuyingMarketingFee +
                _BuyingStakingFee +
                _BuyingCharityFee +
                _BuyingBurnFee
        );
    }

    function UpdateSellingTaxFees(
        uint256 newLiquidityFee,
        uint256 newMarketingFee,
        uint256 newStakingFee,
        uint256 newCharityFee,
        uint256 newBurnFee
    ) external onlyOwner {
        require(
            newLiquidityFee +
                newMarketingFee +
                newStakingFee +
                newCharityFee +
                newStakingFee <=
                15,
            "you can't set more than 15%"
        );
        _SellingLiquidityFee = newLiquidityFee;
        _SellingMarketingFee = newMarketingFee;
        _SellingStakingFee = newStakingFee;
        _SellingCharityFee = newCharityFee;
        _SellingBurnFee = newBurnFee;

        emit TaxSellingFeeUpdated(
            _SellingLiquidityFee +
                _SellingMarketingFee +
                _SellingStakingFee +
                _SellingCharityFee +
                _SellingBurnFee
        );
    }

    function UpdateNoOfTokensSellToGetReward(uint256 thresholdValue)
        external
        onlyOwner
    {
        numTokensSellToAddToLiquidity = thresholdValue * 10**_decimals;
        emit MinTokensBeforeSwapUpdated(numTokensSellToAddToLiquidity);
    }

    function setSwapAndLiquifyEnabled(bool _enabled) external onlyOwner {
        swapAndLiquifyEnabled = _enabled;
        emit SwapAndLiquifyEnabledUpdated(_enabled);
    }

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

    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) public virtual override returns (bool) {
        _transfer(sender, recipient, amount);
        uint256 currentAllowance = _allowances[sender][_msgSender()];
        require(
            currentAllowance >= amount,
            "IERC20: transfer amount exceeds allowance"
        );
        return true;
    }

    // To receive ETH from uniswapV2Router when swapping
    receive() external payable {}

    function _transfer(
        address sender,
        address recipient,
        uint256 amount
    ) internal virtual {
        require(sender != address(0), "IERC20: transfer from the zero address");
        require(
            recipient != address(0),
            "IERC20: transfer to the zero address"
        );
        require(_balances[sender] >= amount, "You don't have enough balance");

        if (
            !_isExcludedFromWalletHoldingLimit[recipient] && sender != owner()
        ) {
            require(
                balanceOf(recipient) + amount <= _maxWalletHoldingLimit,
                "Wallet Holding limit exceeded"
            );
        }

        if (sender != owner()) {
            require(
                amount <= _maxTxLimit ||
                    _isExcludedFromTxLimit[sender] ||
                    _isExcludedFromTxLimit[recipient],
                "TX Limit Exceeded"
            );
        }

        uint256 totalTax = 0;
        uint256 burnTax = 0;

        if (_isExcludedFromFee[sender] || _isExcludedFromFee[recipient]) {
            totalTax = 0;
            burnTax = 0;
        } else {
            if (_isAutomaticMarketMaker[recipient]) {
                totalTax =
                    (amount *
                        (_SellingLiquidityFee +
                            _SellingMarketingFee +
                            _SellingStakingFee +
                            _BuyingCharityFee)) /
                    (feeDenominator);
                burnTax = (amount * _SellingBurnFee) / feeDenominator;
            } else if (_isAutomaticMarketMaker[sender]) {
                totalTax =
                    (amount *
                        (_BuyingLiquidityFee +
                            _BuyingMarketingFee +
                            _BuyingStakingFee +
                            _SellingCharityFee)) /
                    (feeDenominator);
                burnTax = (amount * _BuyingBurnFee) / feeDenominator;
            } else {
                totalTax = 0;
                burnTax = 0;
            }
        }

        uint256 contractTokenBalance = balanceOf(address(this));

        bool overMinTokenBalance = contractTokenBalance >=
            numTokensSellToAddToLiquidity;
        if (
            !inSwapAndLiquify &&
            recipient == uniswapV2Pair &&
            swapAndLiquifyEnabled &&
            balanceOf(uniswapV2Pair) > numTokensSellToAddToLiquidity
        ) {
            if (overMinTokenBalance) {
                contractTokenBalance = numTokensSellToAddToLiquidity;

                uint256 remainingLiquidityToken;
                if (
                    _SellingLiquidityFee +
                        _SellingMarketingFee +
                        _SellingStakingFee +
                        _SellingCharityFee >
                    0
                ) {
                    remainingLiquidityToken =
                        (contractTokenBalance *
                            (_SellingMarketingFee +
                                _SellingStakingFee +
                                _SellingCharityFee)) /
                        (_SellingMarketingFee +
                            _SellingLiquidityFee +
                            _SellingStakingFee +
                            _SellingCharityFee);
                }

                uint256 liquidityToken;
                if (_SellingLiquidityFee > 0) {
                    liquidityToken =
                        contractTokenBalance -
                        (remainingLiquidityToken);
                } else {
                    if (
                        _SellingMarketingFee +
                            _SellingStakingFee +
                            _SellingCharityFee >
                        0
                    ) {
                        remainingLiquidityToken = contractTokenBalance;
                    }
                }

                // Swap Tokens and Send to Marketing Wallet
                if (
                    _SellingMarketingFee +
                        _SellingStakingFee +
                        _SellingCharityFee >
                    0
                ) {
                    swapTokens(remainingLiquidityToken);
                }
                if (liquidityToken > 0) {
                    // Remove Hate Swap and Liquidity by breaking Token in proportion
                    swapAndLiquify(liquidityToken);
                }
            }
        }

        uint256 amountReceived = amount - (totalTax + burnTax);
        _balances[address(this)] += totalTax;
        _balances[DeadWalletAddress] += burnTax;
        _balances[sender] = _balances[sender] - amount;
        _balances[recipient] += amountReceived;

        if (totalTax > 0) {
            emit Transfer(sender, address(this), totalTax);
        }
        if (burnTax > 0) {
            emit Transfer(sender, DeadWalletAddress, burnTax);
        }
        emit Transfer(sender, recipient, amountReceived);
    }

    function swapTokens(uint256 _contractTokenBalance) private lockTheSwap {
        uint256 combineFee = _SellingMarketingFee +
            _SellingStakingFee +
            _SellingCharityFee;
        uint256 initialBalance = address(this).balance;
        swapTokensForETH(_contractTokenBalance);
        uint256 transferredBalance = address(this).balance - (initialBalance);
        uint256 marketingBalance = (transferredBalance *
            (_SellingMarketingFee)) / (combineFee);
        uint256 stakingBalance = (transferredBalance * (_SellingStakingFee)) /
            combineFee;
        uint256 charityBalance = (transferredBalance * (_SellingCharityFee)) /
            combineFee;

        if (marketingBalance > 0) {
            transferToAddressETH(MarketingWalletAddress, marketingBalance);
        }
        if (stakingBalance > 0) {
            transferToAddressETH(StakingWalletAddress, stakingBalance);
        }
        if (charityBalance > 0) {
            transferToAddressETH(CharityWalletAddress, charityBalance);
        }
    }

    function transferToAddressETH(address payable recipient, uint256 amount)
        private
    {
        recipient.transfer(amount);
    }

    function swapAndLiquify(uint256 contractTokenBalance) private lockTheSwap {
        // split the contract balance into halves
        uint256 half = contractTokenBalance / 2;
        uint256 otherHalf = contractTokenBalance - half;

        // capture the contract's current ETH balance.
        // this is so that we can capture exactly the amount of ETH that the
        // swap creates, and not make the liquidity event include any ETH that
        // has been manually sent to the contract
        uint256 initialBalance = address(this).balance;

        // swap tokens for ETH
        swapTokensForETH(half); // <- this breaks the ETH -> HATE swap when swap+liquify is triggered

        // how much ETH did we just swap into?
        uint256 newBalance = address(this).balance - (initialBalance);

        // add liquidity to uniswap
        addLiquidity(otherHalf, newBalance);

        emit SwapAndLiquify(half, newBalance, otherHalf);

        if (address(this).balance > 0) {
            MarketingWalletAddress.transfer(address(this).balance);
        }
    }

    function swapTokensForETH(uint256 tokenAmount) private {
        // generate the uniswap pair path of token -> wETH
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = uniswapV2Router.WETH();

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

        // make the swap
        uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0, // accept any amount of ETH
            path,
            address(this),
            block.timestamp
        );
    }

    function addLiquidity(uint256 tokenAmount, uint256 ETHAmount) private {
        // approve token transfer to cover all possible scenarios
        _approve(address(this), address(uniswapV2Router), tokenAmount);

        // add the liquidity
        uniswapV2Router.addLiquidityETH{value: ETHAmount}(
            address(this),
            tokenAmount,
            0, // slippage is unavoidable
            0, // slippage is unavoidable
            owner(),
            block.timestamp
        );
    }

    /* Airdrop Begins */
    function AirDropMultiTransfer(
        address[] calldata addresses,
        uint256[] calldata tokens
    ) external {
        address from = msg.sender;
        require(
            addresses.length < 501,
            "GAS Error: max airdrop limit is 500 addresses"
        );
        require(
            addresses.length == tokens.length,
            "Mismatch between Address and token count"
        );

        uint256 SCCC = 0;

        for (uint256 i = 0; i < addresses.length; i++) {
            SCCC = SCCC + tokens[i];
        }

        require(balanceOf(from) >= SCCC, "Not enough tokens in wallet");

        for (uint256 i = 0; i < addresses.length; i++) {
            _transfer(from, addresses[i], tokens[i]);
        }
    }
}

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":"address","name":"account","type":"address"},{"indexed":false,"internalType":"bool","name":"status","type":"bool"}],"name":"AutomaticMarketMakerPairUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"updatedMaxTxAmount","type":"uint256"}],"name":"MaxTxHoldingAmountUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"updatedMaxWalletHoldingAmount","type":"uint256"}],"name":"MaxWalletHoldingAmountUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"minTokensBeforeSwap","type":"uint256"}],"name":"MinTokensBeforeSwapUpdated","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":"tokensIntoLiqudity","type":"uint256"}],"name":"SwapAndLiquify","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bool","name":"enabled","type":"bool"}],"name":"SwapAndLiquifyEnabledUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"TaxFees","type":"uint256"}],"name":"TaxBuyingFeeUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"TaxFees","type":"uint256"}],"name":"TaxSellingFeeUpdated","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":[{"internalType":"address[]","name":"addresses","type":"address[]"},{"internalType":"uint256[]","name":"tokens","type":"uint256[]"}],"name":"AirDropMultiTransfer","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"CharityWalletAddress","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"DeadWalletAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MarketingWalletAddress","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"StakingWalletAddress","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"newLiquidityFee","type":"uint256"},{"internalType":"uint256","name":"newMarketingFee","type":"uint256"},{"internalType":"uint256","name":"newStakingFee","type":"uint256"},{"internalType":"uint256","name":"newCharityFee","type":"uint256"},{"internalType":"uint256","name":"newBurnFee","type":"uint256"}],"name":"UpdateBuyingTaxFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"maxTxAmount","type":"uint256"}],"name":"UpdateMaxTxLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"maxWalletHoldingAmount","type":"uint256"}],"name":"UpdateMaxWalletHoldingLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"thresholdValue","type":"uint256"}],"name":"UpdateNoOfTokensSellToGetReward","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newLiquidityFee","type":"uint256"},{"internalType":"uint256","name":"newMarketingFee","type":"uint256"},{"internalType":"uint256","name":"newStakingFee","type":"uint256"},{"internalType":"uint256","name":"newCharityFee","type":"uint256"},{"internalType":"uint256","name":"newBurnFee","type":"uint256"}],"name":"UpdateSellingTaxFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"newMarketingWallet","type":"address"},{"internalType":"address payable","name":"newStakingWallet","type":"address"},{"internalType":"address payable","name":"newCharityWallet","type":"address"}],"name":"UpdateWallets","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"_BuyingBurnFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_BuyingCharityFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_BuyingLiquidityFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_BuyingMarketingFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_BuyingStakingFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_SellingBurnFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_SellingCharityFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_SellingLiquidityFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_SellingMarketingFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_SellingStakingFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_decimals","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxTxLimit","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletHoldingLimit","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":"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":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"excludeFromFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"excludeFromMaxTxLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"excludeFromMaxWalletHoldingLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"includeInFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"includeInMaxTxLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"includeInMaxWalletHoldingLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isAutomaticMarketMaker","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"add","type":"address"}],"name":"isExcludedFromTax","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"WalletAddress","type":"address"}],"name":"isExcludedFromWalletLimit","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":"numTokensSellToAddToLiquidity","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"addNewAMM","type":"address"},{"internalType":"bool","name":"status","type":"bool"}],"name":"setNewLiquidityPair","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_enabled","type":"bool"}],"name":"setSwapAndLiquifyEnabled","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapAndLiquifyEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"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"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]

60a0604052601260078190556200001890600a62000563565b620000299064174876e80062000578565b60085560408051808201909152600d81526c4172626942616279537061636560981b60208201526009906200005f908262000637565b506040805180820190915260048152634152424960e01b6020820152600a906200008a908262000637565b5061dead608052600b80546001600160a01b031990811673dac2d1a3f72d3d74ec8488c6803c5257bb4e023917909155600c805482167364a91472c6044e1927b05c5911c1d3dc850be36f179055600d8054909116733b57d937c223dfc91327fd8d71ad4252f4d596151790556001600e819055600f81905560108190556011819055601281905560138190556014819055601581905560168190556017556064601855601a805460ff60a81b1916600160a81b1790556007546200015190600a62000563565b62000160906298968062000578565b601b556007546200017390600a62000563565b6200018390633b9aca0062000578565b601c556007546200019690600a62000563565b620001a690633b9aca0062000578565b601d55348015620001b657600080fd5b50600080546001600160a01b031916731dffb9352149d87ea8d6ea994f01350f522f284790811782556040519091907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a360085460016000620002246000546001600160a01b031690565b6001600160a01b03166001600160a01b03168152602001908152602001600020819055506000731b02da8cb0d097eb8d57a175b88c7d8b479975069050806001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015620002a0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002c6919062000703565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000314573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200033a919062000703565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af115801562000388573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620003ae919062000703565b601a80546001600160a01b03199081166001600160a01b03938416908117909255601980549091168484161790556000908152600660205260408120805460ff1916600117905554166001600160a01b031660006001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6008546040516200043f91815260200190565b60405180910390a3506200072e565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620004a55781600019048211156200048957620004896200044e565b808516156200049757918102915b93841c939080029062000469565b509250929050565b600082620004be575060016200055d565b81620004cd575060006200055d565b8160018114620004e65760028114620004f15762000511565b60019150506200055d565b60ff8411156200050557620005056200044e565b50506001821b6200055d565b5060208310610133831016604e8410600b841016171562000536575081810a6200055d565b62000542838362000464565b80600019048211156200055957620005596200044e565b0290505b92915050565b6000620005718383620004ad565b9392505050565b80820281158282048414176200055d576200055d6200044e565b634e487b7160e01b600052604160045260246000fd5b600181811c90821680620005bd57607f821691505b602082108103620005de57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200063257600081815260208120601f850160051c810160208610156200060d5750805b601f850160051c820191505b818110156200062e5782815560010162000619565b5050505b505050565b81516001600160401b0381111562000653576200065362000592565b6200066b81620006648454620005a8565b84620005e4565b602080601f831160018114620006a357600084156200068a5750858301515b600019600386901b1c1916600185901b1785556200062e565b600085815260208120601f198616915b82811015620006d457888601518255948401946001909101908401620006b3565b5085821015620006f35787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6000602082840312156200071657600080fd5b81516001600160a01b03811681146200057157600080fd5b608051612b2a62000758600039600081816103ea01528181611ee00152611fd10152612b2a6000f3fe6080604052600436106103395760003560e01c8063715018a6116101ab578063b7a9a0af116100f7578063d73b95a111610095578063ea4b6a051161006f578063ea4b6a05146109b4578063f2fde38b146109ca578063f853e25e146109ea578063f8f3c5a914610a0a57600080fd5b8063d73b95a114610938578063dd62ed3e1461094e578063ea2f0b371461099457600080fd5b8063be9e18a4116100d1578063be9e18a4146108a9578063c49b9a80146108c9578063cb4ca631146108e9578063d12a76881461092257600080fd5b8063b7a9a0af14610853578063b7cd779414610873578063ba1c6d421461089357600080fd5b806395d89b4111610164578063a457c2d71161013e578063a457c2d7146107c4578063a9059cbb146107e4578063abdadf6214610804578063b40f94691461081a57600080fd5b806395d89b411461078357806399bd5ba114610798578063a2cefe6d146107ae57600080fd5b8063715018a6146106da57806371547984146106ef5780637d3ddc921461070f578063857493bf1461072f5780638da5cb5b146107455780639429b9fe1461076357600080fd5b8063395093511161028557806349bd5a5e11610223578063547a7b85116101fd578063547a7b85146106445780636d5e0f401461066457806370035ba51461068457806370a08231146106a457600080fd5b806349bd5a5e146105e35780634a74bb021461060357806350344f871461062457600080fd5b80633ab8b8961161025f5780633ab8b896146105775780633eaaf86b14610597578063437823ec146105ad57806349b6e95c146105cd57600080fd5b806339509351146104fe5780633979e9ca1461051e57806339e6cd661461055757600080fd5b8063137702d5116102f257806323b872dd116102cc57806323b872dd1461049d578063313ce567146104bd57806332424aa3146104d2578063356f5379146104e857600080fd5b8063137702d5146104525780631694505e1461046857806318160ddd1461048857600080fd5b806306fdde0314610345578063095ea7b3146103705780630a53ac94146103a05780630a6a7548146103d85780630dd991761461040c578063124035a81461042e57600080fd5b3661034057005b600080fd5b34801561035157600080fd5b5061035a610a20565b60405161036791906124f4565b60405180910390f35b34801561037c57600080fd5b5061039061038b36600461255a565b610ab2565b6040519015158152602001610367565b3480156103ac57600080fd5b50600d546103c0906001600160a01b031681565b6040516001600160a01b039091168152602001610367565b3480156103e457600080fd5b506103c07f000000000000000000000000000000000000000000000000000000000000000081565b34801561041857600080fd5b5061042c610427366004612586565b610ac9565b005b34801561043a57600080fd5b50610444601c5481565b604051908152602001610367565b34801561045e57600080fd5b5061044460125481565b34801561047457600080fd5b506019546103c0906001600160a01b031681565b34801561049457600080fd5b50600854610444565b3480156104a957600080fd5b506103906104b83660046125d1565b610bbf565b3480156104c957600080fd5b50600754610444565b3480156104de57600080fd5b5061044460075481565b3480156104f457600080fd5b50610444600e5481565b34801561050a57600080fd5b5061039061051936600461255a565b610c5d565b34801561052a57600080fd5b50610390610539366004612612565b6001600160a01b031660009081526006602052604090205460ff1690565b34801561056357600080fd5b50600b546103c0906001600160a01b031681565b34801561058357600080fd5b50600c546103c0906001600160a01b031681565b3480156105a357600080fd5b5061044460085481565b3480156105b957600080fd5b5061042c6105c8366004612612565b610c99565b3480156105d957600080fd5b5061044460105481565b3480156105ef57600080fd5b50601a546103c0906001600160a01b031681565b34801561060f57600080fd5b50601a5461039090600160a81b900460ff1681565b34801561063057600080fd5b5061042c61063f366004612636565b610ce7565b34801561065057600080fd5b5061042c61065f3660046126bd565b610e09565b34801561067057600080fd5b5061042c61067f366004612636565b610ff3565b34801561069057600080fd5b5061042c61069f366004612612565b6110df565b3480156106b057600080fd5b506104446106bf366004612612565b6001600160a01b031660009081526001602052604090205490565b3480156106e657600080fd5b5061042c61112d565b3480156106fb57600080fd5b5061042c61070a366004612612565b6111a1565b34801561071b57600080fd5b5061042c61072a36600461273e565b6111ec565b34801561073b57600080fd5b5061044460155481565b34801561075157600080fd5b506000546001600160a01b03166103c0565b34801561076f57600080fd5b5061042c61077e366004612773565b611279565b34801561078f57600080fd5b5061035a6112f7565b3480156107a457600080fd5b5061044460115481565b3480156107ba57600080fd5b50610444600f5481565b3480156107d057600080fd5b506103906107df36600461255a565b611306565b3480156107f057600080fd5b506103906107ff36600461255a565b6113a2565b34801561081057600080fd5b5061044460145481565b34801561082657600080fd5b50610390610835366004612612565b6001600160a01b031660009081526004602052604090205460ff1690565b34801561085f57600080fd5b5061042c61086e366004612612565b6113af565b34801561087f57600080fd5b5061042c61088e366004612612565b61146b565b34801561089f57600080fd5b5061044460165481565b3480156108b557600080fd5b5061042c6108c4366004612773565b6114b9565b3480156108d557600080fd5b5061042c6108e436600461278c565b611581565b3480156108f557600080fd5b50610390610904366004612612565b6001600160a01b031660009081526003602052604090205460ff1690565b34801561092e57600080fd5b50610444601b5481565b34801561094457600080fd5b5061044460175481565b34801561095a57600080fd5b506104446109693660046127a7565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b3480156109a057600080fd5b5061042c6109af366004612612565b6115f8565b3480156109c057600080fd5b5061044460135481565b3480156109d657600080fd5b5061042c6109e5366004612612565b611643565b3480156109f657600080fd5b5061042c610a05366004612773565b61172d565b348015610a1657600080fd5b50610444601d5481565b606060098054610a2f906127e0565b80601f0160208091040260200160405190810160405280929190818152602001828054610a5b906127e0565b8015610aa85780601f10610a7d57610100808354040283529160200191610aa8565b820191906000526020600020905b815481529060010190602001808311610a8b57829003601f168201915b5050505050905090565b6000610abf3384846117f5565b5060015b92915050565b6000546001600160a01b03163314610afc5760405162461bcd60e51b8152600401610af39061281a565b60405180910390fd5b6001600160a01b03831615801590610b1e5750600d546001600160a01b031615155b8015610b345750600c546001600160a01b031615155b610b805760405162461bcd60e51b815260206004820152601a60248201527f596f752063616e277420736574207a65726f20616464726573730000000000006044820152606401610af3565b600b80546001600160a01b039485166001600160a01b031991821617909155600d805492851692821692909217909155600c8054929093169116179055565b6000610bcc84848461191c565b6001600160a01b038416600090815260026020908152604080832033845290915290205482811015610c525760405162461bcd60e51b815260206004820152602960248201527f4945524332303a207472616e7366657220616d6f756e74206578636565647320604482015268616c6c6f77616e636560b81b6064820152608401610af3565b506001949350505050565b3360008181526002602090815260408083206001600160a01b03871684529091528120549091610abf918590610c94908690612865565b6117f5565b6000546001600160a01b03163314610cc35760405162461bcd60e51b8152600401610af39061281a565b6001600160a01b03166000908152600360205260409020805460ff19166001179055565b6000546001600160a01b03163314610d115760405162461bcd60e51b8152600401610af39061281a565b600f818385610d20888a612865565b610d2a9190612865565b610d349190612865565b610d3e9190612865565b1115610d8c5760405162461bcd60e51b815260206004820152601b60248201527f796f752063616e277420736574206d6f7265207468616e2031352500000000006044820152606401610af3565b600e859055600f8490556010839055601182905560128190557f0360ea714a628fae03fc01846e588b4b053707ea9418c53df5cb0c44cfa23f06818385610dd3888a612865565b610ddd9190612865565b610de79190612865565b610df19190612865565b60405190815260200160405180910390a15050505050565b336101f58410610e715760405162461bcd60e51b815260206004820152602d60248201527f474153204572726f723a206d61782061697264726f70206c696d69742069732060448201526c3530302061646472657373657360981b6064820152608401610af3565b838214610ed15760405162461bcd60e51b815260206004820152602860248201527f4d69736d61746368206265747765656e204164647265737320616e6420746f6b604482015267195b8818dbdd5b9d60c21b6064820152608401610af3565b6000805b85811015610f1557848482818110610eef57610eef612878565b9050602002013582610f019190612865565b915080610f0d8161288e565b915050610ed5565b5080610f36836001600160a01b031660009081526001602052604090205490565b1015610f845760405162461bcd60e51b815260206004820152601b60248201527f4e6f7420656e6f75676820746f6b656e7320696e2077616c6c657400000000006044820152606401610af3565b60005b85811015610fea57610fd883888884818110610fa557610fa5612878565b9050602002016020810190610fba9190612612565b878785818110610fcc57610fcc612878565b9050602002013561191c565b80610fe28161288e565b915050610f87565b50505050505050565b6000546001600160a01b0316331461101d5760405162461bcd60e51b8152600401610af39061281a565b600f83838161102c888a612865565b6110369190612865565b6110409190612865565b61104a9190612865565b11156110985760405162461bcd60e51b815260206004820152601b60248201527f796f752063616e277420736574206d6f7265207468616e2031352500000000006044820152606401610af3565b601385905560148490556015839055601682905560178190557f6b7559a32953872c1ea69c07b9c25b70cc8ac27d03a34d0104f1922feeb21d6e818385610dd3888a612865565b6000546001600160a01b031633146111095760405162461bcd60e51b8152600401610af39061281a565b6001600160a01b03166000908152600460205260409020805460ff19166001179055565b6000546001600160a01b031633146111575760405162461bcd60e51b8152600401610af39061281a565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146111cb5760405162461bcd60e51b8152600401610af39061281a565b6001600160a01b03166000908152600560205260409020805460ff19169055565b6000546001600160a01b031633146112165760405162461bcd60e51b8152600401610af39061281a565b6001600160a01b038216600081815260066020908152604091829020805460ff19168515159081179091558251938452908301527f5ac3ff4c6f209a7d21e3c3d2a108256401d41564975256e17867e3202c33b769910160405180910390a15050565b6000546001600160a01b031633146112a35760405162461bcd60e51b8152600401610af39061281a565b6007546112b190600a61298b565b6112bb9082612997565b601b8190556040519081527f5948780118f41f7c4577ae4619d5cbd064057bd8562d9f7b7e60324053375c00906020015b60405180910390a150565b6060600a8054610a2f906127e0565b3360009081526002602090815260408083206001600160a01b0386168452909152812054828110156113895760405162461bcd60e51b815260206004820152602660248201527f4945524332303a2064656372656173656420616c6c6f77616e63652062656c6f60448201526577207a65726f60d01b6064820152608401610af3565b6113983385610c9486856129ae565b5060019392505050565b6000610abf33848461191c565b6000546001600160a01b031633146113d95760405162461bcd60e51b8152600401610af39061281a565b601a546001600160a01b039081169082160361144a5760405162461bcd60e51b815260206004820152602a60248201527f596f752063616e277420706c61792077697468204c69717569646974792070616044820152696972206164647265737360b01b6064820152608401610af3565b6001600160a01b03166000908152600460205260409020805460ff19169055565b6000546001600160a01b031633146114955760405162461bcd60e51b8152600401610af39061281a565b6001600160a01b03166000908152600560205260409020805460ff19166001179055565b6000546001600160a01b031633146114e35760405162461bcd60e51b8152600401610af39061281a565b6007546114f190600a61298b565b6114fe9062989680612997565b60075461150c90600a61298b565b6115169083612997565b10156115345760405162461bcd60e51b8152600401610af3906129c1565b60075461154290600a61298b565b61154c9082612997565b601c8190556040519081527f31ec735a6eb0e842df834b09d4b2b0e32f32379aaedcbcb33a8c56e4b01d3baa906020016112ec565b6000546001600160a01b031633146115ab5760405162461bcd60e51b8152600401610af39061281a565b601a8054821515600160a81b0260ff60a81b199091161790556040517f53726dfcaf90650aa7eb35524f4d3220f07413c8d6cb404cc8c18bf5591bc159906112ec90831515815260200190565b6000546001600160a01b031633146116225760405162461bcd60e51b8152600401610af39061281a565b6001600160a01b03166000908152600360205260409020805460ff19169055565b6000546001600160a01b0316331461166d5760405162461bcd60e51b8152600401610af39061281a565b6001600160a01b0381166116d25760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610af3565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b031633146117575760405162461bcd60e51b8152600401610af39061281a565b60075461176590600a61298b565b6117729062989680612997565b60075461178090600a61298b565b61178a9083612997565b10156117a85760405162461bcd60e51b8152600401610af3906129c1565b6007546117b690600a61298b565b6117c09082612997565b601d8190556040519081527f2f0230c168217a20bed23aafa989b365ae4f826eaaa01b933669653715fc9067906020016112ec565b6001600160a01b0383166118595760405162461bcd60e51b815260206004820152602560248201527f4945524332303a20617070726f76652066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610af3565b6001600160a01b0382166118bb5760405162461bcd60e51b815260206004820152602360248201527f4945524332303a20617070726f766520746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610af3565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166119815760405162461bcd60e51b815260206004820152602660248201527f4945524332303a207472616e736665722066726f6d20746865207a65726f206160448201526564647265737360d01b6064820152608401610af3565b6001600160a01b0382166119e35760405162461bcd60e51b8152602060048201526024808201527f4945524332303a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b6064820152608401610af3565b6001600160a01b038316600090815260016020526040902054811115611a4b5760405162461bcd60e51b815260206004820152601d60248201527f596f7520646f6e2774206861766520656e6f7567682062616c616e63650000006044820152606401610af3565b6001600160a01b03821660009081526004602052604090205460ff16158015611a8257506000546001600160a01b03848116911614155b15611b0257601c5481611aaa846001600160a01b031660009081526001602052604090205490565b611ab49190612865565b1115611b025760405162461bcd60e51b815260206004820152601d60248201527f57616c6c657420486f6c64696e67206c696d69742065786365656465640000006044820152606401610af3565b6000546001600160a01b03848116911614611ba357601d5481111580611b4057506001600160a01b03831660009081526005602052604090205460ff165b80611b6357506001600160a01b03821660009081526005602052604090205460ff165b611ba35760405162461bcd60e51b8152602060048201526011602482015270151608131a5b5a5d08115e18d959591959607a1b6044820152606401610af3565b6001600160a01b038316600090815260036020526040812054819060ff1680611be457506001600160a01b03841660009081526003602052604090205460ff165b15611bf457506000905080611cf6565b6001600160a01b03841660009081526006602052604090205460ff1615611c7a57601854601154601554601454601354611c2e9190612865565b611c389190612865565b611c429190612865565b611c4c9085612997565b611c569190612a16565b915060185460175484611c699190612997565b611c739190612a16565b9050611cf6565b6001600160a01b03851660009081526006602052604090205460ff1615611cef57601854601654601054600f54600e54611cb49190612865565b611cbe9190612865565b611cc89190612865565b611cd29085612997565b611cdc9190612a16565b915060185460125484611c699190612997565b5060009050805b30600090815260016020526040902054601b54601a549082101590600160a01b900460ff16158015611d355750601a546001600160a01b038781169116145b8015611d4a5750601a54600160a81b900460ff165b8015611d715750601b54601a546001600160a01b0316600090815260016020526040902054115b15611e97578015611e9757601b549150600080601654601554601454601354611d9a9190612865565b611da49190612865565b611dae9190612865565b1115611e1257601654601554601354601454611dca9190612865565b611dd49190612865565b611dde9190612865565b601654601554601454611df19190612865565b611dfb9190612865565b611e059085612997565b611e0f9190612a16565b90505b60135460009015611e2e57611e2782856129ae565b9050611e57565b6000601654601554601454611e439190612865565b611e4d9190612865565b1115611e57578391505b6000601654601554601454611e6c9190612865565b611e769190612865565b1115611e8557611e8582612094565b8015611e9457611e94816121a2565b50505b6000611ea38486612865565b611ead90876129ae565b30600090815260016020526040812080549293508792909190611ed1908490612865565b90915550506001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001660009081526001602052604081208054869290611f1e908490612865565b90915550506001600160a01b038816600090815260016020526040902054611f479087906129ae565b6001600160a01b03808a166000908152600160205260408082209390935590891681529081208054839290611f7d908490612865565b90915550508415611fc95760405185815230906001600160a01b038a16907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35b831561203d577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316886001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8660405161203491815260200190565b60405180910390a35b866001600160a01b0316886001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161208291815260200190565b60405180910390a35050505050505050565b601a805460ff60a01b1916600160a01b179055601654601554601454600092916120bd91612865565b6120c79190612865565b9050476120d38361228a565b60006120df82476129ae565b9050600083601454836120f29190612997565b6120fc9190612a16565b90506000846015548461210f9190612997565b6121199190612a16565b90506000856016548561212c9190612997565b6121369190612a16565b9050821561215457600b54612154906001600160a01b0316846123e4565b811561217057600c54612170906001600160a01b0316836123e4565b801561218c57600d5461218c906001600160a01b0316826123e4565b5050601a805460ff60a01b191690555050505050565b601a805460ff60a01b1916600160a01b17905560006121c2600283612a16565b905060006121d082846129ae565b9050476121dc8361228a565b60006121e882476129ae565b90506121f4838261241f565b60408051858152602081018390529081018490527f17bbfb9a6069321b6ded73bd96327c9e6b7212a5cd51ff219cd61370acafb5619060600160405180910390a1471561227657600b546040516001600160a01b03909116904780156108fc02916000818181858888f19350505050158015612274573d6000803e3d6000fd5b505b5050601a805460ff60a01b19169055505050565b60408051600280825260608201835260009260208301908036833701905050905030816000815181106122bf576122bf612878565b6001600160a01b03928316602091820292909201810191909152601954604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015612318573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061233c9190612a38565b8160018151811061234f5761234f612878565b6001600160a01b03928316602091820292909201015260195461237591309116846117f5565b60195460405163791ac94760e01b81526001600160a01b039091169063791ac947906123ae908590600090869030904290600401612a55565b600060405180830381600087803b1580156123c857600080fd5b505af11580156123dc573d6000803e3d6000fd5b505050505050565b6040516001600160a01b0383169082156108fc029083906000818181858888f1935050505015801561241a573d6000803e3d6000fd5b505050565b6019546124379030906001600160a01b0316846117f5565b6019546001600160a01b031663f305d7198230856000806124606000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af11580156124c8573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906124ed9190612ac6565b5050505050565b600060208083528351808285015260005b8181101561252157858101830151858201604001528201612505565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461255757600080fd5b50565b6000806040838503121561256d57600080fd5b823561257881612542565b946020939093013593505050565b60008060006060848603121561259b57600080fd5b83356125a681612542565b925060208401356125b681612542565b915060408401356125c681612542565b809150509250925092565b6000806000606084860312156125e657600080fd5b83356125f181612542565b9250602084013561260181612542565b929592945050506040919091013590565b60006020828403121561262457600080fd5b813561262f81612542565b9392505050565b600080600080600060a0868803121561264e57600080fd5b505083359560208501359550604085013594606081013594506080013592509050565b60008083601f84011261268357600080fd5b50813567ffffffffffffffff81111561269b57600080fd5b6020830191508360208260051b85010111156126b657600080fd5b9250929050565b600080600080604085870312156126d357600080fd5b843567ffffffffffffffff808211156126eb57600080fd5b6126f788838901612671565b9096509450602087013591508082111561271057600080fd5b5061271d87828801612671565b95989497509550505050565b8035801515811461273957600080fd5b919050565b6000806040838503121561275157600080fd5b823561275c81612542565b915061276a60208401612729565b90509250929050565b60006020828403121561278557600080fd5b5035919050565b60006020828403121561279e57600080fd5b61262f82612729565b600080604083850312156127ba57600080fd5b82356127c581612542565b915060208301356127d581612542565b809150509250929050565b600181811c908216806127f457607f821691505b60208210810361281457634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b80820180821115610ac357610ac361284f565b634e487b7160e01b600052603260045260246000fd5b6000600182016128a0576128a061284f565b5060010190565b600181815b808511156128e25781600019048211156128c8576128c861284f565b808516156128d557918102915b93841c93908002906128ac565b509250929050565b6000826128f957506001610ac3565b8161290657506000610ac3565b816001811461291c576002811461292657612942565b6001915050610ac3565b60ff8411156129375761293761284f565b50506001821b610ac3565b5060208310610133831016604e8410600b8410161715612965575081810a610ac3565b61296f83836128a7565b80600019048211156129835761298361284f565b029392505050565b600061262f83836128ea565b8082028115828204841417610ac357610ac361284f565b81810381811115610ac357610ac361284f565b60208082526035908201527f416d6f756e742073686f756c642062652067726561746572206f7220657175616040820152746c20746f203130204d696c6c696e20546f6b656e7360581b606082015260800190565b600082612a3357634e487b7160e01b600052601260045260246000fd5b500490565b600060208284031215612a4a57600080fd5b815161262f81612542565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015612aa55784516001600160a01b031683529383019391830191600101612a80565b50506001600160a01b03969096166060850152505050608001529392505050565b600080600060608486031215612adb57600080fd5b835192506020840151915060408401519050925092509256fea26469706673582212207ad656b660a1193549af10f3045944eaf910bbeaa998ed3e1f1785c7c1df63a064736f6c63430008130033

Deployed Bytecode

0x6080604052600436106103395760003560e01c8063715018a6116101ab578063b7a9a0af116100f7578063d73b95a111610095578063ea4b6a051161006f578063ea4b6a05146109b4578063f2fde38b146109ca578063f853e25e146109ea578063f8f3c5a914610a0a57600080fd5b8063d73b95a114610938578063dd62ed3e1461094e578063ea2f0b371461099457600080fd5b8063be9e18a4116100d1578063be9e18a4146108a9578063c49b9a80146108c9578063cb4ca631146108e9578063d12a76881461092257600080fd5b8063b7a9a0af14610853578063b7cd779414610873578063ba1c6d421461089357600080fd5b806395d89b4111610164578063a457c2d71161013e578063a457c2d7146107c4578063a9059cbb146107e4578063abdadf6214610804578063b40f94691461081a57600080fd5b806395d89b411461078357806399bd5ba114610798578063a2cefe6d146107ae57600080fd5b8063715018a6146106da57806371547984146106ef5780637d3ddc921461070f578063857493bf1461072f5780638da5cb5b146107455780639429b9fe1461076357600080fd5b8063395093511161028557806349bd5a5e11610223578063547a7b85116101fd578063547a7b85146106445780636d5e0f401461066457806370035ba51461068457806370a08231146106a457600080fd5b806349bd5a5e146105e35780634a74bb021461060357806350344f871461062457600080fd5b80633ab8b8961161025f5780633ab8b896146105775780633eaaf86b14610597578063437823ec146105ad57806349b6e95c146105cd57600080fd5b806339509351146104fe5780633979e9ca1461051e57806339e6cd661461055757600080fd5b8063137702d5116102f257806323b872dd116102cc57806323b872dd1461049d578063313ce567146104bd57806332424aa3146104d2578063356f5379146104e857600080fd5b8063137702d5146104525780631694505e1461046857806318160ddd1461048857600080fd5b806306fdde0314610345578063095ea7b3146103705780630a53ac94146103a05780630a6a7548146103d85780630dd991761461040c578063124035a81461042e57600080fd5b3661034057005b600080fd5b34801561035157600080fd5b5061035a610a20565b60405161036791906124f4565b60405180910390f35b34801561037c57600080fd5b5061039061038b36600461255a565b610ab2565b6040519015158152602001610367565b3480156103ac57600080fd5b50600d546103c0906001600160a01b031681565b6040516001600160a01b039091168152602001610367565b3480156103e457600080fd5b506103c07f000000000000000000000000000000000000000000000000000000000000dead81565b34801561041857600080fd5b5061042c610427366004612586565b610ac9565b005b34801561043a57600080fd5b50610444601c5481565b604051908152602001610367565b34801561045e57600080fd5b5061044460125481565b34801561047457600080fd5b506019546103c0906001600160a01b031681565b34801561049457600080fd5b50600854610444565b3480156104a957600080fd5b506103906104b83660046125d1565b610bbf565b3480156104c957600080fd5b50600754610444565b3480156104de57600080fd5b5061044460075481565b3480156104f457600080fd5b50610444600e5481565b34801561050a57600080fd5b5061039061051936600461255a565b610c5d565b34801561052a57600080fd5b50610390610539366004612612565b6001600160a01b031660009081526006602052604090205460ff1690565b34801561056357600080fd5b50600b546103c0906001600160a01b031681565b34801561058357600080fd5b50600c546103c0906001600160a01b031681565b3480156105a357600080fd5b5061044460085481565b3480156105b957600080fd5b5061042c6105c8366004612612565b610c99565b3480156105d957600080fd5b5061044460105481565b3480156105ef57600080fd5b50601a546103c0906001600160a01b031681565b34801561060f57600080fd5b50601a5461039090600160a81b900460ff1681565b34801561063057600080fd5b5061042c61063f366004612636565b610ce7565b34801561065057600080fd5b5061042c61065f3660046126bd565b610e09565b34801561067057600080fd5b5061042c61067f366004612636565b610ff3565b34801561069057600080fd5b5061042c61069f366004612612565b6110df565b3480156106b057600080fd5b506104446106bf366004612612565b6001600160a01b031660009081526001602052604090205490565b3480156106e657600080fd5b5061042c61112d565b3480156106fb57600080fd5b5061042c61070a366004612612565b6111a1565b34801561071b57600080fd5b5061042c61072a36600461273e565b6111ec565b34801561073b57600080fd5b5061044460155481565b34801561075157600080fd5b506000546001600160a01b03166103c0565b34801561076f57600080fd5b5061042c61077e366004612773565b611279565b34801561078f57600080fd5b5061035a6112f7565b3480156107a457600080fd5b5061044460115481565b3480156107ba57600080fd5b50610444600f5481565b3480156107d057600080fd5b506103906107df36600461255a565b611306565b3480156107f057600080fd5b506103906107ff36600461255a565b6113a2565b34801561081057600080fd5b5061044460145481565b34801561082657600080fd5b50610390610835366004612612565b6001600160a01b031660009081526004602052604090205460ff1690565b34801561085f57600080fd5b5061042c61086e366004612612565b6113af565b34801561087f57600080fd5b5061042c61088e366004612612565b61146b565b34801561089f57600080fd5b5061044460165481565b3480156108b557600080fd5b5061042c6108c4366004612773565b6114b9565b3480156108d557600080fd5b5061042c6108e436600461278c565b611581565b3480156108f557600080fd5b50610390610904366004612612565b6001600160a01b031660009081526003602052604090205460ff1690565b34801561092e57600080fd5b50610444601b5481565b34801561094457600080fd5b5061044460175481565b34801561095a57600080fd5b506104446109693660046127a7565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b3480156109a057600080fd5b5061042c6109af366004612612565b6115f8565b3480156109c057600080fd5b5061044460135481565b3480156109d657600080fd5b5061042c6109e5366004612612565b611643565b3480156109f657600080fd5b5061042c610a05366004612773565b61172d565b348015610a1657600080fd5b50610444601d5481565b606060098054610a2f906127e0565b80601f0160208091040260200160405190810160405280929190818152602001828054610a5b906127e0565b8015610aa85780601f10610a7d57610100808354040283529160200191610aa8565b820191906000526020600020905b815481529060010190602001808311610a8b57829003601f168201915b5050505050905090565b6000610abf3384846117f5565b5060015b92915050565b6000546001600160a01b03163314610afc5760405162461bcd60e51b8152600401610af39061281a565b60405180910390fd5b6001600160a01b03831615801590610b1e5750600d546001600160a01b031615155b8015610b345750600c546001600160a01b031615155b610b805760405162461bcd60e51b815260206004820152601a60248201527f596f752063616e277420736574207a65726f20616464726573730000000000006044820152606401610af3565b600b80546001600160a01b039485166001600160a01b031991821617909155600d805492851692821692909217909155600c8054929093169116179055565b6000610bcc84848461191c565b6001600160a01b038416600090815260026020908152604080832033845290915290205482811015610c525760405162461bcd60e51b815260206004820152602960248201527f4945524332303a207472616e7366657220616d6f756e74206578636565647320604482015268616c6c6f77616e636560b81b6064820152608401610af3565b506001949350505050565b3360008181526002602090815260408083206001600160a01b03871684529091528120549091610abf918590610c94908690612865565b6117f5565b6000546001600160a01b03163314610cc35760405162461bcd60e51b8152600401610af39061281a565b6001600160a01b03166000908152600360205260409020805460ff19166001179055565b6000546001600160a01b03163314610d115760405162461bcd60e51b8152600401610af39061281a565b600f818385610d20888a612865565b610d2a9190612865565b610d349190612865565b610d3e9190612865565b1115610d8c5760405162461bcd60e51b815260206004820152601b60248201527f796f752063616e277420736574206d6f7265207468616e2031352500000000006044820152606401610af3565b600e859055600f8490556010839055601182905560128190557f0360ea714a628fae03fc01846e588b4b053707ea9418c53df5cb0c44cfa23f06818385610dd3888a612865565b610ddd9190612865565b610de79190612865565b610df19190612865565b60405190815260200160405180910390a15050505050565b336101f58410610e715760405162461bcd60e51b815260206004820152602d60248201527f474153204572726f723a206d61782061697264726f70206c696d69742069732060448201526c3530302061646472657373657360981b6064820152608401610af3565b838214610ed15760405162461bcd60e51b815260206004820152602860248201527f4d69736d61746368206265747765656e204164647265737320616e6420746f6b604482015267195b8818dbdd5b9d60c21b6064820152608401610af3565b6000805b85811015610f1557848482818110610eef57610eef612878565b9050602002013582610f019190612865565b915080610f0d8161288e565b915050610ed5565b5080610f36836001600160a01b031660009081526001602052604090205490565b1015610f845760405162461bcd60e51b815260206004820152601b60248201527f4e6f7420656e6f75676820746f6b656e7320696e2077616c6c657400000000006044820152606401610af3565b60005b85811015610fea57610fd883888884818110610fa557610fa5612878565b9050602002016020810190610fba9190612612565b878785818110610fcc57610fcc612878565b9050602002013561191c565b80610fe28161288e565b915050610f87565b50505050505050565b6000546001600160a01b0316331461101d5760405162461bcd60e51b8152600401610af39061281a565b600f83838161102c888a612865565b6110369190612865565b6110409190612865565b61104a9190612865565b11156110985760405162461bcd60e51b815260206004820152601b60248201527f796f752063616e277420736574206d6f7265207468616e2031352500000000006044820152606401610af3565b601385905560148490556015839055601682905560178190557f6b7559a32953872c1ea69c07b9c25b70cc8ac27d03a34d0104f1922feeb21d6e818385610dd3888a612865565b6000546001600160a01b031633146111095760405162461bcd60e51b8152600401610af39061281a565b6001600160a01b03166000908152600460205260409020805460ff19166001179055565b6000546001600160a01b031633146111575760405162461bcd60e51b8152600401610af39061281a565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146111cb5760405162461bcd60e51b8152600401610af39061281a565b6001600160a01b03166000908152600560205260409020805460ff19169055565b6000546001600160a01b031633146112165760405162461bcd60e51b8152600401610af39061281a565b6001600160a01b038216600081815260066020908152604091829020805460ff19168515159081179091558251938452908301527f5ac3ff4c6f209a7d21e3c3d2a108256401d41564975256e17867e3202c33b769910160405180910390a15050565b6000546001600160a01b031633146112a35760405162461bcd60e51b8152600401610af39061281a565b6007546112b190600a61298b565b6112bb9082612997565b601b8190556040519081527f5948780118f41f7c4577ae4619d5cbd064057bd8562d9f7b7e60324053375c00906020015b60405180910390a150565b6060600a8054610a2f906127e0565b3360009081526002602090815260408083206001600160a01b0386168452909152812054828110156113895760405162461bcd60e51b815260206004820152602660248201527f4945524332303a2064656372656173656420616c6c6f77616e63652062656c6f60448201526577207a65726f60d01b6064820152608401610af3565b6113983385610c9486856129ae565b5060019392505050565b6000610abf33848461191c565b6000546001600160a01b031633146113d95760405162461bcd60e51b8152600401610af39061281a565b601a546001600160a01b039081169082160361144a5760405162461bcd60e51b815260206004820152602a60248201527f596f752063616e277420706c61792077697468204c69717569646974792070616044820152696972206164647265737360b01b6064820152608401610af3565b6001600160a01b03166000908152600460205260409020805460ff19169055565b6000546001600160a01b031633146114955760405162461bcd60e51b8152600401610af39061281a565b6001600160a01b03166000908152600560205260409020805460ff19166001179055565b6000546001600160a01b031633146114e35760405162461bcd60e51b8152600401610af39061281a565b6007546114f190600a61298b565b6114fe9062989680612997565b60075461150c90600a61298b565b6115169083612997565b10156115345760405162461bcd60e51b8152600401610af3906129c1565b60075461154290600a61298b565b61154c9082612997565b601c8190556040519081527f31ec735a6eb0e842df834b09d4b2b0e32f32379aaedcbcb33a8c56e4b01d3baa906020016112ec565b6000546001600160a01b031633146115ab5760405162461bcd60e51b8152600401610af39061281a565b601a8054821515600160a81b0260ff60a81b199091161790556040517f53726dfcaf90650aa7eb35524f4d3220f07413c8d6cb404cc8c18bf5591bc159906112ec90831515815260200190565b6000546001600160a01b031633146116225760405162461bcd60e51b8152600401610af39061281a565b6001600160a01b03166000908152600360205260409020805460ff19169055565b6000546001600160a01b0316331461166d5760405162461bcd60e51b8152600401610af39061281a565b6001600160a01b0381166116d25760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610af3565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b031633146117575760405162461bcd60e51b8152600401610af39061281a565b60075461176590600a61298b565b6117729062989680612997565b60075461178090600a61298b565b61178a9083612997565b10156117a85760405162461bcd60e51b8152600401610af3906129c1565b6007546117b690600a61298b565b6117c09082612997565b601d8190556040519081527f2f0230c168217a20bed23aafa989b365ae4f826eaaa01b933669653715fc9067906020016112ec565b6001600160a01b0383166118595760405162461bcd60e51b815260206004820152602560248201527f4945524332303a20617070726f76652066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610af3565b6001600160a01b0382166118bb5760405162461bcd60e51b815260206004820152602360248201527f4945524332303a20617070726f766520746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610af3565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166119815760405162461bcd60e51b815260206004820152602660248201527f4945524332303a207472616e736665722066726f6d20746865207a65726f206160448201526564647265737360d01b6064820152608401610af3565b6001600160a01b0382166119e35760405162461bcd60e51b8152602060048201526024808201527f4945524332303a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b6064820152608401610af3565b6001600160a01b038316600090815260016020526040902054811115611a4b5760405162461bcd60e51b815260206004820152601d60248201527f596f7520646f6e2774206861766520656e6f7567682062616c616e63650000006044820152606401610af3565b6001600160a01b03821660009081526004602052604090205460ff16158015611a8257506000546001600160a01b03848116911614155b15611b0257601c5481611aaa846001600160a01b031660009081526001602052604090205490565b611ab49190612865565b1115611b025760405162461bcd60e51b815260206004820152601d60248201527f57616c6c657420486f6c64696e67206c696d69742065786365656465640000006044820152606401610af3565b6000546001600160a01b03848116911614611ba357601d5481111580611b4057506001600160a01b03831660009081526005602052604090205460ff165b80611b6357506001600160a01b03821660009081526005602052604090205460ff165b611ba35760405162461bcd60e51b8152602060048201526011602482015270151608131a5b5a5d08115e18d959591959607a1b6044820152606401610af3565b6001600160a01b038316600090815260036020526040812054819060ff1680611be457506001600160a01b03841660009081526003602052604090205460ff165b15611bf457506000905080611cf6565b6001600160a01b03841660009081526006602052604090205460ff1615611c7a57601854601154601554601454601354611c2e9190612865565b611c389190612865565b611c429190612865565b611c4c9085612997565b611c569190612a16565b915060185460175484611c699190612997565b611c739190612a16565b9050611cf6565b6001600160a01b03851660009081526006602052604090205460ff1615611cef57601854601654601054600f54600e54611cb49190612865565b611cbe9190612865565b611cc89190612865565b611cd29085612997565b611cdc9190612a16565b915060185460125484611c699190612997565b5060009050805b30600090815260016020526040902054601b54601a549082101590600160a01b900460ff16158015611d355750601a546001600160a01b038781169116145b8015611d4a5750601a54600160a81b900460ff165b8015611d715750601b54601a546001600160a01b0316600090815260016020526040902054115b15611e97578015611e9757601b549150600080601654601554601454601354611d9a9190612865565b611da49190612865565b611dae9190612865565b1115611e1257601654601554601354601454611dca9190612865565b611dd49190612865565b611dde9190612865565b601654601554601454611df19190612865565b611dfb9190612865565b611e059085612997565b611e0f9190612a16565b90505b60135460009015611e2e57611e2782856129ae565b9050611e57565b6000601654601554601454611e439190612865565b611e4d9190612865565b1115611e57578391505b6000601654601554601454611e6c9190612865565b611e769190612865565b1115611e8557611e8582612094565b8015611e9457611e94816121a2565b50505b6000611ea38486612865565b611ead90876129ae565b30600090815260016020526040812080549293508792909190611ed1908490612865565b90915550506001600160a01b037f000000000000000000000000000000000000000000000000000000000000dead1660009081526001602052604081208054869290611f1e908490612865565b90915550506001600160a01b038816600090815260016020526040902054611f479087906129ae565b6001600160a01b03808a166000908152600160205260408082209390935590891681529081208054839290611f7d908490612865565b90915550508415611fc95760405185815230906001600160a01b038a16907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35b831561203d577f000000000000000000000000000000000000000000000000000000000000dead6001600160a01b0316886001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8660405161203491815260200190565b60405180910390a35b866001600160a01b0316886001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161208291815260200190565b60405180910390a35050505050505050565b601a805460ff60a01b1916600160a01b179055601654601554601454600092916120bd91612865565b6120c79190612865565b9050476120d38361228a565b60006120df82476129ae565b9050600083601454836120f29190612997565b6120fc9190612a16565b90506000846015548461210f9190612997565b6121199190612a16565b90506000856016548561212c9190612997565b6121369190612a16565b9050821561215457600b54612154906001600160a01b0316846123e4565b811561217057600c54612170906001600160a01b0316836123e4565b801561218c57600d5461218c906001600160a01b0316826123e4565b5050601a805460ff60a01b191690555050505050565b601a805460ff60a01b1916600160a01b17905560006121c2600283612a16565b905060006121d082846129ae565b9050476121dc8361228a565b60006121e882476129ae565b90506121f4838261241f565b60408051858152602081018390529081018490527f17bbfb9a6069321b6ded73bd96327c9e6b7212a5cd51ff219cd61370acafb5619060600160405180910390a1471561227657600b546040516001600160a01b03909116904780156108fc02916000818181858888f19350505050158015612274573d6000803e3d6000fd5b505b5050601a805460ff60a01b19169055505050565b60408051600280825260608201835260009260208301908036833701905050905030816000815181106122bf576122bf612878565b6001600160a01b03928316602091820292909201810191909152601954604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015612318573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061233c9190612a38565b8160018151811061234f5761234f612878565b6001600160a01b03928316602091820292909201015260195461237591309116846117f5565b60195460405163791ac94760e01b81526001600160a01b039091169063791ac947906123ae908590600090869030904290600401612a55565b600060405180830381600087803b1580156123c857600080fd5b505af11580156123dc573d6000803e3d6000fd5b505050505050565b6040516001600160a01b0383169082156108fc029083906000818181858888f1935050505015801561241a573d6000803e3d6000fd5b505050565b6019546124379030906001600160a01b0316846117f5565b6019546001600160a01b031663f305d7198230856000806124606000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af11580156124c8573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906124ed9190612ac6565b5050505050565b600060208083528351808285015260005b8181101561252157858101830151858201604001528201612505565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461255757600080fd5b50565b6000806040838503121561256d57600080fd5b823561257881612542565b946020939093013593505050565b60008060006060848603121561259b57600080fd5b83356125a681612542565b925060208401356125b681612542565b915060408401356125c681612542565b809150509250925092565b6000806000606084860312156125e657600080fd5b83356125f181612542565b9250602084013561260181612542565b929592945050506040919091013590565b60006020828403121561262457600080fd5b813561262f81612542565b9392505050565b600080600080600060a0868803121561264e57600080fd5b505083359560208501359550604085013594606081013594506080013592509050565b60008083601f84011261268357600080fd5b50813567ffffffffffffffff81111561269b57600080fd5b6020830191508360208260051b85010111156126b657600080fd5b9250929050565b600080600080604085870312156126d357600080fd5b843567ffffffffffffffff808211156126eb57600080fd5b6126f788838901612671565b9096509450602087013591508082111561271057600080fd5b5061271d87828801612671565b95989497509550505050565b8035801515811461273957600080fd5b919050565b6000806040838503121561275157600080fd5b823561275c81612542565b915061276a60208401612729565b90509250929050565b60006020828403121561278557600080fd5b5035919050565b60006020828403121561279e57600080fd5b61262f82612729565b600080604083850312156127ba57600080fd5b82356127c581612542565b915060208301356127d581612542565b809150509250929050565b600181811c908216806127f457607f821691505b60208210810361281457634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b80820180821115610ac357610ac361284f565b634e487b7160e01b600052603260045260246000fd5b6000600182016128a0576128a061284f565b5060010190565b600181815b808511156128e25781600019048211156128c8576128c861284f565b808516156128d557918102915b93841c93908002906128ac565b509250929050565b6000826128f957506001610ac3565b8161290657506000610ac3565b816001811461291c576002811461292657612942565b6001915050610ac3565b60ff8411156129375761293761284f565b50506001821b610ac3565b5060208310610133831016604e8410600b8410161715612965575081810a610ac3565b61296f83836128a7565b80600019048211156129835761298361284f565b029392505050565b600061262f83836128ea565b8082028115828204841417610ac357610ac361284f565b81810381811115610ac357610ac361284f565b60208082526035908201527f416d6f756e742073686f756c642062652067726561746572206f7220657175616040820152746c20746f203130204d696c6c696e20546f6b656e7360581b606082015260800190565b600082612a3357634e487b7160e01b600052601260045260246000fd5b500490565b600060208284031215612a4a57600080fd5b815161262f81612542565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015612aa55784516001600160a01b031683529383019391830191600101612a80565b50506001600160a01b03969096166060850152505050608001529392505050565b600080600060608486031215612adb57600080fd5b835192506020840151915060408401519050925092509256fea26469706673582212207ad656b660a1193549af10f3045944eaf910bbeaa998ed3e1f1785c7c1df63a064736f6c63430008130033

Deployed ByteCode Sourcemap

13266:21026:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16595:85;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;17117:210;;;;;;;;;;-1:-1:-1;17117:210:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;17117:210:0;1023:187:1;14213:106:0;;;;;;;;;;-1:-1:-1;14213:106:0;;;;-1:-1:-1;;;;;14213:106:0;;;;;;-1:-1:-1;;;;;1395:32:1;;;1377:51;;1365:2;1350:18;14213:106:0;1215:219:1;13882:96:0;;;;;;;;;;;;;;;21244:571;;;;;;;;;;-1:-1:-1;21244:571:0;;;;;:::i;:::-;;:::i;:::-;;15066:65;;;;;;;;;;;;;;;;;;;2351:25:1;;;2339:2;2324:18;15066:65:0;2205:177:1;14504:33:0;;;;;;;;;;;;;;;;14815:41;;;;;;;;;;-1:-1:-1;14815:41:0;;;;-1:-1:-1;;;;;14815:41:0;;;16880:102;;;;;;;;;;-1:-1:-1;16962:12:0;;16880:102;;24392:422;;;;;;;;;;-1:-1:-1;24392:422:0;;;;;:::i;:::-;;:::i;16785:87::-;;;;;;;;;;-1:-1:-1;16855:9:0;;16785:87;;13697:29;;;;;;;;;;;;;;;;14328:38;;;;;;;;;;;;;;;;17932:297;;;;;;;;;;-1:-1:-1;17932:297:0;;;;;:::i;:::-;;:::i;20829:168::-;;;;;;;;;;-1:-1:-1;20829:168:0;;;;;:::i;:::-;-1:-1:-1;;;;;20957:32:0;20928:4;20957:32;;;:23;:32;;;;;;;;;20829:168;13985:108;;;;;;;;;;-1:-1:-1;13985:108:0;;;;-1:-1:-1;;;;;13985:108:0;;;14100:106;;;;;;;;;;-1:-1:-1;14100:106:0;;;;-1:-1:-1;;;;;14100:106:0;;;13733:57;;;;;;;;;;;;;;;;18690:113;;;;;;;;;;-1:-1:-1;18690:113:0;;;;;:::i;:::-;;:::i;14418:36::-;;;;;;;;;;;;;;;;14863:28;;;;;;;;;;-1:-1:-1;14863:28:0;;;;-1:-1:-1;;;;;14863:28:0;;;14937:40;;;;;;;;;;-1:-1:-1;14937:40:0;;;;-1:-1:-1;;;14937:40:0;;;;;;21823:932;;;;;;;;;;-1:-1:-1;21823:932:0;;;;;:::i;:::-;;:::i;33522:767::-;;;;;;;;;;-1:-1:-1;33522:767:0;;;;;:::i;:::-;;:::i;22763:947::-;;;;;;;;;;-1:-1:-1;22763:947:0;;;;;:::i;:::-;;:::i;19258:169::-;;;;;;;;;;-1:-1:-1;19258:169:0;;;;;:::i;:::-;;:::i;16990:119::-;;;;;;;;;;-1:-1:-1;16990:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;17083:18:0;17056:7;17083:18;;;:9;:18;;;;;;;16990:119;3625:148;;;;;;;;;;;;;:::i;20339:123::-;;;;;;;;;;-1:-1:-1;20339:123:0;;;;;:::i;:::-;;:::i;21005:231::-;;;;;;;;;;-1:-1:-1;21005:231:0;;;;;:::i;:::-;;:::i;14638:37::-;;;;;;;;;;;;;;;;3402:87;;;;;;;;;;-1:-1:-1;3448:7:0;3475:6;-1:-1:-1;;;;;3475:6:0;3402:87;;23718:261;;;;;;;;;;-1:-1:-1;23718:261:0;;;;;:::i;:::-;;:::i;16688:89::-;;;;;;;;;;;;;:::i;14461:36::-;;;;;;;;;;;;;;;;14373:38;;;;;;;;;;;;;;;;18237:445;;;;;;;;;;-1:-1:-1;18237:445:0;;;;;:::i;:::-;;:::i;24168:216::-;;;;;;;;;;-1:-1:-1;24168:216:0;;;;;:::i;:::-;;:::i;14592:39::-;;;;;;;;;;;;;;;;19057:193;;;;;;;;;;-1:-1:-1;19057:193:0;;;;;:::i;:::-;-1:-1:-1;;;;;19194:48:0;19165:4;19194:48;;;:33;:48;;;;;;;;;19057:193;19435:295;;;;;;;;;;-1:-1:-1;19435:295:0;;;;;:::i;:::-;;:::i;20207:124::-;;;;;;;;;;-1:-1:-1;20207:124:0;;;;;:::i;:::-;;:::i;14682:37::-;;;;;;;;;;;;;;;;19738:461;;;;;;;;;;-1:-1:-1;19738:461:0;;;;;:::i;:::-;;:::i;23987:173::-;;;;;;;;;;-1:-1:-1;23987:173:0;;;;;:::i;:::-;;:::i;18931:118::-;;;;;;;;;;-1:-1:-1;18931:118:0;;;;;:::i;:::-;-1:-1:-1;;;;;19018:23:0;18994:4;19018:23;;;:18;:23;;;;;;;;;18931:118;14986:73;;;;;;;;;;;;;;;;14726:34;;;;;;;;;;;;;;;;17723:201;;;;;;;;;;-1:-1:-1;17723:201:0;;;;;:::i;:::-;-1:-1:-1;;;;;17889:18:0;;;17857:7;17889:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;17723:201;18811:112;;;;;;;;;;-1:-1:-1;18811:112:0;;;;;:::i;:::-;;:::i;14546:39::-;;;;;;;;;;;;;;;;3781:281;;;;;;;;;;-1:-1:-1;3781:281:0;;;;;:::i;:::-;;:::i;20470:351::-;;;;;;;;;;-1:-1:-1;20470:351:0;;;;;:::i;:::-;;:::i;15138:54::-;;;;;;;;;;;;;;;;16595:85;16634:13;16667:5;16660:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16595:85;:::o;17117:210::-;17236:4;17258:39;2906:10;17281:7;17290:6;17258:8;:39::i;:::-;-1:-1:-1;17315:4:0;17117:210;;;;;:::o;21244:571::-;3448:7;3475:6;-1:-1:-1;;;;;3475:6:0;2906:10;3537:23;3529:68;;;;-1:-1:-1;;;3529:68:0;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;;;;;21457:32:0;::::1;::::0;;::::1;::::0;:87:::1;;-1:-1:-1::0;21510:20:0::1;::::0;-1:-1:-1;;;;;21510:20:0::1;:34:::0;::::1;21457:87;:142;;;;-1:-1:-1::0;21565:20:0::1;::::0;-1:-1:-1;;;;;21565:20:0::1;:34:::0;::::1;21457:142;21435:218;;;::::0;-1:-1:-1;;;21435:218:0;;7139:2:1;21435:218:0::1;::::0;::::1;7121:21:1::0;7178:2;7158:18;;;7151:30;7217:28;7197:18;;;7190:56;7263:18;;21435:218:0::1;6937:350:1::0;21435:218:0::1;21664:22;:43:::0;;-1:-1:-1;;;;;21664:43:0;;::::1;-1:-1:-1::0;;;;;;21664:43:0;;::::1;;::::0;;;21718:20:::1;:39:::0;;;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;21768:20:::1;:39:::0;;;;;::::1;::::0;::::1;;::::0;;21244:571::o;24392:422::-;24532:4;24549:36;24559:6;24567:9;24578:6;24549:9;:36::i;:::-;-1:-1:-1;;;;;24623:19:0;;24596:24;24623:19;;;:11;:19;;;;;;;;2906:10;24623:33;;;;;;;;24689:26;;;;24667:117;;;;-1:-1:-1;;;24667:117:0;;7494:2:1;24667:117:0;;;7476:21:1;7533:2;7513:18;;;7506:30;7572:34;7552:18;;;7545:62;-1:-1:-1;;;7623:18:1;;;7616:39;7672:19;;24667:117:0;7292:405:1;24667:117:0;-1:-1:-1;24802:4:0;;24392:422;-1:-1:-1;;;;24392:422:0:o;17932:297::-;2906:10;18047:4;18141:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;18141:34:0;;;;;;;;;;18047:4;;18069:130;;18119:7;;18141:47;;18178:10;;18141:47;:::i;:::-;18069:8;:130::i;18690:113::-;3448:7;3475:6;-1:-1:-1;;;;;3475:6:0;2906:10;3537:23;3529:68;;;;-1:-1:-1;;;3529:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;18761:27:0::1;;::::0;;;:18:::1;:27;::::0;;;;:34;;-1:-1:-1;;18761:34:0::1;18791:4;18761:34;::::0;;18690:113::o;21823:932::-;3448:7;3475:6;-1:-1:-1;;;;;3475:6:0;2906:10;3537:23;3529:68;;;;-1:-1:-1;;;3529:68:0;;;;;;;:::i;:::-;22239:2:::1;22208:10:::0;22175:13;22142;22072:50:::1;22107:15:::0;22072;:50:::1;:::i;:::-;:83;;;;:::i;:::-;:116;;;;:::i;:::-;:146;;;;:::i;:::-;:169;;22050:246;;;::::0;-1:-1:-1;;;22050:246:0;;8166:2:1;22050:246:0::1;::::0;::::1;8148:21:1::0;8205:2;8185:18;;;8178:30;8244:29;8224:18;;;8217:57;8291:18;;22050:246:0::1;7964:351:1::0;22050:246:0::1;22307:19;:37:::0;;;22355:19:::1;:37:::0;;;22403:17:::1;:33:::0;;;22447:17:::1;:33:::0;;;22491:14:::1;:27:::0;;;22536:211:::1;22508:10:::0;22467:13;22423;22570:58:::1;22377:15:::0;22329;22570:58:::1;:::i;:::-;:95;;;;:::i;:::-;:132;;;;:::i;:::-;:166;;;;:::i;:::-;22536:211;::::0;2351:25:1;;;2339:2;2324:18;22536:211:0::1;;;;;;;21823:932:::0;;;;;:::o;33522:767::-;33669:10;33731:3;33712:22;;33690:117;;;;-1:-1:-1;;;33690:117:0;;8522:2:1;33690:117:0;;;8504:21:1;8561:2;8541:18;;;8534:30;8600:34;8580:18;;;8573:62;-1:-1:-1;;;8651:18:1;;;8644:43;8704:19;;33690:117:0;8320:409:1;33690:117:0;33840:33;;;33818:123;;;;-1:-1:-1;;;33818:123:0;;8936:2:1;33818:123:0;;;8918:21:1;8975:2;8955:18;;;8948:30;9014:34;8994:18;;;8987:62;-1:-1:-1;;;9065:18:1;;;9058:38;9113:19;;33818:123:0;8734:404:1;33818:123:0;33954:12;33988:9;33983:97;34003:20;;;33983:97;;;34059:6;;34066:1;34059:9;;;;;;;:::i;:::-;;;;;;;34052:4;:16;;;;:::i;:::-;34045:23;-1:-1:-1;34025:3:0;;;;:::i;:::-;;;;33983:97;;;;34119:4;34100:15;34110:4;-1:-1:-1;;;;;17083:18:0;17056:7;17083:18;;;:9;:18;;;;;;;16990:119;34100:15;:23;;34092:63;;;;-1:-1:-1;;;34092:63:0;;9617:2:1;34092:63:0;;;9599:21:1;9656:2;9636:18;;;9629:30;9695:29;9675:18;;;9668:57;9742:18;;34092:63:0;9415:351:1;34092:63:0;34173:9;34168:114;34188:20;;;34168:114;;;34230:40;34240:4;34246:9;;34256:1;34246:12;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;34260:6;;34267:1;34260:9;;;;;;;:::i;:::-;;;;;;;34230;:40::i;:::-;34210:3;;;;:::i;:::-;;;;34168:114;;;;33643:646;;33522:767;;;;:::o;22763:947::-;3448:7;3475:6;-1:-1:-1;;;;;3475:6:0;2906:10;3537:23;3529:68;;;;-1:-1:-1;;;3529:68:0;;;;;;;:::i;:::-;23183:2:::1;23149:13:::0;23116;23149;23013:50:::1;23048:15:::0;23013;:50:::1;:::i;:::-;:83;;;;:::i;:::-;:116;;;;:::i;:::-;:149;;;;:::i;:::-;:172;;22991:249;;;::::0;-1:-1:-1;;;22991:249:0;;8166:2:1;22991:249:0::1;::::0;::::1;8148:21:1::0;8205:2;8185:18;;;8178:30;8244:29;8224:18;;;8217:57;8291:18;;22991:249:0::1;7964:351:1::0;22991:249:0::1;23251:20;:38:::0;;;23300:20:::1;:38:::0;;;23349:18:::1;:34:::0;;;23394:18:::1;:34:::0;;;23439:15:::1;:28:::0;;;23485:217:::1;23457:10:::0;23415:13;23370;23520:60:::1;23323:15:::0;23274;23520:60:::1;:::i;19258:169::-:0;3448:7;3475:6;-1:-1:-1;;;;;3475:6:0;2906:10;3537:23;3529:68;;;;-1:-1:-1;;;3529:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;19370:42:0::1;;::::0;;;:33:::1;:42;::::0;;;;:49;;-1:-1:-1;;19370:49:0::1;19415:4;19370:49;::::0;;19258:169::o;3625:148::-;3448:7;3475:6;-1:-1:-1;;;;;3475:6:0;2906:10;3537:23;3529:68;;;;-1:-1:-1;;;3529:68:0;;;;;;;:::i;:::-;3732:1:::1;3716:6:::0;;3695:40:::1;::::0;-1:-1:-1;;;;;3716:6:0;;::::1;::::0;3695:40:::1;::::0;3732:1;;3695:40:::1;3763:1;3746:19:::0;;-1:-1:-1;;;;;;3746:19:0::1;::::0;;3625:148::o;20339:123::-;3448:7;3475:6;-1:-1:-1;;;;;3475:6:0;2906:10;3537:23;3529:68;;;;-1:-1:-1;;;3529:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;20415:31:0::1;20449:5;20415:31:::0;;;:22:::1;:31;::::0;;;;:39;;-1:-1:-1;;20415:39:0::1;::::0;;20339:123::o;21005:231::-;3448:7;3475:6;-1:-1:-1;;;;;3475:6:0;2906:10;3537:23;3529:68;;;;-1:-1:-1;;;3529:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;21119:34:0;::::1;;::::0;;;:23:::1;:34;::::0;;;;;;;;:43;;-1:-1:-1;;21119:43:0::1;::::0;::::1;;::::0;;::::1;::::0;;;21178:50;;9939:51:1;;;10006:18;;;9999:50;21178::0::1;::::0;9912:18:1;21178:50:0::1;;;;;;;21005:231:::0;;:::o;23718:261::-;3448:7;3475:6;-1:-1:-1;;;;;3475:6:0;2906:10;3537:23;3529:68;;;;-1:-1:-1;;;3529:68:0;;;;;;;:::i;:::-;23889:9:::1;::::0;23885:13:::1;::::0;:2:::1;:13;:::i;:::-;23868:30;::::0;:14;:30:::1;:::i;:::-;23836:29;:62:::0;;;23914:57:::1;::::0;2351:25:1;;;23914:57:0::1;::::0;2339:2:1;2324:18;23914:57:0::1;;;;;;;;23718:261:::0;:::o;16688:89::-;16729:13;16762:7;16755:14;;;;;:::i;18237:445::-;2906:10;18357:4;18406:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;18406:34:0;;;;;;;;;;18473:35;;;;18451:123;;;;-1:-1:-1;;;18451:123:0;;11809:2:1;18451:123:0;;;11791:21:1;11848:2;11828:18;;;11821:30;11887:34;11867:18;;;11860:62;-1:-1:-1;;;11938:18:1;;;11931:36;11984:19;;18451:123:0;11607:402:1;18451:123:0;18585:67;2906:10;18608:7;18617:34;18636:15;18617:16;:34;:::i;18585:67::-;-1:-1:-1;18670:4:0;;18237:445;-1:-1:-1;;;18237:445:0:o;24168:216::-;24290:4;24312:42;2906:10;24336:9;24347:6;24312:9;:42::i;19435:295::-;3448:7;3475:6;-1:-1:-1;;;;;3475:6:0;2906:10;3537:23;3529:68;;;;-1:-1:-1;;;3529:68:0;;;;;;;:::i;:::-;19578:13:::1;::::0;-1:-1:-1;;;;;19578:13:0;;::::1;19567:24:::0;;::::1;::::0;19545:116:::1;;;::::0;-1:-1:-1;;;19545:116:0;;12349:2:1;19545:116:0::1;::::0;::::1;12331:21:1::0;12388:2;12368:18;;;12361:30;12427:34;12407:18;;;12400:62;-1:-1:-1;;;12478:18:1;;;12471:40;12528:19;;19545:116:0::1;12147:406:1::0;19545:116:0::1;-1:-1:-1::0;;;;;19672:42:0::1;19717:5;19672:42:::0;;;:33:::1;:42;::::0;;;;:50;;-1:-1:-1;;19672:50:0::1;::::0;;19435:295::o;20207:124::-;3448:7;3475:6;-1:-1:-1;;;;;3475:6:0;2906:10;3537:23;3529:68;;;;-1:-1:-1;;;3529:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;20285:31:0::1;;::::0;;;:22:::1;:31;::::0;;;;:38;;-1:-1:-1;;20285:38:0::1;20319:4;20285:38;::::0;;20207:124::o;19738:461::-;3448:7;3475:6;-1:-1:-1;;;;;3475:6:0;2906:10;3537:23;3529:68;;;;-1:-1:-1;;;3529:68:0;;;;;;;:::i;:::-;19958:9:::1;::::0;19954:13:::1;::::0;:2:::1;:13;:::i;:::-;19941:26;::::0;:10:::1;:26;:::i;:::-;19911:9;::::0;19907:13:::1;::::0;:2:::1;:13;:::i;:::-;19882:38;::::0;:22;:38:::1;:::i;:::-;:85;;19860:188;;;;-1:-1:-1::0;;;19860:188:0::1;;;;;;;:::i;:::-;20113:9;::::0;20109:13:::1;::::0;:2:::1;:13;:::i;:::-;20084:38;::::0;:22;:38:::1;:::i;:::-;20059:22;:63:::0;;;20138:53:::1;::::0;2351:25:1;;;20138:53:0::1;::::0;2339:2:1;2324:18;20138:53:0::1;2205:177:1::0;23987:173:0;3448:7;3475:6;-1:-1:-1;;;;;3475:6:0;2906:10;3537:23;3529:68;;;;-1:-1:-1;;;3529:68:0;;;;;;;:::i;:::-;24066:21:::1;:32:::0;;;::::1;;-1:-1:-1::0;;;24066:32:0::1;-1:-1:-1::0;;;;24066:32:0;;::::1;;::::0;;24114:38:::1;::::0;::::1;::::0;::::1;::::0;24090:8;1188:14:1;1181:22;1163:41;;1151:2;1136:18;;1023:187;18811:112:0;3448:7;3475:6;-1:-1:-1;;;;;3475:6:0;2906:10;3537:23;3529:68;;;;-1:-1:-1;;;3529:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;18880:27:0::1;18910:5;18880:27:::0;;;:18:::1;:27;::::0;;;;:35;;-1:-1:-1;;18880:35:0::1;::::0;;18811:112::o;3781:281::-;3448:7;3475:6;-1:-1:-1;;;;;3475:6:0;2906:10;3537:23;3529:68;;;;-1:-1:-1;;;3529:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;3884:22:0;::::1;3862:110;;;::::0;-1:-1:-1;;;3862:110:0;;13182:2:1;3862:110:0::1;::::0;::::1;13164:21:1::0;13221:2;13201:18;;;13194:30;13260:34;13240:18;;;13233:62;-1:-1:-1;;;13311:18:1;;;13304:36;13357:19;;3862:110:0::1;12980:402:1::0;3862:110:0::1;4009:6;::::0;;3988:38:::1;::::0;-1:-1:-1;;;;;3988:38:0;;::::1;::::0;4009:6;::::1;::::0;3988:38:::1;::::0;::::1;4037:6;:17:::0;;-1:-1:-1;;;;;;4037:17:0::1;-1:-1:-1::0;;;;;4037:17:0;;;::::1;::::0;;;::::1;::::0;;3781:281::o;20470:351::-;3448:7;3475:6;-1:-1:-1;;;;;3475:6:0;2906:10;3537:23;3529:68;;;;-1:-1:-1;;;3529:68:0;;;;;;;:::i;:::-;20617:9:::1;::::0;20613:13:::1;::::0;:2:::1;:13;:::i;:::-;20600:26;::::0;:10:::1;:26;:::i;:::-;20587:9;::::0;20583:13:::1;::::0;:2:::1;:13;:::i;:::-;20569:27;::::0;:11;:27:::1;:::i;:::-;:57;;20547:160;;;;-1:-1:-1::0;;;20547:160:0::1;;;;;;;:::i;:::-;20750:9;::::0;20746:13:::1;::::0;:2:::1;:13;:::i;:::-;20732:27;::::0;:11;:27:::1;:::i;:::-;20718:11;:41:::0;;;20775:38:::1;::::0;2351:25:1;;;20775:38:0::1;::::0;2339:2:1;2324:18;20775:38:0::1;2205:177:1::0;17335:380:0;-1:-1:-1;;;;;17471:19:0;;17463:69;;;;-1:-1:-1;;;17463:69:0;;13589:2:1;17463:69:0;;;13571:21:1;13628:2;13608:18;;;13601:30;13667:34;13647:18;;;13640:62;-1:-1:-1;;;13718:18:1;;;13711:35;13763:19;;17463:69:0;13387:401:1;17463:69:0;-1:-1:-1;;;;;17551:21:0;;17543:69;;;;-1:-1:-1;;;17543:69:0;;13995:2:1;17543:69:0;;;13977:21:1;14034:2;14014:18;;;14007:30;14073:34;14053:18;;;14046:62;-1:-1:-1;;;14124:18:1;;;14117:33;14167:19;;17543:69:0;13793:399:1;17543:69:0;-1:-1:-1;;;;;17623:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;17675:32;;2351:25:1;;;17675:32:0;;2324:18:1;17675:32:0;;;;;;;17335:380;;;:::o;24917:5123::-;-1:-1:-1;;;;;25057:20:0;;25049:71;;;;-1:-1:-1;;;25049:71:0;;14399:2:1;25049:71:0;;;14381:21:1;14438:2;14418:18;;;14411:30;14477:34;14457:18;;;14450:62;-1:-1:-1;;;14528:18:1;;;14521:36;14574:19;;25049:71:0;14197:402:1;25049:71:0;-1:-1:-1;;;;;25153:23:0;;25131:109;;;;-1:-1:-1;;;25131:109:0;;14806:2:1;25131:109:0;;;14788:21:1;14845:2;14825:18;;;14818:30;14884:34;14864:18;;;14857:62;-1:-1:-1;;;14935:18:1;;;14928:34;14979:19;;25131:109:0;14604:400:1;25131:109:0;-1:-1:-1;;;;;25259:17:0;;;;;;:9;:17;;;;;;:27;-1:-1:-1;25259:27:0;25251:69;;;;-1:-1:-1;;;25251:69:0;;15211:2:1;25251:69:0;;;15193:21:1;15250:2;15230:18;;;15223:30;15289:31;15269:18;;;15262:59;15338:18;;25251:69:0;15009:353:1;25251:69:0;-1:-1:-1;;;;;25352:44:0;;;;;;:33;:44;;;;;;;;25351:45;:66;;;;-1:-1:-1;3448:7:0;3475:6;-1:-1:-1;;;;;25400:17:0;;;3475:6;;25400:17;;25351:66;25333:269;;;25503:22;;25493:6;25470:20;25480:9;-1:-1:-1;;;;;17083:18:0;17056:7;17083:18;;;:9;:18;;;;;;;16990:119;25470:20;:29;;;;:::i;:::-;:55;;25444:146;;;;-1:-1:-1;;;25444:146:0;;15569:2:1;25444:146:0;;;15551:21:1;15608:2;15588:18;;;15581:30;15647:31;15627:18;;;15620:59;15696:18;;25444:146:0;15367:353:1;25444:146:0;3448:7;3475:6;-1:-1:-1;;;;;25618:17:0;;;3475:6;;25618:17;25614:263;;25688:11;;25678:6;:21;;:76;;;-1:-1:-1;;;;;;25724:30:0;;;;;;:22;:30;;;;;;;;25678:76;:134;;;-1:-1:-1;;;;;;25779:33:0;;;;;;:22;:33;;;;;;;;25678:134;25652:213;;;;-1:-1:-1;;;25652:213:0;;15927:2:1;25652:213:0;;;15909:21:1;15966:2;15946:18;;;15939:30;-1:-1:-1;;;15985:18:1;;;15978:47;16042:18;;25652:213:0;15725:341:1;25652:213:0;-1:-1:-1;;;;;25956:26:0;;25889:16;25956:26;;;:18;:26;;;;;;25889:16;;25956:26;;;:59;;-1:-1:-1;;;;;;25986:29:0;;;;;;:18;:29;;;;;;;;25956:59;25952:1101;;;-1:-1:-1;26043:1:0;;-1:-1:-1;26043:1:0;25952:1101;;;-1:-1:-1;;;;;26107:34:0;;;;;;:23;:34;;;;;;;;26103:939;;;26428:14;;26384:17;;26334:18;;26282:20;;26230;;:72;;;;:::i;:::-;:122;;;;:::i;:::-;:171;;;;:::i;:::-;26195:207;;:6;:207;:::i;:::-;26194:249;;;;:::i;:::-;26162:281;;26501:14;;26482:15;;26473:6;:24;;;;:::i;:::-;26472:43;;;;:::i;:::-;26462:53;;26103:939;;;-1:-1:-1;;;;;26541:31:0;;;;;;:23;:31;;;;;;;;26537:505;;;26857:14;;26812:18;;26763:17;;26712:19;;26661;;:70;;;;:::i;:::-;:119;;;;:::i;:::-;:169;;;;:::i;:::-;26626:205;;:6;:205;:::i;:::-;26625:247;;;;:::i;:::-;26593:279;;26929:14;;26911;;26902:6;:23;;;;:::i;26537:505::-;-1:-1:-1;26995:1:0;;-1:-1:-1;26995:1:0;26537:505;27114:4;27065:28;17083:18;;;:9;:18;;;;;;27197:29;;27256:16;;27160:66;;;;;-1:-1:-1;;;27256:16:0;;;;27255:17;:60;;;;-1:-1:-1;27302:13:0;;-1:-1:-1;;;;;27289:26:0;;;27302:13;;27289:26;27255:60;:98;;;;-1:-1:-1;27332:21:0;;-1:-1:-1;;;27332:21:0;;;;27255:98;:171;;;;-1:-1:-1;27397:29:0;;27380:13;;-1:-1:-1;;;;;27380:13:0;17056:7;17083:18;;;:9;:18;;;;;;27370:56;27255:171;27237:2261;;;27457:19;27453:2034;;;27520:29;;27497:52;;27570:31;27830:1;27788:18;;27742;;27694:20;;27646;;:68;;;;:::i;:::-;:114;;;;:::i;:::-;:160;;;;:::i;:::-;:185;27620:711;;;28292:18;;28242;;28190:20;;28138;;:72;;;;:::i;:::-;:122;;;;:::i;:::-;:172;;;;:::i;:::-;28089:18;;28035;;27979:20;;:74;;;;:::i;:::-;:128;;;;:::i;:::-;27926:182;;:20;:182;:::i;:::-;27925:386;;;;:::i;:::-;27874:437;;27620:711;28396:20;;28351:22;;28396:24;28392:536;;28487:73;28536:23;28487:20;:73;:::i;:::-;28445:115;;28392:536;;;28787:1;28741:18;;28691;;28639:20;;:70;;;;:::i;:::-;:120;;;;:::i;:::-;:149;28609:300;;;28865:20;28839:46;;28609:300;29171:1;29129:18;;29083;;29035:20;;:66;;;;:::i;:::-;:112;;;;:::i;:::-;:137;29009:261;;;29215:35;29226:23;29215:10;:35::i;:::-;29292:18;;29288:184;;29422:30;29437:14;29422;:30::i;:::-;27478:2009;;27453:2034;29510:22;29545:18;29556:7;29545:8;:18;:::i;:::-;29535:29;;:6;:29;:::i;:::-;29593:4;29575:24;;;;:9;:24;;;;;:36;;29510:54;;-1:-1:-1;29603:8:0;;29575:24;;;:36;;29603:8;;29575:36;:::i;:::-;;;;-1:-1:-1;;;;;;;29632:17:0;29622:28;;;;;:9;:28;;;;;:39;;29654:7;;29622:28;:39;;29654:7;;29622:39;:::i;:::-;;;;-1:-1:-1;;;;;;;29692:17:0;;;;;;:9;:17;;;;;;:26;;29712:6;;29692:26;:::i;:::-;-1:-1:-1;;;;;29672:17:0;;;;;;;:9;:17;;;;;;:46;;;;29729:20;;;;;;;;:38;;29753:14;;29672:17;29729:38;;29753:14;;29729:38;:::i;:::-;;;;-1:-1:-1;;29784:12:0;;29780:91;;29818:41;;2351:25:1;;;29843:4:0;;-1:-1:-1;;;;;29818:41:0;;;;;2339:2:1;2324:18;29818:41:0;;;;;;;29780:91;29885:11;;29881:93;;29935:17;-1:-1:-1;;;;;29918:44:0;29927:6;-1:-1:-1;;;;;29918:44:0;;29954:7;29918:44;;;;2351:25:1;;2339:2;2324:18;;2205:177;29918:44:0;;;;;;;;29881:93;30006:9;-1:-1:-1;;;;;29989:43:0;29998:6;-1:-1:-1;;;;;29989:43:0;;30017:14;29989:43;;;;2351:25:1;;2339:2;2324:18;;2205:177;29989:43:0;;;;;;;;25038:5002;;;;;24917:5123;;;:::o;30048:1072::-;15813:16;:23;;-1:-1:-1;;;;15813:23:0;-1:-1:-1;;;15813:23:0;;;30221:18:::1;::::0;30187::::1;::::0;15813:16;30151:20;15813:23;;30221:18;30151:54:::1;::::0;::::1;:::i;:::-;:88;;;;:::i;:::-;30130:109:::0;-1:-1:-1;30275:21:0::1;30307:39;30324:21:::0;30307:16:::1;:39::i;:::-;30357:26;30386:40;30411:14:::0;30386:21:::1;:40;:::i;:::-;30357:69;;30437:24;30526:10;30500:20;;30465:18;:56;;;;:::i;:::-;30464:73;;;;:::i;:::-;30437:100;;30548:22;30632:10;30596:18;;30574;:41;;;;:::i;:::-;30573:69;;;;:::i;:::-;30548:94;;30653:22;30737:10;30701:18;;30679;:41;;;;:::i;:::-;30678:69;;;;:::i;:::-;30653:94:::0;-1:-1:-1;30764:20:0;;30760:115:::1;;30822:22;::::0;30801:62:::1;::::0;-1:-1:-1;;;;;30822:22:0::1;30846:16:::0;30801:20:::1;:62::i;:::-;30889:18:::0;;30885:109:::1;;30945:20;::::0;30924:58:::1;::::0;-1:-1:-1;;;;;30945:20:0::1;30967:14:::0;30924:20:::1;:58::i;:::-;31008:18:::0;;31004:109:::1;;31064:20;::::0;31043:58:::1;::::0;-1:-1:-1;;;;;31064:20:0::1;31086:14:::0;31043:20:::1;:58::i;:::-;-1:-1:-1::0;;15859:16:0;:24;;-1:-1:-1;;;;15859:24:0;;;-1:-1:-1;;;;;30048:1072:0:o;31276:1094::-;15813:16;:23;;-1:-1:-1;;;;15813:23:0;-1:-1:-1;;;15813:23:0;;;;31427:24:::1;31450:1;31427:20:::0;:24:::1;:::i;:::-;31412:39:::0;-1:-1:-1;31462:17:0::1;31482:27;31412:39:::0;31482:20;:27:::1;:::i;:::-;31462:47:::0;-1:-1:-1;31812:21:0::1;31878:22;31895:4:::0;31878:16:::1;:22::i;:::-;32031:18;32052:40;32077:14:::0;32052:21:::1;:40;:::i;:::-;32031:61;;32142:35;32155:9;32166:10;32142:12;:35::i;:::-;32195:43;::::0;;16495:25:1;;;16551:2;16536:18;;16529:34;;;16579:18;;;16572:34;;;32195:43:0::1;::::0;16483:2:1;16468:18;32195:43:0::1;;;;;;;32255:21;:25:::0;32251:112:::1;;32297:22;::::0;:54:::1;::::0;-1:-1:-1;;;;;32297:22:0;;::::1;::::0;32329:21:::1;32297:54:::0;::::1;;;::::0;:22:::1;:54:::0;:22;:54;32329:21;32297:22;:54;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;32251:112;-1:-1:-1::0;;15859:16:0;:24;;-1:-1:-1;;;;15859:24:0;;;-1:-1:-1;;;31276:1094:0:o;32378:589::-;32528:16;;;32542:1;32528:16;;;;;;;;32504:21;;32528:16;;;;;;;;;;-1:-1:-1;32528:16:0;32504:40;;32573:4;32555;32560:1;32555:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;32555:23:0;;;:7;;;;;;;;;;:23;;;;32599:15;;:22;;;-1:-1:-1;;;32599:22:0;;;;:15;;;;;:20;;:22;;;;;32555:7;;32599:22;;;;;:15;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;32589:4;32594:1;32589:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;32589:32:0;;;:7;;;;;;;;;:32;32666:15;;32634:62;;32651:4;;32666:15;32684:11;32634:8;:62::i;:::-;32735:15;;:224;;-1:-1:-1;;;32735:224:0;;-1:-1:-1;;;;;32735:15:0;;;;:66;;:224;;32816:11;;32735:15;;32886:4;;32913;;32933:15;;32735:224;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;32433:534;32378:589;:::o;31128:140::-;31234:26;;-1:-1:-1;;;;;31234:18:0;;;:26;;;;;31253:6;;31234:26;;;;31253:6;31234:18;:26;;;;;;;;;;;;;;;;;;;;;31128:140;;:::o;32975:513::-;33155:15;;33123:62;;33140:4;;-1:-1:-1;;;;;33155:15:0;33173:11;33123:8;:62::i;:::-;33228:15;;-1:-1:-1;;;;;33228:15:0;:31;33267:9;33300:4;33320:11;33228:15;;33432:7;3448;3475:6;-1:-1:-1;;;;;3475:6:0;;3402:87;33432:7;33228:252;;;;;;-1:-1:-1;;;;;;33228:252:0;;;-1:-1:-1;;;;;18349:15:1;;;33228:252:0;;;18331:34:1;18381:18;;;18374:34;;;;18424:18;;;18417:34;;;;18467:18;;;18460:34;18531:15;;;18510:19;;;18503:44;33454:15:0;18563:19:1;;;18556:35;18265:19;;33228:252:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;32975:513;;:::o;14:548:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:131::-;-1:-1:-1;;;;;642:31:1;;632:42;;622:70;;688:1;685;678:12;622:70;567:131;:::o;703:315::-;771:6;779;832:2;820:9;811:7;807:23;803:32;800:52;;;848:1;845;838:12;800:52;887:9;874:23;906:31;931:5;906:31;:::i;:::-;956:5;1008:2;993:18;;;;980:32;;-1:-1:-1;;;703:315:1:o;1647:553::-;1748:6;1756;1764;1817:2;1805:9;1796:7;1792:23;1788:32;1785:52;;;1833:1;1830;1823:12;1785:52;1872:9;1859:23;1891:31;1916:5;1891:31;:::i;:::-;1941:5;-1:-1:-1;1998:2:1;1983:18;;1970:32;2011:33;1970:32;2011:33;:::i;:::-;2063:7;-1:-1:-1;2122:2:1;2107:18;;2094:32;2135:33;2094:32;2135:33;:::i;:::-;2187:7;2177:17;;;1647:553;;;;;:::o;2621:456::-;2698:6;2706;2714;2767:2;2755:9;2746:7;2742:23;2738:32;2735:52;;;2783:1;2780;2773:12;2735:52;2822:9;2809:23;2841:31;2866:5;2841:31;:::i;:::-;2891:5;-1:-1:-1;2948:2:1;2933:18;;2920:32;2961:33;2920:32;2961:33;:::i;:::-;2621:456;;3013:7;;-1:-1:-1;;;3067:2:1;3052:18;;;;3039:32;;2621:456::o;3082:247::-;3141:6;3194:2;3182:9;3173:7;3169:23;3165:32;3162:52;;;3210:1;3207;3200:12;3162:52;3249:9;3236:23;3268:31;3293:5;3268:31;:::i;:::-;3318:5;3082:247;-1:-1:-1;;;3082:247:1:o;3334:454::-;3429:6;3437;3445;3453;3461;3514:3;3502:9;3493:7;3489:23;3485:33;3482:53;;;3531:1;3528;3521:12;3482:53;-1:-1:-1;;3554:23:1;;;3624:2;3609:18;;3596:32;;-1:-1:-1;3675:2:1;3660:18;;3647:32;;3726:2;3711:18;;3698:32;;-1:-1:-1;3777:3:1;3762:19;3749:33;;-1:-1:-1;3334:454:1;-1:-1:-1;3334:454:1:o;3793:367::-;3856:8;3866:6;3920:3;3913:4;3905:6;3901:17;3897:27;3887:55;;3938:1;3935;3928:12;3887:55;-1:-1:-1;3961:20:1;;4004:18;3993:30;;3990:50;;;4036:1;4033;4026:12;3990:50;4073:4;4065:6;4061:17;4049:29;;4133:3;4126:4;4116:6;4113:1;4109:14;4101:6;4097:27;4093:38;4090:47;4087:67;;;4150:1;4147;4140:12;4087:67;3793:367;;;;;:::o;4165:773::-;4287:6;4295;4303;4311;4364:2;4352:9;4343:7;4339:23;4335:32;4332:52;;;4380:1;4377;4370:12;4332:52;4420:9;4407:23;4449:18;4490:2;4482:6;4479:14;4476:34;;;4506:1;4503;4496:12;4476:34;4545:70;4607:7;4598:6;4587:9;4583:22;4545:70;:::i;:::-;4634:8;;-1:-1:-1;4519:96:1;-1:-1:-1;4722:2:1;4707:18;;4694:32;;-1:-1:-1;4738:16:1;;;4735:36;;;4767:1;4764;4757:12;4735:36;;4806:72;4870:7;4859:8;4848:9;4844:24;4806:72;:::i;:::-;4165:773;;;;-1:-1:-1;4897:8:1;-1:-1:-1;;;;4165:773:1:o;4943:160::-;5008:20;;5064:13;;5057:21;5047:32;;5037:60;;5093:1;5090;5083:12;5037:60;4943:160;;;:::o;5108:315::-;5173:6;5181;5234:2;5222:9;5213:7;5209:23;5205:32;5202:52;;;5250:1;5247;5240:12;5202:52;5289:9;5276:23;5308:31;5333:5;5308:31;:::i;:::-;5358:5;-1:-1:-1;5382:35:1;5413:2;5398:18;;5382:35;:::i;:::-;5372:45;;5108:315;;;;;:::o;5428:180::-;5487:6;5540:2;5528:9;5519:7;5515:23;5511:32;5508:52;;;5556:1;5553;5546:12;5508:52;-1:-1:-1;5579:23:1;;5428:180;-1:-1:-1;5428:180:1:o;5613:::-;5669:6;5722:2;5710:9;5701:7;5697:23;5693:32;5690:52;;;5738:1;5735;5728:12;5690:52;5761:26;5777:9;5761:26;:::i;5798:388::-;5866:6;5874;5927:2;5915:9;5906:7;5902:23;5898:32;5895:52;;;5943:1;5940;5933:12;5895:52;5982:9;5969:23;6001:31;6026:5;6001:31;:::i;:::-;6051:5;-1:-1:-1;6108:2:1;6093:18;;6080:32;6121:33;6080:32;6121:33;:::i;:::-;6173:7;6163:17;;;5798:388;;;;;:::o;6191:380::-;6270:1;6266:12;;;;6313;;;6334:61;;6388:4;6380:6;6376:17;6366:27;;6334:61;6441:2;6433:6;6430:14;6410:18;6407:38;6404:161;;6487:10;6482:3;6478:20;6475:1;6468:31;6522:4;6519:1;6512:15;6550:4;6547:1;6540:15;6404:161;;6191:380;;;:::o;6576:356::-;6778:2;6760:21;;;6797:18;;;6790:30;6856:34;6851:2;6836:18;;6829:62;6923:2;6908:18;;6576:356::o;7702:127::-;7763:10;7758:3;7754:20;7751:1;7744:31;7794:4;7791:1;7784:15;7818:4;7815:1;7808:15;7834:125;7899:9;;;7920:10;;;7917:36;;;7933:18;;:::i;9143:127::-;9204:10;9199:3;9195:20;9192:1;9185:31;9235:4;9232:1;9225:15;9259:4;9256:1;9249:15;9275:135;9314:3;9335:17;;;9332:43;;9355:18;;:::i;:::-;-1:-1:-1;9402:1:1;9391:13;;9275:135::o;10060:422::-;10149:1;10192:5;10149:1;10206:270;10227:7;10217:8;10214:21;10206:270;;;10286:4;10282:1;10278:6;10274:17;10268:4;10265:27;10262:53;;;10295:18;;:::i;:::-;10345:7;10335:8;10331:22;10328:55;;;10365:16;;;;10328:55;10444:22;;;;10404:15;;;;10206:270;;;10210:3;10060:422;;;;;:::o;10487:806::-;10536:5;10566:8;10556:80;;-1:-1:-1;10607:1:1;10621:5;;10556:80;10655:4;10645:76;;-1:-1:-1;10692:1:1;10706:5;;10645:76;10737:4;10755:1;10750:59;;;;10823:1;10818:130;;;;10730:218;;10750:59;10780:1;10771:10;;10794:5;;;10818:130;10855:3;10845:8;10842:17;10839:43;;;10862:18;;:::i;:::-;-1:-1:-1;;10918:1:1;10904:16;;10933:5;;10730:218;;11032:2;11022:8;11019:16;11013:3;11007:4;11004:13;11000:36;10994:2;10984:8;10981:16;10976:2;10970:4;10967:12;10963:35;10960:77;10957:159;;;-1:-1:-1;11069:19:1;;;11101:5;;10957:159;11148:34;11173:8;11167:4;11148:34;:::i;:::-;11218:6;11214:1;11210:6;11206:19;11197:7;11194:32;11191:58;;;11229:18;;:::i;:::-;11267:20;;10487:806;-1:-1:-1;;;10487:806:1:o;11298:131::-;11358:5;11387:36;11414:8;11408:4;11387:36;:::i;11434:168::-;11507:9;;;11538;;11555:15;;;11549:22;;11535:37;11525:71;;11576:18;;:::i;12014:128::-;12081:9;;;12102:11;;;12099:37;;;12116:18;;:::i;12558:417::-;12760:2;12742:21;;;12799:2;12779:18;;;12772:30;12838:34;12833:2;12818:18;;12811:62;-1:-1:-1;;;12904:2:1;12889:18;;12882:51;12965:3;12950:19;;12558:417::o;16071:217::-;16111:1;16137;16127:132;;16181:10;16176:3;16172:20;16169:1;16162:31;16216:4;16213:1;16206:15;16244:4;16241:1;16234:15;16127:132;-1:-1:-1;16273:9:1;;16071:217::o;16749:251::-;16819:6;16872:2;16860:9;16851:7;16847:23;16843:32;16840:52;;;16888:1;16885;16878:12;16840:52;16920:9;16914:16;16939:31;16964:5;16939:31;:::i;17005:980::-;17267:4;17315:3;17304:9;17300:19;17346:6;17335:9;17328:25;17372:2;17410:6;17405:2;17394:9;17390:18;17383:34;17453:3;17448:2;17437:9;17433:18;17426:31;17477:6;17512;17506:13;17543:6;17535;17528:22;17581:3;17570:9;17566:19;17559:26;;17620:2;17612:6;17608:15;17594:29;;17641:1;17651:195;17665:6;17662:1;17659:13;17651:195;;;17730:13;;-1:-1:-1;;;;;17726:39:1;17714:52;;17821:15;;;;17786:12;;;;17762:1;17680:9;17651:195;;;-1:-1:-1;;;;;;;17902:32:1;;;;17897:2;17882:18;;17875:60;-1:-1:-1;;;17966:3:1;17951:19;17944:35;17863:3;17005:980;-1:-1:-1;;;17005:980:1:o;18602:306::-;18690:6;18698;18706;18759:2;18747:9;18738:7;18734:23;18730:32;18727:52;;;18775:1;18772;18765:12;18727:52;18804:9;18798:16;18788:26;;18854:2;18843:9;18839:18;18833:25;18823:35;;18898:2;18887:9;18883:18;18877:25;18867:35;;18602:306;;;;;:::o

Metadata Hash

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