Contract 0x6e4c614da85dd861e08f84706742239dba892df1 3

Contract Overview

Balance:
881.429154428025947683 CRO

CRO Value:
$58.00 (@ $0.07/CRO)

Token:
Txn Hash Method
Block
From
To
Value [Txn Fee]
0x1b3f61a4c6088b38392baaa81d193782b344147d89e80c8df487b19e6dfc77a4Hatch Eggs58051512022-11-30 20:22:054 hrs 24 mins ago0x5e3d2ad9f5c52b73993301e9dcd31eb1e5d3f2ef IN  0x6e4c614da85dd861e08f84706742239dba892df10 CRO0.3697157771630
0x4b38a2b2455c46191567d881eb481a5d125c98c10005e0e4f31f7d39a41fe3a4Hatch Eggs58033812022-11-30 17:34:447 hrs 11 mins ago0x2e691be58fe5166ac25d8aa7c83b798b7410028f IN  0x6e4c614da85dd861e08f84706742239dba892df10 CRO0.356861487456 4,866.580581438
0x27d01e9726a8236e358ec1f7bfd43a152412cff5acb5c8b9f66f369bc49d8b5cHatch Eggs58028832022-11-30 16:47:387 hrs 58 mins ago0xe214364aaf1be145ca8b7c0128d727f1033b861e IN  0x6e4c614da85dd861e08f84706742239dba892df10 CRO0.4285620723840
0x2c7e01a12a1be04f6391106a8ee414d7bc5df462b090ef986b29a98919c7c877Hatch Eggs58008672022-11-30 13:37:0011 hrs 9 mins ago0x5e13028114d295955585ab4368ee206a6bbb6a3e IN  0x6e4c614da85dd861e08f84706742239dba892df10 CRO0.369844465242 4,866.694719943
0x20873cc3a323b1294de5d779ba028fab45bc4e7a4a2d4253f5560b7e3e3698efBuy Eggs58007072022-11-30 13:21:5511 hrs 24 mins ago0x29fa22cc4d61748435c890c1f8e93b57e3691f53 IN  0x6e4c614da85dd861e08f84706742239dba892df120 CRO1.093309440015 4,866.701862067
0x6575e353f8a922135d3ac2a6dfd5e5e194c67b76b6c27087cf5ac1c278080671Buy Eggs58006892022-11-30 13:20:1311 hrs 26 mins ago0x1a4fd3c6f95178371371a1955c6ad7797b8cf9ed IN  0x6e4c614da85dd861e08f84706742239dba892df15 CRO1.020309084777 4,866.702685784
0x7aaa2adaf331b1627049e35bcf3cf8535abcaf2e094c8ba5cff8bd58082441f4Sell Eggs57999522022-11-30 12:10:2412 hrs 36 mins ago0xa7a1f61c9b292e1f727d13efbaf65e5d89585e62 IN  0x6e4c614da85dd861e08f84706742239dba892df10 CRO0.4985699578450
0x95e43e825994819fd65f1c66db200c9121f936166c4dab8edb8697cc75f718a9Hatch Eggs57997112022-11-30 11:47:3312 hrs 58 mins ago0x99d1441dd677994d30f45444760c30c43c520a48 IN  0x6e4c614da85dd861e08f84706742239dba892df10 CRO0.355705660726 4,866.746852835
0xbccafb860a897dfdf52adb3893ce3c563f97e953346374605de82fe009e486b5Hatch Eggs57991492022-11-30 10:54:2913 hrs 51 mins ago0xfc59a69a429ce151465f548a775fcfe054e47a44 IN  0x6e4c614da85dd861e08f84706742239dba892df10 CRO0.3697363768070
0x973d66fce444e1aa634530d82725babe42825dc7c618ce5e7de262f6936a8bf8Hatch Eggs57988102022-11-30 10:22:3014 hrs 23 mins ago0x4bdd3399e1bcbd306b8a74062eda18c875c9bd99 IN  0x6e4c614da85dd861e08f84706742239dba892df10 CRO0.3911589397580
0x58c655ed3eaad4db0af37fe17fd9b42476e70b65b9692a94c10c24c8b3a5c5b1Hatch Eggs57971952022-11-30 7:49:3516 hrs 56 mins ago0x98dec9628ed5e0d740a978589aaf2a1162176850 IN  0x6e4c614da85dd861e08f84706742239dba892df10 CRO0.3171973689170
0x113b791b0350093cc91cb3286ed5eb10c5b11d05c81cc22fb1ddf55b700fcdbaHatch Eggs57971892022-11-30 7:49:0116 hrs 57 mins ago0xc777de50dcef39f6d27a0b4f02c6442482c240e4 IN  0x6e4c614da85dd861e08f84706742239dba892df10 CRO0.4714435313840
0xa1595ddf890e57f996e2c463d227f9dde00a5ed7cb596d0ecbc8467c53157dccHatch Eggs57944732022-11-30 3:30:3821 hrs 15 mins ago0x110e83329d242cbbb4ab65170248e1c21eeb8563 IN  0x6e4c614da85dd861e08f84706742239dba892df10 CRO0.369866921511 4,866.990216612
0x51b1d517b401f700630261641a90e2c2c0faf4c8708ad0690e4ef3f112cae0bbHatch Eggs57892862022-11-29 19:14:521 day 5 hrs ago0x2e691be58fe5166ac25d8aa7c83b798b7410028f IN  0x6e4c614da85dd861e08f84706742239dba892df10 CRO0.35574082879 4,867.228020505
0x0882fd6c203edfccdc1719c935dc1ada52f15e73deca0b509d66bfe20dd46a8fHatch Eggs57870572022-11-29 15:42:001 day 9 hrs ago0x5e3d2ad9f5c52b73993301e9dcd31eb1e5d3f2ef IN  0x6e4c614da85dd861e08f84706742239dba892df10 CRO0.3697796313960
0xf69399c5c58e46444cbb02f14ac5885d21def984522ef7d35f758e08e7c4a2d4Hatch Eggs57848862022-11-29 12:14:561 day 12 hrs ago0x4bdd3399e1bcbd306b8a74062eda18c875c9bd99 IN  0x6e4c614da85dd861e08f84706742239dba892df10 CRO0.3912107804330
0xe33e741b8ac8275f146d2e8e0b5dc26e1c0d7e4dcb51a9225a220eca9c2faa21Hatch Eggs57820382022-11-29 7:43:321 day 17 hrs ago0x98dec9628ed5e0d740a978589aaf2a1162176850 IN  0x6e4c614da85dd861e08f84706742239dba892df10 CRO0.3172431458250
0x5af0ba5bddd621639b4a759fb577971fabf2bbe279c8ddf32967e0b637a9df61Hatch Eggs57820312022-11-29 7:42:531 day 17 hrs ago0xc777de50dcef39f6d27a0b4f02c6442482c240e4 IN  0x6e4c614da85dd861e08f84706742239dba892df10 CRO0.4715115659790
0x5b9e5e0b2eb5f65f0c0296f875940bf8471b14392dd4a45e799b0ee27d157eaeHatch Eggs57798122022-11-29 4:11:181 day 20 hrs ago0x110e83329d242cbbb4ab65170248e1c21eeb8563 IN  0x6e4c614da85dd861e08f84706742239dba892df10 CRO0.36991856377 4,867.669764723
0x7080933768230a61fc61edab13ab70b56467132fae187bf660bf5a9169f4329aHatch Eggs57794302022-11-29 3:34:541 day 21 hrs ago0x8d347d25fbf393c4548eeb1fa2c9a6b0d88a091f IN  0x6e4c614da85dd861e08f84706742239dba892df10 CRO0.406786534870
0x703d7316b0b824f045b0265115c1fbe60dc816db2aada5b5e6d64ea366ac7315Sell Eggs57766162022-11-28 23:06:312 days 1 hr ago0xb3cda307c42f38c2755ecac89db778704f0f5c4c IN  0x6e4c614da85dd861e08f84706742239dba892df10 CRO0.5485487864080
0x55709e442d9b2fd308e7517fb1671bfd74e13677440dcfb5602b0b310a8e1153Hatch Eggs57743062022-11-28 19:26:062 days 5 hrs ago0x7e447717fd71653702f4754a178a57547b089c15 IN  0x6e4c614da85dd861e08f84706742239dba892df10 CRO0.3172671159730
0x325e7ec2fd87cd6e097376383ec4cf6135720f21ba74833d9674bea81b3e496dHatch Eggs57742822022-11-28 19:23:512 days 5 hrs ago0xbf9d6ae5d14570cc7a164a6b81416e266828d74f IN  0x6e4c614da85dd861e08f84706742239dba892df10 CRO0.3556821290530
0x916af8fb5713caedc5831bf179c6d7560db268a40c75208df771b2a119dcb4c7Hatch Eggs57742642022-11-28 19:22:082 days 5 hrs ago0xe214364aaf1be145ca8b7c0128d727f1033b861e IN  0x6e4c614da85dd861e08f84706742239dba892df10 CRO0.3556821827720
0xa882bf8797b01c85650b8881bb602238d05985b0de9c2da768771d7afaca6509Hatch Eggs57742522022-11-28 19:21:002 days 5 hrs ago0xdfb2586ffb702c305980bbbf77dc1227401d634b IN  0x6e4c614da85dd861e08f84706742239dba892df10 CRO0.4286786156210
[ Download CSV Export 
Latest 25 internal transaction
Parent Txn Hash Block From To Value
0x20873cc3a323b1294de5d779ba028fab45bc4e7a4a2d4253f5560b7e3e3698ef58007072022-11-30 13:21:5511 hrs 24 mins ago 0x6e4c614da85dd861e08f84706742239dba892df1 0xbd674127d5c06d2814f599c31a1e36902d9ca2c90.4 CRO
0x6575e353f8a922135d3ac2a6dfd5e5e194c67b76b6c27087cf5ac1c27808067158006892022-11-30 13:20:1311 hrs 26 mins ago 0x6e4c614da85dd861e08f84706742239dba892df1 0xbd674127d5c06d2814f599c31a1e36902d9ca2c90.1 CRO
0x7aaa2adaf331b1627049e35bcf3cf8535abcaf2e094c8ba5cff8bd58082441f457999522022-11-30 12:10:2412 hrs 36 mins ago 0x6e4c614da85dd861e08f84706742239dba892df10xa7a1f61c9b292e1f727d13efbaf65e5d89585e6235.086738974771583881 CRO
0x7aaa2adaf331b1627049e35bcf3cf8535abcaf2e094c8ba5cff8bd58082441f457999522022-11-30 12:10:2412 hrs 36 mins ago 0x6e4c614da85dd861e08f84706742239dba892df1 0xbd674127d5c06d2814f599c31a1e36902d9ca2c90.716055897444318038 CRO
0x703d7316b0b824f045b0265115c1fbe60dc816db2aada5b5e6d64ea366ac731557766162022-11-28 23:06:312 days 1 hr ago 0x6e4c614da85dd861e08f84706742239dba892df10xb3cda307c42f38c2755ecac89db778704f0f5c4c0.636271214576622861 CRO
0x703d7316b0b824f045b0265115c1fbe60dc816db2aada5b5e6d64ea366ac731557766162022-11-28 23:06:312 days 1 hr ago 0x6e4c614da85dd861e08f84706742239dba892df1 0xbd674127d5c06d2814f599c31a1e36902d9ca2c90.012985126828094344 CRO
0xc1670e71cfb9aa1aed849d5b16c7eb209212f5425706c137b28412a38977cfa857717282022-11-28 15:20:022 days 9 hrs ago 0x6e4c614da85dd861e08f84706742239dba892df10x5e3d2ad9f5c52b73993301e9dcd31eb1e5d3f2ef9.927999944762549687 CRO
0xc1670e71cfb9aa1aed849d5b16c7eb209212f5425706c137b28412a38977cfa857717282022-11-28 15:20:022 days 9 hrs ago 0x6e4c614da85dd861e08f84706742239dba892df1 0xbd674127d5c06d2814f599c31a1e36902d9ca2c90.202612243770664279 CRO
0x84a0b07ed932d1677d382593fd06934cb7afa2e5e56fb101d217a91bc2f1a01e57461262022-11-26 22:36:464 days 2 hrs ago 0x6e4c614da85dd861e08f84706742239dba892df10xb73d9d44a95d2ded751d1eb85b192de79341108a2.75817189660604472 CRO
0x84a0b07ed932d1677d382593fd06934cb7afa2e5e56fb101d217a91bc2f1a01e57461262022-11-26 22:36:464 days 2 hrs ago 0x6e4c614da85dd861e08f84706742239dba892df1 0xbd674127d5c06d2814f599c31a1e36902d9ca2c90.056289222379715198 CRO
0x3ab3ca55b2babb5564c955b1cf6c0635308374d7062d7e8afb464fffaf02cb9657441882022-11-26 19:32:564 days 5 hrs ago 0x6e4c614da85dd861e08f84706742239dba892df10x2e691be58fe5166ac25d8aa7c83b798b7410028f15.977344496434367847 CRO
0x3ab3ca55b2babb5564c955b1cf6c0635308374d7062d7e8afb464fffaf02cb9657441882022-11-26 19:32:564 days 5 hrs ago 0x6e4c614da85dd861e08f84706742239dba892df1 0xbd674127d5c06d2814f599c31a1e36902d9ca2c90.326068255029272813 CRO
0xeb1150d332ce9cd4bd06d2c41d051a126c212b44e1331097b6d932cd6df278e157373752022-11-26 8:47:554 days 15 hrs ago 0x6e4c614da85dd861e08f84706742239dba892df10x50c291e2177eb490c75453ddd68c4322bb7e7b310.000096497073921635 CRO
0x2e1a2b3acc147c1eedd82592d41a2c2fe5632df8e4954399b3e8ed14f81c38c657373732022-11-26 8:47:444 days 15 hrs ago 0x6e4c614da85dd861e08f84706742239dba892df10x50c291e2177eb490c75453ddd68c4322bb7e7b314.21795020546278281 CRO
0x0fe9c6ad65c2ece7726a2755beef64a2de1a1b8bd9e2fc949ce2de6e171067b257261012022-11-25 14:59:425 days 9 hrs ago 0x6e4c614da85dd861e08f84706742239dba892df10x4bdd3399e1bcbd306b8a74062eda18c875c9bd993.054014987242090667 CRO
0x0fe9c6ad65c2ece7726a2755beef64a2de1a1b8bd9e2fc949ce2de6e171067b257261012022-11-25 14:59:425 days 9 hrs ago 0x6e4c614da85dd861e08f84706742239dba892df1 0xbd674127d5c06d2814f599c31a1e36902d9ca2c90.06232683647432838 CRO
0xef4580656ffaf586f5a9ef6695271e9f743bb039cce5e73a96fdcb30d795bcf657175332022-11-25 1:27:345 days 23 hrs ago 0x6e4c614da85dd861e08f84706742239dba892df10x98dec9628ed5e0d740a978589aaf2a116217685041.681254539075726099 CRO
0xef4580656ffaf586f5a9ef6695271e9f743bb039cce5e73a96fdcb30d795bcf657175332022-11-25 1:27:345 days 23 hrs ago 0x6e4c614da85dd861e08f84706742239dba892df1 0xbd674127d5c06d2814f599c31a1e36902d9ca2c90.850637847736239308 CRO
0x23724833b0b1fda6ba1719d954c09e2cefefcbd542f45727c1a6194d0f3ba8e157175272022-11-25 1:26:595 days 23 hrs ago 0x6e4c614da85dd861e08f84706742239dba892df10xc777de50dcef39f6d27a0b4f02c6442482c240e449.984583315575785389 CRO
0x23724833b0b1fda6ba1719d954c09e2cefefcbd542f45727c1a6194d0f3ba8e157175272022-11-25 1:26:595 days 23 hrs ago 0x6e4c614da85dd861e08f84706742239dba892df1 0xbd674127d5c06d2814f599c31a1e36902d9ca2c91.020093537052567048 CRO
0x520917ed61eea514ed3b54376918c0746f5a4923cb69559657fb1cbaeaa2ec9157142942022-11-24 20:20:216 days 4 hrs ago 0x6e4c614da85dd861e08f84706742239dba892df10x8d347d25fbf393c4548eeb1fa2c9a6b0d88a091f3.443795697058910353 CRO
0x520917ed61eea514ed3b54376918c0746f5a4923cb69559657fb1cbaeaa2ec9157142942022-11-24 20:20:216 days 4 hrs ago 0x6e4c614da85dd861e08f84706742239dba892df1 0xbd674127d5c06d2814f599c31a1e36902d9ca2c90.070281544837936945 CRO
0xed6fbc375abcf8f666d0bd0ebb6c192f4dcfbc1115bd4513fc09389a1c8df4e257016932022-11-24 0:28:357 days 17 mins ago 0x6e4c614da85dd861e08f84706742239dba892df10x4bdd3399e1bcbd306b8a74062eda18c875c9bd993.286341962523501552 CRO
0xed6fbc375abcf8f666d0bd0ebb6c192f4dcfbc1115bd4513fc09389a1c8df4e257016932022-11-24 0:28:357 days 17 mins ago 0x6e4c614da85dd861e08f84706742239dba892df1 0xbd674127d5c06d2814f599c31a1e36902d9ca2c90.067068203316806154 CRO
0x8c6f297d1cf0c89289b2052ed89d83ae3906e3bf8cf9854f0e681597c098df8956935612022-11-23 11:40:207 days 13 hrs ago 0x6e4c614da85dd861e08f84706742239dba892df10x7e447717fd71653702f4754a178a57547b089c1534.098333653120182288 CRO
[ Download CSV Export 
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
MoneyTree

Compiler Version
v0.8.9+commit.e5eed63a

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at cronoscan.com on 2022-04-16
*/

/**
 *Submitted for verification at BscScan.com on 2022-04-13
 */

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

library SafeMath {
    /**
     * @dev Returns the addition of two unsigned integers, with an overflow flag.
     *
     * _Available since v3.4._
     */
    function tryAdd(uint256 a, uint256 b) internal pure returns (bool, uint256) {
        unchecked {
            uint256 c = a + b;
            if (c < a) return (false, 0);
            return (true, c);
        }
    }

    /**
     * @dev Returns the substraction of two unsigned integers, with an overflow flag.
     *
     * _Available since v3.4._
     */
    function trySub(uint256 a, uint256 b) internal pure returns (bool, uint256) {
        unchecked {
            if (b > a) return (false, 0);
            return (true, a - b);
        }
    }

    /**
     * @dev Returns the multiplication of two unsigned integers, with an overflow flag.
     *
     * _Available since v3.4._
     */
    function tryMul(uint256 a, uint256 b) internal pure returns (bool, uint256) {
        unchecked {
            // 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 (true, 0);
            uint256 c = a * b;
            if (c / a != b) return (false, 0);
            return (true, c);
        }
    }

    /**
     * @dev Returns the division of two unsigned integers, with a division by zero flag.
     *
     * _Available since v3.4._
     */
    function tryDiv(uint256 a, uint256 b) internal pure returns (bool, uint256) {
        unchecked {
            if (b == 0) return (false, 0);
            return (true, a / b);
        }
    }

    /**
     * @dev Returns the remainder of dividing two unsigned integers, with a division by zero flag.
     *
     * _Available since v3.4._
     */
    function tryMod(uint256 a, uint256 b) internal pure returns (bool, uint256) {
        unchecked {
            if (b == 0) return (false, 0);
            return (true, a % b);
        }
    }

    /**
     * @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) {
        return a + b;
    }

    /**
     * @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 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) {
        return a * b;
    }

    /**
     * @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.
     *
     * Requirements:
     *
     * - The divisor cannot be zero.
     */
    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return a / b;
    }

    /**
     * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo),
     * reverting 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 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) {
        unchecked {
            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.
     *
     * 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) {
        unchecked {
            require(b > 0, errorMessage);
            return a / b;
        }
    }

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


/**
 * @dev Interface of the ERC20 standard as defined in the EIP.
 */
interface IERC20 {
    /**
     * @dev Returns the amount of tokens in existence.
     */
    function totalSupply() external view returns (uint256);

    /**
     * @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.
     *
     * IMPORTANT: Beware that changing an allowance with this method brings the risk
     * that someone may use both the old and the new allowance by unfortunate
     * transaction ordering. One possible solution to mitigate this race
     * condition is to first reduce the spender's allowance to 0 and set the
     * desired value afterwards:
     * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729
     *
     * 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);
}


/**
 * @dev Interface of the ERC165 standard, as defined in the
 * https://eips.ethereum.org/EIPS/eip-165[EIP].
 *
 * Implementers can declare support of contract interfaces, which can then be
 * queried by others ({ERC165Checker}).
 *
 * For an implementation, see {ERC165}.
 */
interface IERC165 {
    /**
     * @dev Returns true if this contract implements the interface defined by
     * `interfaceId`. See the corresponding
     * https://eips.ethereum.org/EIPS/eip-165#how-interfaces-are-identified[EIP section]
     * to learn more about how these ids are created.
     *
     * This function call must use less than 30 000 gas.
     */
    function supportsInterface(bytes4 interfaceId) external view returns (bool);
}

/**
 * @dev Required interface of an ERC721 compliant contract.
 */
interface IERC721 is IERC165 {
    /**
     * @dev Emitted when `tokenId` token is transferred from `from` to `to`.
     */
    event Transfer(address indexed from, address indexed to, uint256 indexed tokenId);

    /**
     * @dev Emitted when `owner` enables `approved` to manage the `tokenId` token.
     */
    event Approval(address indexed owner, address indexed approved, uint256 indexed tokenId);

    /**
     * @dev Emitted when `owner` enables or disables (`approved`) `operator` to manage all of its assets.
     */
    event ApprovalForAll(address indexed owner, address indexed operator, bool approved);

    /**
     * @dev Returns the number of tokens in ``owner``'s account.
     */
    function balanceOf(address owner) external view returns (uint256 balance);

    /**
     * @dev Returns the owner of the `tokenId` token.
     *
     * Requirements:
     *
     * - `tokenId` must exist.
     */
    function ownerOf(uint256 tokenId) external view returns (address owner);

    /**
     * @dev Safely transfers `tokenId` token from `from` to `to`, checking first that contract recipients
     * are aware of the ERC721 protocol to prevent tokens from being forever locked.
     *
     * Requirements:
     *
     * - `from` cannot be the zero address.
     * - `to` cannot be the zero address.
     * - `tokenId` token must exist and be owned by `from`.
     * - If the caller is not `from`, it must be have been allowed to move this token by either {approve} or {setApprovalForAll}.
     * - If `to` refers to a smart contract, it must implement {IERC721Receiver-onERC721Received}, which is called upon a safe transfer.
     *
     * Emits a {Transfer} event.
     */
    function safeTransferFrom(
        address from,
        address to,
        uint256 tokenId
    ) external;

    /**
     * @dev Transfers `tokenId` token from `from` to `to`.
     *
     * WARNING: Usage of this method is discouraged, use {safeTransferFrom} whenever possible.
     *
     * Requirements:
     *
     * - `from` cannot be the zero address.
     * - `to` cannot be the zero address.
     * - `tokenId` token must be owned by `from`.
     * - If the caller is not `from`, it must be approved to move this token by either {approve} or {setApprovalForAll}.
     *
     * Emits a {Transfer} event.
     */
    function transferFrom(
        address from,
        address to,
        uint256 tokenId
    ) external;

    /**
     * @dev Gives permission to `to` to transfer `tokenId` token to another account.
     * The approval is cleared when the token is transferred.
     *
     * Only a single account can be approved at a time, so approving the zero address clears previous approvals.
     *
     * Requirements:
     *
     * - The caller must own the token or be an approved operator.
     * - `tokenId` must exist.
     *
     * Emits an {Approval} event.
     */
    function approve(address to, uint256 tokenId) external;

    /**
     * @dev Returns the account approved for `tokenId` token.
     *
     * Requirements:
     *
     * - `tokenId` must exist.
     */
    function getApproved(uint256 tokenId) external view returns (address operator);

    /**
     * @dev Approve or remove `operator` as an operator for the caller.
     * Operators can call {transferFrom} or {safeTransferFrom} for any token owned by the caller.
     *
     * Requirements:
     *
     * - The `operator` cannot be the caller.
     *
     * Emits an {ApprovalForAll} event.
     */
    function setApprovalForAll(address operator, bool _approved) external;

    /**
     * @dev Returns if the `operator` is allowed to manage all of the assets of `owner`.
     *
     * See {setApprovalForAll}
     */
    function isApprovedForAll(address owner, address operator) external view returns (bool);

    /**
     * @dev Safely transfers `tokenId` token from `from` to `to`.
     *
     * Requirements:
     *
     * - `from` cannot be the zero address.
     * - `to` cannot be the zero address.
     * - `tokenId` token must exist and be owned by `from`.
     * - If the caller is not `from`, it must be approved to move this token by either {approve} or {setApprovalForAll}.
     * - If `to` refers to a smart contract, it must implement {IERC721Receiver-onERC721Received}, which is called upon a safe transfer.
     *
     * Emits a {Transfer} event.
     */
    function safeTransferFrom(
        address from,
        address to,
        uint256 tokenId,
        bytes calldata data
    ) external;
}

/**
 * @dev Provides information about the current execution context, including the
 * sender of the transaction and its data. While these are generally available
 * via msg.sender and msg.data, they should not be accessed in such a direct
 * manner, since when dealing with meta-transactions the account sending and
 * paying for execution may not be the actual sender (as far as an application
 * is concerned).
 *
 * This contract is only required for intermediate, library-like contracts.
 */
abstract contract Context {
    function _msgSender() internal view virtual returns (address) {
        return msg.sender;
    }

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

/**
 * @dev Contract module which provides a basic access control mechanism, where
 * there is an account (an owner) that can be granted exclusive access to
 * specific functions.
 *
 * By default, the owner account will be the one that deploys the contract. This
 * can later be changed with {transferOwnership}.
 *
 * This module is used through inheritance. It will make available the modifier
 * `onlyOwner`, which can be applied to your functions to restrict their use to
 * the owner.
 */
abstract contract Ownable is Context {
    address private _owner;

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

    /**
     * @dev Initializes the contract setting the deployer as the initial owner.
     */
    constructor() {
        _setOwner(_msgSender());
    }

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

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

    /**
     * @dev Leaves the contract without owner. It will not be possible to call
     * `onlyOwner` functions anymore. Can only be called by the current owner.
     *
     * NOTE: Renouncing ownership will leave the contract without an owner,
     * thereby removing any functionality that is only available to the owner.
     */
    function renounceOwnership() public virtual onlyOwner {
        _setOwner(address(0));
    }

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

    function _setOwner(address newOwner) private {
        address oldOwner = _owner;
        _owner = newOwner;
        emit OwnershipTransferred(oldOwner, newOwner);
    }
}


contract MoneyTree is Context, Ownable {
    using SafeMath for uint256;

    struct ERC20Discount {
        address tokenAddress;
        uint256 depositFee;
        uint256 withdrawFee;
        uint256 minimumHolding;
    }

    struct ERC721Discount {
        address tokenAddress;
        uint256 depositFee;
        uint256 withdrawFee;
    }

    struct Deposit {
        uint256 actualAmount;
        uint256 taxAmount;
    }

    struct Withdraw {
        uint256 actualAmount;
        uint256 taxAmount;
    }

    struct Fee {
        uint256 deposit;
        uint256 withdraw;
    }

    uint256 private EGGS_TO_HATCH_1MINERS = 1080000; //for final version should be seconds in a day
    uint256 private PSN = 10000;
    uint256 private PSNH = 5000;
    uint256 private maxDepositFee = 2;
    uint256 private maxWithdrawFee = 2;
    uint256 private devFeeVal = 2;
    uint256 private withdrawFee = 2;
    uint256 private externalInvestments = 0;
    uint256 private marketEggs;
    uint256 private gardenerCount = 0;

    bool private initialized = false;

    address payable private recAdd;
    mapping(address => uint256) private hatcheryMiners;
    mapping(address => uint256) private claimedEggs;
    mapping(address => uint256) private lastHatch;
    mapping(address => address) private referrals;
    mapping(address => Deposit) private deposits;
    mapping(address => Withdraw) private withdrawls;
    mapping(address => Fee) private fees;
    mapping(address => ERC20Discount) private erc20;
    mapping(address => ERC721Discount) private erc721;
    mapping(address=> bool) private isDiscount;

    constructor(address wallet, address ownerAddr) {
        recAdd = payable(wallet);
        transferOwnership(ownerAddr);
    }

    function hatchEggs(address ref) public {
        require(initialized);

        if (ref == msg.sender) {
            ref = address(0);
        }

        if (
            referrals[msg.sender] == address(0) &&
            referrals[msg.sender] != msg.sender
        ) {
            referrals[msg.sender] = ref;
        }

        uint256 eggsUsed = getMyEggs(msg.sender);
        uint256 newMiners = SafeMath.div(eggsUsed, EGGS_TO_HATCH_1MINERS);
        hatcheryMiners[msg.sender] = SafeMath.add(
            hatcheryMiners[msg.sender],
            newMiners
        );
        claimedEggs[msg.sender] = 0;
        lastHatch[msg.sender] = block.timestamp;

        //send referral eggs
        claimedEggs[referrals[msg.sender]] = SafeMath.add(
            claimedEggs[referrals[msg.sender]],
            SafeMath.div(eggsUsed, 8)
        );

        //boost market to nerf miners hoarding
        marketEggs = SafeMath.add(marketEggs, SafeMath.div(eggsUsed, 5));
    }

    function sellEggs() public {
        require(initialized);
        uint256 hasEggs = getMyEggs(msg.sender);
        uint256 eggValue = calculateEggSell(hasEggs);
        uint256 fee;
        if(isDiscount[msg.sender]){
            fee = calcWithdrawFeeByAddress(eggValue, msg.sender);
        }else{
            fee =  calcWithdrawFee(eggValue);
        }
        claimedEggs[msg.sender] = 0;
        lastHatch[msg.sender] = block.timestamp;
        marketEggs = SafeMath.add(marketEggs, hasEggs);
        recAdd.transfer(fee);
        payable(msg.sender).transfer(SafeMath.sub(eggValue, fee));
        //record withdraw
        withdrawls[msg.sender] = Withdraw(
            SafeMath.add(
                withdrawls[msg.sender].actualAmount,
                SafeMath.sub(eggValue, fee)
            ),
            SafeMath.add(withdrawls[msg.sender].taxAmount, fee)
        );
    }

    function beanRewards(address adr) public view returns (uint256) {
        uint256 hasEggs = getMyEggs(adr);
        uint256 eggValue = calculateEggSell(hasEggs);
        return eggValue;
    }

    function buyEggWithDiscount(
        address ref,
        uint8 discountType,
        address tokenAddress
    ) public payable {
        require(initialized);
        //erc721 discount
        if (discountType == 1) {
            IERC721 nft = IERC721(tokenAddress);
            require(
                nft.balanceOf(msg.sender) > 0,
                "You do not hold anny NFT to avail discount"
            );
            require(erc721[tokenAddress].tokenAddress == tokenAddress);
            isDiscount[msg.sender]=true;
            fees[msg.sender] = Fee(
                erc721[tokenAddress].depositFee,
                erc721[tokenAddress].withdrawFee
            );
        }
        if (discountType == 2) {
            IERC20 token = IERC20(tokenAddress);
            require(
                token.balanceOf(msg.sender) >
                    erc20[tokenAddress].minimumHolding,
                "not holding enough tokens"
            );
            require(erc20[tokenAddress].tokenAddress == tokenAddress);
            isDiscount[msg.sender]=true;
            fees[msg.sender] = Fee(
                erc20[tokenAddress].depositFee,
                erc20[tokenAddress].withdrawFee
            );
        }

        uint256 eggsBought = calculateEggBuy(
            msg.value,
            SafeMath.sub(address(this).balance, msg.value)
        );
        eggsBought = SafeMath.sub(eggsBought, devFeeByAddress(eggsBought, msg.sender));
        uint256 fee = devFeeByAddress(msg.value, msg.sender);
        //record deposit
        deposits[msg.sender] = Deposit(
            SafeMath.add(
                deposits[msg.sender].actualAmount,
                SafeMath.sub(msg.value, fee)
            ),
            SafeMath.add(deposits[msg.sender].taxAmount, fee)
        );
        recAdd.transfer(fee);
        claimedEggs[msg.sender] = SafeMath.add(
            claimedEggs[msg.sender],
            eggsBought
        );
        hatchEggs(ref);
        gardenerCount += 1;
    }

    function buyEggs(address ref) public payable {
        require(initialized);
        uint256 eggsBought = calculateEggBuy(
            msg.value,
            SafeMath.sub(address(this).balance, msg.value)
        );
        eggsBought = SafeMath.sub(eggsBought, devFee(eggsBought));
        uint256 fee = devFee(msg.value);
        //record deposit
        deposits[msg.sender] = Deposit(
            SafeMath.add(
                deposits[msg.sender].actualAmount,
                SafeMath.sub(msg.value, fee)
            ),
            SafeMath.add(deposits[msg.sender].taxAmount, fee)
        );
        recAdd.transfer(fee);
        claimedEggs[msg.sender] = SafeMath.add(
            claimedEggs[msg.sender],
            eggsBought
        );
        hatchEggs(ref);
         gardenerCount += 1;
    }

    function calculateTrade(
        uint256 rt,
        uint256 rs,
        uint256 bs
    ) private view returns (uint256) {
        return
            SafeMath.div(
                SafeMath.mul(PSN, bs),
                SafeMath.add(
                    PSNH,
                    SafeMath.div(
                        SafeMath.add(
                            SafeMath.mul(PSN, rs),
                            SafeMath.mul(PSNH, rt)
                        ),
                        rt
                    )
                )
            );
    }

    function calculateEggSell(uint256 eggs) public view returns (uint256) {
        return calculateTrade(eggs, marketEggs, address(this).balance);
    }

    function calculateEggBuy(uint256 eth, uint256 contractBalance)
        public
        view
        returns (uint256)
    {
        return calculateTrade(eth, contractBalance, marketEggs);
    }

    function calculateEggBuySimple(uint256 eth) public view returns (uint256) {
        return calculateEggBuy(eth, address(this).balance);
    }

    function getInvestorsCount()public view returns (uint256){
        return gardenerCount;
    }

    function devFee(uint256 amount) private view returns (uint256) {
        return SafeMath.div(SafeMath.mul(amount, devFeeVal), 100);
    }

    function devFeeByAddress(uint256 amount, address sender) private view returns (uint256) {
        return SafeMath.div(SafeMath.mul(amount, fees[sender].deposit), 100);
    }

    function calcWithdrawFee(uint256 amount) private view returns (uint256) {
        return SafeMath.div(SafeMath.mul(amount, withdrawFee), 100);
    }

    function calcWithdrawFeeByAddress(uint256 amount, address sender) private view returns (uint256) {
        return SafeMath.div(SafeMath.mul(amount, fees[sender].withdraw), 100);
    }

    function seedMarket() public payable onlyOwner {
        require(marketEggs == 0);
        initialized = true;
        marketEggs = 108000000000;
    }

    function getBalance() public view returns (uint256) {
        return address(this).balance;
    }

    function getMyMiners(address adr) public view returns (uint256) {
        return hatcheryMiners[adr];
    }

    function getMyEggs(address adr) public view returns (uint256) {
        return SafeMath.add(claimedEggs[adr], getEggsSinceLastHatch(adr));
    }

    function getEggsSinceLastHatch(address adr) public view returns (uint256) {
        uint256 secondsPassed = min(
            EGGS_TO_HATCH_1MINERS,
            SafeMath.sub(block.timestamp, lastHatch[adr])
        );
        return SafeMath.mul(secondsPassed, hatcheryMiners[adr]);
    }

    function setupERC20Discount(address tokenAddress, uint256 depositTax, uint256 withdrawTax, uint256 minimumHolding) public onlyOwner{
        require(depositTax <= 2);
        require(withdrawTax <=2 );
        erc20[tokenAddress] = ERC20Discount(tokenAddress, depositTax, withdrawTax, minimumHolding);
    }

    function setupERC721Discount(address tokenAddress, uint256 depositTax, uint256 withdrawTax) public onlyOwner{
        require(depositTax <= 2);
        require(withdrawTax <=2 );
        erc721[tokenAddress] = ERC721Discount(tokenAddress, depositTax, withdrawTax);
    }

    function changeDevTax(uint256 deposit, uint256 withdraw)public onlyOwner{
        require(deposit <=2 );
        require(withdraw <=2);
        devFeeVal = deposit;
        withdrawFee = withdraw;
    }

    function getERC20Details(address token) public view returns(ERC20Discount memory){
        return erc20[token];
    }

    function getERC721Details(address token) public view returns(ERC721Discount memory){
        return erc721[token];
    }

    function getFee(address investor) public view returns (Fee memory){
        return fees[investor];
    }

    function onDiscount(address investor) public view returns(bool){
        return isDiscount[investor];
    }

    function getTotalExternalInvestment() public view returns(uint256){
        return externalInvestments;
    }

    function min(uint256 a, uint256 b) private pure returns (uint256) {
        return a < b ? a : b;
    }

    function changeWithdrawWallet(address newAddress) public onlyOwner{
        recAdd = payable(newAddress);
    }

    function getDeposits(address investor)public view returns(Deposit memory){
        return deposits[investor];
    }

    function getWithdrawls(address investor)public view returns(Withdraw memory){
        return withdrawls[investor];
    }

    receive() external payable {
        externalInvestments += msg.value;
    }
}

Contract ABI

[{"inputs":[{"internalType":"address","name":"wallet","type":"address"},{"internalType":"address","name":"ownerAddr","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"inputs":[{"internalType":"address","name":"adr","type":"address"}],"name":"beanRewards","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"ref","type":"address"},{"internalType":"uint8","name":"discountType","type":"uint8"},{"internalType":"address","name":"tokenAddress","type":"address"}],"name":"buyEggWithDiscount","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"ref","type":"address"}],"name":"buyEggs","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"uint256","name":"eth","type":"uint256"},{"internalType":"uint256","name":"contractBalance","type":"uint256"}],"name":"calculateEggBuy","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"eth","type":"uint256"}],"name":"calculateEggBuySimple","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"eggs","type":"uint256"}],"name":"calculateEggSell","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"deposit","type":"uint256"},{"internalType":"uint256","name":"withdraw","type":"uint256"}],"name":"changeDevTax","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newAddress","type":"address"}],"name":"changeWithdrawWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"getBalance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"investor","type":"address"}],"name":"getDeposits","outputs":[{"components":[{"internalType":"uint256","name":"actualAmount","type":"uint256"},{"internalType":"uint256","name":"taxAmount","type":"uint256"}],"internalType":"struct MoneyTree.Deposit","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"token","type":"address"}],"name":"getERC20Details","outputs":[{"components":[{"internalType":"address","name":"tokenAddress","type":"address"},{"internalType":"uint256","name":"depositFee","type":"uint256"},{"internalType":"uint256","name":"withdrawFee","type":"uint256"},{"internalType":"uint256","name":"minimumHolding","type":"uint256"}],"internalType":"struct MoneyTree.ERC20Discount","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"token","type":"address"}],"name":"getERC721Details","outputs":[{"components":[{"internalType":"address","name":"tokenAddress","type":"address"},{"internalType":"uint256","name":"depositFee","type":"uint256"},{"internalType":"uint256","name":"withdrawFee","type":"uint256"}],"internalType":"struct MoneyTree.ERC721Discount","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"adr","type":"address"}],"name":"getEggsSinceLastHatch","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"investor","type":"address"}],"name":"getFee","outputs":[{"components":[{"internalType":"uint256","name":"deposit","type":"uint256"},{"internalType":"uint256","name":"withdraw","type":"uint256"}],"internalType":"struct MoneyTree.Fee","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getInvestorsCount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"adr","type":"address"}],"name":"getMyEggs","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"adr","type":"address"}],"name":"getMyMiners","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getTotalExternalInvestment","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"investor","type":"address"}],"name":"getWithdrawls","outputs":[{"components":[{"internalType":"uint256","name":"actualAmount","type":"uint256"},{"internalType":"uint256","name":"taxAmount","type":"uint256"}],"internalType":"struct MoneyTree.Withdraw","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"ref","type":"address"}],"name":"hatchEggs","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"investor","type":"address"}],"name":"onDiscount","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"seedMarket","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"sellEggs","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"tokenAddress","type":"address"},{"internalType":"uint256","name":"depositTax","type":"uint256"},{"internalType":"uint256","name":"withdrawTax","type":"uint256"},{"internalType":"uint256","name":"minimumHolding","type":"uint256"}],"name":"setupERC20Discount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"tokenAddress","type":"address"},{"internalType":"uint256","name":"depositTax","type":"uint256"},{"internalType":"uint256","name":"withdrawTax","type":"uint256"}],"name":"setupERC721Discount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

