Contract 0x749f031fda3a4904b026f2275a697096492a129d 2

 

Contract Overview

Balance:
0.009104965 BNB

BNB Value:
$4.34 (@ $476.95/BNB)

Token:
 
Txn Hash Method
Block
From
To
Value [Txn Fee]
0x5046e7013c34349e575bcf211d453ea10865bfd51a1add6f7459f93ab1b0cba1Approve144549802022-01-17 21:29:474 hrs 32 mins ago0x78e75a50c26c6f5670eba9072d98b6a9006244a6 IN  0x749f031fda3a4904b026f2275a697096492a129d0 BNB0.000227025
0xf62aa32b957bffd5d969ebb8a70dd4e41140c18a0b4e4f55c4cecf1ddd86a4ffApprove144316322022-01-17 1:49:111 day 13 mins ago0x031cb42eb6b7dbefbdd82faeaf78d0664a4b00c9 IN  0x749f031fda3a4904b026f2275a697096492a129d0 BNB0.000227025
0x70e4cfc1d4833cd892b179dc2e6183240922c7e1bc311c446e9308d23306768aApprove144290492022-01-16 23:38:371 day 2 hrs ago0x7571a153817d2389040a01d0a8c255632280e703 IN  0x749f031fda3a4904b026f2275a697096492a129d0 BNB0.000227025
0x335861ba08150ec2ae69d4da5df7581de680a2e948f03f73072760c95e109f95Approve144192452022-01-16 15:26:131 day 10 hrs ago0x8464189f65541066d971df3a07b376119233cc06 IN  0x749f031fda3a4904b026f2275a697096492a129d0 BNB0.000227025
0x423a2faf2ca779d7e9ec7b186e66d2a5d85dd7398c745184f25c409a2d541626Approve144074972022-01-16 5:37:111 day 20 hrs ago0xc8bbb85d57433aecc1c09b0320dbc5d3624b52bb IN  0x749f031fda3a4904b026f2275a697096492a129d0 BNB0.000227025
0x37124d885a6949575f90bf134cbd36c7c3a2b09b165b4de12faac704a9931527Approve143697512022-01-14 22:04:333 days 3 hrs ago0x927e950f2a2da1eb5a363aeaf861dee9063128ba IN  0x749f031fda3a4904b026f2275a697096492a129d0 BNB0.00027243
0x0b02596ef81c6ffa68c821b2525b8144443194d20bca30a9a3223e3513dd2ecaApprove143696692022-01-14 22:00:273 days 4 hrs ago0x79ade3e6ab294c12213b9980e5f6b86b0246daf1 IN  0x749f031fda3a4904b026f2275a697096492a129d0 BNB0.000227025
0xa2652fc95ee16ff8707f1575834f238f7a82f6f9b9ae1fe809d7ce1c5d19244fApprove143524322022-01-14 7:36:453 days 18 hrs ago0x6b1015a0c5300ab680c6781475a5e941eae70e8c IN  0x749f031fda3a4904b026f2275a697096492a129d0 BNB0.000227025
0x56f12190199d0f511e3e3eeb786eb8bb4ff441e54926708e4d1f7f6a9f42fe99Approve143495542022-01-14 5:12:513 days 20 hrs ago0x93867a6f9ce7ddfc83005610e6cf48f1abaffce1 IN  0x749f031fda3a4904b026f2275a697096492a129d0 BNB0.000227025
0xfe53402d3c4347f4bf3ab1963b9415ca972c83af35914c12640237a2a2ff6cd5Approve143449562022-01-14 1:20:314 days 42 mins ago0xd228de8719f8cf33da35fe6d05d48bc84e97b579 IN  0x749f031fda3a4904b026f2275a697096492a129d0 BNB0.000227025
0xa927887a7c35c5578c7cce33448efb1525e5e9992cf45d9ffaf7468df9e9f74cApprove143391572022-01-13 20:30:314 days 5 hrs ago0xf127222efe8093f8d939c50d4534bda76fa76f85 IN  0x749f031fda3a4904b026f2275a697096492a129d0 BNB0.000075105
0x4ac3924950fbac3d83ef1089a9c399f81ed40942d245156d38e90907433fa125Approve143381292022-01-13 19:39:064 days 6 hrs ago0x2080d26b0c6d62896b01002b864173f4b360e5cf IN  0x749f031fda3a4904b026f2275a697096492a129d0 BNB0.000227025
0x31913adc9b8ad1f4dba6672ac9d7f29e764201abb269709e2655441f0c0f0b1aTransfer143380632022-01-13 19:35:484 days 6 hrs ago0x78e75a50c26c6f5670eba9072d98b6a9006244a6 IN  0x749f031fda3a4904b026f2275a697096492a129d0 BNB0.000297215
0x8d88338b2d48cdea3fecb17b529fe1a71c91f63805d02b8344ac7844f157f1baTransfer143367052022-01-13 18:27:534 days 7 hrs ago0xb59c24e3242220ec5e8f57a46b3579f5985497e3 IN  0x749f031fda3a4904b026f2275a697096492a129d0 BNB0.000147395
0xfc17a234d8337bfb81f5930030ca07a91c466afc935c22cd7573fc8eee6602bbApprove143359382022-01-13 17:49:324 days 8 hrs ago0xdd2424dee29c06b9eca9b91c1c0cbceb86b209c2 IN  0x749f031fda3a4904b026f2275a697096492a129d0 BNB0.000227025
0xf519c7eb2708a36322a4e250e18acf3cb34b5cd77dd21288c25bfc8a8281c61aApprove143249342022-01-13 8:38:254 days 17 hrs ago0x66fe4717c847fe9ce3bddf86e71f17b73fca4364 IN  0x749f031fda3a4904b026f2275a697096492a129d0 BNB0.000227025
0x05fb1908b313456ca0a83ff2d2bc935f3828cd456f8ded1368bac4ba2f1add92Approve143046772022-01-12 15:45:005 days 10 hrs ago0x8a1db3d8cd920848e2bca72806cee059dec52448 IN  0x749f031fda3a4904b026f2275a697096492a129d0 BNB0.000227025
0x6433ad6b4b53426401b5d1823e4c79882f49b47fa8d85512b96488ba84c72d23Approve142830282022-01-11 21:39:146 days 4 hrs ago0x49da50b7d17fb35fe0a03006b0c6aab562bf101a IN  0x749f031fda3a4904b026f2275a697096492a129d0 BNB0.000075105
0x7df47026609f07729f2e168f43dac24615d5a78fc76808fd507b73356a150264Approve142794032022-01-11 18:37:596 days 7 hrs ago0x432d9f68b3a3eb18e502b537b96130b9f44aa627 IN  0x749f031fda3a4904b026f2275a697096492a129d0 BNB0.000227025
0x01bbc31eb660e721c3429a2038f54f8b41c8a69091d2bc5a579278de231b5366Transfer142792482022-01-11 18:30:146 days 7 hrs ago0xb381a4e5ab2ac390ec67b4dc0d7de9b7a612fb31 IN  0x749f031fda3a4904b026f2275a697096492a129d0 BNB0.00209604
0x8b204e585a6cc99bdb32d628d89865d2b9a0f2dc8225d828ff808ed9da96e437Approve142727602022-01-11 13:05:506 days 12 hrs ago0xca3376d41837ea3731b0f8f3c23098161d65039e IN  0x749f031fda3a4904b026f2275a697096492a129d0 BNB0.000075105
0x2bf61f2799fd4a98e7c3f8af950deff94500d1d2fa8d99cf1ab803388cb2ea77Approve142560422022-01-10 23:04:117 days 2 hrs ago0x04fee23dd49d4987fd85d9e72a7181f17a92802c IN  0x749f031fda3a4904b026f2275a697096492a129d0 BNB0.000227025
0x4566d1d3f8f72ed831410d52c4c498812d7e34d3e5cd1921e34fca2cb5c589d2Approve142506752022-01-10 18:35:507 days 7 hrs ago0xd655e0e570480eae6015710868948b3fe2390b5c IN  0x749f031fda3a4904b026f2275a697096492a129d0 BNB0.000227025
0x880e7ab27c46c1337d5a5364d82bd499566fb12df43904af478662d6dcaec3b3Approve142398872022-01-10 9:35:577 days 16 hrs ago0xe2b2c2fb7a2d9bb647a605b64ae138168daca036 IN  0x749f031fda3a4904b026f2275a697096492a129d0 BNB0.000227025
0x3c4036d830a4ffb217746421da16fbb38c101675c3947888caf32026871b385dApprove142335712022-01-10 4:20:097 days 21 hrs ago0x7d21014cb1b0c3593d7e7b494cbf02ef8c420aa8 IN  0x749f031fda3a4904b026f2275a697096492a129d0 BNB0.000227025
[ Download CSV Export 
Latest 25 internal transaction
Parent Txn Hash Block From To Value
0x9644ebe9edd9047999a30ba3ce036227f5bc7adf99142ad748033065e7768ebc144500692022-01-17 17:22:348 hrs 40 mins ago 0x749f031fda3a4904b026f2275a697096492a129d 0xa513e5b1cc4e04480da2fc0c95316ccf17e5b1910.05411942195110572 BNB
0x9644ebe9edd9047999a30ba3ce036227f5bc7adf99142ad748033065e7768ebc144500692022-01-17 17:22:348 hrs 40 mins ago PancakeSwap: Router v2 0x749f031fda3a4904b026f2275a697096492a129d0.05411942195110572 BNB
0x9644ebe9edd9047999a30ba3ce036227f5bc7adf99142ad748033065e7768ebc144500692022-01-17 17:22:348 hrs 40 mins ago 0x749f031fda3a4904b026f2275a697096492a129d PancakeSwap: Router v20.018028613635590326 BNB
0x9644ebe9edd9047999a30ba3ce036227f5bc7adf99142ad748033065e7768ebc144500692022-01-17 17:22:348 hrs 40 mins ago PancakeSwap: Router v2 0x749f031fda3a4904b026f2275a697096492a129d0.018028613635590326 BNB
0x7ee12182e514ef7344ddf8a44f22c93c3f0b98ffa874c21516bd92d87adba56a144499692022-01-17 17:17:348 hrs 45 mins ago 0x749f031fda3a4904b026f2275a697096492a129d 0xa513e5b1cc4e04480da2fc0c95316ccf17e5b1910.052492464806116789 BNB
0x7ee12182e514ef7344ddf8a44f22c93c3f0b98ffa874c21516bd92d87adba56a144499692022-01-17 17:17:348 hrs 45 mins ago PancakeSwap: Router v2 0x749f031fda3a4904b026f2275a697096492a129d0.052492464806116789 BNB
0x7ee12182e514ef7344ddf8a44f22c93c3f0b98ffa874c21516bd92d87adba56a144499692022-01-17 17:17:348 hrs 45 mins ago 0x749f031fda3a4904b026f2275a697096492a129d PancakeSwap: Router v20.017486509198079311 BNB
0x7ee12182e514ef7344ddf8a44f22c93c3f0b98ffa874c21516bd92d87adba56a144499692022-01-17 17:17:348 hrs 45 mins ago PancakeSwap: Router v2 0x749f031fda3a4904b026f2275a697096492a129d0.017486509198079311 BNB
0xf6d1cbef7af3538e2396f72cb3c09498c2322b68b61192c3d2e975f99b738e70144316402022-01-17 1:49:351 day 13 mins ago 0x749f031fda3a4904b026f2275a697096492a129d 0xa513e5b1cc4e04480da2fc0c95316ccf17e5b1910.046672002994471477 BNB
0xf6d1cbef7af3538e2396f72cb3c09498c2322b68b61192c3d2e975f99b738e70144316402022-01-17 1:49:351 day 13 mins ago PancakeSwap: Router v2 0x749f031fda3a4904b026f2275a697096492a129d0.046672002994471477 BNB
0xf6d1cbef7af3538e2396f72cb3c09498c2322b68b61192c3d2e975f99b738e70144316402022-01-17 1:49:351 day 13 mins ago 0x749f031fda3a4904b026f2275a697096492a129d PancakeSwap: Router v20.015547211448698403 BNB
0xf6d1cbef7af3538e2396f72cb3c09498c2322b68b61192c3d2e975f99b738e70144316402022-01-17 1:49:351 day 13 mins ago PancakeSwap: Router v2 0x749f031fda3a4904b026f2275a697096492a129d0.015547211448698403 BNB
0xc9d1fec0cf50596d3628a956fab32f5f23be46c64c310708b4ccff72fa5661b6144299182022-01-17 0:22:061 day 1 hr ago 0x749f031fda3a4904b026f2275a697096492a129d 0xa513e5b1cc4e04480da2fc0c95316ccf17e5b1910.000507293600378711 BNB
0xc9d1fec0cf50596d3628a956fab32f5f23be46c64c310708b4ccff72fa5661b6144299182022-01-17 0:22:061 day 1 hr ago PancakeSwap: Router v2 0x749f031fda3a4904b026f2275a697096492a129d0.000507293600378711 BNB
0xc9d1fec0cf50596d3628a956fab32f5f23be46c64c310708b4ccff72fa5661b6144299182022-01-17 0:22:061 day 1 hr ago 0x749f031fda3a4904b026f2275a697096492a129d PancakeSwap: Router v20.000168957403593825 BNB
0xc9d1fec0cf50596d3628a956fab32f5f23be46c64c310708b4ccff72fa5661b6144299182022-01-17 0:22:061 day 1 hr ago PancakeSwap: Router v2 0x749f031fda3a4904b026f2275a697096492a129d0.000168957403593825 BNB
0x110e586837288ed7d1fda4864dfbd8634522dc5f9564c480400b401fa9f2d7b4144290552022-01-16 23:38:551 day 2 hrs ago 0x749f031fda3a4904b026f2275a697096492a129d 0xa513e5b1cc4e04480da2fc0c95316ccf17e5b1910.000608793068021126 BNB
0x110e586837288ed7d1fda4864dfbd8634522dc5f9564c480400b401fa9f2d7b4144290552022-01-16 23:38:551 day 2 hrs ago PancakeSwap: Router v2 0x749f031fda3a4904b026f2275a697096492a129d0.000608793068021126 BNB
0x110e586837288ed7d1fda4864dfbd8634522dc5f9564c480400b401fa9f2d7b4144290552022-01-16 23:38:551 day 2 hrs ago 0x749f031fda3a4904b026f2275a697096492a129d PancakeSwap: Router v20.000202762535820257 BNB
0x110e586837288ed7d1fda4864dfbd8634522dc5f9564c480400b401fa9f2d7b4144290552022-01-16 23:38:551 day 2 hrs ago PancakeSwap: Router v2 0x749f031fda3a4904b026f2275a697096492a129d0.000202762535820257 BNB
0xd8d51d3e48b0099ef48a5ea7b1a2de24239fe19e98596c1a2e088b4c986a5cca144209872022-01-16 16:54:301 day 9 hrs ago 0x749f031fda3a4904b026f2275a697096492a129d 0xa513e5b1cc4e04480da2fc0c95316ccf17e5b1910.016542072062085687 BNB
0xd8d51d3e48b0099ef48a5ea7b1a2de24239fe19e98596c1a2e088b4c986a5cca144209872022-01-16 16:54:301 day 9 hrs ago PancakeSwap: Router v2 0x749f031fda3a4904b026f2275a697096492a129d0.016542072062085687 BNB
0xd8d51d3e48b0099ef48a5ea7b1a2de24239fe19e98596c1a2e088b4c986a5cca144209872022-01-16 16:54:301 day 9 hrs ago 0x749f031fda3a4904b026f2275a697096492a129d PancakeSwap: Router v20.005509788047605241 BNB
0xd8d51d3e48b0099ef48a5ea7b1a2de24239fe19e98596c1a2e088b4c986a5cca144209872022-01-16 16:54:301 day 9 hrs ago PancakeSwap: Router v2 0x749f031fda3a4904b026f2275a697096492a129d0.005509788047605241 BNB
0x5870b7ed0752b9f204746cb4a6bef25299418539d51c1e57c5dd43e25c847481144192552022-01-16 15:26:431 day 10 hrs ago 0x749f031fda3a4904b026f2275a697096492a129d 0xa513e5b1cc4e04480da2fc0c95316ccf17e5b1910.002642343442018926 BNB
[ Download CSV Export 
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
BETS

Compiler Version
v0.8.7+commit.e28d00a7

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at BscScan.com on 2021-11-08
*/

// SPDX-License-Identifier: NO LICENSE
pragma solidity >=0.7.0 <0.9.0;

/**
 * BETSWAMP
 */

/**
 * SafeMath
 * Math operations with safety checks that throw on error
 */
library SafeMath {
    /**
     * @dev Returns the addition of two unsigned integers, reverting on
     * overflow.
     *
     * Counterpart to Solidity's `+` operator.
     *
     * Requirements:
     * - Addition cannot overflow.
     */
    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        require(c >= a, "SafeMath: addition overflow");

        return c;
    }

    /**
     * @dev Returns the subtraction of two unsigned integers, reverting on
     * overflow (when the result is negative).
     *
     * Counterpart to Solidity's `-` operator.
     *
     * Requirements:
     * - Subtraction cannot overflow.
     */
    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return sub(a, b, "SafeMath: subtraction overflow");
    }

    /**
     * @dev Returns the subtraction of two unsigned integers, reverting with custom message on
     * overflow (when the result is negative).
     *
     * Counterpart to Solidity's `-` operator.
     *
     * Requirements:
     * - Subtraction cannot overflow.
     */
    function sub(
        uint256 a,
        uint256 b,
        string memory errorMessage
    ) internal pure returns (uint256) {
        require(b <= a, errorMessage);
        uint256 c = a - b;

        return c;
    }

    /**
     * @dev Returns the multiplication of two unsigned integers, reverting on
     * overflow.
     *
     * Counterpart to Solidity's `*` operator.
     *
     * Requirements:
     * - Multiplication cannot overflow.
     */
    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        // Gas optimization: this is cheaper than requiring 'a' not being zero, but the
        // benefit is lost if 'b' is also tested.
        // See: https://github.com/OpenZeppelin/openzeppelin-contracts/pull/522
        if (a == 0) {
            return 1;
        }

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

        return c;
    }

    /**
     * @dev Returns the integer division of two unsigned integers. Reverts on
     * division by zero. The result is rounded towards zero.
     *
     * Counterpart to Solidity's `/` operator. Note: this function uses a
     * `revert` opcode (which leaves remaining gas untouched) while Solidity
     * uses an invalid opcode to revert (consuming all remaining gas).
     *
     * Requirements:
     * - The divisor cannot be zero.
     */
    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return div(a, b, "SafeMath: division by zero");
    }

    /**
     * @dev Returns the integer division of two unsigned integers. Reverts with custom message on
     * division by zero. The result is rounded towards zero.
     *
     * Counterpart to Solidity's `/` operator. Note: this function uses a
     * `revert` opcode (which leaves remaining gas untouched) while Solidity
     * uses an invalid opcode to revert (consuming all remaining gas).
     *
     * Requirements:
     * - The divisor cannot be zero.
     */
    function div(
        uint256 a,
        uint256 b,
        string memory errorMessage
    ) internal pure returns (uint256) {
        // Solidity only automatically asserts when dividing by 0
        require(b > 0, errorMessage);
        uint256 c = a / b;
        // assert(a == b * c + a % b); // There is no case in which this doesn't hold

        return c;
    }

    /**
     * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo),
     * Reverts when dividing by zero.
     *
     * Counterpart to Solidity's `%` operator. This function uses a `revert`
     * opcode (which leaves remaining gas untouched) while Solidity uses an
     * invalid opcode to revert (consuming all remaining gas).
     *
     * Requirements:
     * - The divisor cannot be zero.
     */
    function mod(uint256 a, uint256 b) internal pure returns (uint256) {
        return mod(a, b, "SafeMath: modulo by zero");
    }

    /**
     * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo),
     * Reverts with custom message when dividing by zero.
     *
     * Counterpart to Solidity's `%` operator. This function uses a `revert`
     * opcode (which leaves remaining gas untouched) while Solidity uses an
     * invalid opcode to revert (consuming all remaining gas).
     *
     * Requirements:
     * - The divisor cannot be zero.
     */
    function mod(
        uint256 a,
        uint256 b,
        string memory errorMessage
    ) internal pure returns (uint256) {
        require(b != 0, errorMessage);
        return a % b;
    }
}

