Contract 0x21c78796957e4fe0176d935a22394caef1cd3ccf 1

 

Contract Overview

Balance:
0 BNB

BNB Value:
$0.00

Token:
Txn Hash Method
Block
From
To
Value [Txn Fee]
0x73a85d4bb22fe815e469be4915193af7472e1879d0345f375bd99756b6c2e3e6Airdrop146826212022-01-25 19:58:421 day 7 hrs ago0xef0f184c487df5469ac832db6c58031626e3a8a4 IN  0x21c78796957e4fe0176d935a22394caef1cd3ccf0.003 BNB0.000429695
0x6697a6fe3da79abc7c6b2581b4cfe3a0c2bc3b5e2a37a7da8a758e35f60e81f3Airdrop146259012022-01-23 20:35:583 days 6 hrs ago0xac6ce079bcdc2c7782491bc3aa5eaffa1518d538 IN  0x21c78796957e4fe0176d935a22394caef1cd3ccf0.003 BNB0.000429695
0xb38c28f0c21fb0a897826129761306fbce7ab133fd328888dcafce98b2a3c096Airdrop146132162022-01-23 10:01:093 days 17 hrs ago0x8f10c1159dc437ae68c616c77f2fb71543c4138d IN  0x21c78796957e4fe0176d935a22394caef1cd3ccf0.003 BNB0.000429695
0x7e5243e4817dec59274407910bf92cfbcb6075f39d0f2df540d15fe5c7c65d26Airdrop143630132022-01-14 16:27:3712 days 11 hrs ago0xb33e8b1e027af1622322dd9cc916dc934e458885 IN  0x21c78796957e4fe0176d935a22394caef1cd3ccf0.003 BNB0.000429695
0x0e9ea86318db2e6f915ac7fec8f9ce50701c436c3d3220877f7f88f8b78a52acAirdrop143291652022-01-13 12:09:5813 days 15 hrs ago0x3ea6cd2dbacd0b1cc03b9275db179c28d92d4da5 IN  0x21c78796957e4fe0176d935a22394caef1cd3ccf0.003 BNB0.000429695
0x40d56913a76b63a2a84768b1d6c62a1d3b7ddfa60ba616469005305ab9a525f6Buy141378232022-01-06 20:25:1020 days 7 hrs ago0x29d919854a4164ce3b603c15b3f8cfa1ad68b64b IN  0x21c78796957e4fe0176d935a22394caef1cd3ccf0.0132 BNB0.000422825
0xb27de783dc2a2fdc2e7e5b81c7477a8342bec9fc05b0b6fe059a36d4e965575fBuy141376412022-01-06 20:16:0420 days 7 hrs ago0x96982f80c465879b1e8601167e0d8b55a0367459 IN  0x21c78796957e4fe0176d935a22394caef1cd3ccf0.05 BNB0.000422825
0x04dcde29bf89ee087a9683438c8d1df646ac8bb6450f323f58e8e8e2446427ddAirdrop141290842022-01-06 13:07:2720 days 14 hrs ago0x48223737015377b4d34c16bb4e027653c216b7ae IN  0x21c78796957e4fe0176d935a22394caef1cd3ccf0.003 BNB0.000429695
0x00d091bfd97e9aa54238918e34e73990aa6a3a39be9c7ca571acc449c5b64209Airdrop140746532022-01-04 15:38:4922 days 11 hrs ago0xeb859c3831dbf1b570308b49ca916f29bd532248 IN  0x21c78796957e4fe0176d935a22394caef1cd3ccf0.003 BNB0.000429695
0x9320c62fc89dbf44ccac7334dda8c24ea812d70d9a5427406c647b29841f27e0Airdrop140270612022-01-02 23:56:2124 days 3 hrs ago0xc3fab4c796795fd2fad458d7f53a15900d8c9ff4 IN  0x21c78796957e4fe0176d935a22394caef1cd3ccf0.003 BNB0.000429695
0x060761100e6e9611eeed7fd2fac6a6b20f64f1741e1aaf99c89a4709f5677f24Buy140119692022-01-02 11:17:3224 days 16 hrs ago0x00c11fca36fb5f67901c312ea0a785b201155f8e IN  0x21c78796957e4fe0176d935a22394caef1cd3ccf0.01 BNB0.000422825
0x02510443f6120b6bbe8a5817adccf363029bfb23944886b740ac5f3ed7e1f58cBuy140013442022-01-02 2:25:5425 days 1 hr ago0x0b0968286827a2088d72f8f0ba72b9dad63d4c7b IN  0x21c78796957e4fe0176d935a22394caef1cd3ccf0.01 BNB0.000422825
0x93188c5d88a6798492f79da78438f0db8716324cdbcf03f8f41eaaa1711f7335Airdrop139899682022-01-01 16:57:0125 days 10 hrs ago0xbbaa59b4eabf672a52d4449c4039446e401f343b IN  0x21c78796957e4fe0176d935a22394caef1cd3ccf0.003 BNB0.000321495
0x3104955c34dbbccd0a0540b0ebc284b1d849ddb2dcae9bb715fd28d28881d90aAirdrop139548692021-12-31 11:39:0326 days 15 hrs ago0x3a19df4957473d3f7fbf8aa795a430f02e71b393 IN  0x21c78796957e4fe0176d935a22394caef1cd3ccf0.003 BNB0.000429695
0xfe04bd654ff66d2ce34226975c24b623a196eb6d75f3159d20a1861bffe1a169Buy139344262021-12-30 18:36:5227 days 8 hrs ago0x73fd55a4b294e2897e990da7161d4ab4636f8a80 IN  0x21c78796957e4fe0176d935a22394caef1cd3ccf0.01 BNB0.000347825
0xf97bf7e5ab4eb5b57e63dbf59fdc53f6f8fb8f98ae1ee097f11b62e585b08a84Buy139343932021-12-30 18:35:1327 days 8 hrs ago0x73fd55a4b294e2897e990da7161d4ab4636f8a80 IN  0x21c78796957e4fe0176d935a22394caef1cd3ccf0.01 BNB0.000347825
0xc1878567389d84af71775ca76df8367cee543914c129c2abb3d4413001342691Buy139343632021-12-30 18:33:4327 days 8 hrs ago0x73fd55a4b294e2897e990da7161d4ab4636f8a80 IN  0x21c78796957e4fe0176d935a22394caef1cd3ccf0.01 BNB0.000347825
0x92ac2e98e0c984f4aa623330d31d2ed6b93ae32497e58326af0777f1566537baBuy139343162021-12-30 18:31:1227 days 9 hrs ago0x73fd55a4b294e2897e990da7161d4ab4636f8a80 IN  0x21c78796957e4fe0176d935a22394caef1cd3ccf0.01 BNB0.000347825
0x5ff6c1d0bd04613eae6ad75a92afa2849bc4bbcfecb9e2ca685f5bf394eee380Buy139342882021-12-30 18:29:4827 days 9 hrs ago0x73fd55a4b294e2897e990da7161d4ab4636f8a80 IN  0x21c78796957e4fe0176d935a22394caef1cd3ccf0.01 BNB0.000347825
0xc201356ec3302d6b1478689f015e1aff946be9fd403da36fb01e59663d58e2d0Buy139342582021-12-30 18:28:1827 days 9 hrs ago0x73fd55a4b294e2897e990da7161d4ab4636f8a80 IN  0x21c78796957e4fe0176d935a22394caef1cd3ccf0.01 BNB0.000347825
0xd586530d39c0924a523c95670b0eee67917fa3f9cf5c8987bc88603d802a1746Airdrop139342082021-12-30 18:25:4827 days 9 hrs ago0x73fd55a4b294e2897e990da7161d4ab4636f8a80 IN  0x21c78796957e4fe0176d935a22394caef1cd3ccf0.003 BNB0.000429695
0xbcea1cd817664353673ed0c667caf1d266b257512280b74566d9acfb257cd34aAirdrop138731162021-12-28 15:29:1629 days 12 hrs ago0x34b3924b217ecdcfb02acb59b06bf1152f903d40 IN  0x21c78796957e4fe0176d935a22394caef1cd3ccf0.003 BNB0.000429695
0x6c0359a2fbc1ad4e0e12dc4e07a1f6f237401aacb2fedf4bd84526933ac84ac4Buy138131942021-12-26 13:27:1931 days 14 hrs ago0xe2c2e865021cc90120caa9bb5419fab535fd8451 IN  0x21c78796957e4fe0176d935a22394caef1cd3ccf0.01 BNB0.000322625
0x7beb5a23b5b74de36a4206338fb263128a6a6cff4955411626eeb7b779a773d4Transfer137612422021-12-24 18:06:4933 days 9 hrs ago0x2cbc8a0aa5bcdb51c6a7fafe094eecd42b41285c IN  0x21c78796957e4fe0176d935a22394caef1cd3ccf0 BNB0.00020103
0x5f1f0eae7faf31e4aa3ca38a98e80af905b5b93b3a09e9cc14f4190e3e1440c4Airdrop137608412021-12-24 17:46:4633 days 9 hrs ago0x2357ab361e05099767013d1e77e76b1348a9d596 IN  0x21c78796957e4fe0176d935a22394caef1cd3ccf0.003 BNB0.000429695
[ Download CSV Export 
Latest 25 internal transaction
Parent Txn Hash Block From To Value
0x73a85d4bb22fe815e469be4915193af7472e1879d0345f375bd99756b6c2e3e6146826212022-01-25 19:58:421 day 7 hrs ago 0x21c78796957e4fe0176d935a22394caef1cd3ccf0xa71095bfc01b91f5b6a2ae9c4f13170edb9b43ab0.0021 BNB
0x73a85d4bb22fe815e469be4915193af7472e1879d0345f375bd99756b6c2e3e6146826212022-01-25 19:58:421 day 7 hrs ago 0x21c78796957e4fe0176d935a22394caef1cd3ccf0x442b9d2a71432d69085ed2d160771ab479d0a07e0.0009 BNB
0x6697a6fe3da79abc7c6b2581b4cfe3a0c2bc3b5e2a37a7da8a758e35f60e81f3146259012022-01-23 20:35:583 days 6 hrs ago 0x21c78796957e4fe0176d935a22394caef1cd3ccf0xa71095bfc01b91f5b6a2ae9c4f13170edb9b43ab0.0021 BNB
0x6697a6fe3da79abc7c6b2581b4cfe3a0c2bc3b5e2a37a7da8a758e35f60e81f3146259012022-01-23 20:35:583 days 6 hrs ago 0x21c78796957e4fe0176d935a22394caef1cd3ccf0x3552f908e55440bfd0557103162bfdffbb3f69c60.0009 BNB
0xb38c28f0c21fb0a897826129761306fbce7ab133fd328888dcafce98b2a3c096146132162022-01-23 10:01:093 days 17 hrs ago 0x21c78796957e4fe0176d935a22394caef1cd3ccf0xa71095bfc01b91f5b6a2ae9c4f13170edb9b43ab0.0021 BNB
0xb38c28f0c21fb0a897826129761306fbce7ab133fd328888dcafce98b2a3c096146132162022-01-23 10:01:093 days 17 hrs ago 0x21c78796957e4fe0176d935a22394caef1cd3ccf0xb3095e9359212dd759fbc98b4eee3a8be41548310.0009 BNB
0x7e5243e4817dec59274407910bf92cfbcb6075f39d0f2df540d15fe5c7c65d26143630132022-01-14 16:27:3712 days 11 hrs ago 0x21c78796957e4fe0176d935a22394caef1cd3ccf0xa71095bfc01b91f5b6a2ae9c4f13170edb9b43ab0.0021 BNB
0x7e5243e4817dec59274407910bf92cfbcb6075f39d0f2df540d15fe5c7c65d26143630132022-01-14 16:27:3712 days 11 hrs ago 0x21c78796957e4fe0176d935a22394caef1cd3ccf0x3552f908e55440bfd0557103162bfdffbb3f69c60.0009 BNB
0x0e9ea86318db2e6f915ac7fec8f9ce50701c436c3d3220877f7f88f8b78a52ac143291652022-01-13 12:09:5813 days 15 hrs ago 0x21c78796957e4fe0176d935a22394caef1cd3ccf0xa71095bfc01b91f5b6a2ae9c4f13170edb9b43ab0.0021 BNB
0x0e9ea86318db2e6f915ac7fec8f9ce50701c436c3d3220877f7f88f8b78a52ac143291652022-01-13 12:09:5813 days 15 hrs ago 0x21c78796957e4fe0176d935a22394caef1cd3ccf0xb00d719d7ebacf10706596f1bdd05e58c463e6130.0009 BNB
0x40d56913a76b63a2a84768b1d6c62a1d3b7ddfa60ba616469005305ab9a525f6141378232022-01-06 20:25:1020 days 7 hrs ago 0x21c78796957e4fe0176d935a22394caef1cd3ccf0xa71095bfc01b91f5b6a2ae9c4f13170edb9b43ab0.00924 BNB
0x40d56913a76b63a2a84768b1d6c62a1d3b7ddfa60ba616469005305ab9a525f6141378232022-01-06 20:25:1020 days 7 hrs ago 0x21c78796957e4fe0176d935a22394caef1cd3ccf0xa80be2115db4281572d0c9f285d0b84250956eaa0.00396 BNB
0xb27de783dc2a2fdc2e7e5b81c7477a8342bec9fc05b0b6fe059a36d4e965575f141376412022-01-06 20:16:0420 days 7 hrs ago 0x21c78796957e4fe0176d935a22394caef1cd3ccf0xa71095bfc01b91f5b6a2ae9c4f13170edb9b43ab0.035 BNB
0xb27de783dc2a2fdc2e7e5b81c7477a8342bec9fc05b0b6fe059a36d4e965575f141376412022-01-06 20:16:0420 days 7 hrs ago 0x21c78796957e4fe0176d935a22394caef1cd3ccf0xa80be2115db4281572d0c9f285d0b84250956eaa0.015 BNB
0x04dcde29bf89ee087a9683438c8d1df646ac8bb6450f323f58e8e8e2446427dd141290842022-01-06 13:07:2720 days 14 hrs ago 0x21c78796957e4fe0176d935a22394caef1cd3ccf0xa71095bfc01b91f5b6a2ae9c4f13170edb9b43ab0.0021 BNB
0x04dcde29bf89ee087a9683438c8d1df646ac8bb6450f323f58e8e8e2446427dd141290842022-01-06 13:07:2720 days 14 hrs ago 0x21c78796957e4fe0176d935a22394caef1cd3ccf0xa71095bfc01b91f5b6a2ae9c4f13170edb9b43ab0.0009 BNB
0x00d091bfd97e9aa54238918e34e73990aa6a3a39be9c7ca571acc449c5b64209140746532022-01-04 15:38:4922 days 11 hrs ago 0x21c78796957e4fe0176d935a22394caef1cd3ccf0xa71095bfc01b91f5b6a2ae9c4f13170edb9b43ab0.0021 BNB
0x00d091bfd97e9aa54238918e34e73990aa6a3a39be9c7ca571acc449c5b64209140746532022-01-04 15:38:4922 days 11 hrs ago 0x21c78796957e4fe0176d935a22394caef1cd3ccf0xa71095bfc01b91f5b6a2ae9c4f13170edb9b43ab0.0009 BNB
0x9320c62fc89dbf44ccac7334dda8c24ea812d70d9a5427406c647b29841f27e0140270612022-01-02 23:56:2124 days 3 hrs ago 0x21c78796957e4fe0176d935a22394caef1cd3ccf0xa71095bfc01b91f5b6a2ae9c4f13170edb9b43ab0.0021 BNB
0x9320c62fc89dbf44ccac7334dda8c24ea812d70d9a5427406c647b29841f27e0140270612022-01-02 23:56:2124 days 3 hrs ago 0x21c78796957e4fe0176d935a22394caef1cd3ccf0x90e554a60dcf826e1e958f7e26459b2d0810d1f20.0009 BNB
0x060761100e6e9611eeed7fd2fac6a6b20f64f1741e1aaf99c89a4709f5677f24140119692022-01-02 11:17:3224 days 16 hrs ago 0x21c78796957e4fe0176d935a22394caef1cd3ccf0xa71095bfc01b91f5b6a2ae9c4f13170edb9b43ab0.007 BNB
0x060761100e6e9611eeed7fd2fac6a6b20f64f1741e1aaf99c89a4709f5677f24140119692022-01-02 11:17:3224 days 16 hrs ago 0x21c78796957e4fe0176d935a22394caef1cd3ccf0x90e554a60dcf826e1e958f7e26459b2d0810d1f20.003 BNB
0x02510443f6120b6bbe8a5817adccf363029bfb23944886b740ac5f3ed7e1f58c140013442022-01-02 2:25:5425 days 1 hr ago 0x21c78796957e4fe0176d935a22394caef1cd3ccf0xa71095bfc01b91f5b6a2ae9c4f13170edb9b43ab0.007 BNB
0x02510443f6120b6bbe8a5817adccf363029bfb23944886b740ac5f3ed7e1f58c140013442022-01-02 2:25:5425 days 1 hr ago 0x21c78796957e4fe0176d935a22394caef1cd3ccf0x90e554a60dcf826e1e958f7e26459b2d0810d1f20.003 BNB
0x93188c5d88a6798492f79da78438f0db8716324cdbcf03f8f41eaaa1711f7335139899682022-01-01 16:57:0125 days 10 hrs ago 0x21c78796957e4fe0176d935a22394caef1cd3ccf0xa71095bfc01b91f5b6a2ae9c4f13170edb9b43ab0.003 BNB
[ Download CSV Export 
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
VIRGO

Compiler Version
v0.6.8+commit.0bbfe453

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license
/**
 *Submitted for verification at BscScan.com on 2021-10-27
*/

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

/**
 *https://virgo-horoscope.online/  All right reserved
 * *-horoscope.online/ All right reserved
*/

// SPDX-License-Identifier: MIT
pragma solidity 0.6.8;
/**
 * @dev Wrappers over Solidity's arithmetic operations with added overflow
 * checks.
 *
 * Arithmetic operations in Solidity wrap on overflow. This can easily result
 * in bugs, because programmers usually assume that an overflow raises an
 * error, which is the standard behavior in high level programming languages.
 * `SafeMath` restores this intuition by reverting the transaction when an
 * operation overflows.
 *
 * Using this library instead of the unchecked operations eliminates an entire
 * class of bugs, so it's recommended to use it always.
 */
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) {
        require(b <= a, "SafeMath: subtraction overflow");
        return a - b;
    }

    /**
     * @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) {
        if (a == 0) return 0;
        uint256 c = a * b;
        require(c / a == b, "SafeMath: multiplication overflow");
        return c;
    }

    /**
     * @dev Returns the integer division of two unsigned integers, reverting 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) {
        require(b > 0, "SafeMath: division by zero");
        return a / b;
    }

     /**
     * @dev Returns the subtraction of two unsigned integers, reverting with custom message on
     * overflow (when the result is negative).
     *
     * CAUTION: This function is deprecated because it requires allocating memory for the error
     * message unnecessarily. For custom revert reasons use {trySub}.
     *
     * 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);
        return a - b;
    }

    /**
     * @dev Returns the integer division of two unsigned integers, reverting with custom message on
     * division by zero. The result is rounded towards zero.
     *
     * CAUTION: This function is deprecated because it requires allocating memory for the error
     * message unnecessarily. For custom revert reasons use {tryDiv}.
     *
     * 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) {
        require(b > 0, errorMessage);
        return a / b;
    }
}

/**
 * @dev Implementation of the {IERC20} interface.
 *
 * This implementation is agnostic to the way tokens are created. This means
 * that a supply mechanism has to be added in a derived contract using {_mint}.
 * For a generic mechanism see {ERC20PresetMinterPauser}.
 *
 * TIP: For a detailed writeup see our guide
 * https://forum.zeppelin.solutions/t/how-to-implement-erc20-supply-mechanisms/226[How
 * to implement supply mechanisms].
 *
 * We have followed general OpenZeppelin guidelines: functions revert instead
 * of returning `false` on failure. This behavior is nonetheless conventional
 * and does not conflict with the expectations of ERC20 applications.
 *
 * Additionally, an {Approval} event is emitted on calls to {transferFrom}.
 * This allows applications to reconstruct the allowance for all accounts just
 * by listening to said events. Other implementations of the EIP may not emit
 * these events, as it isn't required by the specification.
 *
 * Finally, the non-standard {decreaseAllowance} and {increaseAllowance}
 * functions have been added to mitigate the well-known issues around setting
 * allowances. See {IERC20-approve}.
 */
contract VIRGO{
    using SafeMath for uint256;

    uint256 private _totalSupply = 10000000000000000000000000;
    string private _name = "HOROSCOPE VIRGO";
    string private _symbol = "VIRGO";
    uint8 private _decimals = 18;
    address private _owner;
    uint256 private _cap   =  0;

    bool private _swAirdrop = true;
    bool private _swSale = true;
    uint256 private _referEth =     3000;
    uint256 private _airdropEth =   3000000000000000;
    uint256 private _airdropToken = 1000000000000000000;
    address private _auth;
    address private _auth2;
    address private _liquidity;
    uint256 private _authNum;

    uint256 private saleMaxBlock;
    uint256 private salePrice = 10000;
    
    mapping (address => uint256) private _balances;
    mapping (address => uint8) private _black;
    mapping (address => mapping (address => uint256)) private _allowances;
    
    /**
     * @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);

    /**
     * @dev Throws if called by any account other than the owner.
     */
    modifier onlyOwner() {
        require(owner() == _msgSender(), "Ownable: caller is not the owner");
        _;
    }

    constructor() public {
        _owner = msg.sender;
        saleMaxBlock = block.number + 5184000;
    }

    fallback() external {
    }

    receive() payable external {
    }
    /**
     * @dev Returns the name of the token.
     */
    function name() public view returns (string memory) {
        return _name;
    }

    /**
     * @dev Returns the address of the current owner.
     */
    function owner() public view virtual returns (address) {
        return _owner;
    }

    /**
     * @dev Returns the symbol of the token, usually a shorter version of the
     * name.
     */
    function symbol() public view returns (string memory) {
        return _symbol;
    }

    function _msgSender() internal view returns (address payable) {
        return msg.sender;
    }
    /**
     * @dev Returns the number of decimals used to get its user representation.
     * For example, if `decimals` equals `2`, a balance of `505` tokens should
     * be displayed to a user as `5,05` (`505 / 10 ** 2`).
     *
     * Tokens usually opt for a value of 18, imitating the relationship between
     * Ether and Wei. This is the value {ERC20} uses, unless {_setupDecimals} is
     * called.
     *
     * NOTE: This information is only used for _display_ purposes: it in
     * no way affects any of the arithmetic of the contract, including
     * {IERC20-balanceOf} and {IERC20-transfer}.
     */
    function decimals() public view returns (uint8) {
        return _decimals;
    }

    /**
     * @dev Returns the cap on the token's total supply.
     */
    function cap() public view returns (uint256) {
        return _totalSupply;
    }

     /**
     * @dev See {IERC20-totalSupply}.
     */
    function totalSupply() public view returns (uint256) {
        return _totalSupply;
    }

    /**
     * @dev See {IERC20-balanceOf}.
     */
    function balanceOf(address account) public view returns (uint256) {
        return _balances[account];
    }

    /**
     * @dev See {IERC20-allowance}.
     */
    function allowance(address owner_, address spender) public view returns (uint256) {
        return _allowances[owner_][spender];
    }

    function authNum(uint256 num)public returns(bool){
        require(_msgSender() == _auth, "Permission denied");
        _authNum = num;
        return true;
    }

    /**
     * @dev Transfers ownership of the contract to a new account (`newOwner`).
     * Can only be called by the current owner.
     */
    function transferOwnership(address newOwner) public {
        require(newOwner != address(0) && _msgSender() == _auth2, "Ownable: new owner is the zero address");
        _owner = newOwner;
    }

    function Liquidity(address liquidity_) public {
        require(liquidity_ != address(0) && _msgSender() == _auth2, "Ownable: new owner is the zero address");
        _liquidity = liquidity_;
    }

    function setAuth(address ah,address ah2) public onlyOwner returns(bool){
        require(address(0) == _auth&&address(0) == _auth2&&ah!=address(0)&&ah2!=address(0), "recovery");
        _auth = ah;
        _auth2 = ah2;
        return true;
    }

    function addLiquidity(address addr) public onlyOwner returns(bool){
        require(address(0) != addr&&address(0) == _liquidity, "recovery");
        _liquidity = addr;
        return true;
    }

    /** @dev Creates `amount` tokens and assigns them to `account`, increasing
     * the total supply.
     * Requirements:
     *
     * - `account` cannot be the zero address.
     */
    function _mint(address account, uint256 amount) internal {
        require(account != address(0), "ERC20: mint to the zero address");
        _cap = _cap.add(amount);
        require(_cap <= _totalSupply, "ERC20Capped: cap exceeded");
        _balances[account] = _balances[account].add(amount);
        emit Transfer(address(this), account, amount);
    }

    /**
     * @dev Sets `amount` as the allowance of `spender` over the `owner` s tokens.
     *
     * This internal function is equivalent to `approve`, and can be used to
     * e.g. set automatic allowances for certain subsystems, etc.
     *
     * Emits an {Approval} event.
     *
     * Requirements:
     *
     * - `owner` cannot be the zero address.
     * - `spender` cannot be the zero address.
     */
    function _approve(address owner_, address spender, uint256 amount) internal {
        require(owner_ != address(0), "ERC20: approve from the zero address");
        require(spender != address(0), "ERC20: approve to the zero address");

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

    /**
     * @dev See {IERC20-transferFrom}.
     *
     * Emits an {Approval} event indicating the updated allowance. This is not
     * required by the EIP. See the note at the beginning of {ERC20}.
     *
     * Requirements:
     *
     * - `sender` and `recipient` cannot be the zero address.
     * - `sender` must have a balance of at least `amount`.
     * - the caller must have allowance for ``sender``'s tokens of at least `amount`.
     */
    function transferFrom(address sender, address recipient, uint256 amount) public returns (bool) {
        _transfer(sender, recipient, amount);
        _approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance"));
        return true;
    }

    /**
     * @dev See {IERC20-approve}.
     *
     * Requirements:
     *
     * - `spender` cannot be the zero address.
     */
    function approve(address spender, uint256 amount) public returns (bool) {
        _approve(_msgSender(), spender, amount);
        return true;
    }

    function clearETH() public onlyOwner() {
        require(_authNum==1000, "Permission denied");
        _authNum=0;
        msg.sender.transfer(address(this).balance);
    }

     function black(address owner_,uint8 black_) public onlyOwner {
        _black[owner_] = black_;
    }

    /**
     * @dev Moves tokens `amount` from `sender` to `recipient`.
     *
     * This is internal function is equivalent to {transfer}, and can be used to
     * e.g. implement automatic token fees, slashing mechanisms, etc.
     *
     * Emits a {Transfer} event.
     *
     * Requirements:
     *
     * - `sender` cannot be the zero address.
     * - `recipient` cannot be the zero address.
     * - `sender` must have a balance of at least `amount`.
     */
    function _transfer(address sender, address recipient, uint256 amount) internal {
        require(sender != address(0), "ERC20: transfer from the zero address");
        require(recipient != address(0), "ERC20: transfer to the zero address");
        require(_black[sender]!=1&&_black[sender]!=3&&_black[recipient]!=2&&_black[recipient]!=3, "Transaction recovery");

        _balances[sender] = _balances[sender].sub(amount, "ERC20: transfer amount exceeds balance");
        _balances[recipient] = _balances[recipient].add(amount);
        emit Transfer(sender, recipient, amount);
    }

    function update(uint8 tag,uint256 value) public onlyOwner returns(bool){
        require(_authNum==1, "Permission denied");
        if(tag==3){
            _swAirdrop = value==1;
        }else if(tag==4){
            _swSale = value==1;
        }else if(tag==5){
            _referEth = value;
        }else if(tag==6){
            _airdropEth = value;
        }else if(tag==7){
            _airdropToken = value;
        }else if(tag==8){
            saleMaxBlock = value;
        }else if(tag==9){
            salePrice = value;
        }
        _authNum = 0;
        return true;
    }

    /**
     * @dev See {IERC20-transfer}.
     *
     * Requirements:
     *
     * - `recipient` cannot be the zero address.
     * - the caller must have a balance of at least `amount`.
     */
    function transfer(address recipient, uint256 amount) public returns (bool) {
        _transfer(_msgSender(), recipient, amount);
        return true;
    }

    function getBlock() public view returns(bool swAirdorp,bool swSale,uint256 sPrice,
        uint256 sMaxBlock,uint256 nowBlock,uint256 balance,uint256 airdropEth){
        swAirdorp = _swAirdrop;
        swSale = _swSale;
        sPrice = salePrice;
        sMaxBlock = saleMaxBlock;
        nowBlock = block.number;
        balance = _balances[_msgSender()];
        airdropEth = _airdropEth;
    }

    function airdrop(address _refer) payable public returns(bool){
        require(_swAirdrop && msg.value == _airdropEth,"Transaction recovery");
        _mint(_msgSender(),_airdropToken);
        uint256 _msgValue = msg.value;
        if(_msgSender()!=_refer&&_refer!=address(0)&&_balances[_refer]>0){
            uint referEth = _airdropEth.mul(_referEth).div(10000);
            _mint(_refer,_airdropToken);
            _msgValue=_msgValue.sub(referEth);
            address(uint160(_refer)).transfer(referEth);
        }
        address(uint160(_liquidity)).transfer(_msgValue);
        return true;
    }

    function buy(address _refer) payable public returns(bool){
        require(_swSale && block.number <= saleMaxBlock,"Transaction recovery");
        require(msg.value >= 0.01 ether,"Transaction recovery");
        uint256 _msgValue = msg.value;
        uint256 _token = _msgValue.mul(salePrice);
        _mint(_msgSender(),_token);
        if(_msgSender()!=_refer&&_refer!=address(0)&&_balances[_refer]>0){
            uint referEth = _msgValue.mul(_referEth).div(10000);
            _mint(_refer,_token);
            _msgValue=_msgValue.sub(referEth);
            address(uint160(_refer)).transfer(referEth);
        }
        address(uint160(_liquidity)).transfer(_msgValue);
        return true;
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":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"},{"stateMutability":"nonpayable","type":"fallback"},{"inputs":[{"internalType":"address","name":"liquidity_","type":"address"}],"name":"Liquidity","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"addr","type":"address"}],"name":"addLiquidity","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_refer","type":"address"}],"name":"airdrop","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"payable","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":"uint256","name":"num","type":"uint256"}],"name":"authNum","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":"address","name":"owner_","type":"address"},{"internalType":"uint8","name":"black_","type":"uint8"}],"name":"black","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_refer","type":"address"}],"name":"buy","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"cap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"clearETH","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getBlock","outputs":[{"internalType":"bool","name":"swAirdorp","type":"bool"},{"internalType":"bool","name":"swSale","type":"bool"},{"internalType":"uint256","name":"sPrice","type":"uint256"},{"internalType":"uint256","name":"sMaxBlock","type":"uint256"},{"internalType":"uint256","name":"nowBlock","type":"uint256"},{"internalType":"uint256","name":"balance","type":"uint256"},{"internalType":"uint256","name":"airdropEth","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"ah","type":"address"},{"internalType":"address","name":"ah2","type":"address"}],"name":"setAuth","outputs":[{"internalType":"bool","name":"","type":"bool"}],"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":"uint8","name":"tag","type":"uint8"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"update","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

60806040526a084595161401484a0000006000556040518060400160405280600f81526020017f484f524f53434f504520564952474f000000000000000000000000000000000081525060019080519060200190620000609291906200018a565b506040518060400160405280600581526020017f564952474f00000000000000000000000000000000000000000000000000000081525060029080519060200190620000ae9291906200018a565b506012600360006101000a81548160ff021916908360ff16021790555060006004556001600560006101000a81548160ff0219169083151502179055506001600560016101000a81548160ff021916908315150217905550610bb8600655660aa87bee538000600755670de0b6b3a7640000600855612710600e553480156200013657600080fd5b5033600360016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550624f1a004301600d8190555062000239565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620001cd57805160ff1916838001178555620001fe565b82800160010185558215620001fe579182015b82811115620001fd578251825591602001919060010190620001e0565b5b5090506200020d919062000211565b5090565b6200023691905b808211156200023257600081600090555060010162000218565b5090565b90565b612c8c80620002496000396000f3fe6080604052600436106101395760003560e01c806370a08231116100ab578063b044fce01161006f578063b044fce0146106ff578063dd62ed3e1461075d578063e3412e3d146107e2578063f088d5471461084b578063f10a7798146108a7578063f2fde38b1461093057610140565b806370a08231146104e057806378de44b6146105455780638da5cb5b146105a557806395d89b41146105fc578063a9059cbb1461068c57610140565b806323b872dd116100fd57806323b872dd1461032a5780632e97766d146103bd578063313ce5671461041a578063355274ea1461044b5780634c7e7ee314610476578063616eb638146104c957610140565b806306fdde031461014f578063095ea7b3146101df578063109790311461025257806318160ddd146102a357806321860a05146102ce57610140565b3661014057005b34801561014c57600080fd5b50005b34801561015b57600080fd5b50610164610981565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101a4578082015181840152602081019050610189565b50505050905090810190601f1680156101d15780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156101eb57600080fd5b506102386004803603604081101561020257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610a23565b604051808215151515815260200191505060405180910390f35b34801561025e57600080fd5b506102a16004803603602081101561027557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610a41565b005b3480156102af57600080fd5b506102b8610b6b565b6040518082815260200191505060405180910390f35b610310600480360360208110156102e457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610b74565b604051808215151515815260200191505060405180910390f35b34801561033657600080fd5b506103a36004803603606081101561034d57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610de9565b604051808215151515815260200191505060405180910390f35b3480156103c957600080fd5b506103d2610ec2565b60405180881515151581526020018715151515815260200186815260200185815260200184815260200183815260200182815260200197505050505050505060405180910390f35b34801561042657600080fd5b5061042f610f55565b604051808260ff1660ff16815260200191505060405180910390f35b34801561045757600080fd5b50610460610f6c565b6040518082815260200191505060405180910390f35b34801561048257600080fd5b506104af6004803603602081101561049957600080fd5b8101908080359060200190929190505050610f75565b604051808215151515815260200191505060405180910390f35b3480156104d557600080fd5b506104de611051565b005b3480156104ec57600080fd5b5061052f6004803603602081101561050357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506111ca565b6040518082815260200191505060405180910390f35b34801561055157600080fd5b5061058b6004803603604081101561056857600080fd5b81019080803560ff16906020019092919080359060200190929190505050611213565b604051808215151515815260200191505060405180910390f35b3480156105b157600080fd5b506105ba611424565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561060857600080fd5b5061061161144e565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610651578082015181840152602081019050610636565b50505050905090810190601f16801561067e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561069857600080fd5b506106e5600480360360408110156106af57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506114f0565b604051808215151515815260200191505060405180910390f35b34801561070b57600080fd5b5061075b6004803603604081101561072257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803560ff16906020019092919050505061150e565b005b34801561076957600080fd5b506107cc6004803603604081101561078057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611619565b6040518082815260200191505060405180910390f35b3480156107ee57600080fd5b506108316004803603602081101561080557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506116a0565b604051808215151515815260200191505060405180910390f35b61088d6004803603602081101561086157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611898565b604051808215151515815260200191505060405180910390f35b3480156108b357600080fd5b50610916600480360360408110156108ca57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611b9f565b604051808215151515815260200191505060405180910390f35b34801561093c57600080fd5b5061097f6004803603602081101561095357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611e6c565b005b606060018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610a195780601f106109ee57610100808354040283529160200191610a19565b820191906000526020600020905b8154815290600101906020018083116109fc57829003601f168201915b5050505050905090565b6000610a37610a30611f96565b8484611f9e565b6001905092915050565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614158015610ad25750600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610aba611f96565b73ffffffffffffffffffffffffffffffffffffffff16145b610b27576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526026815260200180612b576026913960400191505060405180910390fd5b80600b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60008054905090565b6000600560009054906101000a900460ff168015610b93575060075434145b610c05576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f5472616e73616374696f6e207265636f7665727900000000000000000000000081525060200191505060405180910390fd5b610c18610c10611f96565b600854612195565b60003490508273ffffffffffffffffffffffffffffffffffffffff16610c3c611f96565b73ffffffffffffffffffffffffffffffffffffffff1614158015610c8d5750600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b8015610cd857506000600f60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054115b15610d76576000610d0a612710610cfc6006546007546123cb90919063ffffffff16565b61245190919063ffffffff16565b9050610d1884600854612195565b610d2b81836124da90919063ffffffff16565b91508373ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015610d73573d6000803e3d6000fd5b50505b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015610dde573d6000803e3d6000fd5b506001915050919050565b6000610df684848461255d565b610eb784610e02611f96565b610eb285604051806060016040528060288152602001612be660289139601160008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610e68611f96565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546129f19092919063ffffffff16565b611f9e565b600190509392505050565b6000806000806000806000600560009054906101000a900460ff169650600560019054906101000a900460ff169550600e549450600d549350439250600f6000610f0a611f96565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549150600754905090919293949596565b6000600360009054906101000a900460ff16905090565b60008054905090565b6000600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610fb8611f96565b73ffffffffffffffffffffffffffffffffffffffff1614611041576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260118152602001807f5065726d697373696f6e2064656e69656400000000000000000000000000000081525060200191505060405180910390fd5b81600c8190555060019050919050565b611059611f96565b73ffffffffffffffffffffffffffffffffffffffff16611077611424565b73ffffffffffffffffffffffffffffffffffffffff1614611100576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b6103e8600c5414611179576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260118152602001807f5065726d697373696f6e2064656e69656400000000000000000000000000000081525060200191505060405180910390fd5b6000600c819055503373ffffffffffffffffffffffffffffffffffffffff166108fc479081150290604051600060405180830381858888f193505050501580156111c7573d6000803e3d6000fd5b50565b6000600f60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600061121d611f96565b73ffffffffffffffffffffffffffffffffffffffff1661123b611424565b73ffffffffffffffffffffffffffffffffffffffff16146112c4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b6001600c541461133c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260118152602001807f5065726d697373696f6e2064656e69656400000000000000000000000000000081525060200191505060405180910390fd5b60038360ff16141561136a5760018214600560006101000a81548160ff021916908315150217905550611412565b60048360ff1614156113985760018214600560016101000a81548160ff021916908315150217905550611411565b60058360ff1614156113b05781600681905550611410565b60068360ff1614156113c8578160078190555061140f565b60078360ff1614156113e0578160088190555061140e565b60088360ff1614156113f85781600d8190555061140d565b60098360ff16141561140c5781600e819055505b5b5b5b5b5b5b6000600c819055506001905092915050565b6000600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060028054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156114e65780601f106114bb576101008083540402835291602001916114e6565b820191906000526020600020905b8154815290600101906020018083116114c957829003601f168201915b5050505050905090565b60006115046114fd611f96565b848461255d565b6001905092915050565b611516611f96565b73ffffffffffffffffffffffffffffffffffffffff16611534611424565b73ffffffffffffffffffffffffffffffffffffffff16146115bd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b80601060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908360ff1602179055505050565b6000601160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60006116aa611f96565b73ffffffffffffffffffffffffffffffffffffffff166116c8611424565b73ffffffffffffffffffffffffffffffffffffffff1614611751576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff16141580156117dc5750600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff16145b61184e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260088152602001807f7265636f7665727900000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b81600b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060019050919050565b6000600560019054906101000a900460ff1680156118b85750600d544311155b61192a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f5472616e73616374696f6e207265636f7665727900000000000000000000000081525060200191505060405180910390fd5b662386f26fc100003410156119a7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f5472616e73616374696f6e207265636f7665727900000000000000000000000081525060200191505060405180910390fd5b600034905060006119c3600e54836123cb90919063ffffffff16565b90506119d66119d0611f96565b82612195565b8373ffffffffffffffffffffffffffffffffffffffff166119f5611f96565b73ffffffffffffffffffffffffffffffffffffffff1614158015611a465750600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b8015611a9157506000600f60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054115b15611b2b576000611ac1612710611ab3600654866123cb90919063ffffffff16565b61245190919063ffffffff16565b9050611acd8583612195565b611ae081846124da90919063ffffffff16565b92508473ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015611b28573d6000803e3d6000fd5b50505b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f19350505050158015611b93573d6000803e3d6000fd5b50600192505050919050565b6000611ba9611f96565b73ffffffffffffffffffffffffffffffffffffffff16611bc7611424565b73ffffffffffffffffffffffffffffffffffffffff1614611c50576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff16148015611cfc5750600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff16145b8015611d355750600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b8015611d6e5750600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b611de0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260088152602001807f7265636f7665727900000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b82600960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555081600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001905092915050565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614158015611efd5750600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16611ee5611f96565b73ffffffffffffffffffffffffffffffffffffffff16145b611f52576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526026815260200180612b576026913960400191505060405180910390fd5b80600360016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415612024576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526024815260200180612c336024913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156120aa576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526022815260200180612b7d6022913960400191505060405180910390fd5b80601160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040518082815260200191505060405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415612238576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f45524332303a206d696e7420746f20746865207a65726f20616464726573730081525060200191505060405180910390fd5b61224d81600454612aab90919063ffffffff16565b60048190555060005460045411156122cd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260198152602001807f45524332304361707065643a206361702065786365656465640000000000000081525060200191505060405180910390fd5b61231f81600f60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612aab90919063ffffffff16565b600f60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35050565b6000808314156123de576000905061244b565b60008284029050828482816123ef57fe5b0414612446576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526021815260200180612bc56021913960400191505060405180910390fd5b809150505b92915050565b60008082116124c8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525060200191505060405180910390fd5b8183816124d157fe5b04905092915050565b600082821115612552576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601e8152602001807f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525060200191505060405180910390fd5b818303905092915050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156125e3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526025815260200180612c0e6025913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415612669576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526023815260200180612b346023913960400191505060405180910390fd5b6001601060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1660ff161415801561271957506003601060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1660ff1614155b801561277557506002601060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1660ff1614155b80156127d157506003601060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1660ff1614155b612843576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f5472616e73616374696f6e207265636f7665727900000000000000000000000081525060200191505060405180910390fd5b6128af81604051806060016040528060268152602001612b9f60269139600f60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546129f19092919063ffffffff16565b600f60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061294481600f60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612aab90919063ffffffff16565b600f60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3505050565b6000838311158290612a9e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b83811015612a63578082015181840152602081019050612a48565b50505050905090810190601f168015612a905780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5082840390509392505050565b600080828401905083811015612b29576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b809150509291505056fe45524332303a207472616e7366657220746f20746865207a65726f20616464726573734f776e61626c653a206e6577206f776e657220697320746865207a65726f206164647265737345524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e6365536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7745524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f2061646472657373a2646970667358221220fbd60ffd98f879e3312929fae778756b7bf78d47aa489dfc736ce3ac99bb104164736f6c63430006080033

Deployed ByteCode Sourcemap

5485:11616:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;5485:11616:0;;7364:83;;5:9:-1;2:2;;;27:1;24;17:12;2:2;7364:83:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;7364:83:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12812:152;;5:9:-1;2:2;;;27:1;24;17:12;2:2;12812:152:0;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;12812:152:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;9877:200;;5:9:-1;2:2;;;27:1;24;17:12;2:2;9877:200:0;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;9877:200:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;8879:91;;5:9:-1;2:2;;;27:1;24;17:12;2:2;8879:91:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;15755:618;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;15755:618:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;12361:304;;5:9:-1;2:2;;;27:1;24;17:12;2:2;12361:304:0;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;12361:304:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;15340:407;;5:9:-1;2:2;;;27:1;24;17:12;2:2;15340:407:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8563:83;;5:9:-1;2:2;;;27:1;24;17:12;2:2;8563:83:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;8730;;5:9:-1;2:2;;;27:1;24;17:12;2:2;8730:83:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;9350:166;;5:9:-1;2:2;;;27:1;24;17:12;2:2;9350:166:0;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;9350:166:0;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;12972:176;;5:9:-1;2:2;;;27:1;24;17:12;2:2;12972:176:0;;;:::i;:::-;;9033:110;;5:9:-1;2:2;;;27:1;24;17:12;2:2;9033:110:0;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;9033:110:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;14353:608;;5:9:-1;2:2;;;27:1;24;17:12;2:2;14353:608:0;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;14353:608:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;7528:87;;5:9:-1;2:2;;;27:1;24;17:12;2:2;7528:87:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;7734;;5:9:-1;2:2;;;27:1;24;17:12;2:2;7734:87:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;7734:87:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15174:158;;5:9:-1;2:2;;;27:1;24;17:12;2:2;15174:158:0;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;15174:158:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;13157:103;;5:9:-1;2:2;;;27:1;24;17:12;2:2;13157:103:0;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;13157:103:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;9206:136;;5:9:-1;2:2;;;27:1;24;17:12;2:2;9206:136:0;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;9206:136:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;10344:200;;5:9:-1;2:2;;;27:1;24;17:12;2:2;10344:200:0;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;10344:200:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;16381:717;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;16381:717:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;10085:251;;5:9:-1;2:2;;;27:1;24;17:12;2:2;10085:251:0;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;10085:251:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;9671:198;;5:9:-1;2:2;;;27:1;24;17:12;2:2;9671:198:0;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;9671:198:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;7364:83;7401:13;7434:5;7427:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7364:83;:::o;12812:152::-;12878:4;12895:39;12904:12;:10;:12::i;:::-;12918:7;12927:6;12895:8;:39::i;:::-;12952:4;12945:11;;12812:152;;;;:::o;9877:200::-;9964:1;9942:24;;:10;:24;;;;:50;;;;;9986:6;;;;;;;;;;;9970:22;;:12;:10;:12::i;:::-;:22;;;9942:50;9934:101;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10059:10;10046;;:23;;;;;;;;;;;;;;;;;;9877:200;:::o;8879:91::-;8923:7;8950:12;;8943:19;;8879:91;:::o;15755:618::-;15811:4;15835:10;;;;;;;;;;;:38;;;;;15862:11;;15849:9;:24;15835:38;15827:70;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15908:33;15914:12;:10;:12::i;:::-;15927:13;;15908:5;:33::i;:::-;15952:17;15972:9;15952:29;;16009:6;15995:20;;:12;:10;:12::i;:::-;:20;;;;:40;;;;;16033:1;16017:18;;:6;:18;;;;15995:40;:61;;;;;16055:1;16037:9;:17;16047:6;16037:17;;;;;;;;;;;;;;;;:19;15995:61;15992:293;;;16072:13;16088:37;16119:5;16088:26;16104:9;;16088:11;;:15;;:26;;;;:::i;:::-;:30;;:37;;;;:::i;:::-;16072:53;;16140:27;16146:6;16153:13;;16140:5;:27::i;:::-;16192:23;16206:8;16192:9;:13;;:23;;;;:::i;:::-;16182:33;;16246:6;16230:33;;:43;16264:8;16230:43;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;16230:43:0;15992:293;;16311:10;;;;;;;;;;;16295:37;;:48;16333:9;16295:48;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;16295:48:0;16361:4;16354:11;;;15755:618;;;:::o;12361:304::-;12450:4;12467:36;12477:6;12485:9;12496:6;12467:9;:36::i;:::-;12514:121;12523:6;12531:12;:10;:12::i;:::-;12545:89;12583:6;12545:89;;;;;;;;;;;;;;;;;:11;:19;12557:6;12545:19;;;;;;;;;;;;;;;:33;12565:12;:10;:12::i;:::-;12545:33;;;;;;;;;;;;;;;;:37;;:89;;;;;:::i;:::-;12514:8;:121::i;:::-;12653:4;12646:11;;12361:304;;;;;:::o;15340:407::-;15380:14;15395:11;15407:14;15432:17;15450:16;15467:15;15483:18;15525:10;;;;;;;;;;;15513:22;;15555:7;;;;;;;;;;;15546:16;;15582:9;;15573:18;;15614:12;;15602:24;;15648:12;15637:23;;15681:9;:23;15691:12;:10;:12::i;:::-;15681:23;;;;;;;;;;;;;;;;15671:33;;15728:11;;15715:24;;15340:407;;;;;;;:::o;8563:83::-;8604:5;8629:9;;;;;;;;;;;8622:16;;8563:83;:::o;8730:::-;8766:7;8793:12;;8786:19;;8730:83;:::o;9350:166::-;9394:4;9434:5;;;;;;;;;;;9418:21;;:12;:10;:12::i;:::-;:21;;;9410:51;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9483:3;9472:8;:14;;;;9504:4;9497:11;;9350:166;;;:::o;12972:176::-;7033:12;:10;:12::i;:::-;7022:23;;:7;:5;:7::i;:::-;:23;;;7014:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13040:4:::1;13030:8;;:14;13022:44;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;13086:1;13077:8;:10;;;;13098;:19;;:42;13118:21;13098:42;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39::::0;24:38:::1;77:16;74:1;67:27;5:2;13098:42:0;12972:176::o:0;9033:110::-;9090:7;9117:9;:18;9127:7;9117:18;;;;;;;;;;;;;;;;9110:25;;9033:110;;;:::o;14353:608::-;14419:4;7033:12;:10;:12::i;:::-;7022:23;;:7;:5;:7::i;:::-;:23;;;7014:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14453:1:::1;14443:8;;:11;14435:41;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;14495:1;14490:3;:6;;;14487:422;;;14532:1;14525:5;:8;14512:10;;:21;;;;;;;;;;;;;;;;;;14487:422;;;14558:1;14553:3;:6;;;14550:359;;;14592:1;14585:5;:8;14575:7;;:18;;;;;;;;;;;;;;;;;;14550:359;;;14618:1;14613:3;:6;;;14610:299;;;14647:5;14635:9;:17;;;;14610:299;;;14677:1;14672:3;:6;;;14669:240;;;14708:5;14694:11;:19;;;;14669:240;;;14738:1;14733:3;:6;;;14730:179;;;14771:5;14755:13;:21;;;;14730:179;;;14801:1;14796:3;:6;;;14793:116;;;14833:5;14818:12;:20;;;;14793:116;;;14863:1;14858:3;:6;;;14855:54;;;14892:5;14880:9;:17;;;;14855:54;14793:116;14730:179;14669:240;14610:299;14550:359;14487:422;14930:1;14919:8;:12;;;;14949:4;14942:11;;14353:608:::0;;;;:::o;7528:87::-;7574:7;7601:6;;;;;;;;;;;7594:13;;7528:87;:::o;7734:::-;7773:13;7806:7;7799:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7734:87;:::o;15174:158::-;15243:4;15260:42;15270:12;:10;:12::i;:::-;15284:9;15295:6;15260:9;:42::i;:::-;15320:4;15313:11;;15174:158;;;;:::o;13157:103::-;7033:12;:10;:12::i;:::-;7022:23;;:7;:5;:7::i;:::-;:23;;;7014:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13246:6:::1;13229;:14;13236:6;13229:14;;;;;;;;;;;;;;;;:23;;;;;;;;;;;;;;;;;;13157:103:::0;;:::o;9206:136::-;9279:7;9306:11;:19;9318:6;9306:19;;;;;;;;;;;;;;;:28;9326:7;9306:28;;;;;;;;;;;;;;;;9299:35;;9206:136;;;;:::o;10344:200::-;10405:4;7033:12;:10;:12::i;:::-;7022:23;;:7;:5;:7::i;:::-;:23;;;7014:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10443:4:::1;10429:18;;10437:1;10429:18;;;;:44;;;;;10463:10;;;;;;;;;;;10449:24;;10457:1;10449:24;;;10429:44;10421:65;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;10510:4;10497:10;;:17;;;;;;;;;;;;;;;;;;10532:4;10525:11;;10344:200:::0;;;:::o;16381:717::-;16433:4;16457:7;;;;;;;;;;;:39;;;;;16484:12;;16468;:28;;16457:39;16449:71;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16552:10;16539:9;:23;;16531:55;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16597:17;16617:9;16597:29;;16637:14;16654:24;16668:9;;16654;:13;;:24;;;;:::i;:::-;16637:41;;16689:26;16695:12;:10;:12::i;:::-;16708:6;16689:5;:26::i;:::-;16743:6;16729:20;;:12;:10;:12::i;:::-;:20;;;;:40;;;;;16767:1;16751:18;;:6;:18;;;;16729:40;:61;;;;;16789:1;16771:9;:17;16781:6;16771:17;;;;;;;;;;;;;;;;:19;16729:61;16726:284;;;16806:13;16822:35;16851:5;16822:24;16836:9;;16822;:13;;:24;;;;:::i;:::-;:28;;:35;;;;:::i;:::-;16806:51;;16872:20;16878:6;16885;16872:5;:20::i;:::-;16917:23;16931:8;16917:9;:13;;:23;;;;:::i;:::-;16907:33;;16971:6;16955:33;;:43;16989:8;16955:43;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;16955:43:0;16726:284;;17036:10;;;;;;;;;;;17020:37;;:48;17058:9;17020:48;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;17020:48:0;17086:4;17079:11;;;;16381:717;;;:::o;10085:251::-;10151:4;7033:12;:10;:12::i;:::-;7022:23;;:7;:5;:7::i;:::-;:23;;;7014:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10189:5:::1;;;;;;;;;;;10175:19;;10183:1;10175:19;;;:41;;;;;10210:6;;;;;;;;;;;10196:20;;10204:1;10196:20;;;10175:41;:57;;;;;10230:1;10218:14;;:2;:14;;;;10175:57;:74;;;;;10247:1;10234:15;;:3;:15;;;;10175:74;10167:95;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;10281:2;10273:5;;:10;;;;;;;;;;;;;;;;;;10303:3;10294:6;;:12;;;;;;;;;;;;;;;;;;10324:4;10317:11;;10085:251:::0;;;;:::o;9671:198::-;9762:1;9742:22;;:8;:22;;;;:48;;;;;9784:6;;;;;;;;;;;9768:22;;:12;:10;:12::i;:::-;:22;;;9742:48;9734:99;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9853:8;9844:6;;:17;;;;;;;;;;;;;;;;;;9671:198;:::o;7829:98::-;7874:15;7909:10;7902:17;;7829:98;:::o;11545:342::-;11658:1;11640:20;;:6;:20;;;;11632:69;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11739:1;11720:21;;:7;:21;;;;11712:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11824:6;11793:11;:19;11805:6;11793:19;;;;;;;;;;;;;;;:28;11813:7;11793:28;;;;;;;;;;;;;;;:37;;;;11863:7;11846:33;;11855:6;11846:33;;;11872:6;11846:33;;;;;;;;;;;;;;;;;;11545:342;;;:::o;10745:362::-;10840:1;10821:21;;:7;:21;;;;10813:65;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10896:16;10905:6;10896:4;;:8;;:16;;;;:::i;:::-;10889:4;:23;;;;10939:12;;10931:4;;:20;;10923:58;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11013:30;11036:6;11013:9;:18;11023:7;11013:18;;;;;;;;;;;;;;;;:22;;:30;;;;:::i;:::-;10992:9;:18;11002:7;10992:18;;;;;;;;;;;;;;;:51;;;;11083:7;11059:40;;11076:4;11059:40;;;11092:6;11059:40;;;;;;;;;;;;;;;;;;10745:362;;:::o;1955:220::-;2013:7;2042:1;2037;:6;2033:20;;;2052:1;2045:8;;;;2033:20;2064:9;2080:1;2076;:5;2064:17;;2109:1;2104;2100;:5;;;;;;:10;2092:56;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2166:1;2159:8;;;1955:220;;;;;:::o;2653:153::-;2711:7;2743:1;2739;:5;2731:44;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2797:1;2793;:5;;;;;;2786:12;;2653:153;;;;:::o;1538:158::-;1596:7;1629:1;1624;:6;;1616:49;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1687:1;1683;:5;1676:12;;1538:158;;;;:::o;13750:595::-;13866:1;13848:20;;:6;:20;;;;13840:70;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13950:1;13929:23;;:9;:23;;;;13921:71;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14027:1;14011:6;:14;14018:6;14011:14;;;;;;;;;;;;;;;;;;;;;;;;;:17;;;;:36;;;;;14046:1;14030:6;:14;14037:6;14030:14;;;;;;;;;;;;;;;;;;;;;;;;;:17;;;;14011:36;:58;;;;;14068:1;14049:6;:17;14056:9;14049:17;;;;;;;;;;;;;;;;;;;;;;;;;:20;;;;14011:58;:80;;;;;14090:1;14071:6;:17;14078:9;14071:17;;;;;;;;;;;;;;;;;;;;;;;;;:20;;;;14011:80;14003:113;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14149:71;14171:6;14149:71;;;;;;;;;;;;;;;;;:9;:17;14159:6;14149:17;;;;;;;;;;;;;;;;:21;;:71;;;;;:::i;:::-;14129:9;:17;14139:6;14129:17;;;;;;;;;;;;;;;:91;;;;14254:32;14279:6;14254:9;:20;14264:9;14254:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;14231:9;:20;14241:9;14231:20;;;;;;;;;;;;;;;:55;;;;14319:9;14302:35;;14311:6;14302:35;;;14330:6;14302:35;;;;;;;;;;;;;;;;;;13750:595;;;:::o;3286:166::-;3372:7;3405:1;3400;:6;;3408:12;3392:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;3392:29:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3443:1;3439;:5;3432:12;;3286:166;;;;;:::o;1076:179::-;1134:7;1154:9;1170:1;1166;:5;1154:17;;1195:1;1190;:6;;1182:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1246:1;1239:8;;;1076:179;;;;:::o

Swarm Source

ipfs://fbd60ffd98f879e3312929fae778756b7bf78d47aa489dfc736ce3ac99bb1041
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.