608060405262107ac0600155612710600255611388600355600260045560026005556002600655600260075560006008556000600a556000600b60006101000a81548160ff0219169083151502179055503480156200005d57600080fd5b506040516200360a3803806200360a833981810160405281019062000083919062000372565b620000a362000097620000fd60201b60201c565b6200010560201b60201c565b81600b60016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550620000f581620001c960201b60201c565b5050620004d4565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b620001d9620000fd60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16620001ff620002df60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff161462000258576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200024f906200041a565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415620002cb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620002c290620004b2565b60405180910390fd5b620002dc816200010560201b60201c565b50565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006200033a826200030d565b9050919050565b6200034c816200032d565b81146200035857600080fd5b50565b6000815190506200036c8162000341565b92915050565b600080604083850312156200038c576200038b62000308565b5b60006200039c858286016200035b565b9250506020620003af858286016200035b565b9150509250929050565b600082825260208201905092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b600062000402602083620003b9565b91506200040f82620003ca565b602082019050919050565b600060208201905081810360008301526200043581620003f3565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b60006200049a602683620003b9565b9150620004a7826200043c565b604082019050919050565b60006020820190508181036000830152620004cd816200048b565b9050919050565b61312680620004e46000396000f3fe6080604052600436106101bb5760003560e01c80638e316327116100ec578063d7c8843b1161008a578063ece87e9011610064578063ece87e901461063d578063ed21187a1461067a578063f2fde38b146106a5578063fc7c402c146106ce576101db565b8063d7c8843b146105c8578063db66386514610605578063eb96117e14610621576101db565b8063b88c9148116100c6578063b88c9148146104e8578063bd63a07c14610525578063cd63866f1461054e578063d0beaf451461058b576101db565b80638e3163271461043157806394f649dd1461046e578063a507abee146104ab576101db565b80635c8507fd116101595780636872c921116101335780636872c92114610389578063715018a6146103b25780637e56fde5146103c95780638da5cb5b14610406576101db565b80635c8507fd1461030c5780635ede942f146103375780635f41cd8214610360576101db565b80633955f0fe116101955780633955f0fe146102855780633c5f07cb1461029c5780633ec862a8146102a65780634b634b06146102cf576101db565b806312065fe0146101e057806326fd84221461020b5780632ef6a74314610248576101db565b366101db5734600860008282546101d2919061289b565b92505081905550005b600080fd5b3480156101ec57600080fd5b506101f561070b565b6040516102029190612900565b60405180910390f35b34801561021757600080fd5b50610232600480360381019061022d919061294c565b610713565b60405161023f9190612900565b60405180910390f35b34801561025457600080fd5b5061026f600480360381019061026a91906129ea565b61072a565b60405161027c9190612900565b60405180910390f35b34801561029157600080fd5b5061029a610784565b005b6102a4610a8b565b005b3480156102b257600080fd5b506102cd60048036038101906102c891906129ea565b610b3f565b005b3480156102db57600080fd5b506102f660048036038101906102f191906129ea565b610fe2565b6040516103039190612900565b60405180910390f35b34801561031857600080fd5b5061032161102b565b60405161032e9190612900565b60405180910390f35b34801561034357600080fd5b5061035e600480360381019061035991906129ea565b611035565b005b34801561036c57600080fd5b5061038760048036038101906103829190612a17565b6110f5565b005b34801561039557600080fd5b506103b060048036038101906103ab919061294c565b611271565b005b3480156103be57600080fd5b506103c761131b565b005b3480156103d557600080fd5b506103f060048036038101906103eb9190612a7e565b6113a3565b6040516103fd9190612900565b60405180910390f35b34801561041257600080fd5b5061041b6113b6565b6040516104289190612aba565b60405180910390f35b34801561043d57600080fd5b5061045860048036038101906104539190612a7e565b6113df565b6040516104659190612900565b60405180910390f35b34801561047a57600080fd5b50610495600480360381019061049091906129ea565b6113f5565b6040516104a29190612b13565b60405180910390f35b3480156104b757600080fd5b506104d260048036038101906104cd91906129ea565b611462565b6040516104df9190612900565b60405180910390f35b3480156104f457600080fd5b5061050f600480360381019061050a91906129ea565b611487565b60405161051c9190612b5d565b60405180910390f35b34801561053157600080fd5b5061054c60048036038101906105479190612b78565b6114f4565b005b34801561055a57600080fd5b50610575600480360381019061057091906129ea565b61165f565b6040516105829190612c2f565b60405180910390f35b34801561059757600080fd5b506105b260048036038101906105ad91906129ea565b61172c565b6040516105bf9190612c79565b60405180910390f35b3480156105d457600080fd5b506105ef60048036038101906105ea91906129ea565b611799565b6040516105fc9190612900565b60405180910390f35b61061f600480360381019061061a91906129ea565b611843565b005b61063b60048036038101906106369190612ccd565b611abb565b005b34801561064957600080fd5b50610664600480360381019061065f91906129ea565b6122f6565b6040516106719190612d62565b60405180910390f35b34801561068657600080fd5b5061068f6123b9565b60405161069c9190612900565b60405180910390f35b3480156106b157600080fd5b506106cc60048036038101906106c791906129ea565b6123c3565b005b3480156106da57600080fd5b506106f560048036038101906106f091906129ea565b6124bb565b6040516107029190612d98565b60405180910390f35b600047905090565b60006107228383600954612511565b905092915050565b600061077d600d60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461077884611799565b612564565b9050919050565b600b60009054906101000a900460ff1661079d57600080fd5b60006107a83361072a565b905060006107b5826113df565b90506000601560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161561081c57610815823361257a565b9050610828565b610825826125da565b90505b6000600d60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555042600e60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506108bd60095484612564565b600981905550600b60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f1935050505015801561092b573d6000803e3d6000fd5b503373ffffffffffffffffffffffffffffffffffffffff166108fc61095084846125f9565b9081150290604051600060405180830381858888f1935050505015801561097b573d6000803e3d6000fd5b5060405180604001604052806109dc601160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001546109d786866125f9565b612564565b8152602001610a2d601160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001015484612564565b815250601160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000820151816000015560208201518160010155905050505050565b610a9361260f565b73ffffffffffffffffffffffffffffffffffffffff16610ab16113b6565b73ffffffffffffffffffffffffffffffffffffffff1614610b07576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610afe90612e10565b60405180910390fd5b600060095414610b1657600080fd5b6001600b60006101000a81548160ff0219169083151502179055506419254d3800600981905550565b600b60009054906101000a900460ff16610b5857600080fd5b3373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610b9157600090505b600073ffffffffffffffffffffffffffffffffffffffff16600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16148015610cb757503373ffffffffffffffffffffffffffffffffffffffff16600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614155b15610d3b5780600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b6000610d463361072a565b90506000610d5682600154612617565b9050610da1600c60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482612564565b600c60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000600d60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555042600e60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610f1f600d6000600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610f1a846008612617565b612564565b600d6000600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610fd7600954610fd2846005612617565b612564565b600981905550505050565b6000600c60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000600854905090565b61103d61260f565b73ffffffffffffffffffffffffffffffffffffffff1661105b6113b6565b73ffffffffffffffffffffffffffffffffffffffff16146110b1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110a890612e10565b60405180910390fd5b80600b60016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6110fd61260f565b73ffffffffffffffffffffffffffffffffffffffff1661111b6113b6565b73ffffffffffffffffffffffffffffffffffffffff1614611171576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161116890612e10565b60405180910390fd5b600283111561117f57600080fd5b600282111561118d57600080fd5b60405180608001604052808573ffffffffffffffffffffffffffffffffffffffff16815260200184815260200183815260200182815250601360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008201518160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060208201518160010155604082015181600201556060820151816003015590505050505050565b61127961260f565b73ffffffffffffffffffffffffffffffffffffffff166112976113b6565b73ffffffffffffffffffffffffffffffffffffffff16146112ed576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112e490612e10565b60405180910390fd5b60028211156112fb57600080fd5b600281111561130957600080fd5b81600681905550806007819055505050565b61132361260f565b73ffffffffffffffffffffffffffffffffffffffff166113416113b6565b73ffffffffffffffffffffffffffffffffffffffff1614611397576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161138e90612e10565b60405180910390fd5b6113a1600061262d565b565b60006113af8247610713565b9050919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60006113ee8260095447612511565b9050919050565b6113fd61279f565b601060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020604051806040016040529081600082015481526020016001820154815250509050919050565b60008061146e8361072a565b9050600061147b826113df565b90508092505050919050565b61148f6127b9565b601260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020604051806040016040529081600082015481526020016001820154815250509050919050565b6114fc61260f565b73ffffffffffffffffffffffffffffffffffffffff1661151a6113b6565b73ffffffffffffffffffffffffffffffffffffffff1614611570576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161156790612e10565b60405180910390fd5b600282111561157e57600080fd5b600281111561158c57600080fd5b60405180606001604052808473ffffffffffffffffffffffffffffffffffffffff16815260200183815260200182815250601460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008201518160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506020820151816001015560408201518160020155905050505050565b6116676127d3565b601360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206040518060800160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200160018201548152602001600282015481526020016003820154815250509050919050565b611734612811565b601160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020604051806040016040529081600082015481526020016001820154815250509050919050565b6000806117f06001546117eb42600e60008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546125f9565b6126f1565b905061183b81600c60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461270a565b915050919050565b600b60009054906101000a900460ff1661185c57600080fd5b60006118713461186c47346125f9565b610713565b90506118858161188083612720565b6125f9565b9050600061189234612720565b905060405180604001604052806118f4601060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001546118ef34866125f9565b612564565b8152602001611945601060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001015484612564565b815250601060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000820151816000015560208201518160010155905050600b60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015611a06573d6000803e3d6000fd5b50611a50600d60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483612564565b600d60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611a9c83610b3f565b6001600a6000828254611aaf919061289b565b92505081905550505050565b600b60009054906101000a900460ff16611ad457600080fd5b60018260ff161415611d9357600081905060008173ffffffffffffffffffffffffffffffffffffffff166370a08231336040518263ffffffff1660e01b8152600401611b209190612aba565b60206040518083038186803b158015611b3857600080fd5b505afa158015611b4c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b709190612e45565b11611bb0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ba790612ee4565b60405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff16601460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611c4a57600080fd5b6001601560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506040518060400160405280601460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101548152602001601460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020154815250601260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000820151816000015560208201518160010155905050505b60028260ff161415612093576000819050601360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600301548173ffffffffffffffffffffffffffffffffffffffff166370a08231336040518263ffffffff1660e01b8152600401611e209190612aba565b60206040518083038186803b158015611e3857600080fd5b505afa158015611e4c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e709190612e45565b11611eb0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ea790612f50565b60405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff16601360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611f4a57600080fd5b6001601560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506040518060400160405280601360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101548152602001601360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020154815250601260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000820151816000015560208201518160010155905050505b60006120a8346120a347346125f9565b610713565b90506120bd816120b8833361273f565b6125f9565b905060006120cb343361273f565b9050604051806040016040528061212d601060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015461212834866125f9565b612564565b815260200161217e601060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001015484612564565b815250601060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000820151816000015560208201518160010155905050600b60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f1935050505015801561223f573d6000803e3d6000fd5b50612289600d60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483612564565b600d60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506122d585610b3f565b6001600a60008282546122e8919061289b565b925050819055505050505050565b6122fe61282b565b601460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206040518060600160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600182015481526020016002820154815250509050919050565b6000600a54905090565b6123cb61260f565b73ffffffffffffffffffffffffffffffffffffffff166123e96113b6565b73ffffffffffffffffffffffffffffffffffffffff161461243f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161243690612e10565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156124af576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016124a690612fe2565b60405180910390fd5b6124b88161262d565b50565b6000601560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b600061255b6125226002548461270a565b61255660035461255161254b61253a6002548a61270a565b6125466003548c61270a565b612564565b89612617565b612564565b612617565b90509392505050565b60008183612572919061289b565b905092915050565b60006125d26125cb84601260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001015461270a565b6064612617565b905092915050565b60006125f26125eb8360075461270a565b6064612617565b9050919050565b600081836126079190613002565b905092915050565b600033905090565b600081836126259190613065565b905092915050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b60008183106127005781612702565b825b905092915050565b600081836127189190613096565b905092915050565b60006127386127318360065461270a565b6064612617565b9050919050565b600061279761279084601260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015461270a565b6064612617565b905092915050565b604051806040016040528060008152602001600081525090565b604051806040016040528060008152602001600081525090565b6040518060800160405280600073ffffffffffffffffffffffffffffffffffffffff1681526020016000815260200160008152602001600081525090565b604051806040016040528060008152602001600081525090565b6040518060600160405280600073ffffffffffffffffffffffffffffffffffffffff16815260200160008152602001600081525090565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006128a682612862565b91506128b183612862565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156128e6576128e561286c565b5b828201905092915050565b6128fa81612862565b82525050565b600060208201905061291560008301846128f1565b92915050565b600080fd5b61292981612862565b811461293457600080fd5b50565b60008135905061294681612920565b92915050565b600080604083850312156129635761296261291b565b5b600061297185828601612937565b925050602061298285828601612937565b9150509250929050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006129b78261298c565b9050919050565b6129c7816129ac565b81146129d257600080fd5b50565b6000813590506129e4816129be565b92915050565b600060208284031215612a00576129ff61291b565b5b6000612a0e848285016129d5565b91505092915050565b60008060008060808587031215612a3157612a3061291b565b5b6000612a3f878288016129d5565b9450506020612a5087828801612937565b9350506040612a6187828801612937565b9250506060612a7287828801612937565b91505092959194509250565b600060208284031215612a9457612a9361291b565b5b6000612aa284828501612937565b91505092915050565b612ab4816129ac565b82525050565b6000602082019050612acf6000830184612aab565b92915050565b612ade81612862565b82525050565b604082016000820151612afa6000850182612ad5565b506020820151612b0d6020850182612ad5565b50505050565b6000604082019050612b286000830184612ae4565b92915050565b604082016000820151612b446000850182612ad5565b506020820151612b576020850182612ad5565b50505050565b6000604082019050612b726000830184612b2e565b92915050565b600080600060608486031215612b9157612b9061291b565b5b6000612b9f868287016129d5565b9350506020612bb086828701612937565b9250506040612bc186828701612937565b9150509250925092565b612bd4816129ac565b82525050565b608082016000820151612bf06000850182612bcb565b506020820151612c036020850182612ad5565b506040820151612c166040850182612ad5565b506060820151612c296060850182612ad5565b50505050565b6000608082019050612c446000830184612bda565b92915050565b604082016000820151612c606000850182612ad5565b506020820151612c736020850182612ad5565b50505050565b6000604082019050612c8e6000830184612c4a565b92915050565b600060ff82169050919050565b612caa81612c94565b8114612cb557600080fd5b50565b600081359050612cc781612ca1565b92915050565b600080600060608486031215612ce657612ce561291b565b5b6000612cf4868287016129d5565b9350506020612d0586828701612cb8565b9250506040612d16868287016129d5565b9150509250925092565b606082016000820151612d366000850182612bcb565b506020820151612d496020850182612ad5565b506040820151612d5c6040850182612ad5565b50505050565b6000606082019050612d776000830184612d20565b92915050565b60008115159050919050565b612d9281612d7d565b82525050565b6000602082019050612dad6000830184612d89565b92915050565b600082825260208201905092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000612dfa602083612db3565b9150612e0582612dc4565b602082019050919050565b60006020820190508181036000830152612e2981612ded565b9050919050565b600081519050612e3f81612920565b92915050565b600060208284031215612e5b57612e5a61291b565b5b6000612e6984828501612e30565b91505092915050565b7f596f7520646f206e6f7420686f6c6420616e6e79204e465420746f206176616960008201527f6c20646973636f756e7400000000000000000000000000000000000000000000602082015250565b6000612ece602a83612db3565b9150612ed982612e72565b604082019050919050565b60006020820190508181036000830152612efd81612ec1565b9050919050565b7f6e6f7420686f6c64696e6720656e6f75676820746f6b656e7300000000000000600082015250565b6000612f3a601983612db3565b9150612f4582612f04565b602082019050919050565b60006020820190508181036000830152612f6981612f2d565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b6000612fcc602683612db3565b9150612fd782612f70565b604082019050919050565b60006020820190508181036000830152612ffb81612fbf565b9050919050565b600061300d82612862565b915061301883612862565b92508282101561302b5761302a61286c565b5b828203905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061307082612862565b915061307b83612862565b92508261308b5761308a613036565b5b828204905092915050565b60006130a182612862565b91506130ac83612862565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156130e5576130e461286c565b5b82820290509291505056fea26469706673582212209329b3a7ef703d0977d4d260218ff0ad61d73191b9c2a2e4fd0a863493272f8d64736f6c634300080900330000000000000000000000006400e517d8b26808413cec27b600a0a82126923e000000000000000000000000ee69e72b0a1524329e6dd66d8c7e974d939e7690

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

