Contract 0x06fa82bb659d423d7a75a97d94833d263ce02e87 2

 
 
Txn Hash
Method
Block
From
To
Value [Txn Fee]
0x5d36440d419b2c31c37d2d79da1cfe755f0341988e6eb5c00626f5ee8d19fa65Sell Farmers398562092023-03-01 21:40:1897 days 31 mins ago0x7693d03e66c6611d1a9324499ce5f9f442e4a0b8 IN  0x06fa82bb659d423d7a75a97d94833d263ce02e870 MATIC0.00995504499
0x793c89218a56d33cc090d0bdf2a7c7a89f9bbeeafa22ac0960a7077efbd8bbb6Sell Farmers395666562023-02-21 23:41:42104 days 22 hrs ago0x7693d03e66c6611d1a9324499ce5f9f442e4a0b8 IN  0x06fa82bb659d423d7a75a97d94833d263ce02e870 MATIC0.00905004 90
0xc8ce4aec569841f97e0f8d50393048ab60f52c394efe32d546378e03b2d5cf5aHarvest Farmers391812642023-02-11 18:09:24115 days 4 hrs ago0x7693d03e66c6611d1a9324499ce5f9f442e4a0b8 IN  0x06fa82bb659d423d7a75a97d94833d263ce02e870 MATIC0.25691654791 5,915.919404769
0x01e3ccd18d80173329498ede4bff7effe0301b5cb199afa44ef872f536956f3bHarvest Farmers391812642023-02-11 18:09:24115 days 4 hrs ago0x7693d03e66c6611d1a9324499ce5f9f442e4a0b8 IN  0x06fa82bb659d423d7a75a97d94833d263ce02e870 MATIC0.010239626282 187.442818389
0x1fa243e9f261e16521b2cf115ea5b561016157e27561a49261e84c66afadf947Harvest Farmers390725622023-02-08 21:54:08118 days 17 mins ago0x7693d03e66c6611d1a9324499ce5f9f442e4a0b8 IN  0x06fa82bb659d423d7a75a97d94833d263ce02e870 MATIC0.006251395382 114.435735937
0x4f5c24f668c7bfce6b332a3dfbe5604a856f3da718c6fc677fe66d5d6de599c4Harvest Farmers389961222023-02-06 23:37:15119 days 22 hrs ago0x7693d03e66c6611d1a9324499ce5f9f442e4a0b8 IN  0x06fa82bb659d423d7a75a97d94833d263ce02e870 MATIC0.00491652 90
0xd70ddd1f97ece22c46cde475517eb4c4fc531ba676bd572b329c2a966a482cb1Sell Farmers389524602023-02-05 20:17:20121 days 1 hr ago0x7693d03e66c6611d1a9324499ce5f9f442e4a0b8 IN  0x06fa82bb659d423d7a75a97d94833d263ce02e870 MATIC0.00905004 90
0x0ed1f9ae1e4c6f2ceabe79d19e015627eea6f4044760185a144d60aec5bf45d2Harvest Farmers389109402023-02-04 18:59:07122 days 3 hrs ago0x7693d03e66c6611d1a9324499ce5f9f442e4a0b8 IN  0x06fa82bb659d423d7a75a97d94833d263ce02e870 MATIC0.00491652 90
0xb3c88dcc2e77f633f4f232c54849f1a33108096e35d556d82c143572bea393e3Harvest Farmers388404832023-02-02 23:24:15123 days 22 hrs ago0x7693d03e66c6611d1a9324499ce5f9f442e4a0b8 IN  0x06fa82bb659d423d7a75a97d94833d263ce02e870 MATIC0.00491652 90
0x1418b1556bedba877aaf004ddf2a2577f3322bc338a120687cdbd3bbe431a4e2Harvest Farmers387945902023-02-01 19:27:28125 days 2 hrs ago0x7693d03e66c6611d1a9324499ce5f9f442e4a0b8 IN  0x06fa82bb659d423d7a75a97d94833d263ce02e870 MATIC0.00491652 90
0x61c55f4729e14d42d853be8f599317225dd7b6824a21685284252ec049a17ab3Harvest Farmers387613992023-01-31 23:15:18125 days 22 hrs ago0x7693d03e66c6611d1a9324499ce5f9f442e4a0b8 IN  0x06fa82bb659d423d7a75a97d94833d263ce02e870 MATIC0.00491652 90
0x55c07b6c08a30014d663069ece26a96ea723569d6f12d2e93e2dae3dee07bebaHarvest Farmers387171722023-01-30 20:30:21127 days 1 hr ago0x7693d03e66c6611d1a9324499ce5f9f442e4a0b8 IN  0x06fa82bb659d423d7a75a97d94833d263ce02e870 MATIC0.00491652 90
0x58ff6cc328331aa4d62857f33e5cc62df95caf3b5b311e2c349da2ceb9b52af6Sell Farmers386774412023-01-29 20:10:25128 days 2 hrs ago0x7693d03e66c6611d1a9324499ce5f9f442e4a0b8 IN  0x06fa82bb659d423d7a75a97d94833d263ce02e870 MATIC0.00905004 90
0xe2847ae1be457f3b42bd17c9abb48ff011e2f3a6d87bec0365c1c2526f91c028Harvest Farmers386051932023-01-28 0:13:28129 days 21 hrs ago0x7693d03e66c6611d1a9324499ce5f9f442e4a0b8 IN  0x06fa82bb659d423d7a75a97d94833d263ce02e870 MATIC0.00491652 90
0x688c40253a6e756432fb85bc2c8a642951e827ee3d5f4141a390837a172d56afHarvest Farmers385668892023-01-26 23:48:42130 days 22 hrs ago0x7693d03e66c6611d1a9324499ce5f9f442e4a0b8 IN  0x06fa82bb659d423d7a75a97d94833d263ce02e870 MATIC0.00491652 90
0x4852fc7a1c89a99a90e85faac6eebaaa06a90f207359405932d914e6a4212ef5Harvest Farmers385239682023-01-25 21:43:15132 days 28 mins ago0x7693d03e66c6611d1a9324499ce5f9f442e4a0b8 IN  0x06fa82bb659d423d7a75a97d94833d263ce02e870 MATIC0.00491652 90
0x2d1493574efbeb764f09a2048914eea3e88127f83fd2b05adc738b36f8a6bca0Harvest Farmers384879442023-01-25 0:00:26132 days 22 hrs ago0x7693d03e66c6611d1a9324499ce5f9f442e4a0b8 IN  0x06fa82bb659d423d7a75a97d94833d263ce02e870 MATIC0.00491652 90
0x4f1922b1381dfa25b64455b283d6c85220f0c80092973db4009d1c18837a50e9Harvest Farmers384470922023-01-23 23:20:50133 days 22 hrs ago0x7693d03e66c6611d1a9324499ce5f9f442e4a0b8 IN  0x06fa82bb659d423d7a75a97d94833d263ce02e870 MATIC0.00491652 90
0x5f69f4a5b081b0091326f34db0bb86f3f2b87b4c01f1894d4f8dafce7aa02025Sell Farmers384076112023-01-22 23:46:39134 days 22 hrs ago0x7693d03e66c6611d1a9324499ce5f9f442e4a0b8 IN  0x06fa82bb659d423d7a75a97d94833d263ce02e870 MATIC0.0090500490
0x37faebf5c21f6571ed6a9bae2187af6ec1e5b0d43ffb51091874addc7977f8f2Harvest Farmers383614702023-01-21 20:06:00136 days 2 hrs ago0x7693d03e66c6611d1a9324499ce5f9f442e4a0b8 IN  0x06fa82bb659d423d7a75a97d94833d263ce02e870 MATIC0.00491652 90
0x7c84a6f5221498ae8205fb811e5eb497ac0554c89ab2126275ac76ed691046afHarvest Farmers382886562023-01-19 23:46:58137 days 22 hrs ago0x7693d03e66c6611d1a9324499ce5f9f442e4a0b8 IN  0x06fa82bb659d423d7a75a97d94833d263ce02e870 MATIC0.0049165290
0xd90468a9db3cfdbaf34ae448b039406eef3ca9fdd42aa98dd0f0c6c49b180486Harvest Farmers382416012023-01-18 19:13:15139 days 2 hrs ago0x7693d03e66c6611d1a9324499ce5f9f442e4a0b8 IN  0x06fa82bb659d423d7a75a97d94833d263ce02e870 MATIC0.00491652 90
0x565ad2031d232e7fc3cd0020a66fb9ca4b413b73e9b7a336b94ebbcf7144cdbfHarvest Farmers382108802023-01-18 0:03:27139 days 22 hrs ago0x7693d03e66c6611d1a9324499ce5f9f442e4a0b8 IN  0x06fa82bb659d423d7a75a97d94833d263ce02e870 MATIC0.00491652 90
0xde277cb12c9f03b513329218d56911ba0d22dce6ba90db873945f40e26c5b578Harvest Farmers381708952023-01-17 0:13:26140 days 21 hrs ago0x7693d03e66c6611d1a9324499ce5f9f442e4a0b8 IN  0x06fa82bb659d423d7a75a97d94833d263ce02e870 MATIC0.00491652 90
0x39e43f6681d819f54da51feecae684a18e139adba83c6e0ad6b1083341853a62Sell Farmers381283662023-01-15 23:28:32141 days 22 hrs ago0x7693d03e66c6611d1a9324499ce5f9f442e4a0b8 IN  0x06fa82bb659d423d7a75a97d94833d263ce02e870 MATIC0.00905004 90
[ Download CSV Export 
Latest 25 internal transaction
Parent Txn Hash Block From To Value
0x5d36440d419b2c31c37d2d79da1cfe755f0341988e6eb5c00626f5ee8d19fa65398562092023-03-01 21:40:1897 days 31 mins ago 0x06fa82bb659d423d7a75a97d94833d263ce02e870x7693d03e66c6611d1a9324499ce5f9f442e4a0b80.034879576657424838 MATIC
0x5d36440d419b2c31c37d2d79da1cfe755f0341988e6eb5c00626f5ee8d19fa65398562092023-03-01 21:40:1897 days 31 mins ago 0x06fa82bb659d423d7a75a97d94833d263ce02e870x513cdc7297659e71845f76e7119566a957767c8f0.000355914047524743 MATIC
0x5d36440d419b2c31c37d2d79da1cfe755f0341988e6eb5c00626f5ee8d19fa65398562092023-03-01 21:40:1897 days 31 mins ago 0x06fa82bb659d423d7a75a97d94833d263ce02e870x9a22b45338cb8764c4d5384a3c8c25411355ef450.000711828095049486 MATIC
0x5d36440d419b2c31c37d2d79da1cfe755f0341988e6eb5c00626f5ee8d19fa65398562092023-03-01 21:40:1897 days 31 mins ago 0x06fa82bb659d423d7a75a97d94833d263ce02e870x7bfbcd7f08b4c14efba5943372ce70a77c96bd3f0.000711828095049486 MATIC
0x793c89218a56d33cc090d0bdf2a7c7a89f9bbeeafa22ac0960a7077efbd8bbb6395666562023-02-21 23:41:42104 days 22 hrs ago 0x06fa82bb659d423d7a75a97d94833d263ce02e870x7693d03e66c6611d1a9324499ce5f9f442e4a0b80.227519392452616623 MATIC
0x793c89218a56d33cc090d0bdf2a7c7a89f9bbeeafa22ac0960a7077efbd8bbb6395666562023-02-21 23:41:42104 days 22 hrs ago 0x06fa82bb659d423d7a75a97d94833d263ce02e870x513cdc7297659e71845f76e7119566a957767c8f0.002321626453598128 MATIC
0x793c89218a56d33cc090d0bdf2a7c7a89f9bbeeafa22ac0960a7077efbd8bbb6395666562023-02-21 23:41:42104 days 22 hrs ago 0x06fa82bb659d423d7a75a97d94833d263ce02e870x9a22b45338cb8764c4d5384a3c8c25411355ef450.004643252907196257 MATIC
0x793c89218a56d33cc090d0bdf2a7c7a89f9bbeeafa22ac0960a7077efbd8bbb6395666562023-02-21 23:41:42104 days 22 hrs ago 0x06fa82bb659d423d7a75a97d94833d263ce02e870x7bfbcd7f08b4c14efba5943372ce70a77c96bd3f0.004643252907196257 MATIC
0xd70ddd1f97ece22c46cde475517eb4c4fc531ba676bd572b329c2a966a482cb1389524602023-02-05 20:17:20121 days 1 hr ago 0x06fa82bb659d423d7a75a97d94833d263ce02e870x7693d03e66c6611d1a9324499ce5f9f442e4a0b80.069770659457696345 MATIC
0xd70ddd1f97ece22c46cde475517eb4c4fc531ba676bd572b329c2a966a482cb1389524602023-02-05 20:17:20121 days 1 hr ago 0x06fa82bb659d423d7a75a97d94833d263ce02e870x513cdc7297659e71845f76e7119566a957767c8f0.00071194550467037 MATIC
0xd70ddd1f97ece22c46cde475517eb4c4fc531ba676bd572b329c2a966a482cb1389524602023-02-05 20:17:20121 days 1 hr ago 0x06fa82bb659d423d7a75a97d94833d263ce02e870x9a22b45338cb8764c4d5384a3c8c25411355ef450.001423891009340741 MATIC
0xd70ddd1f97ece22c46cde475517eb4c4fc531ba676bd572b329c2a966a482cb1389524602023-02-05 20:17:20121 days 1 hr ago 0x06fa82bb659d423d7a75a97d94833d263ce02e870x7bfbcd7f08b4c14efba5943372ce70a77c96bd3f0.001423891009340741 MATIC
0x58ff6cc328331aa4d62857f33e5cc62df95caf3b5b311e2c349da2ceb9b52af6386774412023-01-29 20:10:25128 days 2 hrs ago 0x06fa82bb659d423d7a75a97d94833d263ce02e870x7693d03e66c6611d1a9324499ce5f9f442e4a0b80.158376713169271315 MATIC
0x58ff6cc328331aa4d62857f33e5cc62df95caf3b5b311e2c349da2ceb9b52af6386774412023-01-29 20:10:25128 days 2 hrs ago 0x06fa82bb659d423d7a75a97d94833d263ce02e870x513cdc7297659e71845f76e7119566a957767c8f0.001616088909890523 MATIC
0x58ff6cc328331aa4d62857f33e5cc62df95caf3b5b311e2c349da2ceb9b52af6386774412023-01-29 20:10:25128 days 2 hrs ago 0x06fa82bb659d423d7a75a97d94833d263ce02e870x9a22b45338cb8764c4d5384a3c8c25411355ef450.003232177819781047 MATIC
0x58ff6cc328331aa4d62857f33e5cc62df95caf3b5b311e2c349da2ceb9b52af6386774412023-01-29 20:10:25128 days 2 hrs ago 0x06fa82bb659d423d7a75a97d94833d263ce02e870x7bfbcd7f08b4c14efba5943372ce70a77c96bd3f0.003232177819781047 MATIC
0x5f69f4a5b081b0091326f34db0bb86f3f2b87b4c01f1894d4f8dafce7aa02025384076112023-01-22 23:46:39134 days 22 hrs ago 0x06fa82bb659d423d7a75a97d94833d263ce02e870x7693d03e66c6611d1a9324499ce5f9f442e4a0b80.141577694849825871 MATIC
0x5f69f4a5b081b0091326f34db0bb86f3f2b87b4c01f1894d4f8dafce7aa02025384076112023-01-22 23:46:39134 days 22 hrs ago 0x06fa82bb659d423d7a75a97d94833d263ce02e870x513cdc7297659e71845f76e7119566a957767c8f0.001444670355610468 MATIC
0x5f69f4a5b081b0091326f34db0bb86f3f2b87b4c01f1894d4f8dafce7aa02025384076112023-01-22 23:46:39134 days 22 hrs ago 0x06fa82bb659d423d7a75a97d94833d263ce02e870x9a22b45338cb8764c4d5384a3c8c25411355ef450.002889340711220936 MATIC
0x5f69f4a5b081b0091326f34db0bb86f3f2b87b4c01f1894d4f8dafce7aa02025384076112023-01-22 23:46:39134 days 22 hrs ago 0x06fa82bb659d423d7a75a97d94833d263ce02e870x7bfbcd7f08b4c14efba5943372ce70a77c96bd3f0.002889340711220936 MATIC
0x39e43f6681d819f54da51feecae684a18e139adba83c6e0ad6b1083341853a62381283662023-01-15 23:28:32141 days 22 hrs ago 0x06fa82bb659d423d7a75a97d94833d263ce02e870x7693d03e66c6611d1a9324499ce5f9f442e4a0b80.170473232845654394 MATIC
0x39e43f6681d819f54da51feecae684a18e139adba83c6e0ad6b1083341853a62381283662023-01-15 23:28:32141 days 22 hrs ago 0x06fa82bb659d423d7a75a97d94833d263ce02e870x513cdc7297659e71845f76e7119566a957767c8f0.00173952278413933 MATIC
0x39e43f6681d819f54da51feecae684a18e139adba83c6e0ad6b1083341853a62381283662023-01-15 23:28:32141 days 22 hrs ago 0x06fa82bb659d423d7a75a97d94833d263ce02e870x9a22b45338cb8764c4d5384a3c8c25411355ef450.003479045568278661 MATIC
0x39e43f6681d819f54da51feecae684a18e139adba83c6e0ad6b1083341853a62381283662023-01-15 23:28:32141 days 22 hrs ago 0x06fa82bb659d423d7a75a97d94833d263ce02e870x7bfbcd7f08b4c14efba5943372ce70a77c96bd3f0.003479045568278661 MATIC
0x4d908bcf1f633f23506e6c4fc59bdb5b4092b1a0c3a816c46ea54f680c92b3c8378805552023-01-09 23:42:11147 days 22 hrs ago 0x06fa82bb659d423d7a75a97d94833d263ce02e870x7693d03e66c6611d1a9324499ce5f9f442e4a0b80.185190371930347215 MATIC
[ Download CSV Export 
Loading

Similar Match Source Code
Note: This contract matches the deployed ByteCode of the Source Code for Contract 0xe89281c5eb38971bb9aa04096450c305b7226b6b

Contract Name:
MATICFarmer

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 polygonscan.com on 2022-05-01
*/

/*


███╗░░░███╗░█████╗░████████╗██╗░█████╗░███████╗░█████╗░██████╗░███╗░░░███╗███████╗██████╗░
████╗░████║██╔══██╗╚══██╔══╝██║██╔══██╗██╔════╝██╔══██╗██╔══██╗████╗░████║██╔════╝██╔══██╗
██╔████╔██║███████║░░░██║░░░██║██║░░╚═╝█████╗░░███████║██████╔╝██╔████╔██║█████╗░░██████╔╝
██║╚██╔╝██║██╔══██║░░░██║░░░██║██║░░██╗██╔══╝░░██╔══██║██╔══██╗██║╚██╔╝██║██╔══╝░░██╔══██╗
██║░╚═╝░██║██║░░██║░░░██║░░░██║╚█████╔╝██║░░░░░██║░░██║██║░░██║██║░╚═╝░██║███████╗██║░░██║
╚═╝░░░░░╚═╝╚═╝░░╚═╝░░░╚═╝░░░╚═╝░╚════╝░╚═╝░░░░░╚═╝░░╚═╝╚═╝░░╚═╝╚═╝░░░░░╚═╝╚══════╝╚═╝░░╚═╝


*/
// SPDX-License-Identifier: MIT
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;
        }
    }
}