/**
 * @dev contract handles all ownership operations which provides
 * basic access control mechanism where an account (owner) is granted
 * exclusive access to specific functions
 */
contract Ownable {
    address private _owner;

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

    /**
     * @dev initializes the contract deployer as the initial owner
     */
    constructor() {
        _owner = msg.sender;
    }

    modifier onlyOwner() {
        require(msg.sender == _owner, "Only contract owner can call function.");
        _;
    }

    /**
     *  Renouncing ownership will leave the contract without an owner,
     * thereby removing any functionality that is only available to the owner.
     */
    function renounceOwnership() public onlyOwner {
        emit OwnershipTransferred(_owner, address(0));
        _owner = address(0);
    }

    /**
     * @dev function returns the current owner of the contract
     */
    function displayOnwer() internal view returns (address) {
        return _owner;
    }

    /**
     * @dev Transfers ownership of the contract to a new account (`newOwner`).
     * Can only be called by the current owner.
     */
    function transferOwnership(address newOwner) public onlyOwner {
        _transferOwnership(newOwner);
    }

    /**
     * @dev Transfers ownership of the contract to a new account (`newOwner`).
     */
    function _transferOwnership(address newOwner) internal {
        require(newOwner != address(0), "New owner cannot be zero address");
        emit OwnershipTransferred(_owner, newOwner);
        _owner = newOwner;
    }
}

/**
 * @dev Interface implements the BEP20
 * token standard for the Euphoria token
 */
interface IBEP20 {
    /**
     * @dev Returns the amount of tokens in existence.
     */
    function totalSupply() external view returns (uint256);

    /**
     * @dev Returns the token decimals.
     */
    function decimals() external view returns (uint8);

    /**
     * @dev Returns the token symbol.
     */
    function symbol() external view returns (string memory);

    /**
     * @dev Returns the token name.
     */
    function name() external view returns (string memory);

    /**
     * @dev Returns the bep token owner.
     */
    function getOwner() external view returns (address);

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

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

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

    /**
     * @dev Sets `amount` as the allowance of `spender` over the caller's tokens.
     *
     * Returns a boolean value indicating whether the operation succeeded.
     *
     *
     * Emits an {Approval} event.
     */
    function approve(address spender, uint256 amount) external returns (bool);

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

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

    /**
     * @dev Emitted when the allowance of a `spender` for an `owner` is set by
     * a call to {approve}. `value` is the new allowance.
     */
    event Approval(
        address indexed owner,
        address indexed spender,
        uint256 value
    );
}

// pragma solidity >=0.5.0;

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

// pragma solidity >=0.5.0;

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 Mint(address indexed sender, uint256 amount0, uint256 amount1);
    event Burn(
        address indexed sender,
        uint256 amount0,
        uint256 amount1,
        address indexed to
    );
    event Swap(
        address indexed sender,
        uint256 amount0In,
        uint256 amount1In,
        uint256 amount0Out,
        uint256 amount1Out,
        address indexed to
    );
    event Sync(uint112 reserve0, uint112 reserve1);

    function MINIMUM_LIQUIDITY() external pure returns (uint256);

    function factory() external view returns (address);

    function token0() external view returns (address);

    function token1() external view returns (address);

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

    function price0CumulativeLast() external view returns (uint256);

    function price1CumulativeLast() external view returns (uint256);

    function kLast() external view returns (uint256);

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

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

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

    function skim(address to) external;

    function sync() external;

    function initialize(address, address) external;
}

// pragma solidity >=0.6.2;

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 creates the Euphoria
 * platfrom token
 */