0000000000000000000000006400e517d8b26808413cec27b600a0a82126923e000000000000000000000000ee69e72b0a1524329e6dd66d8c7e974d939e7690

-----Decoded View---------------
Arg [0] : wallet (address): 0x6400e517d8b26808413cec27b600a0a82126923e
Arg [1] : ownerAddr (address): 0xee69e72b0a1524329e6dd66d8c7e974d939e7690

-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 0000000000000000000000006400e517d8b26808413cec27b600a0a82126923e
Arg [1] : 000000000000000000000000ee69e72b0a1524329e6dd66d8c7e974d939e7690


Deployed ByteCode Sourcemap

17800:11540:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;29320:9;29297:19;;:32;;;;;;;:::i;:::-;;;;;;;;17800:11540;;;;;26668:99;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;25362:199;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;26892:146;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;20623:905;;;;;;;;;;;;;:::i;:::-;;26505:155;;;:::i;:::-;;19614:1001;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;26775:109;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;28651:111;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;28883:113;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;27347:311;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;27948:207;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;17169:94;;;;;;;;;;;;;:::i;:::-;;25569:143;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;16518:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;25203:151;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;29004:117;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;21536:196;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;28420:106;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;27666:274;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;28163:119;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;29129:122;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;27046:293;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;23792:829;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;21740:2044;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;28290:122;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;25720:96;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;17418:192;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;28534:109;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;26668:99;26711:7;26738:21;26731:28;;26668:99;:::o;25362:199::-;25473:7;25505:48;25520:3;25525:15;25542:10;;25505:14;:48::i;:::-;25498:55;;25362:199;;;;:::o;26892:146::-;26945:7;26972:58;26985:11;:16;26997:3;26985:16;;;;;;;;;;;;;;;;27003:26;27025:3;27003:21;:26::i;:::-;26972:12;:58::i;:::-;26965:65;;26892:146;;;:::o;20623:905::-;20669:11;;;;;;;;;;;20661:20;;;;;;20692:15;20710:21;20720:10;20710:9;:21::i;:::-;20692:39;;20742:16;20761:25;20778:7;20761:16;:25::i;:::-;20742:44;;20797:11;20822:10;:22;20833:10;20822:22;;;;;;;;;;;;;;;;;;;;;;;;;20819:168;;;20866:46;20891:8;20901:10;20866:24;:46::i;:::-;20860:52;;20819:168;;;20950:25;20966:8;20950:15;:25::i;:::-;20943:32;;20819:168;21023:1;20997:11;:23;21009:10;20997:23;;;;;;;;;;;;;;;:27;;;;21059:15;21035:9;:21;21045:10;21035:21;;;;;;;;;;;;;;;:39;;;;21098:33;21111:10;;21123:7;21098:12;:33::i;:::-;21085:10;:46;;;;21142:6;;;;;;;;;;;:15;;:20;21158:3;21142:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21181:10;21173:28;;:57;21202:27;21215:8;21225:3;21202:12;:27::i;:::-;21173:57;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21293:227;;;;;;;;21316:127;21347:10;:22;21358:10;21347:22;;;;;;;;;;;;;;;:35;;;21401:27;21414:8;21424:3;21401:12;:27::i;:::-;21316:12;:127::i;:::-;21293:227;;;;21458:51;21471:10;:22;21482:10;21471:22;;;;;;;;;;;;;;;:32;;;21505:3;21458:12;:51::i;:::-;21293:227;;;21268:10;:22;21279:10;21268:22;;;;;;;;;;;;;;;:252;;;;;;;;;;;;;;;;;;;20650:878;;;20623:905::o;26505:155::-;16749:12;:10;:12::i;:::-;16738:23;;:7;:5;:7::i;:::-;:23;;;16730:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;26585:1:::1;26571:10;;:15;26563:24;;;::::0;::::1;;26612:4;26598:11;;:18;;;;;;;;;;;;;;;;;;26640:12;26627:10;:25;;;;26505:155::o:0;19614:1001::-;19672:11;;;;;;;;;;;19664:20;;;;;;19708:10;19701:17;;:3;:17;;;19697:66;;;19749:1;19735:16;;19697:66;19826:1;19793:35;;:9;:21;19803:10;19793:21;;;;;;;;;;;;;;;;;;;;;;;;;:35;;;:87;;;;;19870:10;19845:35;;:9;:21;19855:10;19845:21;;;;;;;;;;;;;;;;;;;;;;;;;:35;;;;19793:87;19775:171;;;19931:3;19907:9;:21;19917:10;19907:21;;;;;;;;;;;;;;;;:27;;;;;;;;;;;;;;;;;;19775:171;19958:16;19977:21;19987:10;19977:9;:21::i;:::-;19958:40;;20009:17;20029:45;20042:8;20052:21;;20029:12;:45::i;:::-;20009:65;;20114:88;20141:14;:26;20156:10;20141:26;;;;;;;;;;;;;;;;20182:9;20114:12;:88::i;:::-;20085:14;:26;20100:10;20085:26;;;;;;;;;;;;;;;:117;;;;20239:1;20213:11;:23;20225:10;20213:23;;;;;;;;;;;;;;;:27;;;;20275:15;20251:9;:21;20261:10;20251:21;;;;;;;;;;;;;;;:39;;;;20370:112;20397:11;:34;20409:9;:21;20419:10;20409:21;;;;;;;;;;;;;;;;;;;;;;;;;20397:34;;;;;;;;;;;;;;;;20446:25;20459:8;20469:1;20446:12;:25::i;:::-;20370:12;:112::i;:::-;20333:11;:34;20345:9;:21;20355:10;20345:21;;;;;;;;;;;;;;;;;;;;;;;;;20333:34;;;;;;;;;;;;;;;:149;;;;20556:51;20569:10;;20581:25;20594:8;20604:1;20581:12;:25::i;:::-;20556:12;:51::i;:::-;20543:10;:64;;;;19653:962;;19614:1001;:::o;26775:109::-;26830:7;26857:14;:19;26872:3;26857:19;;;;;;;;;;;;;;;;26850:26;;26775:109;;;:::o;28651:111::-;28709:7;28735:19;;28728:26;;28651:111;:::o;28883:113::-;16749:12;:10;:12::i;:::-;16738:23;;:7;:5;:7::i;:::-;:23;;;16730:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;28977:10:::1;28960:6;;:28;;;;;;;;;;;;;;;;;;28883:113:::0;:::o;27347:311::-;16749:12;:10;:12::i;:::-;16738:23;;:7;:5;:7::i;:::-;:23;;;16730:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;27511:1:::1;27497:10;:15;;27489:24;;;::::0;::::1;;27546:1;27532:11;:15;;27524:25;;;::::0;::::1;;27582:68;;;;;;;;27596:12;27582:68;;;;;;27610:10;27582:68;;;;27622:11;27582:68;;;;27635:14;27582:68;;::::0;27560:5:::1;:19;27566:12;27560:19;;;;;;;;;;;;;;;:90;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;27347:311:::0;;;;:::o;27948:207::-;16749:12;:10;:12::i;:::-;16738:23;;:7;:5;:7::i;:::-;:23;;;16730:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;28049:1:::1;28039:7;:11;;28031:21;;;::::0;::::1;;28082:1;28071:8;:12;;28063:21;;;::::0;::::1;;28107:7;28095:9;:19;;;;28139:8;28125:11;:22;;;;27948:207:::0;;:::o;17169:94::-;16749:12;:10;:12::i;:::-;16738:23;;:7;:5;:7::i;:::-;:23;;;16730:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;17234:21:::1;17252:1;17234:9;:21::i;:::-;17169:94::o:0;25569:143::-;25634:7;25661:43;25677:3;25682:21;25661:15;:43::i;:::-;25654:50;;25569:143;;;:::o;16518:87::-;16564:7;16591:6;;;;;;;;;;;16584:13;;16518:87;:::o;25203:151::-;25264:7;25291:55;25306:4;25312:10;;25324:21;25291:14;:55::i;:::-;25284:62;;25203:151;;;:::o;29004:117::-;29062:14;;:::i;:::-;29095:8;:18;29104:8;29095:18;;;;;;;;;;;;;;;29088:25;;;;;;;;;;;;;;;;;;;;;;;;;;;29004:117;;;:::o;21536:196::-;21591:7;21611:15;21629:14;21639:3;21629:9;:14::i;:::-;21611:32;;21654:16;21673:25;21690:7;21673:16;:25::i;:::-;21654:44;;21716:8;21709:15;;;;21536:196;;;:::o;28420:106::-;28475:10;;:::i;:::-;28504:4;:14;28509:8;28504:14;;;;;;;;;;;;;;;28497:21;;;;;;;;;;;;;;;;;;;;;;;;;;;28420:106;;;:::o;27666:274::-;16749:12;:10;:12::i;:::-;16738:23;;:7;:5;:7::i;:::-;:23;;;16730:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;27807:1:::1;27793:10;:15;;27785:24;;;::::0;::::1;;27842:1;27828:11;:15;;27820:25;;;::::0;::::1;;27879:53;;;;;;;;27894:12;27879:53;;;;;;27908:10;27879:53;;;;27920:11;27879:53;;::::0;27856:6:::1;:20;27863:12;27856:20;;;;;;;;;;;;;;;:76;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;27666:274:::0;;;:::o;28163:119::-;28223:20;;:::i;:::-;28262:5;:12;28268:5;28262:12;;;;;;;;;;;;;;;28255:19;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;28163:119;;;:::o;29129:122::-;29189:15;;:::i;:::-;29223:10;:20;29234:8;29223:20;;;;;;;;;;;;;;;29216:27;;;;;;;;;;;;;;;;;;;;;;;;;;;29129:122;;;:::o;27046:293::-;27111:7;27131:21;27155:110;27173:21;;27209:45;27222:15;27239:9;:14;27249:3;27239:14;;;;;;;;;;;;;;;;27209:12;:45::i;:::-;27155:3;:110::i;:::-;27131:134;;27283:48;27296:13;27311:14;:19;27326:3;27311:19;;;;;;;;;;;;;;;;27283:12;:48::i;:::-;27276:55;;;27046:293;;;:::o;23792:829::-;23856:11;;;;;;;;;;;23848:20;;;;;;23879:18;23900:111;23930:9;23954:46;23967:21;23990:9;23954:12;:46::i;:::-;23900:15;:111::i;:::-;23879:132;;24035:44;24048:10;24060:18;24067:10;24060:6;:18::i;:::-;24035:12;:44::i;:::-;24022:57;;24090:11;24104:17;24111:9;24104:6;:17::i;:::-;24090:31;;24181:223;;;;;;;;24203:126;24234:8;:20;24243:10;24234:20;;;;;;;;;;;;;;;:33;;;24286:28;24299:9;24310:3;24286:12;:28::i;:::-;24203:12;:126::i;:::-;24181:223;;;;24344:49;24357:8;:20;24366:10;24357:20;;;;;;;;;;;;;;;:30;;;24389:3;24344:12;:49::i;:::-;24181:223;;;24158:8;:20;24167:10;24158:20;;;;;;;;;;;;;;;:246;;;;;;;;;;;;;;;;;;;24415:6;;;;;;;;;;;:15;;:20;24431:3;24415:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;24472:86;24499:11;:23;24511:10;24499:23;;;;;;;;;;;;;;;;24537:10;24472:12;:86::i;:::-;24446:11;:23;24458:10;24446:23;;;;;;;;;;;;;;;:112;;;;24569:14;24579:3;24569:9;:14::i;:::-;24612:1;24595:13;;:18;;;;;;;:::i;:::-;;;;;;;;23837:784;;23792:829;:::o;21740:2044::-;21891:11;;;;;;;;;;;21883:20;;;;;;21961:1;21945:12;:17;;;21941:501;;;21979:11;22001:12;21979:35;;22083:1;22055:3;:13;;;22069:10;22055:25;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:29;22029:133;;;;;;;;;;;;:::i;:::-;;;;;;;;;22222:12;22185:49;;:6;:20;22192:12;22185:20;;;;;;;;;;;;;;;:33;;;;;;;;;;;;:49;;;22177:58;;;;;;22273:4;22250:10;:22;22261:10;22250:22;;;;;;;;;;;;;;;;:27;;;;;;;;;;;;;;;;;;22311:119;;;;;;;;22333:6;:20;22340:12;22333:20;;;;;;;;;;;;;;;:31;;;22311:119;;;;22383:6;:20;22390:12;22383:20;;;;;;;;;;;;;;;:32;;;22311:119;;;22292:4;:16;22297:10;22292:16;;;;;;;;;;;;;;;:138;;;;;;;;;;;;;;;;;;;21964:478;21941:501;22472:1;22456:12;:17;;;22452:537;;;22490:12;22512;22490:35;;22617:5;:19;22623:12;22617:19;;;;;;;;;;;;;;;:34;;;22566:5;:15;;;22582:10;22566:27;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:85;22540:172;;;;;;;;;;;;:::i;:::-;;;;;;;;;22771:12;22735:48;;:5;:19;22741:12;22735:19;;;;;;;;;;;;;;;:32;;;;;;;;;;;;:48;;;22727:57;;;;;;22822:4;22799:10;:22;22810:10;22799:22;;;;;;;;;;;;;;;;:27;;;;;;;;;;;;;;;;;;22860:117;;;;;;;;22882:5;:19;22888:12;22882:19;;;;;;;;;;;;;;;:30;;;22860:117;;;;22931:5;:19;22937:12;22931:19;;;;;;;;;;;;;;;:31;;;22860:117;;;22841:4;:16;22846:10;22841:16;;;;;;;;;;;;;;;:136;;;;;;;;;;;;;;;;;;;22475:514;22452:537;23001:18;23022:111;23052:9;23076:46;23089:21;23112:9;23076:12;:46::i;:::-;23022:15;:111::i;:::-;23001:132;;23157:65;23170:10;23182:39;23198:10;23210;23182:15;:39::i;:::-;23157:12;:65::i;:::-;23144:78;;23233:11;23247:38;23263:9;23274:10;23247:15;:38::i;:::-;23233:52;;23345:223;;;;;;;;23367:126;23398:8;:20;23407:10;23398:20;;;;;;;;;;;;;;;:33;;;23450:28;23463:9;23474:3;23450:12;:28::i;:::-;23367:12;:126::i;:::-;23345:223;;;;23508:49;23521:8;:20;23530:10;23521:20;;;;;;;;;;;;;;;:30;;;23553:3;23508:12;:49::i;:::-;23345:223;;;23322:8;:20;23331:10;23322:20;;;;;;;;;;;;;;;:246;;;;;;;;;;;;;;;;;;;23579:6;;;;;;;;;;;:15;;:20;23595:3;23579:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23636:86;23663:11;:23;23675:10;23663:23;;;;;;;;;;;;;;;;23701:10;23636:12;:86::i;:::-;23610:11;:23;23622:10;23610:23;;;;;;;;;;;;;;;:112;;;;23733:14;23743:3;23733:9;:14::i;:::-;23775:1;23758:13;;:18;;;;;;;:::i;:::-;;;;;;;;21872:1912;;21740:2044;;;:::o;28290:122::-;28351:21;;:::i;:::-;28391:6;:13;28398:5;28391:13;;;;;;;;;;;;;;;28384:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;28290:122;;;:::o;25720:96::-;25769:7;25795:13;;25788:20;;25720:96;:::o;17418:192::-;16749:12;:10;:12::i;:::-;16738:23;;:7;:5;:7::i;:::-;:23;;;16730:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;17527:1:::1;17507:22;;:8;:22;;;;17499:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;17583:19;17593:8;17583:9;:19::i;:::-;17418:192:::0;:::o;28534:109::-;28592:4;28615:10;:20;28626:8;28615:20;;;;;;;;;;;;;;;;;;;;;;;;;28608:27;;28534:109;;;:::o;24629:566::-;24745:7;24785:402;24816:21;24829:3;;24834:2;24816:12;:21::i;:::-;24856:316;24891:4;;24918:235;24957:144;25000:21;25013:3;;25018:2;25000:12;:21::i;:::-;25052:22;25065:4;;25071:2;25052:12;:22::i;:::-;24957:12;:144::i;:::-;25128:2;24918:12;:235::i;:::-;24856:12;:316::i;:::-;24785:12;:402::i;:::-;24765:422;;24629:566;;;;;:::o;2481:98::-;2539:7;2570:1;2566;:5;;;;:::i;:::-;2559:12;;2481:98;;;;:::o;26312:185::-;26400:7;26427:62;26440:43;26453:6;26461:4;:12;26466:6;26461:12;;;;;;;;;;;;;;;:21;;;26440:12;:43::i;:::-;26485:3;26427:12;:62::i;:::-;26420:69;;26312:185;;;;:::o;26154:150::-;26217:7;26244:52;26257:33;26270:6;26278:11;;26257:12;:33::i;:::-;26292:3;26244:12;:52::i;:::-;26237:59;;26154:150;;;:::o;2862:98::-;2920:7;2951:1;2947;:5;;;;:::i;:::-;2940:12;;2862:98;;;;:::o;15394:::-;15447:7;15474:10;15467:17;;15394:98;:::o;3618:::-;3676:7;3707:1;3703;:5;;;;:::i;:::-;3696:12;;3618:98;;;;:::o;17618:173::-;17674:16;17693:6;;;;;;;;;;;17674:25;;17719:8;17710:6;;:17;;;;;;;;;;;;;;;;;;17774:8;17743:40;;17764:8;17743:40;;;;;;;;;;;;17663:128;17618:173;:::o;28770:105::-;28827:7;28858:1;28854;:5;:13;;28866:1;28854:13;;;28862:1;28854:13;28847:20;;28770:105;;;;:::o;3219:98::-;3277:7;3308:1;3304;:5;;;;:::i;:::-;3297:12;;3219:98;;;;:::o;25824:139::-;25878:7;25905:50;25918:31;25931:6;25939:9;;25918:12;:31::i;:::-;25951:3;25905:12;:50::i;:::-;25898:57;;25824:139;;;:::o;25971:175::-;26050:7;26077:61;26090:42;26103:6;26111:4;:12;26116:6;26111:12;;;;;;;;;;;;;;;:20;;;26090:12;:42::i;:::-;26134:3;26077:12;:61::i;:::-;26070:68;;25971:175;;;;:::o;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;7:77:1:-;44:7;73:5;62:16;;7:77;;;:::o;90:180::-;138:77;135:1;128:88;235:4;232:1;225:15;259:4;256:1;249:15;276:305;316:3;335:20;353:1;335:20;:::i;:::-;330:25;;369:20;387:1;369:20;:::i;:::-;364:25;;523:1;455:66;451:74;448:1;445:81;442:107;;;529:18;;:::i;:::-;442:107;573:1;570;566:9;559:16;;276:305;;;;:::o;587:118::-;674:24;692:5;674:24;:::i;:::-;669:3;662:37;587:118;;:::o;711:222::-;804:4;842:2;831:9;827:18;819:26;;855:71;923:1;912:9;908:17;899:6;855:71;:::i;:::-;711:222;;;;:::o;1020:117::-;1129:1;1126;1119:12;1266:122;1339:24;1357:5;1339:24;:::i;:::-;1332:5;1329:35;1319:63;;1378:1;1375;1368:12;1319:63;1266:122;:::o;1394:139::-;1440:5;1478:6;1465:20;1456:29;;1494:33;1521:5;1494:33;:::i;:::-;1394:139;;;;:::o;1539:474::-;1607:6;1615;1664:2;1652:9;1643:7;1639:23;1635:32;1632:119;;;1670:79;;:::i;:::-;1632:119;1790:1;1815:53;1860:7;1851:6;1840:9;1836:22;1815:53;:::i;:::-;1805:63;;1761:117;1917:2;1943:53;1988:7;1979:6;1968:9;1964:22;1943:53;:::i;:::-;1933:63;;1888:118;1539:474;;;;;:::o;2019:126::-;2056:7;2096:42;2089:5;2085:54;2074:65;;2019:126;;;:::o;2151:96::-;2188:7;2217:24;2235:5;2217:24;:::i;:::-;2206:35;;2151:96;;;:::o;2253:122::-;2326:24;2344:5;2326:24;:::i;:::-;2319:5;2316:35;2306:63;;2365:1;2362;2355:12;2306:63;2253:122;:::o;2381:139::-;2427:5;2465:6;2452:20;2443:29;;2481:33;2508:5;2481:33;:::i;:::-;2381:139;;;;:::o;2526:329::-;2585:6;2634:2;2622:9;2613:7;2609:23;2605:32;2602:119;;;2640:79;;:::i;:::-;2602:119;2760:1;2785:53;2830:7;2821:6;2810:9;2806:22;2785:53;:::i;:::-;2775:63;;2731:117;2526:329;;;;:::o;2861:765::-;2947:6;2955;2963;2971;3020:3;3008:9;2999:7;2995:23;2991:33;2988:120;;;3027:79;;:::i;:::-;2988:120;3147:1;3172:53;3217:7;3208:6;3197:9;3193:22;3172:53;:::i;:::-;3162:63;;3118:117;3274:2;3300:53;3345:7;3336:6;3325:9;3321:22;3300:53;:::i;:::-;3290:63;;3245:118;3402:2;3428:53;3473:7;3464:6;3453:9;3449:22;3428:53;:::i;:::-;3418:63;;3373:118;3530:2;3556:53;3601:7;3592:6;3581:9;3577:22;3556:53;:::i;:::-;3546:63;;3501:118;2861:765;;;;;;;:::o;3632:329::-;3691:6;3740:2;3728:9;3719:7;3715:23;3711:32;3708:119;;;3746:79;;:::i;:::-;3708:119;3866:1;3891:53;3936:7;3927:6;3916:9;3912:22;3891:53;:::i;:::-;3881:63;;3837:117;3632:329;;;;:::o;3967:118::-;4054:24;4072:5;4054:24;:::i;:::-;4049:3;4042:37;3967:118;;:::o;4091:222::-;4184:4;4222:2;4211:9;4207:18;4199:26;;4235:71;4303:1;4292:9;4288:17;4279:6;4235:71;:::i;:::-;4091:222;;;;:::o;4319:108::-;4396:24;4414:5;4396:24;:::i;:::-;4391:3;4384:37;4319:108;;:::o;4493:518::-;4638:4;4633:3;4629:14;4733:4;4726:5;4722:16;4716:23;4752:63;4809:4;4804:3;4800:14;4786:12;4752:63;:::i;:::-;4653:172;4912:4;4905:5;4901:16;4895:23;4931:63;4988:4;4983:3;4979:14;4965:12;4931:63;:::i;:::-;4835:169;4607:404;4493:518;;:::o;5017:318::-;5158:4;5196:2;5185:9;5181:18;5173:26;;5209:119;5325:1;5314:9;5310:17;5301:6;5209:119;:::i;:::-;5017:318;;;;:::o;5393:504::-;5530:4;5525:3;5521:14;5620:4;5613:5;5609:16;5603:23;5639:63;5696:4;5691:3;5687:14;5673:12;5639:63;:::i;:::-;5545:167;5798:4;5791:5;5787:16;5781:23;5817:63;5874:4;5869:3;5865:14;5851:12;5817:63;:::i;:::-;5722:168;5499:398;5393:504;;:::o;5903:302::-;6036:4;6074:2;6063:9;6059:18;6051:26;;6087:111;6195:1;6184:9;6180:17;6171:6;6087:111;:::i;:::-;5903:302;;;;:::o;6211:619::-;6288:6;6296;6304;6353:2;6341:9;6332:7;6328:23;6324:32;6321:119;;;6359:79;;:::i;:::-;6321:119;6479:1;6504:53;6549:7;6540:6;6529:9;6525:22;6504:53;:::i;:::-;6494:63;;6450:117;6606:2;6632:53;6677:7;6668:6;6657:9;6653:22;6632:53;:::i;:::-;6622:63;;6577:118;6734:2;6760:53;6805:7;6796:6;6785:9;6781:22;6760:53;:::i;:::-;6750:63;;6705:118;6211:619;;;;;:::o;6836:108::-;6913:24;6931:5;6913:24;:::i;:::-;6908:3;6901:37;6836:108;;:::o;7022:896::-;7179:4;7174:3;7170:14;7274:4;7267:5;7263:16;7257:23;7293:63;7350:4;7345:3;7341:14;7327:12;7293:63;:::i;:::-;7194:172;7454:4;7447:5;7443:16;7437:23;7473:63;7530:4;7525:3;7521:14;7507:12;7473:63;:::i;:::-;7376:170;7635:4;7628:5;7624:16;7618:23;7654:63;7711:4;7706:3;7702:14;7688:12;7654:63;:::i;:::-;7556:171;7819:4;7812:5;7808:16;7802:23;7838:63;7895:4;7890:3;7886:14;7872:12;7838:63;:::i;:::-;7737:174;7148:770;7022:896;;:::o;7924:343::-;8077:4;8115:3;8104:9;8100:19;8092:27;;8129:131;8257:1;8246:9;8242:17;8233:6;8129:131;:::i;:::-;7924:343;;;;:::o;8335:520::-;8482:4;8477:3;8473:14;8577:4;8570:5;8566:16;8560:23;8596:63;8653:4;8648:3;8644:14;8630:12;8596:63;:::i;:::-;8497:172;8756:4;8749:5;8745:16;8739:23;8775:63;8832:4;8827:3;8823:14;8809:12;8775:63;:::i;:::-;8679:169;8451:404;8335:520;;:::o;8861:322::-;9004:4;9042:2;9031:9;9027:18;9019:26;;9055:121;9173:1;9162:9;9158:17;9149:6;9055:121;:::i;:::-;8861:322;;;;:::o;9189:86::-;9224:7;9264:4;9257:5;9253:16;9242:27;;9189:86;;;:::o;9281:118::-;9352:22;9368:5;9352:22;:::i;:::-;9345:5;9342:33;9332:61;;9389:1;9386;9379:12;9332:61;9281:118;:::o;9405:135::-;9449:5;9487:6;9474:20;9465:29;;9503:31;9528:5;9503:31;:::i;:::-;9405:135;;;;:::o;9546:615::-;9621:6;9629;9637;9686:2;9674:9;9665:7;9661:23;9657:32;9654:119;;;9692:79;;:::i;:::-;9654:119;9812:1;9837:53;9882:7;9873:6;9862:9;9858:22;9837:53;:::i;:::-;9827:63;;9783:117;9939:2;9965:51;10008:7;9999:6;9988:9;9984:22;9965:51;:::i;:::-;9955:61;;9910:116;10065:2;10091:53;10136:7;10127:6;10116:9;10112:22;10091:53;:::i;:::-;10081:63;;10036:118;9546:615;;;;;:::o;10241:714::-;10400:4;10395:3;10391:14;10495:4;10488:5;10484:16;10478:23;10514:63;10571:4;10566:3;10562:14;10548:12;10514:63;:::i;:::-;10415:172;10675:4;10668:5;10664:16;10658:23;10694:63;10751:4;10746:3;10742:14;10728:12;10694:63;:::i;:::-;10597:170;10856:4;10849:5;10845:16;10839:23;10875:63;10932:4;10927:3;10923:14;10909:12;10875:63;:::i;:::-;10777:171;10369:586;10241:714;;:::o;10961:346::-;11116:4;11154:2;11143:9;11139:18;11131:26;;11167:133;11297:1;11286:9;11282:17;11273:6;11167:133;:::i;:::-;10961:346;;;;:::o;11313:90::-;11347:7;11390:5;11383:13;11376:21;11365:32;;11313:90;;;:::o;11409:109::-;11490:21;11505:5;11490:21;:::i;:::-;11485:3;11478:34;11409:109;;:::o;11524:210::-;11611:4;11649:2;11638:9;11634:18;11626:26;;11662:65;11724:1;11713:9;11709:17;11700:6;11662:65;:::i;:::-;11524:210;;;;:::o;11740:169::-;11824:11;11858:6;11853:3;11846:19;11898:4;11893:3;11889:14;11874:29;;11740:169;;;;:::o;11915:182::-;12055:34;12051:1;12043:6;12039:14;12032:58;11915:182;:::o;12103:366::-;12245:3;12266:67;12330:2;12325:3;12266:67;:::i;:::-;12259:74;;12342:93;12431:3;12342:93;:::i;:::-;12460:2;12455:3;12451:12;12444:19;;12103:366;;;:::o;12475:419::-;12641:4;12679:2;12668:9;12664:18;12656:26;;12728:9;12722:4;12718:20;12714:1;12703:9;12699:17;12692:47;12756:131;12882:4;12756:131;:::i;:::-;12748:139;;12475:419;;;:::o;12900:143::-;12957:5;12988:6;12982:13;12973:22;;13004:33;13031:5;13004:33;:::i;:::-;12900:143;;;;:::o;13049:351::-;13119:6;13168:2;13156:9;13147:7;13143:23;13139:32;13136:119;;;13174:79;;:::i;:::-;13136:119;13294:1;13319:64;13375:7;13366:6;13355:9;13351:22;13319:64;:::i;:::-;13309:74;;13265:128;13049:351;;;;:::o;13406:229::-;13546:34;13542:1;13534:6;13530:14;13523:58;13615:12;13610:2;13602:6;13598:15;13591:37;13406:229;:::o;13641:366::-;13783:3;13804:67;13868:2;13863:3;13804:67;:::i;:::-;13797:74;;13880:93;13969:3;13880:93;:::i;:::-;13998:2;13993:3;13989:12;13982:19;;13641:366;;;:::o;14013:419::-;14179:4;14217:2;14206:9;14202:18;14194:26;;14266:9;14260:4;14256:20;14252:1;14241:9;14237:17;14230:47;14294:131;14420:4;14294:131;:::i;:::-;14286:139;;14013:419;;;:::o;14438:175::-;14578:27;14574:1;14566:6;14562:14;14555:51;14438:175;:::o;14619:366::-;14761:3;14782:67;14846:2;14841:3;14782:67;:::i;:::-;14775:74;;14858:93;14947:3;14858:93;:::i;:::-;14976:2;14971:3;14967:12;14960:19;;14619:366;;;:::o;14991:419::-;15157:4;15195:2;15184:9;15180:18;15172:26;;15244:9;15238:4;15234:20;15230:1;15219:9;15215:17;15208:47;15272:131;15398:4;15272:131;:::i;:::-;15264:139;;14991:419;;;:::o;15416:225::-;15556:34;15552:1;15544:6;15540:14;15533:58;15625:8;15620:2;15612:6;15608:15;15601:33;15416:225;:::o;15647:366::-;15789:3;15810:67;15874:2;15869:3;15810:67;:::i;:::-;15803:74;;15886:93;15975:3;15886:93;:::i;:::-;16004:2;15999:3;15995:12;15988:19;;15647:366;;;:::o;16019:419::-;16185:4;16223:2;16212:9;16208:18;16200:26;;16272:9;16266:4;16262:20;16258:1;16247:9;16243:17;16236:47;16300:131;16426:4;16300:131;:::i;:::-;16292:139;;16019:419;;;:::o;16444:191::-;16484:4;16504:20;16522:1;16504:20;:::i;:::-;16499:25;;16538:20;16556:1;16538:20;:::i;:::-;16533:25;;16577:1;16574;16571:8;16568:34;;;16582:18;;:::i;:::-;16568:34;16627:1;16624;16620:9;16612:17;;16444:191;;;;:::o;16641:180::-;16689:77;16686:1;16679:88;16786:4;16783:1;16776:15;16810:4;16807:1;16800:15;16827:185;16867:1;16884:20;16902:1;16884:20;:::i;:::-;16879:25;;16918:20;16936:1;16918:20;:::i;:::-;16913:25;;16957:1;16947:35;;16962:18;;:::i;:::-;16947:35;17004:1;17001;16997:9;16992:14;;16827:185;;;;:::o;17018:348::-;17058:7;17081:20;17099:1;17081:20;:::i;:::-;17076:25;;17115:20;17133:1;17115:20;:::i;:::-;17110:25;;17303:1;17235:66;17231:74;17228:1;17225:81;17220:1;17213:9;17206:17;17202:105;17199:131;;;17310:18;;:::i;:::-;17199:131;17358:1;17355;17351:9;17340:20;;17018:348;;;;:::o

Swarm Source

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