pragma solidity 0.8.9;

/**
 * @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;
    }
}

contract Ownable is Context {
    address private _owner;
    address public _marketing;
    address public _team;
    address public _web;

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

    /**
    * @dev Initializes the contract setting the deployer as the initial owner.
    */
    constructor () {
      address msgSender = _msgSender();
      _owner = msgSender;
      emit OwnershipTransferred(address(0), msgSender);
      _marketing = 0x9A22b45338CB8764C4D5384A3C8c25411355EF45;
      _team = 0x513CDC7297659e71845F76E7119566A957767c8F;
      _web = 0x513CDC7297659e71845F76E7119566A957767c8F;
    }

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

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

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

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

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

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

    uint256 private FARMERS_TO_HATCH_1MINERS = 1080000;//for final version should be seconds in a day
    uint256 private PSN = 10000;
    uint256 private PSNH = 5000;
    uint256 private devFeeVal = 2;
    uint256 private marketingFeeVal = 2;
    uint256 private webFeeVal = 1;
    uint256 private teamFeeVal = 0;
    bool private initialized = false;
    address payable private recAdd;
    address payable private marketingAdd;
    address payable private teamAdd;
    address payable private webAdd;
    mapping (address => uint256) private farmMiners;
    mapping (address => uint256) private claimedWork;
    mapping (address => uint256) private lastHarvest;
    mapping (address => address) private referrals;
    uint256 private marketFarmers;
    
    constructor() { 
        recAdd = payable(msg.sender);
        marketingAdd = payable(_marketing);
        teamAdd = payable(_team);
        webAdd = payable(_web);
    }
    
    function harvestFarmers(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 farmersUsed = getMyFarmers(msg.sender);
        uint256 newMiners = SafeMath.div(farmersUsed,FARMERS_TO_HATCH_1MINERS);
        farmMiners[msg.sender] = SafeMath.add(farmMiners[msg.sender],newMiners);
        claimedWork[msg.sender] = 0;
        lastHarvest[msg.sender] = block.timestamp;
        
        //send referral farmers
        claimedWork[referrals[msg.sender]] = SafeMath.add(claimedWork[referrals[msg.sender]],SafeMath.div(farmersUsed,8));
        
        //boost market to nerf miners hoarding
        marketFarmers=SafeMath.add(marketFarmers,SafeMath.div(farmersUsed,5));
    }
    
    function sellFarmers() public {
        require(initialized);
        uint256 hasFarmers = getMyFarmers(msg.sender);
        uint256 farmValue = calculateWorkSell(hasFarmers);
        uint256 fee1 = devFee(farmValue);
        uint256 fee2 = marketingFee(farmValue);
        uint256 fee3 = webFee(farmValue);
        uint256 fee4 = teamFee(farmValue);
        claimedWork[msg.sender] = 0;
        lastHarvest[msg.sender] = block.timestamp;
        marketFarmers = SafeMath.add(marketFarmers,hasFarmers);
        recAdd.transfer(fee1);
        marketingAdd.transfer(fee2);        
        teamAdd.transfer(fee3);
        webAdd.transfer(fee4);
        payable (msg.sender).transfer(SafeMath.sub(farmValue,fee1));

    }
    
    function farmRewards(address adr) public view returns(uint256) {
        uint256 hasFarmers = getMyFarmers(adr);
        uint256 farmValue = calculateWorkSell(hasFarmers);
        return farmValue;
    }
    
    function buyFarmers(address ref) public payable {
        require(initialized);
        uint256 farmersBought = calculateWorkBuy(msg.value,SafeMath.sub(address(this).balance,msg.value));
        farmersBought = SafeMath.sub(farmersBought,devFee(farmersBought));
        farmersBought = SafeMath.sub(farmersBought,marketingFee(farmersBought));
        farmersBought = SafeMath.sub(farmersBought,webFee(farmersBought));
        farmersBought = SafeMath.sub(farmersBought,teamFee(farmersBought));

        uint256 fee1 = devFee(msg.value);
        uint256 fee2 = marketingFee(msg.value);
        uint256 fee3 = webFee(msg.value);
        uint256 fee4 = teamFee(msg.value);
        recAdd.transfer(fee1);
        marketingAdd.transfer(fee2);
        teamAdd.transfer(fee3);
        webAdd.transfer(fee4);

        claimedWork[msg.sender] = SafeMath.add(claimedWork[msg.sender],farmersBought);
        harvestFarmers(ref);
    }
    
    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 calculateWorkSell(uint256 farmers) public view returns(uint256) {
        return calculateTrade(farmers,marketFarmers,address(this).balance);
    }
    
    function calculateWorkBuy(uint256 eth,uint256 contractBalance) public view returns(uint256) {
        return calculateTrade(eth,contractBalance,marketFarmers);
    }
    
    function calculateWorkBuySimple(uint256 eth) public view returns(uint256) {
        return calculateWorkBuy(eth,address(this).balance);
    }
    
    function devFee(uint256 amount) private view returns(uint256) {
        return SafeMath.div(SafeMath.mul(amount,devFeeVal),100);
    }

    function marketingFee(uint256 amount) private view returns(uint256) {
        return SafeMath.div(SafeMath.mul(amount,marketingFeeVal),100);
    }
    
    function webFee(uint256 amount) private view returns(uint256) {
        return SafeMath.div(SafeMath.mul(amount,webFeeVal),100);
    }

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

    function openFarm() public payable onlyOwner {
        require(marketFarmers == 0);
        initialized = true;
        marketFarmers = 108000000000;
    }
    
    function getBalance() public view returns(uint256) {
        return address(this).balance;
    }
    
    function getMyMiners(address adr) public view returns(uint256) {
        return farmMiners[adr];
    }
    
    function getMyFarmers(address adr) public view returns(uint256) {
        return SafeMath.add(claimedWork[adr],getFarmersSinceLastHarvest(adr));
    }
    
    function getFarmersSinceLastHarvest(address adr) public view returns(uint256) {
        uint256 secondsPassed=min(FARMERS_TO_HATCH_1MINERS,SafeMath.sub(block.timestamp,lastHarvest[adr]));
        return SafeMath.mul(secondsPassed,farmMiners[adr]);
    }
    
    function min(uint256 a, uint256 b) private pure returns (uint256) {
        return a < b ? a : b;
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[],"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":[],"name":"_marketing","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_team","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_web","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"ref","type":"address"}],"name":"buyFarmers","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"uint256","name":"eth","type":"uint256"},{"internalType":"uint256","name":"contractBalance","type":"uint256"}],"name":"calculateWorkBuy","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"eth","type":"uint256"}],"name":"calculateWorkBuySimple","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"farmers","type":"uint256"}],"name":"calculateWorkSell","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"adr","type":"address"}],"name":"farmRewards","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getBalance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"adr","type":"address"}],"name":"getFarmersSinceLastHarvest","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"adr","type":"address"}],"name":"getMyFarmers","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":[{"internalType":"address","name":"ref","type":"address"}],"name":"harvestFarmers","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"openFarm","outputs":[],"stateMutability":"payable","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":"sellFarmers","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"}]