contract BETS is IBEP20, Ownable {
    // pancakeswap v2 router testnet address: 0x9Ac64Cc6e4415144C455BD8E4837Fea55603e5c3
    using SafeMath for uint256;

    mapping(address => uint256) private _balances;

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

    mapping(address => uint256) private _betswamp_addresses;

    // addresses excluded from transaction fess
    mapping(address => bool) private _isExcludedFromFee;

    mapping(address => bool) private _full_withdrawal_betswamp_address;

    mapping(address => bool) private _autoMarketMakerPair;

    string private _name;
    string private _symbol;
    uint8 private _decimals;
    uint256 private _totalSupply;
    uint256 private _allowed_betswamp_address_spending;

    address payable private marketing_wallet_address;
    IUniswapV2Router02 private _uniswapV2Router;
    address private _uniswapV2Pair;
    uint256 private _liquidity_buy_tax = 4;
    uint256 private _liquidity_sell_tax = 8;
    bool private _isTaxable = true; // tax on
    bool private _isSwapping = false;
    uint256 private swapTokensAtAmount = 25;
    bool private _launchedTax = false;

    // event UpdateUniswapV2Router(address indexed newAddress, address indexed oldAddress);
    event ExcludeFromFees(address indexed account, bool isExcluded);    
    event SetAutoMaketMakerPair(address indexed pair, bool indexed value);

    event SwapAndLiquify(
        uint256 tokensSwapped,
        uint256 ethReceived,
        uint256 tokensIntoLiquidity
    );

    constructor(
        address marketing,
        address airdrop,
        address operationAndInfrastructure,
        address privateSale,
        address presale,
        address liquidity,
        address advisors,
        address dev,
        address staking,
        address bonuses,
        address exchange
    ) {
        _name = "Betswamp";
        _symbol = "BETS";
        _decimals = 18;
        _totalSupply = 250000000 * 10**18;

        // init uniswap

        // 0xD99D1c33F9fC3444f8101754aBC46c52416550D1
        _uniswapV2Router = IUniswapV2Router02(
            0x10ED43C718714eb63d5aA57B78B54704E256024E
        );

        // get currency pair
        address pair = IUniswapV2Factory(_uniswapV2Router.factory()).getPair(
            _uniswapV2Router.WETH(),
            address(this)
        );

        // pair not yet created - create pair
        if (pair == address(0)) {
            _uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory())
                .createPair(_uniswapV2Router.WETH(), address(this));
        } else {
            _uniswapV2Pair = pair;
        }

        _setAutoMarketMakerPair(_uniswapV2Pair, true);

        marketing_wallet_address = payable(marketing);

        // allowed amount euphoria addresses are allowed to withdraw monthly after lock period
        _allowed_betswamp_address_spending = 2;

        // tokenomics

        _balances[dev] = (_totalSupply / 100) * 5;
        _balances[marketing] = (_totalSupply / 100) * 10;
        _balances[airdrop] = (_totalSupply / 100) * 2;
        _balances[operationAndInfrastructure] = (_totalSupply / 100) * 8;
        _balances[privateSale] = (_totalSupply / 100) * 2;
        _balances[presale] = (_totalSupply / 100) * 12;
        _balances[liquidity] = (_totalSupply / 100) * 32;
        _balances[advisors] = (_totalSupply / 100) * 2;
        _balances[staking] = (_totalSupply / 100) * 15;
        _balances[bonuses] = (_totalSupply / 100) * 2;
        _balances[exchange] = (_totalSupply / 100) * 10;

        // exclude addresses from fees
        _isExcludedFromFee[msg.sender] = true;
        _isExcludedFromFee[address(this)] = true;
        _isExcludedFromFee[dev] = true;
        _isExcludedFromFee[marketing] = true;
        _isExcludedFromFee[airdrop] = true;
        _isExcludedFromFee[operationAndInfrastructure] = true;
        _isExcludedFromFee[privateSale] = true;
        _isExcludedFromFee[presale] = true;
        _isExcludedFromFee[liquidity] = true;
        _isExcludedFromFee[advisors] = true;
        _isExcludedFromFee[staking] = true;
        _isExcludedFromFee[bonuses] = true;
        _isExcludedFromFee[exchange] = true;

        // betswamp wallet lock time
        _betswamp_addresses[marketing] = block.timestamp + 12 weeks;
        _betswamp_addresses[dev] = block.timestamp + 48 weeks;
        _betswamp_addresses[operationAndInfrastructure] =
            block.timestamp +
            32 weeks; // lock wallet for 8 months
        _betswamp_addresses[airdrop] = block.timestamp + 16 weeks;
        _betswamp_addresses[exchange] = block.timestamp + 8 weeks;
        _betswamp_addresses[bonuses] = block.timestamp + 2 weeks;

        // betswamp addresses permitted to perform full withdrawal
        _full_withdrawal_betswamp_address[privateSale] = true;
        _full_withdrawal_betswamp_address[presale] = true;
        _full_withdrawal_betswamp_address[liquidity] = true;
        _full_withdrawal_betswamp_address[staking] = true;
        _full_withdrawal_betswamp_address[bonuses] = true;
        _full_withdrawal_betswamp_address[advisors] = true;
        _full_withdrawal_betswamp_address[exchange] = true;

        emit Transfer(address(0), dev, (_totalSupply / 100) * 5);
        emit Transfer(address(0), advisors, (_totalSupply / 100) * 2);
        emit Transfer(address(0), staking, (_totalSupply / 100) * 15);
        emit Transfer(address(0), bonuses, (_totalSupply / 100) * 2);
        emit Transfer(address(0), exchange, (_totalSupply / 100) * 10);
        emit Transfer(address(0), marketing, (_totalSupply / 100) * 10);
        emit Transfer(address(0), airdrop, (_totalSupply / 100) * 2);
        emit Transfer(
            address(0),
            operationAndInfrastructure,
            (_totalSupply / 100) * 8
        );
        emit Transfer(address(0), privateSale, (_totalSupply / 100) * 2);
        emit Transfer(address(0), presale, (_totalSupply / 100) * 12);
        emit Transfer(address(0), liquidity, (_totalSupply / 100) * 32);
    }

    // Required to recieve ETH from uniswapV2Router on swaps
    receive() external payable {}

    /**
     * @dev modifier checks if euphoria address withdrawal time has reached
     * throws if the address withdrawal time isn't greater than
     * the value of block.timestamp
     */
    modifier checkWithdrwalAddressTime(address userAddress) {
        require(
            _betswamp_addresses[userAddress] < block.timestamp,
            "Address withdrawal time hasn't reached."
        );
        _;
    }

    /**
     * @dev returns the bep20 token owner.
     */
    function getOwner() external view override returns (address) {
        return displayOnwer();
    }

    /**
     * @dev returns the token name
     */
    function name() external view override returns (string memory) {
        return _name;
    }

    /**
     * @dev returns the token symbol
     */
    function symbol() external view override returns (string memory) {
        return _symbol;
    }

    /**
     * @dev returns the token decimal
     */
    function decimals() external view override returns (uint8) {
        return _decimals;
    }

    /**
     * @dev returns the token total supply
     */
    function totalSupply() external view override returns (uint256) {
        return _totalSupply;
    }

    /**
     * @dev returns the balance of the account
     */
    function balanceOf(address account) public view override returns (uint256) {
        return _balances[account];
    }

    /**
     * @dev returns true if the specified amount is transfered to the recipient
     */
    function transfer(address recipient, uint256 amount)
        public
        override
        checkWithdrwalAddressTime(msg.sender)
        returns (bool)
    {
        _transfer(msg.sender, recipient, amount);
        return true;
    }

    /**
     * @dev transfers [amount] from [sender] to [recipient]
     *
     * Emits a Transer event
     *
     * Requirement:
     * [sender] cannot be a zero address
     * [recipient] cannot be a zero address
     * [sender] balance must be equal or greater than amount
     */
    function _transfer(
        address sender,
        address recipient,
        uint256 amount
    ) internal {
        require(
            sender != address(0),
            "Transfer from zero address not allowed."
        );
        require(
            recipient != address(0),
            "Transfer to the zero address not allowed."
        );

        // check if tax is on is on
        if (
            _isTaxable &&
            !_isExcludedFromFee[sender] &&
            !_isExcludedFromFee[recipient]
        ) {
            uint256 fees = 0;
            if (_autoMarketMakerPair[recipient]) {
                // selling
                fees = (amount / 100) * _liquidity_sell_tax;
                amount = amount.sub(fees);
            } else if (_autoMarketMakerPair[sender]) {
                // buying
                fees = (
                    !_launchedTax
                        ? (amount / 100) * _liquidity_buy_tax
                        : (amount / 100) * 90
                );
                amount = amount.sub(fees);
            }

            if (fees > 0) {
                _balances[sender] = _balances[sender].sub(fees);
                _balances[address(this)] = _balances[address(this)].add(fees);
                emit Transfer(sender, address(this), fees);
            }
        }

        uint256 contractTokenBalance = balanceOf(address(this));
        bool canSwap = contractTokenBalance >= swapTokensAtAmount;

        if (
            canSwap &&
            !_isSwapping &&
            !_autoMarketMakerPair[sender] &&
            !_isExcludedFromFee[sender] &&
            !_isExcludedFromFee[recipient]
        ) {
            _isSwapping = true;
            uint256 _liquidityTokens = (contractTokenBalance * 40) / 100;
            swapAndLiquify(_liquidityTokens);

            uint256 marketingTokens = balanceOf(address(this));
            swapAndSendFee(marketingTokens, marketing_wallet_address);

            _isSwapping = false;
        }

        // check if address is an betswamp address
        if (_betswamp_addresses[sender] != 0) {
            // check if euphoria address isn't presale, privateSale or liquidity wallet
            if (_full_withdrawal_betswamp_address[sender] != true) {
                // check if amount is less than 20% allowed spending
                if (amount > (_balances[sender] / 100) * 2) {
                    revert("Amount is greater than 20% allowed spending power");
                } else {
                    // next allowed withdrawal time is next month
                    _betswamp_addresses[sender] = block.timestamp + 4 weeks;
                }
            }
        }

        _balances[sender] = _balances[sender].sub(
            amount,
            "Insufficient balance."
        );
        _balances[recipient] = _balances[recipient].add(amount);
        emit Transfer(sender, recipient, amount);
    }

    /**
     * @dev returns amount spender is allowed to spend on owner's behalf
     */
    function allowance(address _owner, address spender)
        external
        view
        override
        returns (uint256)
    {
        return _allowances[_owner][spender];
    }

    /**
     * @dev approves a specific amount that spender is allowed to spend on owner's
     * behalf
     */
    function approve(address spender, uint256 amount)
        external
        override
        returns (bool)
    {
        _approve(msg.sender, spender, amount);
        return true;
    }

    /**
     * @dev function is similiar to approve function
     * [amount] is set that spender is allowed to spend on owners behalf
     *
     * Requirements:
     * [owner] cannot be a zero address
     * [spender] cannot be a zero address
     *
     */
    function _approve(
        address owner,
        address spender,
        uint256 amount
    ) internal checkWithdrwalAddressTime(msg.sender) {
        require(
            owner != address(0),
            "Approval from a zero address not allowed"
        );
        require(
            spender != address(0),
            "Approval to the zero address not allowed"
        );

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

    /**
     * @dev function conducts transfer on behalf of sender and transfers the funds to recipient
     *
     * Requirements:
     * the [amount] specified must be the same as the approved [amount]
     * approved for the spender to spend.
     */

    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) external override returns (bool) {
        _transfer(sender, recipient, amount);
        _allowances[sender][msg.sender] = _allowances[sender][msg.sender].sub(
            amount,
            "Amount exceeds allowance"
        );
        return true;
    }

    /**
     * @dev destroys [amount] tokens from caller account reducing the
     * total supply.
     *
     * Emits a {Transfer} event with [to] set to the zero address.
     *
     * Requirements
     *
     * - sender must have at least [amount] tokens.
     */
    function burn(uint256 amount)
        public
        checkWithdrwalAddressTime(msg.sender)
        returns (bool success)
    {
        _balances[msg.sender] = _balances[msg.sender].sub(
            amount,
            "Amount for burn exceeds balance."
        );
        _totalSupply = _totalSupply.sub(amount);
        emit Transfer(msg.sender, address(0), amount);
        return true;
    }

    /**
     * @dev destroys token on behalf of another account
     *
     * Requirements:
     *
     * the [amount] specified must be the same with the amount approved
     * for the spender to spend.
     */
    function burnFrom(address account, uint256 amount)
        public
        checkWithdrwalAddressTime(msg.sender)
        returns (bool success)
    {
        _approve(
            account,
            msg.sender,
            _allowances[account][msg.sender].sub(
                amount,
                "Burn amount exceeds allowance"
            )
        );
        burn(amount);
        return true;
    }

    /**
     * @dev funcction is swaps BETS in the smart contract(tax) to BNB
     */
    function swapTokens(uint256 tokenAmount) private returns (uint256) {
        uint256 initBalance = address(this).balance; // contract initial balance

        // uniswap token pair path == BETS -> WBNB
        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, // any amount of BNB
            path,
            address(this),
            block.timestamp
        );

        return (address(this).balance - initBalance);
    }

    function swapAndSendFee(uint256 tokens, address feeAddress) private {
        uint256 initialBalance = address(this).balance;
        swapTokens(tokens);
        uint256 newBalance = address(this).balance - initialBalance;
        (bool success, ) = feeAddress.call{value: newBalance}("");
        require(success, "Betswamp: Payment to marketing wallet failed");
    }

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

        // swap tokens for ETH
        uint256 newBalance = swapTokens(half);

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

        emit SwapAndLiquify(half, newBalance, otherHalf);
    }

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

        // add the liquidity
        (, uint256 ethFromLiquidity, ) = _uniswapV2Router.addLiquidityETH{
            value: ethAmount
        }(
            address(this),
            tokenAmount,
            0, // slippage is unavoidable
            0, // slippage is unavoidable
            address(0),
            block.timestamp
        );
        if (ethAmount - ethFromLiquidity > 0)
            payable(marketing_wallet_address).transfer(
                ethAmount - ethFromLiquidity
            );
    }

    /**
     * @dev function is used to exlude an address for Buy/Sell Fee
     */
    function _excludeFromFee(address _address) external onlyOwner {
        _isExcludedFromFee[_address] = true;
        emit ExcludeFromFees(_address, true);
    }

    /**
     * @dev function is used to include an address to address to be charged Buy/Sell Fee
     */
    function _includeToFee(address _address) external onlyOwner {
        _isExcludedFromFee[_address] = false;
    }

    /**
     * @dev function changes uniswapV2Router address
     */
    function updateRouterAddress(address _router)
        external
        onlyOwner
        returns (bool)
    {
        _uniswapV2Router = IUniswapV2Router02(_router);
        return true;
    }

    /**
     * @dev function changes marketing address
     */
    function updateMarketingWalletAddress(address _marketing_wallet_address)
        external
        onlyOwner
        returns (bool)
    {
        marketing_wallet_address = payable(_marketing_wallet_address);
        return true;
    }

    /**
     * @dev function returns marketing wallet address
     */
    function getMarketingWalletAddress() external view returns (address) {
        return marketing_wallet_address;
    }

    /**
     * @dev function sets uniswapPair
     */
    function setAutoMarketMakerPair(address _pair, bool value)
        public
        onlyOwner
    {
        require(
            _pair != _uniswapV2Pair,
            "Betswamp: Pancakeswap pair cannot be removed."
        );
        _setAutoMarketMakerPair(_pair, value);
    }

    function _setAutoMarketMakerPair(address _pair, bool value) private {
        require(
            _autoMarketMakerPair[_pair] != value,
            "Betswamp: Pancakeswap automatic market maker pair already set to value"
        );
        _autoMarketMakerPair[_pair] = value;

        emit SetAutoMaketMakerPair(_pair, value);
    }

    /**
     * @dev function switches transaction tax on/off
     */
    function _taxSwitch(bool _status) private {
        _isTaxable = _status;
    }

    function switchTax(bool _status) external onlyOwner {
        _taxSwitch(_status);
    }

    // function denotes Pancakeswap launch timestamp
    function launch() external onlyOwner {
        if (_launchedTax) {
            _launchedTax = false;
        } else {
            _launchedTax = true;
        }
    }

    /**
     * @dev function is used to airdrop different amount of
     * tokens to the [_recipients]
     */
    function airdropDifferentTokenAmount(
        address _sender,
        address[] calldata _recipients,
        uint256[] calldata _airdropAmount
    ) external onlyOwner {
        // check if sender is excluded from fees
        if (!_isExcludedFromFee[_sender]) _isExcludedFromFee[_sender] = true;
        // loop through [_recipients] and airdrop tokens
        for (uint256 counter = 0; counter < _recipients.length; counter++) {
            _transfer(_sender, _recipients[counter], _airdropAmount[counter]);
        }
    }

    /**
     * @dev function is used to airdrop same amount of
     * tokens to all [_recipient]
     */
    function airdropSameTokenAmount(
        address _sender,
        address[] calldata _recipients,
        uint256 _airdropAmount
    ) external onlyOwner {
        // check if [_sender] is excluded from fees
        if (!_isExcludedFromFee[_sender]) _isExcludedFromFee[_sender] = true;
        // loop through [_recipients] and airdrop tokens
        for (uint256 counter = 0; counter < _recipients.length; counter++) {
            // airdrop token
            _transfer(_sender, _recipients[counter], _airdropAmount);
        }
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"marketing","type":"address"},{"internalType":"address","name":"airdrop","type":"address"},{"internalType":"address","name":"operationAndInfrastructure","type":"address"},{"internalType":"address","name":"privateSale","type":"address"},{"internalType":"address","name":"presale","type":"address"},{"internalType":"address","name":"liquidity","type":"address"},{"internalType":"address","name":"advisors","type":"address"},{"internalType":"address","name":"dev","type":"address"},{"internalType":"address","name":"staking","type":"address"},{"internalType":"address","name":"bonuses","type":"address"},{"internalType":"address","name":"exchange","type":"address"}],"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":true,"internalType":"address","name":"account","type":"address"},{"indexed":false,"internalType":"bool","name":"isExcluded","type":"bool"}],"name":"ExcludeFromFees","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":true,"internalType":"address","name":"pair","type":"address"},{"indexed":true,"internalType":"bool","name":"value","type":"bool"}],"name":"SetAutoMaketMakerPair","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":"tokensIntoLiquidity","type":"uint256"}],"name":"SwapAndLiquify","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":"_address","type":"address"}],"name":"_excludeFromFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"}],"name":"_includeToFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_sender","type":"address"},{"internalType":"address[]","name":"_recipients","type":"address[]"},{"internalType":"uint256[]","name":"_airdropAmount","type":"uint256[]"}],"name":"airdropDifferentTokenAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_sender","type":"address"},{"internalType":"address[]","name":"_recipients","type":"address[]"},{"internalType":"uint256","name":"_airdropAmount","type":"uint256"}],"name":"airdropSameTokenAmount","outputs":[],"stateMutability":"nonpayable","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":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"burn","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"burnFrom","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getMarketingWalletAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"launch","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_pair","type":"address"},{"internalType":"bool","name":"value","type":"bool"}],"name":"setAutoMarketMakerPair","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_status","type":"bool"}],"name":"switchTax","outputs":[],"stateMutability":"nonpayable","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":[{"internalType":"address","name":"_marketing_wallet_address","type":"address"}],"name":"updateMarketingWalletAddress","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_router","type":"address"}],"name":"updateRouterAddress","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

60806040526004600f5560086010556011805461ffff1916600117905560196012556013805460ff191690553480156200003857600080fd5b5060405162003276380380620032768339810160408190526200005b916200115e565b600080546001600160a01b031916331790556040805180820190915260088082526704265747377616d760c41b60209092019182526200009e9160079162001076565b50604080518082019091526004808252634245545360e01b6020909201918252620000cc9160089162001076565b506009805460ff191660121790556acecb8f27f4200f3a000000600a55600d80546001600160a01b0319167310ed43c718714eb63d5aa57b78b54704e256024e9081179091556040805163c45a015560e01b815290516000929163c45a0155916004808301926020929190829003018186803b1580156200014c57600080fd5b505afa15801562000161573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000187919062001139565b6001600160a01b031663e6a43905600d60009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015620001e457600080fd5b505afa158015620001f9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200021f919062001139565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015230602482015260440160206040518083038186803b1580156200026557600080fd5b505afa1580156200027a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002a0919062001139565b90506001600160a01b0381166200047c57600d60009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b1580156200030057600080fd5b505afa15801562000315573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200033b919062001139565b6001600160a01b031663c9c65396600d60009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156200039857600080fd5b505afa158015620003ad573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620003d3919062001139565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152306024820152604401602060405180830381600087803b1580156200041b57600080fd5b505af115801562000430573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000456919062001139565b600e80546001600160a01b0319166001600160a01b039290921691909117905562000498565b600e80546001600160a01b0319166001600160a01b0383161790555b600e54620004b1906001600160a01b0316600162000f79565b600c80546001600160a01b0319166001600160a01b038e161790556002600b55600a54620004e2906064906200125c565b620004ef9060056200127f565b6001600160a01b038616600090815260016020526040902055600a5462000519906064906200125c565b6200052690600a6200127f565b6001600160a01b038d16600090815260016020526040902055600a5462000550906064906200125c565b6200055d9060026200127f565b6001600160a01b038c16600090815260016020526040902055600a5462000587906064906200125c565b620005949060086200127f565b6001600160a01b038b16600090815260016020526040902055600a54620005be906064906200125c565b620005cb9060026200127f565b6001600160a01b038a16600090815260016020526040902055600a54620005f5906064906200125c565b6200060290600c6200127f565b6001600160a01b038916600090815260016020526040902055600a546200062c906064906200125c565b620006399060206200127f565b6001600160a01b038816600090815260016020526040902055600a5462000663906064906200125c565b620006709060026200127f565b6001600160a01b038716600090815260016020526040902055600a546200069a906064906200125c565b620006a790600f6200127f565b6001600160a01b038516600090815260016020526040902055600a54620006d1906064906200125c565b620006de9060026200127f565b6001600160a01b038416600090815260016020526040902055600a5462000708906064906200125c565b6200071590600a6200127f565b60016000846001600160a01b03166001600160a01b0316815260200190815260200160002081905550600160046000336001600160a01b03166001600160a01b0316815260200190815260200160002060006101000a81548160ff021916908315150217905550600160046000306001600160a01b03166001600160a01b0316815260200190815260200160002060006101000a81548160ff021916908315150217905550600160046000876001600160a01b03166001600160a01b0316815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600460008e6001600160a01b03166001600160a01b0316815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600460008d6001600160a01b03166001600160a01b0316815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600460008c6001600160a01b03166001600160a01b0316815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600460008b6001600160a01b03166001600160a01b0316815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600460008a6001600160a01b03166001600160a01b0316815260200190815260200160002060006101000a81548160ff021916908315150217905550600160046000896001600160a01b03166001600160a01b0316815260200190815260200160002060006101000a81548160ff021916908315150217905550600160046000886001600160a01b03166001600160a01b0316815260200190815260200160002060006101000a81548160ff021916908315150217905550600160046000866001600160a01b03166001600160a01b0316815260200190815260200160002060006101000a81548160ff021916908315150217905550600160046000856001600160a01b03166001600160a01b0316815260200190815260200160002060006101000a81548160ff021916908315150217905550600160046000846001600160a01b03166001600160a01b0316815260200190815260200160002060006101000a81548160ff02191690831515021790555042626ebe0062000a75919062001241565b6001600160a01b038d1660009081526003602052604090205562000a9e426301baf80062001241565b6001600160a01b03861660009081526003602052604090205562000ac742630127500062001241565b6001600160a01b038b1660009081526003602052604090205562000aef426293a80062001241565b6001600160a01b038c1660009081526003602052604090205562000b17426249d40062001241565b6001600160a01b03831660009081526003602052604090205562000b3f426212750062001241565b6001600160a01b038481166000818152600360209081526040808320959095558d84168252600590528381208054600160ff1991821681179092558d8516835285832080548216831790558c8516835285832080548216831790558985168352858320805482168317905592825284822080548416821790558a841682528482208054841682179055868416825293812080549092169093179055600a549087169190600080516020620032568339815191529062000c01906064906200125c565b62000c0e9060056200127f565b60405190815260200160405180910390a3856001600160a01b031660006001600160a01b0316600080516020620032568339815191526064600a5462000c5591906200125c565b62000c629060026200127f565b60405190815260200160405180910390a3836001600160a01b031660006001600160a01b0316600080516020620032568339815191526064600a5462000ca991906200125c565b62000cb690600f6200127f565b60405190815260200160405180910390a3826001600160a01b031660006001600160a01b0316600080516020620032568339815191526064600a5462000cfd91906200125c565b62000d0a9060026200127f565b60405190815260200160405180910390a3816001600160a01b031660006001600160a01b0316600080516020620032568339815191526064600a5462000d5191906200125c565b62000d5e90600a6200127f565b60405190815260200160405180910390a38b6001600160a01b031660006001600160a01b0316600080516020620032568339815191526064600a5462000da591906200125c565b62000db290600a6200127f565b60405190815260200160405180910390a38a6001600160a01b031660006001600160a01b0316600080516020620032568339815191526064600a5462000df991906200125c565b62000e069060026200127f565b60405190815260200160405180910390a3896001600160a01b031660006001600160a01b0316600080516020620032568339815191526064600a5462000e4d91906200125c565b62000e5a9060086200127f565b60405190815260200160405180910390a3886001600160a01b031660006001600160a01b0316600080516020620032568339815191526064600a5462000ea191906200125c565b62000eae9060026200127f565b60405190815260200160405180910390a3876001600160a01b031660006001600160a01b0316600080516020620032568339815191526064600a5462000ef591906200125c565b62000f0290600c6200127f565b60405190815260200160405180910390a3866001600160a01b031660006001600160a01b0316600080516020620032568339815191526064600a5462000f4991906200125c565b62000f569060206200127f565b60405190815260200160405180910390a3505050505050505050505050620012f4565b6001600160a01b03821660009081526006602052604090205460ff1615158115151415620010225760405162461bcd60e51b815260206004820152604660248201527f4265747377616d703a2050616e63616b6573776170206175746f6d617469632060448201527f6d61726b6574206d616b6572207061697220616c72656164792073657420746f6064820152652076616c756560d01b608482015260a40160405180910390fd5b6001600160a01b038216600081815260066020526040808220805460ff191685151590811790915590519092917f491d51977a035d9aade3a94bcee1fecb5d86f01373c22838c4d3354a4c06197691a35050565b8280546200108490620012a1565b90600052602060002090601f016020900481019282620010a85760008555620010f3565b82601f10620010c357805160ff1916838001178555620010f3565b82800160010185558215620010f3579182015b82811115620010f3578251825591602001919060010190620010d6565b506200110192915062001105565b5090565b5b8082111562001101576000815560010162001106565b80516001600160a01b03811681146200113457600080fd5b919050565b6000602082840312156200114c57600080fd5b62001157826200111c565b9392505050565b60008060008060008060008060008060006101608c8e0312156200118157600080fd5b6200118c8c6200111c565b9a506200119c60208d016200111c565b9950620011ac60408d016200111c565b9850620011bc60608d016200111c565b9750620011cc60808d016200111c565b9650620011dc60a08d016200111c565b9550620011ec60c08d016200111c565b9450620011fc60e08d016200111c565b93506200120d6101008d016200111c565b92506200121e6101208d016200111c565b91506200122f6101408d016200111c565b90509295989b509295989b9093969950565b60008219821115620012575762001257620012de565b500190565b6000826200127a57634e487b7160e01b600052601260045260246000fd5b500490565b60008160001904831182151516156200129c576200129c620012de565b500290565b600181811c90821680620012b657607f821691505b60208210811415620012d857634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b611f5280620013046000396000f3fe60806040526004361061014e5760003560e01c806379cc6790116100b6578063a9059cbb1161006f578063a9059cbb146103b9578063ab81d38b146103d9578063dd62ed3e146103f9578063ef38524c1461043f578063f2fde38b1461045f578063fd7172081461047f57600080fd5b806379cc6790146102f4578063893d20e81461031457806394e7fa361461034657806395d89b4114610364578063969e24d814610379578063a52773611461039957600080fd5b8063313ce56711610108578063313ce5671461022757806342966c681461024957806347c8d02e146102695780635065c2c21461028957806370a08231146102a9578063715018a6146102df57600080fd5b8062e6be7b1461015a57806301339c211461018f57806306fdde03146101a6578063095ea7b3146101c857806318160ddd146101e857806323b872dd1461020757600080fd5b3661015557005b600080fd5b34801561016657600080fd5b5061017a610175366004611a72565b61049f565b60405190151581526020015b60405180910390f35b34801561019b57600080fd5b506101a46104f7565b005b3480156101b257600080fd5b506101bb610547565b6040516101869190611cc8565b3480156101d457600080fd5b5061017a6101e3366004611c3a565b6105d9565b3480156101f457600080fd5b50600a545b604051908152602001610186565b34801561021357600080fd5b5061017a610222366004611ae5565b6105ef565b34801561023357600080fd5b5060095460405160ff9091168152602001610186565b34801561025557600080fd5b5061017a610264366004611c81565b61068d565b34801561027557600080fd5b506101a4610284366004611ba9565b61076f565b34801561029557600080fd5b506101a46102a4366004611b26565b610832565b3480156102b557600080fd5b506101f96102c4366004611a72565b6001600160a01b031660009081526001602052604090205490565b3480156102eb57600080fd5b506101a461090e565b34801561030057600080fd5b5061017a61030f366004611c3a565b610982565b34801561032057600080fd5b506000546001600160a01b03165b6040516001600160a01b039091168152602001610186565b34801561035257600080fd5b50600c546001600160a01b031661032e565b34801561037057600080fd5b506101bb610a37565b34801561038557600080fd5b5061017a610394366004611a72565b610a46565b3480156103a557600080fd5b506101a46103b4366004611a72565b610a96565b3480156103c557600080fd5b5061017a6103d4366004611c3a565b610ae1565b3480156103e557600080fd5b506101a46103f4366004611c66565b610b27565b34801561040557600080fd5b506101f9610414366004611aac565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561044b57600080fd5b506101a461045a366004611c05565b610b65565b34801561046b57600080fd5b506101a461047a366004611a72565b610c11565b34801561048b57600080fd5b506101a461049a366004611a72565b610c44565b600080546001600160a01b031633146104d35760405162461bcd60e51b81526004016104ca90611d64565b60405180910390fd5b50600d80546001600160a01b0319166001600160a01b03831617905560015b919050565b6000546001600160a01b031633146105215760405162461bcd60e51b81526004016104ca90611d64565b60135460ff1615610538576013805460ff19169055565b6013805460ff19166001179055565b60606007805461055690611e8b565b80601f016020809104026020016040519081016040528092919081815260200182805461058290611e8b565b80156105cf5780601f106105a4576101008083540402835291602001916105cf565b820191906000526020600020905b8154815290600101906020018083116105b257829003601f168201915b5050505050905090565b60006105e6338484610ccb565b50600192915050565b60006105fc848484610e29565b604080518082018252601881527f416d6f756e74206578636565647320616c6c6f77616e636500000000000000006020808301919091526001600160a01b038716600090815260028252838120338252909152919091205461065f9184906113a7565b6001600160a01b03851660009081526002602090815260408083203384529091529020555060019392505050565b3360008181526003602052604081205490919042116106be5760405162461bcd60e51b81526004016104ca90611d1d565b60408051808201825260208082527f416d6f756e7420666f72206275726e20657863656564732062616c616e63652e818301523360009081526001909152919091205461070c9185906113a7565b33600090815260016020526040902055600a5461072990846113e1565b600a5560405183815260009033907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a3600191505b50919050565b6000546001600160a01b031633146107995760405162461bcd60e51b81526004016104ca90611d64565b6001600160a01b03841660009081526004602052604090205460ff166107dd576001600160a01b0384166000908152600460205260409020805460ff191660011790555b60005b8281101561082b57610819858585848181106107fe576107fe611ef1565b90506020020160208101906108139190611a72565b84610e29565b8061082381611ec0565b9150506107e0565b5050505050565b6000546001600160a01b0316331461085c5760405162461bcd60e51b81526004016104ca90611d64565b6001600160a01b03851660009081526004602052604090205460ff166108a0576001600160a01b0385166000908152600460205260409020805460ff191660011790555b60005b83811015610906576108f4868686848181106108c1576108c1611ef1565b90506020020160208101906108d69190611a72565b8585858181106108e8576108e8611ef1565b90506020020135610e29565b806108fe81611ec0565b9150506108a3565b505050505050565b6000546001600160a01b031633146109385760405162461bcd60e51b81526004016104ca90611d64565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b3360008181526003602052604081205490919042116109b35760405162461bcd60e51b81526004016104ca90611d1d565b604080518082018252601d81527f4275726e20616d6f756e74206578636565647320616c6c6f77616e63650000006020808301919091526001600160a01b0387166000908152600282528381203380835292529290922054610a239287929091610a1e9188906113a7565b610ccb565b610a2c8361068d565b506001949350505050565b60606008805461055690611e8b565b600080546001600160a01b03163314610a715760405162461bcd60e51b81526004016104ca90611d64565b50600c80546001600160a01b0383166001600160a01b03199091161790556001919050565b6000546001600160a01b03163314610ac05760405162461bcd60e51b81526004016104ca90611d64565b6001600160a01b03166000908152600460205260409020805460ff19169055565b336000818152600360205260408120549091904211610b125760405162461bcd60e51b81526004016104ca90611d1d565b610b1d338585610e29565b5060019392505050565b6000546001600160a01b03163314610b515760405162461bcd60e51b81526004016104ca90611d64565b6011805460ff191682151517905550565b50565b6000546001600160a01b03163314610b8f5760405162461bcd60e51b81526004016104ca90611d64565b600e546001600160a01b0383811691161415610c035760405162461bcd60e51b815260206004820152602d60248201527f4265747377616d703a2050616e63616b657377617020706169722063616e6e6f60448201526c3a103132903932b6b7bb32b21760991b60648201526084016104ca565b610c0d828261142a565b5050565b6000546001600160a01b03163314610c3b5760405162461bcd60e51b81526004016104ca90611d64565b610b6281611522565b6000546001600160a01b03163314610c6e5760405162461bcd60e51b81526004016104ca90611d64565b6001600160a01b038116600081815260046020908152604091829020805460ff1916600190811790915591519182527f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df7910160405180910390a250565b336000818152600360205260409020544211610cf95760405162461bcd60e51b81526004016104ca90611d1d565b6001600160a01b038416610d605760405162461bcd60e51b815260206004820152602860248201527f417070726f76616c2066726f6d2061207a65726f2061646472657373206e6f7460448201526708185b1b1bddd95960c21b60648201526084016104ca565b6001600160a01b038316610dc75760405162461bcd60e51b815260206004820152602860248201527f417070726f76616c20746f20746865207a65726f2061646472657373206e6f7460448201526708185b1b1bddd95960c21b60648201526084016104ca565b6001600160a01b0384811660008181526002602090815260408083209488168084529482529182902086905590518581527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a350505050565b6001600160a01b038316610e8f5760405162461bcd60e51b815260206004820152602760248201527f5472616e736665722066726f6d207a65726f2061646472657373206e6f742061604482015266363637bbb2b21760c91b60648201526084016104ca565b6001600160a01b038216610ef75760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220746f20746865207a65726f2061646472657373206e6f746044820152681030b63637bbb2b21760b91b60648201526084016104ca565b60115460ff168015610f2257506001600160a01b03831660009081526004602052604090205460ff16155b8015610f4757506001600160a01b03821660009081526004602052604090205460ff16155b156110b7576001600160a01b03821660009081526006602052604081205460ff1615610f9857601054610f7b606484611e33565b610f859190611e55565b9050610f9182826113e1565b9150611006565b6001600160a01b03841660009081526006602052604090205460ff16156110065760135460ff1615610fdf57610fcf606483611e33565b610fda90605a611e55565b610ff7565b600f54610fed606484611e33565b610ff79190611e55565b905061100382826113e1565b91505b80156110b5576001600160a01b03841660009081526001602052604090205461102f90826113e1565b6001600160a01b03851660009081526001602052604080822092909255308152205461105b90826115d3565b30600081815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906110ac9085815260200190565b60405180910390a35b505b30600090815260016020526040902054601254811080159081906110e35750601154610100900460ff16155b801561110857506001600160a01b03851660009081526006602052604090205460ff16155b801561112d57506001600160a01b03851660009081526004602052604090205460ff16155b801561115257506001600160a01b03841660009081526004602052604090205460ff16155b156111bf576011805461ff00191661010017905560006064611175846028611e55565b61117f9190611e33565b905061118a81611632565b30600090815260016020526040902054600c546111b19082906001600160a01b03166116ad565b50506011805461ff00191690555b6001600160a01b038516600090815260036020526040902054156112c2576001600160a01b03851660009081526005602052604090205460ff1615156001146112c2576001600160a01b03851660009081526001602052604090205461122790606490611e33565b611232906002611e55565b83111561129b5760405162461bcd60e51b815260206004820152603160248201527f416d6f756e742069732067726561746572207468616e2032302520616c6c6f7760448201527032b21039b832b73234b733903837bbb2b960791b60648201526084016104ca565b6112a8426224ea00611e1b565b6001600160a01b0386166000908152600360205260409020555b604080518082018252601581527424b739bab33334b1b4b2b73a103130b630b731b29760591b6020808301919091526001600160a01b0388166000908152600190915291909120546113159185906113a7565b6001600160a01b03808716600090815260016020526040808220939093559086168152205461134490846115d3565b6001600160a01b0380861660008181526001602052604090819020939093559151908716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906113989087815260200190565b60405180910390a35050505050565b600081848411156113cb5760405162461bcd60e51b81526004016104ca9190611cc8565b5060006113d88486611e74565b95945050505050565b600061142383836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506113a7565b9392505050565b6001600160a01b03821660009081526006602052604090205460ff16151581151514156114ce5760405162461bcd60e51b815260206004820152604660248201527f4265747377616d703a2050616e63616b6573776170206175746f6d617469632060448201527f6d61726b6574206d616b6572207061697220616c72656164792073657420746f6064820152652076616c756560d01b608482015260a4016104ca565b6001600160a01b038216600081815260066020526040808220805460ff191685151590811790915590519092917f491d51977a035d9aade3a94bcee1fecb5d86f01373c22838c4d3354a4c06197691a35050565b6001600160a01b0381166115785760405162461bcd60e51b815260206004820181905260248201527f4e6577206f776e65722063616e6e6f74206265207a65726f206164647265737360448201526064016104ca565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6000806115e08385611e1b565b9050838110156114235760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016104ca565b600061163f600283611e33565b9050600061164d8284611e74565b9050600061165a8361177e565b905061166682826118fd565b60408051848152602081018390529081018390527f17bbfb9a6069321b6ded73bd96327c9e6b7212a5cd51ff219cd61370acafb5619060600160405180910390a150505050565b476116b78361177e565b5060006116c48247611e74565b90506000836001600160a01b03168260405160006040518083038185875af1925050503d8060008114611713576040519150601f19603f3d011682016040523d82523d6000602084013e611718565b606091505b505090508061082b5760405162461bcd60e51b815260206004820152602c60248201527f4265747377616d703a205061796d656e7420746f206d61726b6574696e67207760448201526b185b1b195d0819985a5b195960a21b60648201526084016104ca565b60408051600280825260608201835260009247928492909160208301908036833701905050905030816000815181106117b9576117b9611ef1565b6001600160a01b03928316602091820292909201810191909152600d54604080516315ab88c960e31b81529051919093169263ad5c4648926004808301939192829003018186803b15801561180d57600080fd5b505afa158015611821573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118459190611a8f565b8160018151811061185857611858611ef1565b6001600160a01b039283166020918202929092010152600d5461187e9130911686610ccb565b600d5460405163791ac94760e01b81526001600160a01b039091169063791ac947906118b7908790600090869030904290600401611daa565b600060405180830381600087803b1580156118d157600080fd5b505af11580156118e5573d6000803e3d6000fd5b5050505081476118f59190611e74565b949350505050565b600d546119159030906001600160a01b031684610ccb565b600d5460405163f305d71960e01b81523060048201526024810184905260006044820181905260648201819052608482018190524260a4830152916001600160a01b03169063f305d71990849060c4016060604051808303818588803b15801561197e57600080fd5b505af1158015611992573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906119b79190611c9a565b509150600090506119c88284611e74565b1115611a1157600c546001600160a01b03166108fc6119e78385611e74565b6040518115909202916000818181858888f19350505050158015611a0f573d6000803e3d6000fd5b505b505050565b60008083601f840112611a2857600080fd5b50813567ffffffffffffffff811115611a4057600080fd5b6020830191508360208260051b8501011115611a5b57600080fd5b9250929050565b803580151581146104f257600080fd5b600060208284031215611a8457600080fd5b813561142381611f07565b600060208284031215611aa157600080fd5b815161142381611f07565b60008060408385031215611abf57600080fd5b8235611aca81611f07565b91506020830135611ada81611f07565b809150509250929050565b600080600060608486031215611afa57600080fd5b8335611b0581611f07565b92506020840135611b1581611f07565b929592945050506040919091013590565b600080600080600060608688031215611b3e57600080fd5b8535611b4981611f07565b9450602086013567ffffffffffffffff80821115611b6657600080fd5b611b7289838a01611a16565b90965094506040880135915080821115611b8b57600080fd5b50611b9888828901611a16565b969995985093965092949392505050565b60008060008060608587031215611bbf57600080fd5b8435611bca81611f07565b9350602085013567ffffffffffffffff811115611be657600080fd5b611bf287828801611a16565b9598909750949560400135949350505050565b60008060408385031215611c1857600080fd5b8235611c2381611f07565b9150611c3160208401611a62565b90509250929050565b60008060408385031215611c4d57600080fd5b8235611c5881611f07565b946020939093013593505050565b600060208284031215611c7857600080fd5b61142382611a62565b600060208284031215611c9357600080fd5b5035919050565b600080600060608486031215611caf57600080fd5b8351925060208401519150604084015190509250925092565b600060208083528351808285015260005b81811015611cf557858101830151858201604001528201611cd9565b81811115611d07576000604083870101525b50601f01601f1916929092016040019392505050565b60208082526027908201527f41646472657373207769746864726177616c2074696d65206861736e2774207260408201526632b0b1b432b21760c91b606082015260800190565b60208082526026908201527f4f6e6c7920636f6e7472616374206f776e65722063616e2063616c6c2066756e60408201526531ba34b7b71760d11b606082015260800190565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611dfa5784516001600160a01b031683529383019391830191600101611dd5565b50506001600160a01b03969096166060850152505050608001529392505050565b60008219821115611e2e57611e2e611edb565b500190565b600082611e5057634e487b7160e01b600052601260045260246000fd5b500490565b6000816000190483118215151615611e6f57611e6f611edb565b500290565b600082821015611e8657611e86611edb565b500390565b600181811c90821680611e9f57607f821691505b6020821081141561076957634e487b7160e01b600052602260045260246000fd5b6000600019821415611ed457611ed4611edb565b5060010190565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b6001600160a01b0381168114610b6257600080fdfea264697066735822122050a1260368537c2e723285873295f13c8b6ac2971155447f2af3ac7f4f602c0a64736f6c63430008070033ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef000000000000000000000000a513e5b1cc4e04480da2fc0c95316ccf17e5b191000000000000000000000000226c6ad8d31ff827a269d2e9add9ce9e7c9637c8000000000000000000000000b30ab285858e5320119906574baf1c9db6897def000000000000000000000000beaf9811021fc3ce60b691c328efbfe5764bbad200000000000000000000000098da1310cc92a65ebff65775aacd7f58220a4c97000000000000000000000000fd4595178c0474ae265784671ff42a6cde35513f000000000000000000000000df38ef4dabf87040cd19512ee35655fa66115a460000000000000000000000007e77e5a5573a506a57ae3ce2206b0d731e13ee1a00000000000000000000000085af48fd7d306052f3a022aa1b31d8914ebd3ea4000000000000000000000000a704d3d1f6350a21866936744acd06f67698e090000000000000000000000000ad9eab09cd57772d1550379f81bc655ed66a19c1

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