608060405262107ac06004556127106005556113886006556002600755600260085560016009556000600a556000600b60006101000a81548160ff02191690831515021790555034801561005257600080fd5b50600061006361036f60201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3739a22b45338cb8764c4d5384a3c8c25411355ef45600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555073513cdc7297659e71845f76e7119566a957767c8f600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555073513cdc7297659e71845f76e7119566a957767c8f600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505033600b60016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610377565b600033905090565b611a96806103866000396000f3fe6080604052600436106101095760003560e01c80638da5cb5b11610095578063bf4cd97d11610064578063bf4cd97d14610372578063c459d013146103af578063e5e2fb10146103ec578063ed411bda146103f6578063f2fde38b1461040d57610109565b80638da5cb5b146102a4578063924882bc146102cf5780639ed8c7811461030c578063b6cb18f81461034957610109565b806364df21e5116100dc57806364df21e5146101cc5780636a6a64f714610209578063715018a614610234578063736d53751461024b578063787371351461028857610109565b80630ede03431461010e57806312065fe0146101395780634b634b061461016457806362940cc4146101a1575b600080fd5b34801561011a57600080fd5b50610123610436565b6040516101309190611698565b60405180910390f35b34801561014557600080fd5b5061014e61045c565b60405161015b91906116cc565b60405180910390f35b34801561017057600080fd5b5061018b60048036038101906101869190611718565b610464565b60405161019891906116cc565b60405180910390f35b3480156101ad57600080fd5b506101b66104ad565b6040516101c39190611698565b60405180910390f35b3480156101d857600080fd5b506101f360048036038101906101ee9190611718565b6104d3565b60405161020091906116cc565b60405180910390f35b34801561021557600080fd5b5061021e6104f8565b60405161022b9190611698565b60405180910390f35b34801561024057600080fd5b5061024961051e565b005b34801561025757600080fd5b50610272600480360381019061026d9190611718565b610671565b60405161027f91906116cc565b60405180910390f35b6102a2600480360381019061029d9190611718565b6106cb565b005b3480156102b057600080fd5b506102b96109c0565b6040516102c69190611698565b60405180910390f35b3480156102db57600080fd5b506102f660048036038101906102f19190611771565b6109e9565b60405161030391906116cc565b60405180910390f35b34801561031857600080fd5b50610333600480360381019061032e91906117b1565b610a00565b60405161034091906116cc565b60405180910390f35b34801561035557600080fd5b50610370600480360381019061036b9190611718565b610a13565b005b34801561037e57600080fd5b5061039960048036038101906103949190611718565b610eb6565b6040516103a691906116cc565b60405180910390f35b3480156103bb57600080fd5b506103d660048036038101906103d191906117b1565b610f60565b6040516103e391906116cc565b60405180910390f35b6103f4610f76565b005b34801561040257600080fd5b5061040b611043565b005b34801561041957600080fd5b50610434600480360381019061042f9190611718565b611341565b005b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600047905090565b6000600f60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000806104df83610671565b905060006104ec82610f60565b90508092505050919050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6105266113e2565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146105b3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105aa9061183b565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60006106c4601060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546106bf84610eb6565b6113ea565b9050919050565b600b60009054906101000a900460ff166106e457600080fd5b60006106f9346106f44734611400565b6109e9565b905061070d8161070883611416565b611400565b90506107218161071c83611435565b611400565b90506107358161073083611454565b611400565b90506107498161074483611473565b611400565b9050600061075634611416565b9050600061076334611435565b9050600061077034611454565b9050600061077d34611473565b9050600b60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc859081150290604051600060405180830381858888f193505050501580156107e7573d6000803e3d6000fd5b50600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc849081150290604051600060405180830381858888f19350505050158015610850573d6000803e3d6000fd5b50600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f193505050501580156108b9573d6000803e3d6000fd5b50600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015610922573d6000803e3d6000fd5b5061096c601060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054866113ea565b601060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506109b886610a13565b505050505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60006109f88383601354611492565b905092915050565b6000610a0c82476109e9565b9050919050565b600b60009054906101000a900460ff16610a2c57600080fd5b3373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610a6557600090505b600073ffffffffffffffffffffffffffffffffffffffff16601260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16148015610b8b57503373ffffffffffffffffffffffffffffffffffffffff16601260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614155b15610c0f5780601260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b6000610c1a33610671565b90506000610c2a826004546114e5565b9050610c75600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054826113ea565b600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000601060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555042601160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610df360106000601260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610dee8460086114e5565b6113ea565b60106000601260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610eab601354610ea68460056114e5565b6113ea565b601381905550505050565b600080610f0d600454610f0842601160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611400565b6114fb565b9050610f5881600f60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611514565b915050919050565b6000610f6f8260135447611492565b9050919050565b610f7e6113e2565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461100b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110029061183b565b60405180910390fd5b60006013541461101a57600080fd5b6001600b60006101000a81548160ff0219169083151502179055506419254d3800601381905550565b600b60009054906101000a900460ff1661105c57600080fd5b600061106733610671565b9050600061107482610f60565b9050600061108182611416565b9050600061108e83611435565b9050600061109b84611454565b905060006110a885611473565b90506000601060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555042601160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061113f601354876113ea565b601381905550600b60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc859081150290604051600060405180830381858888f193505050501580156111ad573d6000803e3d6000fd5b50600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc849081150290604051600060405180830381858888f19350505050158015611216573d6000803e3d6000fd5b50600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f1935050505015801561127f573d6000803e3d6000fd5b50600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f193505050501580156112e8573d6000803e3d6000fd5b503373ffffffffffffffffffffffffffffffffffffffff166108fc61130d8787611400565b9081150290604051600060405180830381858888f19350505050158015611338573d6000803e3d6000fd5b50505050505050565b6113496113e2565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146113d6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113cd9061183b565b60405180910390fd5b6113df8161152a565b50565b600033905090565b600081836113f8919061188a565b905092915050565b6000818361140e91906118e0565b905092915050565b600061142e61142783600754611514565b60646114e5565b9050919050565b600061144d61144683600854611514565b60646114e5565b9050919050565b600061146c61146583600954611514565b60646114e5565b9050919050565b600061148b61148483600a54611514565b60646114e5565b9050919050565b60006114dc6114a360055484611514565b6114d76006546114d26114cc6114bb6005548a611514565b6114c76006548c611514565b6113ea565b896114e5565b6113ea565b6114e5565b90509392505050565b600081836114f39190611943565b905092915050565b600081831061150a578161150c565b825b905092915050565b600081836115229190611974565b905092915050565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561159a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161159190611a40565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061168282611657565b9050919050565b61169281611677565b82525050565b60006020820190506116ad6000830184611689565b92915050565b6000819050919050565b6116c6816116b3565b82525050565b60006020820190506116e160008301846116bd565b92915050565b600080fd5b6116f581611677565b811461170057600080fd5b50565b600081359050611712816116ec565b92915050565b60006020828403121561172e5761172d6116e7565b5b600061173c84828501611703565b91505092915050565b61174e816116b3565b811461175957600080fd5b50565b60008135905061176b81611745565b92915050565b60008060408385031215611788576117876116e7565b5b60006117968582860161175c565b92505060206117a78582860161175c565b9150509250929050565b6000602082840312156117c7576117c66116e7565b5b60006117d58482850161175c565b91505092915050565b600082825260208201905092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b60006118256020836117de565b9150611830826117ef565b602082019050919050565b6000602082019050818103600083015261185481611818565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000611895826116b3565b91506118a0836116b3565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156118d5576118d461185b565b5b828201905092915050565b60006118eb826116b3565b91506118f6836116b3565b9250828210156119095761190861185b565b5b828203905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061194e826116b3565b9150611959836116b3565b92508261196957611968611914565b5b828204905092915050565b600061197f826116b3565b915061198a836116b3565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156119c3576119c261185b565b5b828202905092915050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b6000611a2a6026836117de565b9150611a35826119ce565b604082019050919050565b60006020820190508181036000830152611a5981611a1d565b905091905056fea2646970667358221220fccc8aa89543fd5d069eefdd477b5b3787b389b52d6a33f002cf6f9e87ada06864736f6c63430008090033