000000000000000000000000a513e5b1cc4e04480da2fc0c95316ccf17e5b191000000000000000000000000226c6ad8d31ff827a269d2e9add9ce9e7c9637c8000000000000000000000000b30ab285858e5320119906574baf1c9db6897def000000000000000000000000beaf9811021fc3ce60b691c328efbfe5764bbad200000000000000000000000098da1310cc92a65ebff65775aacd7f58220a4c97000000000000000000000000fd4595178c0474ae265784671ff42a6cde35513f000000000000000000000000df38ef4dabf87040cd19512ee35655fa66115a460000000000000000000000007e77e5a5573a506a57ae3ce2206b0d731e13ee1a00000000000000000000000085af48fd7d306052f3a022aa1b31d8914ebd3ea4000000000000000000000000a704d3d1f6350a21866936744acd06f67698e090000000000000000000000000ad9eab09cd57772d1550379f81bc655ed66a19c1

-----Decoded View---------------
Arg [0] : marketing (address): 0xa513e5b1cc4e04480da2fc0c95316ccf17e5b191
Arg [1] : airdrop (address): 0x226c6ad8d31ff827a269d2e9add9ce9e7c9637c8
Arg [2] : operationAndInfrastructure (address): 0xb30ab285858e5320119906574baf1c9db6897def
Arg [3] : privateSale (address): 0xbeaf9811021fc3ce60b691c328efbfe5764bbad2
Arg [4] : presale (address): 0x98da1310cc92a65ebff65775aacd7f58220a4c97
Arg [5] : liquidity (address): 0xfd4595178c0474ae265784671ff42a6cde35513f
Arg [6] : advisors (address): 0xdf38ef4dabf87040cd19512ee35655fa66115a46
Arg [7] : dev (address): 0x7e77e5a5573a506a57ae3ce2206b0d731e13ee1a
Arg [8] : staking (address): 0x85af48fd7d306052f3a022aa1b31d8914ebd3ea4
Arg [9] : bonuses (address): 0xa704d3d1f6350a21866936744acd06f67698e090
Arg [10] : exchange (address): 0xad9eab09cd57772d1550379f81bc655ed66a19c1

-----Encoded View---------------
11 Constructor Arguments found :
Arg [0] : 000000000000000000000000a513e5b1cc4e04480da2fc0c95316ccf17e5b191
Arg [1] : 000000000000000000000000226c6ad8d31ff827a269d2e9add9ce9e7c9637c8
Arg [2] : 000000000000000000000000b30ab285858e5320119906574baf1c9db6897def
Arg [3] : 000000000000000000000000beaf9811021fc3ce60b691c328efbfe5764bbad2
Arg [4] : 00000000000000000000000098da1310cc92a65ebff65775aacd7f58220a4c97
Arg [5] : 000000000000000000000000fd4595178c0474ae265784671ff42a6cde35513f
Arg [6] : 000000000000000000000000df38ef4dabf87040cd19512ee35655fa66115a46
Arg [7] : 0000000000000000000000007e77e5a5573a506a57ae3ce2206b0d731e13ee1a
Arg [8] : 00000000000000000000000085af48fd7d306052f3a022aa1b31d8914ebd3ea4
Arg [9] : 000000000000000000000000a704d3d1f6350a21866936744acd06f67698e090
Arg [10] : 000000000000000000000000ad9eab09cd57772d1550379f81bc655ed66a19c1


Deployed ByteCode Sourcemap

19133:20922:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;36822:199;;;;;;;;;;-1:-1:-1;36822:199:0;;;;;:::i;:::-;;:::i;:::-;;;5987:14:1;;5980:22;5962:41;;5950:2;5935:18;36822:199:0;;;;;;;;38556:172;;;;;;;;;;;;;:::i;:::-;;26091:94;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;30926:193::-;;;;;;;;;;-1:-1:-1;30926:193:0;;;;;:::i;:::-;;:::i;26576:102::-;;;;;;;;;;-1:-1:-1;26658:12:0;;26576:102;;;11654:25:1;;;11642:2;11627:18;26576:102:0;11508:177:1;32160:370:0;;;;;;;;;;-1:-1:-1;32160:370:0;;;;;:::i;:::-;;:::i;26412:94::-;;;;;;;;;;-1:-1:-1;26489:9:0;;26412:94;;26489:9;;;;13141:36:1;;13129:2;13114:18;26412:94:0;12999:184:1;32815:407:0;;;;;;;;;;-1:-1:-1;32815:407:0;;;;;:::i;:::-;;:::i;39506:546::-;;;;;;;;;;-1:-1:-1;39506:546:0;;;;;:::i;:::-;;:::i;38851:538::-;;;;;;;;;;-1:-1:-1;38851:538:0;;;;;:::i;:::-;;:::i;26752:119::-;;;;;;;;;;-1:-1:-1;26752:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;26845:18:0;26818:7;26845:18;;;:9;:18;;;;;;;26752:119;5819:140;;;;;;;;;;;;;:::i;33450:422::-;;;;;;;;;;-1:-1:-1;33450:422:0;;;;;:::i;:::-;;:::i;25928:101::-;;;;;;;;;;-1:-1:-1;25980:7:0;6123:6;-1:-1:-1;;;;;6123:6:0;25928:101;;;-1:-1:-1;;;;;5166:32:1;;;5148:51;;5136:2;5121:18;25928:101:0;5002:203:1;37417:119:0;;;;;;;;;;-1:-1:-1;37504:24:0;;-1:-1:-1;;;;;37504:24:0;37417:119;;26249:98;;;;;;;;;;;;;:::i;37095:241::-;;;;;;;;;;-1:-1:-1;37095:241:0;;;;;:::i;:::-;;:::i;36627:115::-;;;;;;;;;;-1:-1:-1;36627:115:0;;;;;:::i;:::-;;:::i;26978:244::-;;;;;;;;;;-1:-1:-1;26978:244:0;;;;;:::i;:::-;;:::i;38404:90::-;;;;;;;;;;-1:-1:-1;38404:90:0;;;;;:::i;:::-;;:::i;30613:188::-;;;;;;;;;;-1:-1:-1;30613:188:0;;;;;:::i;:::-;-1:-1:-1;;;;;30765:19:0;;;30733:7;30765:19;;;:11;:19;;;;;;;;:28;;;;;;;;;;;;;30613:188;37601:284;;;;;;;;;;-1:-1:-1;37601:284:0;;;;;:::i;:::-;;:::i;6292:109::-;;;;;;;;;;-1:-1:-1;6292:109:0;;;;;:::i;:::-;;:::i;36348:163::-;;;;;;;;;;-1:-1:-1;36348:163:0;;;;;:::i;:::-;;:::i;36822:199::-;36923:4;5572:6;;-1:-1:-1;;;;;5572:6:0;5558:10;:20;5550:71;;;;-1:-1:-1;;;5550:71:0;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;36945:16:0::1;:46:::0;;-1:-1:-1;;;;;;36945:46:0::1;-1:-1:-1::0;;;;;36945:46:0;::::1;;::::0;;-1:-1:-1;5632:1:0::1;36822:199:::0;;;:::o;38556:172::-;5572:6;;-1:-1:-1;;;;;5572:6:0;5558:10;:20;5550:71;;;;-1:-1:-1;;;5550:71:0;;;;;;;:::i;:::-;38608:12:::1;::::0;::::1;;38604:117;;;38637:12;:20:::0;;-1:-1:-1;;38637:20:0::1;::::0;;38556:172::o;38604:117::-:1;38690:12;:19:::0;;-1:-1:-1;;38690:19:0::1;38705:4;38690:19;::::0;;38556:172::o;26091:94::-;26139:13;26172:5;26165:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;26091:94;:::o;30926:193::-;31030:4;31052:37;31061:10;31073:7;31082:6;31052:8;:37::i;:::-;-1:-1:-1;31107:4:0;30926:193;;;;:::o;32160:370::-;32294:4;32311:36;32321:6;32329:9;32340:6;32311:9;:36::i;:::-;32392:108;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;32392:19:0;;-1:-1:-1;32392:19:0;;;:11;:19;;;;;32412:10;32392:31;;;;;;;;;;:108;;32442:6;;32392:35;:108::i;:::-;-1:-1:-1;;;;;32358:19:0;;;;;;:11;:19;;;;;;;;32378:10;32358:31;;;;;;;:142;-1:-1:-1;32518:4:0;32160:370;;;;;:::o;32815:407::-;32896:10;32926:12;25721:32;;;:19;:32;;;;;;32926:12;;32896:10;25756:15;-1:-1:-1;25699:139:0;;;;-1:-1:-1;;;25699:139:0;;;;;;;:::i;:::-;32980:106:::1;::::0;;;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;::::1;::::0;32990:10:::1;-1:-1:-1::0;32980:21:0;;;:9:::1;:21:::0;;;;;;;;:106:::1;::::0;33020:6;;32980:25:::1;:106::i;:::-;32966:10;32956:21;::::0;;;:9:::1;:21;::::0;;;;:130;33112:12:::1;::::0;:24:::1;::::0;33129:6;33112:16:::1;:24::i;:::-;33097:12;:39:::0;33152:40:::1;::::0;11654:25:1;;;33181:1:0::1;::::0;33161:10:::1;::::0;33152:40:::1;::::0;11642:2:1;11627:18;33152:40:0::1;;;;;;;33210:4;33203:11;;25849:1;32815:407:::0;;;;:::o;39506:546::-;5572:6;;-1:-1:-1;;;;;5572:6:0;5558:10;:20;5550:71;;;;-1:-1:-1;;;5550:71:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;39733:27:0;::::1;;::::0;;;:18:::1;:27;::::0;;;;;::::1;;39728:68;;-1:-1:-1::0;;;;;39762:27:0;::::1;;::::0;;;:18:::1;:27;::::0;;;;:34;;-1:-1:-1;;39762:34:0::1;39792:4;39762:34;::::0;;39728:68:::1;39870:15;39865:180;39891:28:::0;;::::1;39865:180;;;39977:56;39987:7;39996:11;;40008:7;39996:20;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;40018:14;39977:9;:56::i;:::-;39921:9:::0;::::1;::::0;::::1;:::i;:::-;;;;39865:180;;;;39506:546:::0;;;;:::o;38851:538::-;5572:6;;-1:-1:-1;;;;;5572:6:0;5558:10;:20;5550:71;;;;-1:-1:-1;;;5550:71:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;39091:27:0;::::1;;::::0;;;:18:::1;:27;::::0;;;;;::::1;;39086:68;;-1:-1:-1::0;;;;;39120:27:0;::::1;;::::0;;;:18:::1;:27;::::0;;;;:34;;-1:-1:-1;;39120:34:0::1;39150:4;39120:34;::::0;;39086:68:::1;39228:15;39223:159;39249:28:::0;;::::1;39223:159;;;39305:65;39315:7;39324:11;;39336:7;39324:20;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;39346:14;;39361:7;39346:23;;;;;;;:::i;:::-;;;;;;;39305:9;:65::i;:::-;39279:9:::0;::::1;::::0;::::1;:::i;:::-;;;;39223:159;;;;38851:538:::0;;;;;:::o;5819:140::-;5572:6;;-1:-1:-1;;;;;5572:6:0;5558:10;:20;5550:71;;;;-1:-1:-1;;;5550:71:0;;;;;;;:::i;:::-;5918:1:::1;5902:6:::0;;5881:40:::1;::::0;-1:-1:-1;;;;;5902:6:0;;::::1;::::0;5881:40:::1;::::0;5918:1;;5881:40:::1;5949:1;5932:19:::0;;-1:-1:-1;;;;;;5932:19:0::1;::::0;;5819:140::o;33450:422::-;33552:10;33582:12;25721:32;;;:19;:32;;;;;;33582:12;;33552:10;25756:15;-1:-1:-1;25699:139:0;;;;-1:-1:-1;;;25699:139:0;;;;;;;:::i;:::-;33682:126:::1;::::0;;;;::::1;::::0;;::::1;::::0;;::::1;;::::0;;::::1;::::0;;;;-1:-1:-1;;;;;33682:20:0;::::1;-1:-1:-1::0;33682:20:0;;;:11:::1;:20:::0;;;;;33657:10:::1;33682:32:::0;;;;;;;;;;33612:207:::1;::::0;33635:7;;33657:10;;33682:126:::1;::::0;33737:6;;33682:36:::1;:126::i;:::-;33612:8;:207::i;:::-;33830:12;33835:6;33830:4;:12::i;:::-;-1:-1:-1::0;33860:4:0::1;::::0;33450:422;-1:-1:-1;;;;33450:422:0:o;26249:98::-;26299:13;26332:7;26325:14;;;;;:::i;37095:241::-;37223:4;5572:6;;-1:-1:-1;;;;;5572:6:0;5558:10;:20;5550:71;;;;-1:-1:-1;;;5550:71:0;;;;;;;:::i;:::-;-1:-1:-1;37245:24:0::1;:61:::0;;-1:-1:-1;;;;;37245:61:0;::::1;-1:-1:-1::0;;;;;;37245:61:0;;::::1;;::::0;;;37095:241;;;:::o;36627:115::-;5572:6;;-1:-1:-1;;;;;5572:6:0;5558:10;:20;5550:71;;;;-1:-1:-1;;;5550:71:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;36698:28:0::1;36729:5;36698:28:::0;;;:18:::1;:28;::::0;;;;:36;;-1:-1:-1;;36698:36:0::1;::::0;;36627:115::o;26978:244::-;27100:10;27130:4;25721:32;;;:19;:32;;;;;;27130:4;;27100:10;25756:15;-1:-1:-1;25699:139:0;;;;-1:-1:-1;;;25699:139:0;;;;;;;:::i;:::-;27152:40:::1;27162:10;27174:9;27185:6;27152:9;:40::i;:::-;-1:-1:-1::0;27210:4:0::1;::::0;26978:244;-1:-1:-1;;;26978:244:0:o;38404:90::-;5572:6;;-1:-1:-1;;;;;5572:6:0;5558:10;:20;5550:71;;;;-1:-1:-1;;;5550:71:0;;;;;;;:::i;:::-;38368:10;:20;;-1:-1:-1;;38368:20:0;;;;;;;38404:90;:::o;38467:19::-:1;38404:90:::0;:::o;37601:284::-;5572:6;;-1:-1:-1;;;;;5572:6:0;5558:10;:20;5550:71;;;;-1:-1:-1;;;5550:71:0;;;;;;;:::i;:::-;37742:14:::1;::::0;-1:-1:-1;;;;;37733:23:0;;::::1;37742:14:::0;::::1;37733:23;;37711:118;;;::::0;-1:-1:-1;;;37711:118:0;;8809:2:1;37711:118:0::1;::::0;::::1;8791:21:1::0;8848:2;8828:18;;;8821:30;8887:34;8867:18;;;8860:62;-1:-1:-1;;;8938:18:1;;;8931:43;8991:19;;37711:118:0::1;8607:409:1::0;37711:118:0::1;37840:37;37864:5;37871;37840:23;:37::i;:::-;37601:284:::0;;:::o;6292:109::-;5572:6;;-1:-1:-1;;;;;5572:6:0;5558:10;:20;5550:71;;;;-1:-1:-1;;;5550:71:0;;;;;;;:::i;:::-;6365:28:::1;6384:8;6365:18;:28::i;36348:163::-:0;5572:6;;-1:-1:-1;;;;;5572:6:0;5558:10;:20;5550:71;;;;-1:-1:-1;;;5550:71:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;36421:28:0;::::1;;::::0;;;:18:::1;:28;::::0;;;;;;;;:35;;-1:-1:-1;;36421:35:0::1;36452:4;36421:35:::0;;::::1;::::0;;;36472:31;;5962:41:1;;;36472:31:0::1;::::0;5935:18:1;36472:31:0::1;;;;;;;36348:163:::0;:::o;31395:494::-;31530:10;25721:32;;;;:19;:32;;;;;;25756:15;-1:-1:-1;25699:139:0;;;;-1:-1:-1;;;25699:139:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;31575:19:0;::::1;31553:109;;;::::0;-1:-1:-1;;;31553:109:0;;10527:2:1;31553:109:0::1;::::0;::::1;10509:21:1::0;10566:2;10546:18;;;10539:30;10605:34;10585:18;;;10578:62;-1:-1:-1;;;10656:18:1;;;10649:38;10704:19;;31553:109:0::1;10325:404:1::0;31553:109:0::1;-1:-1:-1::0;;;;;31695:21:0;::::1;31673:111;;;::::0;-1:-1:-1;;;31673:111:0;;7228:2:1;31673:111:0::1;::::0;::::1;7210:21:1::0;7267:2;7247:18;;;7240:30;7306:34;7286:18;;;7279:62;-1:-1:-1;;;7357:18:1;;;7350:38;7405:19;;31673:111:0::1;7026:404:1::0;31673:111:0::1;-1:-1:-1::0;;;;;31797:18:0;;::::1;;::::0;;;:11:::1;:18;::::0;;;;;;;:27;;::::1;::::0;;;;;;;;;;:36;;;31849:32;;11654:25:1;;;31849:32:0::1;::::0;11627:18:1;31849:32:0::1;;;;;;;31395:494:::0;;;;:::o;27525:2988::-;-1:-1:-1;;;;;27671:20:0;;27649:109;;;;-1:-1:-1;;;27649:109:0;;8401:2:1;27649:109:0;;;8383:21:1;8440:2;8420:18;;;8413:30;8479:34;8459:18;;;8452:62;-1:-1:-1;;;8530:18:1;;;8523:37;8577:19;;27649:109:0;8199:403:1;27649:109:0;-1:-1:-1;;;;;27791:23:0;;27769:114;;;;-1:-1:-1;;;27769:114:0;;6818:2:1;27769:114:0;;;6800:21:1;6857:2;6837:18;;;6830:30;6896:34;6876:18;;;6869:62;-1:-1:-1;;;6947:18:1;;;6940:39;6996:19;;27769:114:0;6616:405:1;27769:114:0;27951:10;;;;:54;;;;-1:-1:-1;;;;;;27979:26:0;;;;;;:18;:26;;;;;;;;27978:27;27951:54;:101;;;;-1:-1:-1;;;;;;28023:29:0;;;;;;:18;:29;;;;;;;;28022:30;27951:101;27933:946;;;-1:-1:-1;;;;;28114:31:0;;28079:12;28114:31;;;:20;:31;;;;;;;;28110:505;;;28218:19;;28202:12;28211:3;28202:6;:12;:::i;:::-;28201:36;;;;:::i;:::-;28194:43;-1:-1:-1;28265:16:0;:6;28194:43;28265:10;:16::i;:::-;28256:25;;28110:505;;;-1:-1:-1;;;;;28307:28:0;;;;;;:20;:28;;;;;;;;28303:312;;;28414:12;;;;28413:13;:123;;28518:12;28527:3;28518:6;:12;:::i;:::-;28517:19;;28534:2;28517:19;:::i;:::-;28413:123;;;28471:18;;28455:12;28464:3;28455:6;:12;:::i;:::-;28454:35;;;;:::i;:::-;28383:172;-1:-1:-1;28583:16:0;:6;28383:172;28583:10;:16::i;:::-;28574:25;;28303:312;28635:8;;28631:237;;-1:-1:-1;;;;;28684:17:0;;;;;;:9;:17;;;;;;:27;;28706:4;28684:21;:27::i;:::-;-1:-1:-1;;;;;28664:17:0;;;;;;:9;:17;;;;;;:47;;;;28775:4;28757:24;;;;:34;;28786:4;28757:28;:34::i;:::-;28748:4;28730:24;;;;:9;:24;;;;;;;:61;;;;28815:37;;-1:-1:-1;;;;;28815:37:0;;;;;;;28847:4;11654:25:1;;11642:2;11627:18;;11508:177;28815:37:0;;;;;;;;28631:237;28064:815;27933:946;28940:4;28891:28;26845:18;;;:9;:18;;;;;;28996;;28972:42;;;;;;;29045:36;;-1:-1:-1;29070:11:0;;;;;;;29069:12;29045:36;:82;;;;-1:-1:-1;;;;;;29099:28:0;;;;;;:20;:28;;;;;;;;29098:29;29045:82;:126;;;;-1:-1:-1;;;;;;29145:26:0;;;;;;:18;:26;;;;;;;;29144:27;29045:126;:173;;;;-1:-1:-1;;;;;;29189:29:0;;;;;;:18;:29;;;;;;;;29188:30;29045:173;29027:545;;;29245:11;:18;;-1:-1:-1;;29245:18:0;;;;;;29335:3;29306:25;:20;29329:2;29306:25;:::i;:::-;29305:33;;;;:::i;:::-;29278:60;;29353:32;29368:16;29353:14;:32::i;:::-;29446:4;29402:23;26845:18;;;:9;:18;;;;;;29499:24;;29467:57;;26845:18;;-1:-1:-1;;;;;29499:24:0;29467:14;:57::i;:::-;-1:-1:-1;;29541:11:0;:19;;-1:-1:-1;;29541:19:0;;;29027:545;-1:-1:-1;;;;;29640:27:0;;;;;;:19;:27;;;;;;:32;29636:629;;-1:-1:-1;;;;;29782:41:0;;;;;;:33;:41;;;;;;;;:49;;:41;:49;29778:476;;-1:-1:-1;;;;;29936:17:0;;;;;;:9;:17;;;;;;:23;;29956:3;;29936:23;:::i;:::-;29935:29;;29963:1;29935:29;:::i;:::-;29926:6;:38;29922:317;;;29989:59;;-1:-1:-1;;;29989:59:0;;9223:2:1;29989:59:0;;;9205:21:1;9262:2;9242:18;;;9235:30;9301:34;9281:18;;;9274:62;-1:-1:-1;;;9352:18:1;;;9345:47;9409:19;;29989:59:0;9021:413:1;29922:317:0;30194:25;:15;30212:7;30194:25;:::i;:::-;-1:-1:-1;;;;;30164:27:0;;;;;;:19;:27;;;;;:55;29922:317;30297:91;;;;;;;;;;;-1:-1:-1;;;30297:91:0;;;;;;;;-1:-1:-1;;;;;30297:17:0;;-1:-1:-1;30297:17:0;;;:9;:17;;;;;;;;:91;;30333:6;;30297:21;:91::i;:::-;-1:-1:-1;;;;;30277:17:0;;;;;;;:9;:17;;;;;;:111;;;;30422:20;;;;;;;:32;;30447:6;30422:24;:32::i;:::-;-1:-1:-1;;;;;30399:20:0;;;;;;;:9;:20;;;;;;;:55;;;;30470:35;;;;;;;;;;30498:6;11654:25:1;;11642:2;11627:18;;11508:177;30470:35:0;;;;;;;;27638:2875;;27525:2988;;;:::o;1324:226::-;1444:7;1480:12;1472:6;;;;1464:29;;;;-1:-1:-1;;;1464:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1504:9:0;1516:5;1520:1;1516;:5;:::i;:::-;1504:17;1324:226;-1:-1:-1;;;;;1324:226:0:o;893:136::-;951:7;978:43;982:1;985;978:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;971:50;893:136;-1:-1:-1;;;893:136:0:o;37893:342::-;-1:-1:-1;;;;;37994:27:0;;;;;;:20;:27;;;;;;;;:36;;;;;;;37972:156;;;;-1:-1:-1;;;37972:156:0;;10048:2:1;37972:156:0;;;10030:21:1;10087:2;10067:18;;;10060:30;10126:34;10106:18;;;10099:62;10197:34;10177:18;;;10170:62;-1:-1:-1;;;10248:19:1;;;10241:37;10295:19;;37972:156:0;9846:474:1;37972:156:0;-1:-1:-1;;;;;38139:27:0;;;;;;:20;:27;;;;;;:35;;-1:-1:-1;;38139:35:0;;;;;;;;;;38192;;38139;;:27;38192:35;;;37893:342;;:::o;6507:223::-;-1:-1:-1;;;;;6581:22:0;;6573:67;;;;-1:-1:-1;;;6573:67:0;;10936:2:1;6573:67:0;;;10918:21:1;;;10955:18;;;10948:30;11014:34;10994:18;;;10987:62;11066:18;;6573:67:0;10734:356:1;6573:67:0;6677:6;;;6656:38;;-1:-1:-1;;;;;6656:38:0;;;;6677:6;;;6656:38;;;6705:6;:17;;-1:-1:-1;;;;;;6705:17:0;-1:-1:-1;;;;;6705:17:0;;;;;;;;;;6507:223::o;437:181::-;495:7;;527:5;531:1;527;:5;:::i;:::-;515:17;;556:1;551;:6;;543:46;;;;-1:-1:-1;;;543:46:0;;7637:2:1;543:46:0;;;7619:21:1;7676:2;7656:18;;;7649:30;7715:29;7695:18;;;7688:57;7762:18;;543:46:0;7435:351:1;35090:415:0;35200:12;35215:10;35224:1;35215:6;:10;:::i;:::-;35200:25;-1:-1:-1;35236:17:0;35256:13;35200:25;35256:6;:13;:::i;:::-;35236:33;;35314:18;35335:16;35346:4;35335:10;:16::i;:::-;35314:37;;35401:35;35414:9;35425:10;35401:12;:35::i;:::-;35454:43;;;12877:25:1;;;12933:2;12918:18;;12911:34;;;12961:18;;;12954:34;;;35454:43:0;;12865:2:1;12850:18;35454:43:0;;;;;;;35138:367;;;35090:415;:::o;34707:375::-;34811:21;34843:18;34854:6;34843:10;:18::i;:::-;-1:-1:-1;34872:18:0;34893:38;34917:14;34893:21;:38;:::i;:::-;34872:59;;34943:12;34961:10;-1:-1:-1;;;;;34961:15:0;34984:10;34961:38;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;34942:57;;;35018:7;35010:64;;;;-1:-1:-1;;;35010:64:0;;11297:2:1;35010:64:0;;;11279:21:1;11336:2;11316:18;;;11309:30;11375:34;11355:18;;;11348:62;-1:-1:-1;;;11426:18:1;;;11419:42;11478:19;;35010:64:0;11095:408:1;33969:730:0;34207:16;;;34221:1;34207:16;;;;;;;;34027:7;;34069:21;;34027:7;;34207:16;;;;;;;;;;;;-1:-1:-1;34207:16:0;34183:40;;34252:4;34234;34239:1;34234:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;34234:23:0;;;:7;;;;;;;;;;:23;;;;34278:16;;:23;;;-1:-1:-1;;;34278:23:0;;;;:16;;;;;:21;;:23;;;;;34234:7;;34278:23;;;;;:16;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;34268:4;34273:1;34268:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;34268:33:0;;;:7;;;;;;;;;:33;34346:16;;34314:63;;34331:4;;34346:16;34365:11;34314:8;:63::i;:::-;34416:16;;:218;;-1:-1:-1;;;34416:218:0;;-1:-1:-1;;;;;34416:16:0;;;;:67;;:218;;34498:11;;34416:16;;34561:4;;34588;;34608:15;;34416:218;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;34679:11;34655:21;:35;;;;:::i;:::-;34647:44;33969:730;-1:-1:-1;;;;33969:730:0:o;35513:741::-;35693:16;;35661:63;;35678:4;;-1:-1:-1;;;;;35693:16:0;35712:11;35661:8;:63::i;:::-;35800:16;;:280;;-1:-1:-1;;;35800:280:0;;35897:4;35800:280;;;5551:34:1;5601:18;;;5594:34;;;35770:24:0;5644:18:1;;;5637:34;;;5687:18;;;5680:34;;;5730:19;;;5723:44;;;36054:15:0;5783:19:1;;;5776:35;35770:24:0;-1:-1:-1;;;;;35800:16:0;;:32;;35854:9;;5485:19:1;;35800:280:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;35767:313:0;-1:-1:-1;36126:1:0;;-1:-1:-1;36095:28:0;35767:313;36095:9;:28;:::i;:::-;:32;36091:155;;;36150:24;;-1:-1:-1;;;;;36150:24:0;36142:104;36203:28;36215:16;36203:9;:28;:::i;:::-;36142:104;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;36091:155;35583:671;35513:741;;:::o;14:367:1:-;77:8;87:6;141:3;134:4;126:6;122:17;118:27;108:55;;159:1;156;149:12;108:55;-1:-1:-1;182:20:1;;225:18;214:30;;211:50;;;257:1;254;247:12;211:50;294:4;286:6;282:17;270:29;;354:3;347:4;337:6;334:1;330:14;322:6;318:27;314:38;311:47;308:67;;;371:1;368;361:12;308:67;14:367;;;;;:::o;386:160::-;451:20;;507:13;;500:21;490:32;;480:60;;536:1;533;526:12;551:247;610:6;663:2;651:9;642:7;638:23;634:32;631:52;;;679:1;676;669:12;631:52;718:9;705:23;737:31;762:5;737:31;:::i;803:251::-;873:6;926:2;914:9;905:7;901:23;897:32;894:52;;;942:1;939;932:12;894:52;974:9;968:16;993:31;1018:5;993:31;:::i;1059:388::-;1127:6;1135;1188:2;1176:9;1167:7;1163:23;1159:32;1156:52;;;1204:1;1201;1194:12;1156:52;1243:9;1230:23;1262:31;1287:5;1262:31;:::i;:::-;1312:5;-1:-1:-1;1369:2:1;1354:18;;1341:32;1382:33;1341:32;1382:33;:::i;:::-;1434:7;1424:17;;;1059:388;;;;;:::o;1452:456::-;1529:6;1537;1545;1598:2;1586:9;1577:7;1573:23;1569:32;1566:52;;;1614:1;1611;1604:12;1566:52;1653:9;1640:23;1672:31;1697:5;1672:31;:::i;:::-;1722:5;-1:-1:-1;1779:2:1;1764:18;;1751:32;1792:33;1751:32;1792:33;:::i;:::-;1452:456;;1844:7;;-1:-1:-1;;;1898:2:1;1883:18;;;;1870:32;;1452:456::o;1913:908::-;2044:6;2052;2060;2068;2076;2129:2;2117:9;2108:7;2104:23;2100:32;2097:52;;;2145:1;2142;2135:12;2097:52;2184:9;2171:23;2203:31;2228:5;2203:31;:::i;:::-;2253:5;-1:-1:-1;2309:2:1;2294:18;;2281:32;2332:18;2362:14;;;2359:34;;;2389:1;2386;2379:12;2359:34;2428:70;2490:7;2481:6;2470:9;2466:22;2428:70;:::i;:::-;2517:8;;-1:-1:-1;2402:96:1;-1:-1:-1;2605:2:1;2590:18;;2577:32;;-1:-1:-1;2621:16:1;;;2618:36;;;2650:1;2647;2640:12;2618:36;;2689:72;2753:7;2742:8;2731:9;2727:24;2689:72;:::i;:::-;1913:908;;;;-1:-1:-1;1913:908:1;;-1:-1:-1;2780:8:1;;2663:98;1913:908;-1:-1:-1;;;1913:908:1:o;2826:640::-;2930:6;2938;2946;2954;3007:2;2995:9;2986:7;2982:23;2978:32;2975:52;;;3023:1;3020;3013:12;2975:52;3062:9;3049:23;3081:31;3106:5;3081:31;:::i;:::-;3131:5;-1:-1:-1;3187:2:1;3172:18;;3159:32;3214:18;3203:30;;3200:50;;;3246:1;3243;3236:12;3200:50;3285:70;3347:7;3338:6;3327:9;3323:22;3285:70;:::i;:::-;2826:640;;3374:8;;-1:-1:-1;3259:96:1;;3456:2;3441:18;3428:32;;2826:640;-1:-1:-1;;;;2826:640:1:o;3471:315::-;3536:6;3544;3597:2;3585:9;3576:7;3572:23;3568:32;3565:52;;;3613:1;3610;3603:12;3565:52;3652:9;3639:23;3671:31;3696:5;3671:31;:::i;:::-;3721:5;-1:-1:-1;3745:35:1;3776:2;3761:18;;3745:35;:::i;:::-;3735:45;;3471:315;;;;;:::o;3791:::-;3859:6;3867;3920:2;3908:9;3899:7;3895:23;3891:32;3888:52;;;3936:1;3933;3926:12;3888:52;3975:9;3962:23;3994:31;4019:5;3994:31;:::i;:::-;4044:5;4096:2;4081:18;;;;4068:32;;-1:-1:-1;;;3791:315:1:o;4111:180::-;4167:6;4220:2;4208:9;4199:7;4195:23;4191:32;4188:52;;;4236:1;4233;4226:12;4188:52;4259:26;4275:9;4259:26;:::i;4296:180::-;4355:6;4408:2;4396:9;4387:7;4383:23;4379:32;4376:52;;;4424:1;4421;4414:12;4376:52;-1:-1:-1;4447:23:1;;4296:180;-1:-1:-1;4296:180:1:o;4481:306::-;4569:6;4577;4585;4638:2;4626:9;4617:7;4613:23;4609:32;4606:52;;;4654:1;4651;4644:12;4606:52;4683:9;4677:16;4667:26;;4733:2;4722:9;4718:18;4712:25;4702:35;;4777:2;4766:9;4762:18;4756:25;4746:35;;4481:306;;;;;:::o;6014:597::-;6126:4;6155:2;6184;6173:9;6166:21;6216:6;6210:13;6259:6;6254:2;6243:9;6239:18;6232:34;6284:1;6294:140;6308:6;6305:1;6302:13;6294:140;;;6403:14;;;6399:23;;6393:30;6369:17;;;6388:2;6365:26;6358:66;6323:10;;6294:140;;;6452:6;6449:1;6446:13;6443:91;;;6522:1;6517:2;6508:6;6497:9;6493:22;6489:31;6482:42;6443:91;-1:-1:-1;6595:2:1;6574:15;-1:-1:-1;;6570:29:1;6555:45;;;;6602:2;6551:54;;6014:597;-1:-1:-1;;;6014:597:1:o;7791:403::-;7993:2;7975:21;;;8032:2;8012:18;;;8005:30;8071:34;8066:2;8051:18;;8044:62;-1:-1:-1;;;8137:2:1;8122:18;;8115:37;8184:3;8169:19;;7791:403::o;9439:402::-;9641:2;9623:21;;;9680:2;9660:18;;;9653:30;9719:34;9714:2;9699:18;;9692:62;-1:-1:-1;;;9785:2:1;9770:18;;9763:36;9831:3;9816:19;;9439:402::o;11690:980::-;11952:4;12000:3;11989:9;11985:19;12031:6;12020:9;12013:25;12057:2;12095:6;12090:2;12079:9;12075:18;12068:34;12138:3;12133:2;12122:9;12118:18;12111:31;12162:6;12197;12191:13;12228:6;12220;12213:22;12266:3;12255:9;12251:19;12244:26;;12305:2;12297:6;12293:15;12279:29;;12326:1;12336:195;12350:6;12347:1;12344:13;12336:195;;;12415:13;;-1:-1:-1;;;;;12411:39:1;12399:52;;12506:15;;;;12471:12;;;;12447:1;12365:9;12336:195;;;-1:-1:-1;;;;;;;12587:32:1;;;;12582:2;12567:18;;12560:60;-1:-1:-1;;;12651:3:1;12636:19;12629:35;12548:3;11690:980;-1:-1:-1;;;11690:980:1:o;13188:128::-;13228:3;13259:1;13255:6;13252:1;13249:13;13246:39;;;13265:18;;:::i;:::-;-1:-1:-1;13301:9:1;;13188:128::o;13321:217::-;13361:1;13387;13377:132;;13431:10;13426:3;13422:20;13419:1;13412:31;13466:4;13463:1;13456:15;13494:4;13491:1;13484:15;13377:132;-1:-1:-1;13523:9:1;;13321:217::o;13543:168::-;13583:7;13649:1;13645;13641:6;13637:14;13634:1;13631:21;13626:1;13619:9;13612:17;13608:45;13605:71;;;13656:18;;:::i;:::-;-1:-1:-1;13696:9:1;;13543:168::o;13716:125::-;13756:4;13784:1;13781;13778:8;13775:34;;;13789:18;;:::i;:::-;-1:-1:-1;13826:9:1;;13716:125::o;13846:380::-;13925:1;13921:12;;;;13968;;;13989:61;;14043:4;14035:6;14031:17;14021:27;;13989:61;14096:2;14088:6;14085:14;14065:18;14062:38;14059:161;;;14142:10;14137:3;14133:20;14130:1;14123:31;14177:4;14174:1;14167:15;14205:4;14202:1;14195:15;14231:135;14270:3;-1:-1:-1;;14291:17:1;;14288:43;;;14311:18;;:::i;:::-;-1:-1:-1;14358:1:1;14347:13;;14231:135::o;14371:127::-;14432:10;14427:3;14423:20;14420:1;14413:31;14463:4;14460:1;14453:15;14487:4;14484:1;14477:15;14503:127;14564:10;14559:3;14555:20;14552:1;14545:31;14595:4;14592:1;14585:15;14619:4;14616:1;14609:15;14767:131;-1:-1:-1;;;;;14842:31:1;;14832:42;;14822:70;;14888:1;14885;14878:12

Swarm Source

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