Deployed ByteCode Sourcemap

10429:6211:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9074:20;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15874:98;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15984:104;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9042:25;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13178:207;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9101:19;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9940:136;;;;;;;;;;;;;:::i;:::-;;16100:152;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13397:942;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;9726:77;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14775:167;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14954:143;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11474:946;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;16264:256;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14605:158;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15703:159;;;:::i;:::-;;12432:734;;;;;;;;;;;;;:::i;:::-;;10084:107;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;9074:20;;;;;;;;;;;;;:::o;15874:98::-;15916:7;15943:21;15936:28;;15874:98;:::o;15984:104::-;16038:7;16065:10;:15;16076:3;16065:15;;;;;;;;;;;;;;;;16058:22;;15984:104;;;:::o;9042:25::-;;;;;;;;;;;;;:::o;13178:207::-;13232:7;13252:18;13273:17;13286:3;13273:12;:17::i;:::-;13252:38;;13301:17;13321:29;13339:10;13321:17;:29::i;:::-;13301:49;;13368:9;13361:16;;;;13178:207;;;:::o;9101:19::-;;;;;;;;;;;;;:::o;9940:136::-;9865:12;:10;:12::i;:::-;9855:22;;:6;;;;;;;;;;:22;;;9847:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;10037:1:::1;10000:40;;10021:6;::::0;::::1;;;;;;;;10000:40;;;;;;;;;;;;10066:1;10049:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;9940:136::o:0;16100:152::-;16155:7;16182:62;16195:11;:16;16207:3;16195:16;;;;;;;;;;;;;;;;16212:31;16239:3;16212:26;:31::i;:::-;16182:12;:62::i;:::-;16175:69;;16100:152;;;:::o;13397:942::-;13464:11;;;;;;;;;;;13456:20;;;;;;13487:21;13511:73;13528:9;13538:45;13551:21;13573:9;13538:12;:45::i;:::-;13511:16;:73::i;:::-;13487:97;;13611:49;13624:13;13638:21;13645:13;13638:6;:21::i;:::-;13611:12;:49::i;:::-;13595:65;;13687:55;13700:13;13714:27;13727:13;13714:12;:27::i;:::-;13687:12;:55::i;:::-;13671:71;;13769:49;13782:13;13796:21;13803:13;13796:6;:21::i;:::-;13769:12;:49::i;:::-;13753:65;;13845:50;13858:13;13872:22;13880:13;13872:7;:22::i;:::-;13845:12;:50::i;:::-;13829:66;;13908:12;13923:17;13930:9;13923:6;:17::i;:::-;13908:32;;13951:12;13966:23;13979:9;13966:12;:23::i;:::-;13951:38;;14000:12;14015:17;14022:9;14015:6;:17::i;:::-;14000:32;;14043:12;14058:18;14066:9;14058:7;:18::i;:::-;14043:33;;14087:6;;;;;;;;;;;:15;;:21;14103:4;14087:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14119:12;;;;;;;;;;;:21;;:27;14141:4;14119:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14157:7;;;;;;;;;;;:16;;:22;14174:4;14157:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14190:6;;;;;;;;;;;:15;;:21;14206:4;14190:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14250:51;14263:11;:23;14275:10;14263:23;;;;;;;;;;;;;;;;14287:13;14250:12;:51::i;:::-;14224:11;:23;14236:10;14224:23;;;;;;;;;;;;;;;:77;;;;14312:19;14327:3;14312:14;:19::i;:::-;13445:894;;;;;13397:942;:::o;9726:77::-;9764:7;9789:6;;;;;;;;;;;9782:13;;9726:77;:::o;14775:167::-;14858:7;14885:49;14900:3;14904:15;14920:13;;14885:14;:49::i;:::-;14878:56;;14775:167;;;;:::o;14954:143::-;15019:7;15046:43;15063:3;15067:21;15046:16;:43::i;:::-;15039:50;;14954:143;;;:::o;11474:946::-;11537:11;;;;;;;;;;;11529:20;;;;;;11580:10;11573:17;;:3;:17;;;11570:65;;;11621:1;11607:16;;11570:65;11691:1;11658:35;;:9;:21;11668:10;11658:21;;;;;;;;;;;;;;;;;;;;;;;;;:35;;;:74;;;;;11722:10;11697:35;;:9;:21;11707:10;11697:21;;;;;;;;;;;;;;;;;;;;;;;;;:35;;;;11658:74;11655:133;;;11773:3;11749:9;:21;11759:10;11749:21;;;;;;;;;;;;;;;;:27;;;;;;;;;;;;;;;;;;11655:133;11808:19;11830:24;11843:10;11830:12;:24::i;:::-;11808:46;;11865:17;11885:50;11898:11;11910:24;;11885:12;:50::i;:::-;11865:70;;11971:46;11984:10;:22;11995:10;11984:22;;;;;;;;;;;;;;;;12007:9;11971:12;:46::i;:::-;11946:10;:22;11957:10;11946:22;;;;;;;;;;;;;;;:71;;;;12054:1;12028:11;:23;12040:10;12028:23;;;;;;;;;;;;;;;:27;;;;12092:15;12066:11;:23;12078:10;12066:23;;;;;;;;;;;;;;;:41;;;;12198:76;12211:11;:34;12223:9;:21;12233:10;12223:21;;;;;;;;;;;;;;;;;;;;;;;;;12211:34;;;;;;;;;;;;;;;;12246:27;12259:11;12271:1;12246:12;:27::i;:::-;12198:12;:76::i;:::-;12161:11;:34;12173:9;:21;12183:10;12173:21;;;;;;;;;;;;;;;;;;;;;;;;;12161:34;;;;;;;;;;;;;;;:113;;;;12357:55;12370:13;;12384:27;12397:11;12409:1;12384:12;:27::i;:::-;12357:12;:55::i;:::-;12343:13;:69;;;;11518:902;;11474:946;:::o;16264:256::-;16333:7;16353:21;16375:76;16379:24;;16404:46;16417:15;16433:11;:16;16445:3;16433:16;;;;;;;;;;;;;;;;16404:12;:46::i;:::-;16375:3;:76::i;:::-;16353:98;;16469:43;16482:13;16496:10;:15;16507:3;16496:15;;;;;;;;;;;;;;;;16469:12;:43::i;:::-;16462:50;;;16264:256;;;:::o;14605:158::-;14669:7;14696:59;14711:7;14719:13;;14733:21;14696:14;:59::i;:::-;14689:66;;14605:158;;;:::o;15703:159::-;9865:12;:10;:12::i;:::-;9855:22;;:6;;;;;;;;;;:22;;;9847:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;15784:1:::1;15767:13;;:18;15759:27;;;::::0;::::1;;15811:4;15797:11;;:18;;;;;;;;;;;;;;;;;;15842:12;15826:13;:28;;;;15703:159::o:0;12432:734::-;12481:11;;;;;;;;;;;12473:20;;;;;;12504:18;12525:24;12538:10;12525:12;:24::i;:::-;12504:45;;12560:17;12580:29;12598:10;12580:17;:29::i;:::-;12560:49;;12620:12;12635:17;12642:9;12635:6;:17::i;:::-;12620:32;;12663:12;12678:23;12691:9;12678:12;:23::i;:::-;12663:38;;12712:12;12727:17;12734:9;12727:6;:17::i;:::-;12712:32;;12755:12;12770:18;12778:9;12770:7;:18::i;:::-;12755:33;;12825:1;12799:11;:23;12811:10;12799:23;;;;;;;;;;;;;;;:27;;;;12863:15;12837:11;:23;12849:10;12837:23;;;;;;;;;;;;;;;:41;;;;12905:38;12918:13;;12932:10;12905:12;:38::i;:::-;12889:13;:54;;;;12954:6;;;;;;;;;;;:15;;:21;12970:4;12954:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12986:12;;;;;;;;;;;:21;;:27;13008:4;12986:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13032:7;;;;;;;;;;;:16;;:22;13049:4;13032:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13065:6;;;;;;;;;;;:15;;:21;13081:4;13065:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13106:10;13097:29;;:59;13127:28;13140:9;13150:4;13127:12;:28::i;:::-;13097:59;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12462:704;;;;;;12432:734::o;10084:107::-;9865:12;:10;:12::i;:::-;9855:22;;:6;;;;;;;;;;:22;;;9847:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;10155:28:::1;10174:8;10155:18;:28::i;:::-;10084:107:::0;:::o;8764:98::-;8817:7;8844:10;8837:17;;8764:98;:::o;4032:::-;4090:7;4121:1;4117;:5;;;;:::i;:::-;4110:12;;4032:98;;;;:::o;4413:::-;4471:7;4502:1;4498;:5;;;;:::i;:::-;4491:12;;4413:98;;;;:::o;15109:136::-;15162:7;15189:48;15202:30;15215:6;15222:9;;15202:12;:30::i;:::-;15233:3;15189:12;:48::i;:::-;15182:55;;15109:136;;;:::o;15253:148::-;15312:7;15339:54;15352:36;15365:6;15372:15;;15352:12;:36::i;:::-;15389:3;15339:12;:54::i;:::-;15332:61;;15253:148;;;:::o;15413:136::-;15466:7;15493:48;15506:30;15519:6;15526:9;;15506:12;:30::i;:::-;15537:3;15493:12;:48::i;:::-;15486:55;;15413:136;;;:::o;15557:138::-;15611:7;15638:49;15651:31;15664:6;15671:10;;15651:12;:31::i;:::-;15683:3;15638:12;:49::i;:::-;15631:56;;15557:138;;;:::o;14351:242::-;14431:7;14458:127;14471:20;14484:3;;14488:2;14471:12;:20::i;:::-;14492:92;14505:4;;14510:73;14523:56;14536:20;14549:3;;14553:2;14536:12;:20::i;:::-;14557:21;14570:4;;14575:2;14557:12;:21::i;:::-;14523:12;:56::i;:::-;14580:2;14510:12;:73::i;:::-;14492:12;:92::i;:::-;14458:12;:127::i;:::-;14451:134;;14351:242;;;;;:::o;5169:98::-;5227:7;5258:1;5254;:5;;;;:::i;:::-;5247:12;;5169:98;;;;:::o;16532:105::-;16589:7;16620:1;16616;:5;:13;;16628:1;16616:13;;;16624:1;16616:13;16609:20;;16532:105;;;;:::o;4770:98::-;4828:7;4859:1;4855;:5;;;;:::i;:::-;4848:12;;4770:98;;;;:::o;10199:223::-;10291:1;10271:22;;:8;:22;;;;10263:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;10379:8;10350:38;;10371:6;;;;;;;;;;10350:38;;;;;;;;;;;;10406:8;10397:6;;:17;;;;;;;;;;;;;;;;;;10199:223;:::o;7:126:1:-;44:7;84:42;77:5;73:54;62:65;;7:126;;;:::o;139:96::-;176:7;205:24;223:5;205:24;:::i;:::-;194:35;;139:96;;;:::o;241:118::-;328:24;346:5;328:24;:::i;:::-;323:3;316:37;241:118;;:::o;365:222::-;458:4;496:2;485:9;481:18;473:26;;509:71;577:1;566:9;562:17;553:6;509:71;:::i;:::-;365:222;;;;:::o;593:77::-;630:7;659:5;648:16;;593:77;;;:::o;676:118::-;763:24;781:5;763:24;:::i;:::-;758:3;751:37;676:118;;:::o;800:222::-;893:4;931:2;920:9;916:18;908:26;;944:71;1012:1;1001:9;997:17;988:6;944:71;:::i;:::-;800:222;;;;:::o;1109:117::-;1218:1;1215;1208:12;1355:122;1428:24;1446:5;1428:24;:::i;:::-;1421:5;1418:35;1408:63;;1467:1;1464;1457:12;1408:63;1355:122;:::o;1483:139::-;1529:5;1567:6;1554:20;1545:29;;1583:33;1610:5;1583:33;:::i;:::-;1483:139;;;;:::o;1628:329::-;1687:6;1736:2;1724:9;1715:7;1711:23;1707:32;1704:119;;;1742:79;;:::i;:::-;1704:119;1862:1;1887:53;1932:7;1923:6;1912:9;1908:22;1887:53;:::i;:::-;1877:63;;1833:117;1628:329;;;;:::o;1963:122::-;2036:24;2054:5;2036:24;:::i;:::-;2029:5;2026:35;2016:63;;2075:1;2072;2065:12;2016:63;1963:122;:::o;2091:139::-;2137:5;2175:6;2162:20;2153:29;;2191:33;2218:5;2191:33;:::i;:::-;2091:139;;;;:::o;2236:474::-;2304:6;2312;2361:2;2349:9;2340:7;2336:23;2332:32;2329:119;;;2367:79;;:::i;:::-;2329:119;2487:1;2512:53;2557:7;2548:6;2537:9;2533:22;2512:53;:::i;:::-;2502:63;;2458:117;2614:2;2640:53;2685:7;2676:6;2665:9;2661:22;2640:53;:::i;:::-;2630:63;;2585:118;2236:474;;;;;:::o;2716:329::-;2775:6;2824:2;2812:9;2803:7;2799:23;2795:32;2792:119;;;2830:79;;:::i;:::-;2792:119;2950:1;2975:53;3020:7;3011:6;3000:9;2996:22;2975:53;:::i;:::-;2965:63;;2921:117;2716:329;;;;:::o;3051:169::-;3135:11;3169:6;3164:3;3157:19;3209:4;3204:3;3200:14;3185:29;;3051:169;;;;:::o;3226:182::-;3366:34;3362:1;3354:6;3350:14;3343:58;3226:182;:::o;3414:366::-;3556:3;3577:67;3641:2;3636:3;3577:67;:::i;:::-;3570:74;;3653:93;3742:3;3653:93;:::i;:::-;3771:2;3766:3;3762:12;3755:19;;3414:366;;;:::o;3786:419::-;3952:4;3990:2;3979:9;3975:18;3967:26;;4039:9;4033:4;4029:20;4025:1;4014:9;4010:17;4003:47;4067:131;4193:4;4067:131;:::i;:::-;4059:139;;3786:419;;;:::o;4211:180::-;4259:77;4256:1;4249:88;4356:4;4353:1;4346:15;4380:4;4377:1;4370:15;4397:305;4437:3;4456:20;4474:1;4456:20;:::i;:::-;4451:25;;4490:20;4508:1;4490:20;:::i;:::-;4485:25;;4644:1;4576:66;4572:74;4569:1;4566:81;4563:107;;;4650:18;;:::i;:::-;4563:107;4694:1;4691;4687:9;4680:16;;4397:305;;;;:::o;4708:191::-;4748:4;4768:20;4786:1;4768:20;:::i;:::-;4763:25;;4802:20;4820:1;4802:20;:::i;:::-;4797:25;;4841:1;4838;4835:8;4832:34;;;4846:18;;:::i;:::-;4832:34;4891:1;4888;4884:9;4876:17;;4708:191;;;;:::o;4905:180::-;4953:77;4950:1;4943:88;5050:4;5047:1;5040:15;5074:4;5071:1;5064:15;5091:185;5131:1;5148:20;5166:1;5148:20;:::i;:::-;5143:25;;5182:20;5200:1;5182:20;:::i;:::-;5177:25;;5221:1;5211:35;;5226:18;;:::i;:::-;5211:35;5268:1;5265;5261:9;5256:14;;5091:185;;;;:::o;5282:348::-;5322:7;5345:20;5363:1;5345:20;:::i;:::-;5340:25;;5379:20;5397:1;5379:20;:::i;:::-;5374:25;;5567:1;5499:66;5495:74;5492:1;5489:81;5484:1;5477:9;5470:17;5466:105;5463:131;;;5574:18;;:::i;:::-;5463:131;5622:1;5619;5615:9;5604:20;;5282:348;;;;:::o;5636:225::-;5776:34;5772:1;5764:6;5760:14;5753:58;5845:8;5840:2;5832:6;5828:15;5821:33;5636:225;:::o;5867:366::-;6009:3;6030:67;6094:2;6089:3;6030:67;:::i;:::-;6023:74;;6106:93;6195:3;6106:93;:::i;:::-;6224:2;6219:3;6215:12;6208:19;;5867:366;;;:::o;6239:419::-;6405:4;6443:2;6432:9;6428:18;6420:26;;6492:9;6486:4;6482:20;6478:1;6467:9;6463:17;6456:47;6520:131;6646:4;6520:131;:::i;:::-;6512:139;;6239:419;;;:::o

Swarm Source

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