Contract 0xa99ef72e0c49440af1e861f66257425cfcb558ca 2

 
 
Txn Hash
Block
From
To
Value [Txn Fee]
0x7148d3cd5d62567207edd1bdd182e48edd8909d4260a68ed4b34a65db647e19194222452021-07-24 0:11:089 days 16 hrs ago0xb962c6df1973c9d28cfd856ab1a7098ce0a2b77a IN  0xa99ef72e0c49440af1e861f66257425cfcb558ca0 BNB0.00025044
0x0334ad2c96d1a46136639c4ffecc78945fd35d2421eb74ccb538cd6ad0e80a0988819812021-07-05 5:19:0728 days 11 hrs ago0xfb89996c9f6c0747d25f4e1bb2a73ae261a75e93 IN  0xa99ef72e0c49440af1e861f66257425cfcb558ca0 BNB0.000287765
0x749d14f7b3424a81a4c5716cb2fba05583c4b75441614b6fe5f12df7cd2e361980141922021-06-04 21:46:3558 days 18 hrs ago0xb6482c025ccc5f4f00f5751efafcac8bb00905c2 IN  0xa99ef72e0c49440af1e861f66257425cfcb558ca0 BNB0.000287765
0xf6198c7105e77df636ce1858e869ec13a9265c7f4c3d38892b7436b80f4f13ea78649922021-05-30 16:59:4363 days 23 hrs ago0xc1a5fc5f62908d3bc731b9f46fb80e8af8976a53 IN  0xa99ef72e0c49440af1e861f66257425cfcb558ca0 BNB0.0002219
0x2ff109395edca590acfb6a326922fe8c8d69693376d3ceab2ec9a295e9d9733b78156392021-05-28 23:44:1365 days 16 hrs ago0xc1a5fc5f62908d3bc731b9f46fb80e8af8976a53 IN  0xa99ef72e0c49440af1e861f66257425cfcb558ca0 BNB0.0002219
0xcee862f8d617fae55b0f7bda05140cf882853c68383f4928210b5e27b0605ba077818702021-05-27 19:30:1666 days 21 hrs ago0xc1a5fc5f62908d3bc731b9f46fb80e8af8976a53 IN  0xa99ef72e0c49440af1e861f66257425cfcb558ca0 BNB0.0002219
0x39265bc0bda9802ab43dd682c642042fc980cbd02184b969f1b8728b7965b5af77576962021-05-26 23:14:1367 days 17 hrs ago0xc1a5fc5f62908d3bc731b9f46fb80e8af8976a53 IN  0xa99ef72e0c49440af1e861f66257425cfcb558ca0 BNB0.0002219
0x73cded327d7427a7a410a726770ba720e5b5da8beb0d59ea5198c2ece35973e476412612021-05-22 21:38:1771 days 18 hrs ago0xc1a5fc5f62908d3bc731b9f46fb80e8af8976a53 IN  0xa99ef72e0c49440af1e861f66257425cfcb558ca0 BNB0.0002219
0x59c13d0a7d3b8f30dbd86d7d8f97f644d53eea50a5f9e1001de0fd2091f7fee975684982021-05-20 8:43:2074 days 7 hrs ago0x0c52fc1af796ecd01c3d8ba1f6c232236fc93afc IN  0xa99ef72e0c49440af1e861f66257425cfcb558ca0 BNB0.00025044
0x5eae7046bd90b976c9160021395bd8b3339a322194d9510b0edc29b0bf5fe5f275489972021-05-19 16:24:2975 days 10 mins ago0x192a701738bffd54f2368aad99be17deaa8b2b51 IN  0xa99ef72e0c49440af1e861f66257425cfcb558ca0 BNB0.00033594
0x80ad9d06780ec284d34913fee8e5f1e5053513a801d9359f737020a5dafe985675283322021-05-18 22:50:2275 days 17 hrs ago0xc1a5fc5f62908d3bc731b9f46fb80e8af8976a53 IN  0xa99ef72e0c49440af1e861f66257425cfcb558ca0 BNB0.0002219
0x55cf4241ce3d992f7d94ab50f49fa7641e5ac543a561b30da197de77751130bc74998872021-05-17 22:40:4276 days 17 hrs ago0x44604d27bde0d069e17b4ab70f9231c58a798789 IN  0xa99ef72e0c49440af1e861f66257425cfcb558ca0 BNB0.000190985
0x2e23a8485e55e9753f4a813dd349f2df4df8c819a560a28a8f8efbff612d83b574985792021-05-17 21:35:1876 days 19 hrs ago0xa24daa1b627e9da04f9a3cec47a51ae913e3fbfd IN  0xa99ef72e0c49440af1e861f66257425cfcb558ca0 BNB0.000287765
0x971653d4840dcfea66f2f0a6e9914ff0a9c532a280934237288d693eb9cc92e474620242021-05-16 14:43:5878 days 1 hr ago0x192a701738bffd54f2368aad99be17deaa8b2b51 IN  0xa99ef72e0c49440af1e861f66257425cfcb558ca0 BNB0.00030529
0x03d2380c0a0202191c1ce402a3d7f5a87499c243ec4263b13d591857459335b774398132021-05-15 20:01:2278 days 20 hrs ago0xc1a5fc5f62908d3bc731b9f46fb80e8af8976a53 IN  0xa99ef72e0c49440af1e861f66257425cfcb558ca0 BNB0.0002219
0xf5ba6ff66109f3363cfee0d4805980b685b06385d00adfa2bd4146fd38b8b38474398032021-05-15 20:00:5278 days 20 hrs ago0xc1a5fc5f62908d3bc731b9f46fb80e8af8976a53 IN  0xa99ef72e0c49440af1e861f66257425cfcb558ca0 BNB0.000114095
0x95aeda39916bbab12501223ca3411d3d9bf4b9e4e677843b89b055db8935428774397802021-05-15 19:59:4378 days 20 hrs ago0xc1a5fc5f62908d3bc731b9f46fb80e8af8976a53 IN  0xa99ef72e0c49440af1e861f66257425cfcb558ca0 BNB0.000114095
0xc690db01c2b8aeaa0ec00d4c3d60d3c9b635e68168b7f24b0c772904ebe1d54674102872021-05-14 18:45:0279 days 21 hrs ago0x02dc498cce422fbb002451b179a8f9cd82e46fb1 IN  0xa99ef72e0c49440af1e861f66257425cfcb558ca0 BNB0.000287765
0x48d61eb66beac04f76c42fed97a1c626645f4582ffc29104be6057bed298e04a73866512021-05-13 22:47:4780 days 17 hrs ago0xc1a5fc5f62908d3bc731b9f46fb80e8af8976a53 IN  0xa99ef72e0c49440af1e861f66257425cfcb558ca0 BNB0.0002219
0x3b6184a1b34a0b880e1c5c6f88b3d0aa86d85cea496f8dc92248fe3fc30af90b73551752021-05-12 20:06:0181 days 20 hrs ago0xc1a5fc5f62908d3bc731b9f46fb80e8af8976a53 IN  0xa99ef72e0c49440af1e861f66257425cfcb558ca0 BNB0.0002219
0xd9f7283da9ba6be1833e46ee72c4ed25d4d3d492d4ab9fb9d911ab37e10fe42072779152021-05-09 19:56:1284 days 20 hrs ago0x96c2b4e95d761f50282ba20c6bffc59c96c7be18 IN  0xa99ef72e0c49440af1e861f66257425cfcb558ca0 BNB0.000190985
0x0f2531018432c48cbb1e3b4b7c76e46d4da1e54b8c00e20a57e7509e8982d16672538732021-05-08 22:48:2185 days 17 hrs ago0xc1a5fc5f62908d3bc731b9f46fb80e8af8976a53 IN  0xa99ef72e0c49440af1e861f66257425cfcb558ca0 BNB0.0002219
0xd51d3d10365147d73eb1a7211e3761805e6bd65f5eb5b89ea3a7f960e0edfd1072430222021-05-08 13:09:4986 days 3 hrs ago0xc1a5fc5f62908d3bc731b9f46fb80e8af8976a53 IN  0xa99ef72e0c49440af1e861f66257425cfcb558ca0 BNB0.0002219
0x19868262e705eba7ab90ffda18da915d4df59716efbf2de2c974e516b02332ca72366062021-05-08 7:46:0786 days 8 hrs ago0xc7145dab012ac442f01dedd3001428cde2da918f IN  0xa99ef72e0c49440af1e861f66257425cfcb558ca0 BNB0.00025044
0xd6bbed39fbac033ac52fc545c477ce5c72821a147e12bf2df68e5ea2464fa32572259642021-05-07 22:43:4986 days 17 hrs ago0xc1a5fc5f62908d3bc731b9f46fb80e8af8976a53 IN  0xa99ef72e0c49440af1e861f66257425cfcb558ca0 BNB0.0002219
[ Download CSV Export 
Latest 25 internal transaction
Parent Txn Hash Block From To Value
0x8533b2c60ef1fc676971ccdb238900529543db31ce20454e75f03faf20fcc8e269924022021-04-29 16:56:4494 days 23 hrs ago 0xa99ef72e0c49440af1e861f66257425cfcb558ca0x4c6872ba1244b037a3ba37eba0e9cf0812f391b60.736665079774151706 BNB
0x9180264093117bd832690e46c724da789b2b3fd2ea6eaed8a77d0a6138a14ba069923302021-04-29 16:53:0894 days 23 hrs ago 0xa99ef72e0c49440af1e861f66257425cfcb558ca0x25d5e553ac28291df12d940ce5b2cc1297ed52f30.149904053057158319 BNB
0x62faa3357aef91f12b19890cbea2af330052916283f415a5792d4fa93ccef30869919412021-04-29 16:33:4195 days 1 min ago 0xa99ef72e0c49440af1e861f66257425cfcb558ca0x0db407e7128daaab17a87c3830982c3af97bd30a0.913430867168689975 BNB
0x2e7a8ff29859f9ad5b38965d091a9f7f63e03b838bd5fe8a1b5fbadce092dab169916172021-04-29 16:17:2995 days 17 mins ago 0xa99ef72e0c49440af1e861f66257425cfcb558ca0xdaaf7fd22fd86969457f6085334eb224084fee930.06 BNB
0x2e7a8ff29859f9ad5b38965d091a9f7f63e03b838bd5fe8a1b5fbadce092dab169916172021-04-29 16:17:2995 days 17 mins ago 0xa99ef72e0c49440af1e861f66257425cfcb558ca0x5a18e17a9391703c92c9c99b23abd7837fbdceee0.14 BNB
0xa45b85873ed8ec873e354e73c76ef95a98538494a59efab2a5f7dc84a1ec99ee68853072021-04-25 23:05:0098 days 17 hrs ago 0xa99ef72e0c49440af1e861f66257425cfcb558ca0xda8c0c9078c0782f6d891d365d49e89885e9e2810.1 BNB
0x4b9117e3b618d0309a93a164e3dead51b5886283146d7e24d49a09bc0a9efbd068852012021-04-25 22:59:4298 days 17 hrs ago 0xa99ef72e0c49440af1e861f66257425cfcb558ca0xfecaa3ae23f3def82b48c611805c019c3bde7b9c0.18 BNB
0xe412ddbcbc50408af4417112e2029a11c3e5d2285bfc18cee9cd110a1ce9953668851732021-04-25 22:58:1898 days 17 hrs ago 0xa99ef72e0c49440af1e861f66257425cfcb558ca0xdaaf7fd22fd86969457f6085334eb224084fee930.006 BNB
0xe412ddbcbc50408af4417112e2029a11c3e5d2285bfc18cee9cd110a1ce9953668851732021-04-25 22:58:1898 days 17 hrs ago 0xa99ef72e0c49440af1e861f66257425cfcb558ca0x5a18e17a9391703c92c9c99b23abd7837fbdceee0.014 BNB
0x5a8fe44618b20c5ffdc9e33ee6a7929db1b63602e2586ff2f39d49a986ee5b7c68445312021-04-24 12:57:42100 days 3 hrs ago 0xa99ef72e0c49440af1e861f66257425cfcb558ca0x4fde9691234df569f6818457f0a475a29008e42c0.235553664692396538 BNB
0x37265aff01579e6997567511b92a0f4d9ec7d8e08729fffebe0573329de38b0068445262021-04-24 12:57:25100 days 3 hrs ago 0xa99ef72e0c49440af1e861f66257425cfcb558ca0xa664bf3de4379d56b9813ffb60ad4300690627180.007302329375 BNB
0xa6ee51d3da3369941785fd7209dfa5f84329ef2d59267a356175f2e0d6e3b96068444712021-04-24 12:54:27100 days 3 hrs ago 0xa99ef72e0c49440af1e861f66257425cfcb558ca0xb33d9d558c59f21324ffa881c31d5a3853113e130.011646657361111111 BNB
0x26fd20c209b3f2cfffe115ecc8afb83c91450c17ed0c678717d13725bc183d6568444602021-04-24 12:53:54100 days 3 hrs ago 0xa99ef72e0c49440af1e861f66257425cfcb558ca0xc74ac55874bdfa7822dbdc462f97e4175b8321dd0.072348968125 BNB
0xcf4f1be79aa40592569bdeecd56b504630135584d1f043be6972c8096456d44368443392021-04-24 12:47:51100 days 3 hrs ago 0xa99ef72e0c49440af1e861f66257425cfcb558ca0x7a1a0a473e877a7981acea6b0fbd4e883024cb2c0.123148380446492351 BNB
0x11169ae04943d379bec9aa57572e8ad0ce5c4d2175b17a038faa31cedc5ed36568442512021-04-24 12:43:27100 days 3 hrs ago 0xa99ef72e0c49440af1e861f66257425cfcb558ca0xdaaf7fd22fd86969457f6085334eb224084fee930.015 BNB
0x11169ae04943d379bec9aa57572e8ad0ce5c4d2175b17a038faa31cedc5ed36568442512021-04-24 12:43:27100 days 3 hrs ago 0xa99ef72e0c49440af1e861f66257425cfcb558ca0x5a18e17a9391703c92c9c99b23abd7837fbdceee0.035 BNB
0xd6525f3c2cf01187c522dc43e3c09c8072f51cd413c84183dfc7256dad5923d668440832021-04-24 12:35:03100 days 4 hrs ago 0xa99ef72e0c49440af1e861f66257425cfcb558ca0x8c8123c7389192fd0386d226feaef50224e17d180.357090404024629429 BNB
0x858465e6f1b153f4d25603d8a22405e66112e0c4a3f50f83641f6b316212d75468439722021-04-24 12:29:30100 days 4 hrs ago 0xa99ef72e0c49440af1e861f66257425cfcb558ca0xa33a87d6c28dc54247c794fcbc3ad285002efaa40.090647553076562603 BNB
0xd4aac20a15bbcb2ed920b591db19cb264e8f617c7c1a6dfa79b7422d0d0906fa68439092021-04-24 12:26:21100 days 4 hrs ago 0xa99ef72e0c49440af1e861f66257425cfcb558ca0x0921c402d3ceefb4b9a1049d96c8bfde9d9e76f30.011935969895833332 BNB
0x9c75db1b0658e68b352f368e75ff2489d9e26fc0128698e399813d03e0047e0d68438742021-04-24 12:24:36100 days 4 hrs ago 0xa99ef72e0c49440af1e861f66257425cfcb558ca0x721743f94266bec5be857741d5ca681a03788ebb0.001063174479166666 BNB
0xd16cd4e0dd43b20255cf584b8ba38d9e2bdb3c8f69f4027d4711c92c931c15fe68438612021-04-24 12:23:57100 days 4 hrs ago 0xa99ef72e0c49440af1e861f66257425cfcb558ca0x4c6872ba1244b037a3ba37eba0e9cf0812f391b60.061921041145833333 BNB
0xc8e279b145b2de473442a2cab90dda9eac76c90ee454e63b058432a89fa274b068437442021-04-24 12:18:06100 days 4 hrs ago 0xa99ef72e0c49440af1e861f66257425cfcb558ca0xc4d8bfeda813402883780691373c8acf5be4b1d60.00955293111111111 BNB
0x4f0f366e267493161f46a028872e9cfdfdea6743576d30304a318e21a228cc8b68435312021-04-24 12:07:27100 days 4 hrs ago 0xa99ef72e0c49440af1e861f66257425cfcb558ca0x6f706a162df0d688c8b8363b9f484034e88be9c00.390311768144423796 BNB
0x7a4573918f7f026947c42ab2d0712d5f326de74788273e6d0a838a69f305b12d68435002021-04-24 12:05:54100 days 4 hrs ago 0xa99ef72e0c49440af1e861f66257425cfcb558ca0xee2a27eb5c1d3c4c6c4f09e98106d9924a67c21b0.877477158122439731 BNB
0xa29d4c3506a3ec0049344cd26d51e0f77e0a9078bd7069a03aaec04f468cea5168434912021-04-24 12:05:26100 days 4 hrs ago 0xa99ef72e0c49440af1e861f66257425cfcb558ca0xdaaf7fd22fd86969457f6085334eb224084fee930.06 BNB
[ Download CSV Export 
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
TurboSTAKE

Compiler Version
v0.8.3+commit.8d00100c

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at BscScan.com on 2021-04-07
*/

// SPDX-License-Identifier: MIT 
 
 /*   TurboSTAKE - investment platform based on Binance Smart Chain blockchain smart-contract technology. Safe and legit!
 *   
 *   [USAGE INSTRUCTION]
 *
 *   1) Connect browser extension Metamask (see help: https://academy.binance.com/en/articles/connecting-metamask-to-binance-smart-chain )
 *   2) Choose one of the tariff plans, enter the BNB amount (0.05 BNB minimum) using our website "Stake BNB" button
 *   3) Wait for your earnings
 *   4) Withdraw earnings any time using our website "Withdraw" button
 *
 *   [INVESTMENT CONDITIONS]
 *
 *   - Basic interest rate: +0.3% every 24 hours (~0.02% hourly) - only for new deposits
 *   - Days reduction plan: Plans length reduces -0.25 days every day.
 *   - Lottery Bonus: Earn +0.002% per participation.
 *   - Ref Bonus: Earn an Additional +0.1% for every 10 users you invite.
 *   - Minimal deposit: 0.05 BNB, no maximal limit
 *   - Total income: based on your tarrif plan (from 4.5% to 7.5% daily!!!) + Basic interest rate !!!
 *   - Earnings every moment, withdraw any time 
 *
 *   [AFFILIATE PROGRAM]
 *
 *   - 3-level referral commission: 5% - 2.5% - 0.5%
 *
 *   [FUNDS DISTRIBUTION]
 *
 *   - 82% Platform main balance, participants payouts
 *   - 7% Advertising and promotion expenses
 *   - 8% Affiliate program bonuses
 *   - 3% Support work, technical functioning, administration fee
 */

pragma solidity 0.8.3;
contract TurboSTAKE {
	using SafeMath for uint256;

	uint256 constant public INVEST_MIN_AMOUNT = 0.05 ether;
	uint256[] public REFERRAL_PERCENTS = [50e2, 25e2, 5e2];
	uint256 constant public PROJECT_FEE = 30e2;
	uint256 constant public MARKETING_FEE = 70e2;
	uint256 constant public PERCENT_STEP = 3e2;
	uint256 constant public PERCENTS_DIVIDER = 1000e2;
	uint256 constant public DECREASE_DAY_STEP = 0.25 days; //0.25 days
	uint256 constant public TIME_STEP = 1 days; //1 days
	uint256 internal constant LOTTOBONUS = 2;
    uint256 internal constant LOTTOTICKET = 0.01 ether;
    uint256[] internal LOTTO_WIN_PERCENT = [25, 15, 10, 5, 2];
    uint256 constant internal LOTTO_TICKET_LIMIT = 50; // 50 Entrys Lotto
    uint256 constant internal LOTTO_USER_LIMIT = 10; // 10 Entrys Lotto per user
    uint256 constant internal REF_STEP = 10; // 10 Refs level 1
    

	uint256 public totalStaked;
	uint256 public totalRefBonus;
	
	uint256 public startUNIX;
	address payable public marketingAddress;
    address payable public projectAddress;
	
	uint256 lottoBag;
    uint256 lottoCurrentPot;
    uint256 lottoCycles;
    uint256 lottoCurrentTicketsCount;
    uint256 lottoLastTicket;
    uint256 lottoTotalTicketsCount;
    address lottoLastWin1a;
    address lottoLastWin2a;
    address lottoLastWin3a;
    address lottoLastWin4a;
    address lottoLastWin5a;
    uint256 PLastWin1;
    uint256 PLastWin2;
    uint256 PLastWin3;
    uint256 PLastWin4;
    uint256 PLastWin5;


    struct cLotto {
      address lottoId;
      uint256 ticketNumber;
    }
    struct nLotto {
      cLotto[] currentLotto;
    }

    struct Plan {
        uint256 time;
        uint256 percent;
    }

    Plan[] internal plans;
	struct Deposit {
        uint8 plan;
		uint256 percent;
		uint256 amount;
		uint256 profit;
		uint256 start;
		uint256 finish;
		bool force;
	}

	struct User {
		Deposit[] deposits;
		uint256 checkpoint;
		address referrer;
		uint256[3] levels;
		uint256 bonus;
		uint256 totalBonus;
		uint256 lottobonus;
        uint256 lottoparticipations;
        uint256 lottolimit;
	}

	mapping (address => User) internal users;
	mapping (uint256 => nLotto) internal nlottos;

	event Newbie(address user);
	event NewDeposit(address indexed user, uint8 plan, uint256 percent, uint256 amount, uint256 profit, uint256 start, uint256 finish);
	event Withdrawn(address indexed user, uint256 amount);
	event RefBonus(address indexed referrer, address indexed referral, uint256 indexed level, uint256 amount);
	event FeePayed(address indexed user, uint256 totalAmount);
	event NewParticipantLotto(address indexed user, uint256 amount, uint256 pt);

	constructor(address payable marketingAddr,uint256 startDate) {
        require(!isContract(marketingAddr), "!marketingAddr");
		require(startDate > 0);
		marketingAddress = marketingAddr;
        projectAddress = payable(msg.sender);
		startUNIX = startDate;

        plans.push(Plan(14, 75e2));
        plans.push(Plan(21, 55e2));
        plans.push(Plan(28, 45e2));
        plans.push(Plan(14, 75e2));
        plans.push(Plan(21, 55e2));
        plans.push(Plan(28, 45e2));
	}
    
    function FeePayout(uint256 msgValue) internal{
    marketingAddress.transfer(msgValue.mul(MARKETING_FEE).div(PERCENTS_DIVIDER));
    projectAddress.transfer(msgValue.mul(PROJECT_FEE).div(PERCENTS_DIVIDER));
    emit FeePayed(msg.sender,msgValue.mul(MARKETING_FEE.add(PROJECT_FEE)).div(PERCENTS_DIVIDER));
    }

	function invest(address referrer, uint8 plan) public payable {
	    require(block.timestamp >= startUNIX ,"Not Launch");
		require(msg.value >= INVEST_MIN_AMOUNT);
        require(plan < 6, "Invalid plan");

		FeePayout(msg.value);

		User storage user = users[msg.sender];
		if (user.referrer == address(0)) {
			if (users[referrer].deposits.length > 0 && referrer != msg.sender) {
				user.referrer = referrer;
			}
			address upline = user.referrer;
			for (uint256 i = 0; i < 3; i++) {
				if (upline != address(0)) {
					users[upline].levels[i] = users[upline].levels[i].add(1);
					upline = users[upline].referrer;
				} else break;
			}
		}

		if (user.referrer != address(0)) {
			address upline = user.referrer;
			for (uint256 i = 0; i < 3; i++) {
				if (upline != address(0)) {
					uint256 amount = msg.value.mul(REFERRAL_PERCENTS[i]).div(PERCENTS_DIVIDER);
					users[upline].bonus = users[upline].bonus.add(amount);
					users[upline].totalBonus = users[upline].totalBonus.add(amount);
					emit RefBonus(upline, msg.sender, i, amount);
					upline = users[upline].referrer;
				} else break;
			}
		}

		if (user.deposits.length == 0) {
			user.checkpoint = block.timestamp;
			emit Newbie(msg.sender);
		}
		
		(uint256 percent, uint256 profit, , uint256 finish) = getResult(plan, msg.value);
        user.deposits.push(Deposit(plan, percent, msg.value, profit, block.timestamp, finish, true));

		totalStaked = totalStaked.add(msg.value);
		emit NewDeposit(msg.sender, plan, percent, msg.value, profit, block.timestamp, finish);
	}
	
	function withdraw() public {
        User storage user = users[msg.sender];
        uint256 totalAmount = getUserDividends(msg.sender);
        uint256 referralBonus = getUserReferralBonus(msg.sender);
        if (referralBonus > 0) {
            user.bonus = 0;
            totalAmount = totalAmount.add(referralBonus);
        }
        require(totalAmount > 0, "User has no dividends");
        uint256 contractBalance = address(this).balance;
        if (contractBalance < totalAmount) {
            totalAmount = contractBalance;
        }
        user.checkpoint = block.timestamp;
        for (uint256 i = 0; i < user.deposits.length; i++) {
            if (user.checkpoint < user.deposits[i].finish) {
                if (user.deposits[i].plan < 3) {
                    user.deposits[i].force = false;
                } else if (block.timestamp > user.deposits[i].finish) {
                    user.deposits[i].force = false;
                }
            }
        }
        payable(msg.sender).transfer(totalAmount);
        emit Withdrawn(msg.sender, totalAmount);
    }
	
	function lottoDeposit(uint256 nt) external payable {
        require(!isContract(msg.sender) && msg.sender == tx.origin);
        User storage user = users[msg.sender];
        require(user.deposits.length > 0 ,"Deposit is require first");
        require(nt >= 1, "Minimum number of tickets is 1");
        require(LOTTO_TICKET_LIMIT >= nt.add(lottoCurrentTicketsCount) && LOTTO_USER_LIMIT >= nt.add(user.lottolimit), "Maximum number of tickets exceed"); 
        require(msg.value == nt.mul(LOTTOTICKET), "Wrong Amount");
        nLotto storage nlotto = nlottos[lottoCycles];
        
        lottoTotalTicketsCount = lottoTotalTicketsCount.add(nt);
        lottoCurrentTicketsCount = lottoCurrentTicketsCount.add(nt);
        user.lottoparticipations = user.lottoparticipations.add(nt);
        user.lottolimit = user.lottolimit.add(nt);
        
        lottoCurrentPot = lottoCurrentPot.add(msg.value); 
        
        
        for(uint256 i = 1; i <= nt; i++) {
            nlotto.currentLotto.push(cLotto(msg.sender, lottoLastTicket.add(1)));
            lottoLastTicket++;
        } 
            emit NewParticipantLotto(msg.sender, msg.value, lottoLastTicket);
            
        if (lottoCurrentTicketsCount == LOTTO_TICKET_LIMIT) {
            payLottoWin();
            
            lottoCurrentPot = 0;
            lottoCurrentTicketsCount = 0;
            lottoLastTicket = 0;
            lottoCycles++;
        }
    }
    
    function getRaceWin(uint256 fr, uint256 to, uint256 mud) view internal returns (uint256) { 
        uint256 A = (minZero(to, fr)).add(1);
        uint256 B = fr;
        uint256 value = uint256(uint256(keccak256(abi.encode(block.timestamp.mul(mud), block.difficulty.mul(mud)))).mod(A)).add(B); 
        return value;
    }
    
        function payLottoWin() internal {
         nLotto storage nlotto = nlottos[lottoCycles];   
            
        uint256 win1 = getRaceWin(1, LOTTO_TICKET_LIMIT, 1);
        uint256 win2 = getRaceWin(1, LOTTO_TICKET_LIMIT, 2);
        uint256 win3 = getRaceWin(1, LOTTO_TICKET_LIMIT, 3);
        uint256 win4 = getRaceWin(1, LOTTO_TICKET_LIMIT, 4);
        uint256 win5 = getRaceWin(1, LOTTO_TICKET_LIMIT, 5);
        uint256 profit;
       
        FeePayout(lottoCurrentPot);
        
        uint256 da = lottoCurrentPot; 
        if (lottoBag > 0){
            uint256 LBM = lottoBag.div(20);    
            lottoCurrentPot = lottoCurrentPot.add(LBM);
            lottoBag = lottoBag.sub(LBM);
            }
        
        lottoBag = lottoBag.add(da.mul(12).div(100));
        
        for(uint256 i = 0; i < LOTTO_TICKET_LIMIT; i++) {
            
            if (users[nlotto.currentLotto[i].lottoId].lottolimit != 0) {
                users[nlotto.currentLotto[i].lottoId].lottolimit = 0;
           }
            
           if (nlotto.currentLotto[i].ticketNumber == win1) {
               profit = (lottoCurrentPot.mul(LOTTO_WIN_PERCENT[0])).div(100);
               payable(address(uint160(nlotto.currentLotto[i].lottoId))).transfer(profit);
               users[nlotto.currentLotto[i].lottoId].lottobonus = (users[nlotto.currentLotto[i].lottoId].lottobonus).add(profit);
               lottoLastWin1a = nlotto.currentLotto[i].lottoId;
               PLastWin1 = profit;
           }
           if (nlotto.currentLotto[i].ticketNumber == win2) {
               profit = (lottoCurrentPot.mul(LOTTO_WIN_PERCENT[1])).div(100);
               payable(address(uint160(nlotto.currentLotto[i].lottoId))).transfer(profit);
               users[nlotto.currentLotto[i].lottoId].lottobonus = (users[nlotto.currentLotto[i].lottoId].lottobonus).add(profit);
               lottoLastWin2a = nlotto.currentLotto[i].lottoId;
               PLastWin2 = profit;
           }
           if (nlotto.currentLotto[i].ticketNumber == win3) {
              profit = (lottoCurrentPot.mul(LOTTO_WIN_PERCENT[2])).div(100);
              payable(address(uint160(nlotto.currentLotto[i].lottoId))).transfer(profit);
              users[nlotto.currentLotto[i].lottoId].lottobonus = (users[nlotto.currentLotto[i].lottoId].lottobonus).add(profit);
              lottoLastWin3a = nlotto.currentLotto[i].lottoId;
              PLastWin3 = profit;
           }
           if (nlotto.currentLotto[i].ticketNumber == win4) {
              profit = (lottoCurrentPot.mul(LOTTO_WIN_PERCENT[3])).div(100);
              payable(address(uint160(nlotto.currentLotto[i].lottoId))).transfer(profit);
              users[nlotto.currentLotto[i].lottoId].lottobonus = (users[nlotto.currentLotto[i].lottoId].lottobonus).add(profit);
              lottoLastWin4a = nlotto.currentLotto[i].lottoId;
              PLastWin4 = profit;
           }
           if (nlotto.currentLotto[i].ticketNumber == win5) {
               profit = (lottoCurrentPot.mul(LOTTO_WIN_PERCENT[4])).div(100);
               payable(address(uint160(nlotto.currentLotto[i].lottoId))).transfer(profit);
              users[nlotto.currentLotto[i].lottoId].lottobonus = (users[nlotto.currentLotto[i].lottoId].lottobonus).add(profit);
              lottoLastWin5a = nlotto.currentLotto[i].lottoId;
              PLastWin5 = profit;
           }
        }
    } 

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

	function getPlanInfo(uint8 plan) public view returns(uint256 time, uint256 percent) {
		time = plans[plan].time;
		percent = plans[plan].percent;
	}

	function getPercent(uint8 plan) public view returns (uint256) {
	    uint256 userLottoRate = getUserLottoRate(msg.sender);
	    uint256 userRefRate = getUserRefRate(msg.sender);
		if (block.timestamp > startUNIX) {
			return plans[plan].percent.add(PERCENT_STEP.mul(block.timestamp.sub(startUNIX)).div(TIME_STEP)).add(userLottoRate).add(userRefRate);
		} else {
			return plans[plan].percent;
		}
    }
	
	function getResult(uint8 plan, uint256 deposit) public view returns ( uint256 percent, uint256 profit, uint256 current, uint256 finish){
        percent = getPercent(plan);
        if (plan < 3) {
            profit = deposit.mul(percent).div(PERCENTS_DIVIDER).mul(plans[plan].time);
        } else if (plan < 6) {
            for (uint256 i = 0; i < plans[plan].time; i++) {
                profit = profit.add((deposit.add(profit)).mul(percent).div(PERCENTS_DIVIDER));
            }
        }
        current = block.timestamp;
        finish = current.add(getDecreaseDays(plans[plan].time));
    }
	
	function getUserDividends(address userAddress) public view returns (uint256){
        User memory user = users[userAddress];

        uint256 totalAmount;
        for (uint256 i = 0; i < user.deposits.length; i++) {
            if (user.checkpoint < user.deposits[i].finish) {
                if (user.deposits[i].plan < 3) {
                    uint256 share = user.deposits[i].amount.mul(user.deposits[i].percent).div(PERCENTS_DIVIDER);
                    uint256 from = user.deposits[i].start > user.checkpoint ? user.deposits[i].start : user.checkpoint;
                    uint256 to = user.deposits[i].finish < block.timestamp ? user.deposits[i].finish : block.timestamp;
                    if (from < to) {
                        uint256 planTime = plans[user.deposits[i].plan].time.mul(TIME_STEP);
                        uint256 redress = planTime.div(getDecreaseDays(plans[user.deposits[i].plan].time));
                        totalAmount = totalAmount.add(share.mul(to.sub(from)).mul(redress).div(TIME_STEP));
                    }
                } else if (block.timestamp > user.deposits[i].finish) {
                    totalAmount = totalAmount.add(user.deposits[i].profit);
                }
            }
        }
        return totalAmount;
    }
	
	function getDecreaseDays(uint256 planTime) public view returns (uint256) {
        uint256 limitDays = TIME_STEP.mul(4);
        uint256 pastDays = block.timestamp.sub(startUNIX).div(TIME_STEP);
        uint256 decreaseDays = pastDays.mul(DECREASE_DAY_STEP);
        if (decreaseDays > limitDays){
        decreaseDays = limitDays;
        }
        uint256 minimumDays = planTime.mul(TIME_STEP).sub(decreaseDays);
        
        return minimumDays;  
        
    }
    
    function getUserRefRate(address userAddress) public view returns (uint256) {
        User storage user = users[userAddress];
        uint256 refsbonus = user.levels[0];
        uint256 RMultiplier = (refsbonus.div(REF_STEP)).mul(100);
            return RMultiplier;
    }
    
    function getUserLottoRate(address userAddress) public view returns (uint256) {
        User storage user = users[userAddress];
        uint256 lottoparticipations = user.lottoparticipations;
        uint256 LMultiplier = LOTTOBONUS.mul(lottoparticipations);
            return LMultiplier;
    }

	function getUserCheckpoint(address userAddress) public view returns(uint256) {
		return users[userAddress].checkpoint;
	}

	function getUserReferrer(address userAddress) public view returns(address) {
		return users[userAddress].referrer;
	}

	function getUserDownlineCount(address userAddress) public view returns(uint256, uint256, uint256) {
		return (users[userAddress].levels[0], users[userAddress].levels[1], users[userAddress].levels[2]);
	}

	function getUserReferralBonus(address userAddress) public view returns(uint256) {
		return users[userAddress].bonus;
	}

	function getUserReferralTotalBonus(address userAddress) public view returns(uint256) {
		return users[userAddress].totalBonus;
	}

	function getUserReferralWithdrawn(address userAddress) public view returns(uint256) {
		return users[userAddress].totalBonus.sub(users[userAddress].bonus);
	}

	function getUserAvailable(address userAddress) public view returns(uint256) {
		return getUserReferralBonus(userAddress).add(getUserDividends(userAddress));
	}

	function getUserAmountOfDeposits(address userAddress) public view returns(uint256) {
		return users[userAddress].deposits.length;
	}

	function getUserTotalDeposits(address userAddress) public view returns(uint256 amount) {
		for (uint256 i = 0; i < users[userAddress].deposits.length; i++) {
			amount = amount.add(users[userAddress].deposits[i].amount);
		}
	}
	
	function getUserDepositInfo(address userAddress, uint256 index) public view returns (uint8 plan, uint256 percent, uint256 amount, uint256 profit, uint256 start, uint256 finish, bool force){
        User memory user = users[userAddress];
        require(index < user.deposits.length, "Invalid index");

        plan = user.deposits[index].plan;
        percent = user.deposits[index].percent;
        amount = user.deposits[index].amount;
        profit = user.deposits[index].profit;
        start = user.deposits[index].start;
        finish = user.deposits[index].finish;
        force = user.deposits[index].force;
    }
	
	function getlottoStats() public view returns (address, address, address, address, address,uint256, uint256, uint256, uint256, uint256, uint256, uint256) {
        return (lottoLastWin1a, lottoLastWin2a, lottoLastWin3a, lottoLastWin4a, lottoLastWin5a ,lottoCycles, lottoCurrentTicketsCount, lottoTotalTicketsCount, 
        LOTTO_TICKET_LIMIT, LOTTOTICKET, lottoCurrentPot, lottoBag);
    }
    
    function getlottoLastPrizes() public view returns (uint256, uint256, uint256, uint256, uint256) {
        return (PLastWin1, PLastWin2, PLastWin3, PLastWin4, PLastWin5);
    }

    function getUserlottoStats(address userAddress) public view returns (uint256, uint256, uint256) {
    User memory user = users[userAddress];
        return (user.lottobonus,user.lottoparticipations,user.lottolimit);
    }

	function isContract(address addr) internal view returns (bool) {
        uint size;
        assembly { size := extcodesize(addr) }
        return size > 0;
    }
    function minZero(uint256 a, uint256 b) internal pure returns(uint256) {
        if (a > b) {
           return a - b; 
        } else {
           return 0;    
        }    
    }   
    function maxVal(uint256 a, uint256 b) internal pure returns(uint256) {
        if (a > b) {
           return a; 
        } else {
           return b;    
        }    
    }
    function minVal(uint256 a, uint256 b) internal pure returns(uint256) {
        if (a > b) {
           return b; 
        } else {
           return a;    
        }    
    }
}

library SafeMath {
    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        require(c >= a, "SafeMath: addition overflow");
        return c;
    }
    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        require(b <= a, "SafeMath: subtraction overflow");
        uint256 c = a - b;
        return c;
    }
    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        if (a == 0) {
            return 0;
        }
        uint256 c = a * b;
        require(c / a == b, "SafeMath: multiplication overflow");
        return c;
    }
    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        require(b > 0, "SafeMath: division by zero");
        uint256 c = a / b;
        return c;
    }
    function mod(uint256 a, uint256 b) internal pure returns (uint256) {
        return a % b;
    }
}

Contract ABI

[{"inputs":[{"internalType":"address payable","name":"marketingAddr","type":"address"},{"internalType":"uint256","name":"startDate","type":"uint256"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint256","name":"totalAmount","type":"uint256"}],"name":"FeePayed","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint8","name":"plan","type":"uint8"},{"indexed":false,"internalType":"uint256","name":"percent","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"profit","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"start","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"finish","type":"uint256"}],"name":"NewDeposit","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"pt","type":"uint256"}],"name":"NewParticipantLotto","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"user","type":"address"}],"name":"Newbie","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"referrer","type":"address"},{"indexed":true,"internalType":"address","name":"referral","type":"address"},{"indexed":true,"internalType":"uint256","name":"level","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"RefBonus","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Withdrawn","type":"event"},{"inputs":[],"name":"DECREASE_DAY_STEP","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"INVEST_MIN_AMOUNT","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MARKETING_FEE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"PERCENTS_DIVIDER","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"PERCENT_STEP","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"PROJECT_FEE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"REFERRAL_PERCENTS","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"TIME_STEP","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getContractBalance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"planTime","type":"uint256"}],"name":"getDecreaseDays","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint8","name":"plan","type":"uint8"}],"name":"getPercent","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint8","name":"plan","type":"uint8"}],"name":"getPlanInfo","outputs":[{"internalType":"uint256","name":"time","type":"uint256"},{"internalType":"uint256","name":"percent","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint8","name":"plan","type":"uint8"},{"internalType":"uint256","name":"deposit","type":"uint256"}],"name":"getResult","outputs":[{"internalType":"uint256","name":"percent","type":"uint256"},{"internalType":"uint256","name":"profit","type":"uint256"},{"internalType":"uint256","name":"current","type":"uint256"},{"internalType":"uint256","name":"finish","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"userAddress","type":"address"}],"name":"getUserAmountOfDeposits","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"userAddress","type":"address"}],"name":"getUserAvailable","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"userAddress","type":"address"}],"name":"getUserCheckpoint","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"userAddress","type":"address"},{"internalType":"uint256","name":"index","type":"uint256"}],"name":"getUserDepositInfo","outputs":[{"internalType":"uint8","name":"plan","type":"uint8"},{"internalType":"uint256","name":"percent","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"profit","type":"uint256"},{"internalType":"uint256","name":"start","type":"uint256"},{"internalType":"uint256","name":"finish","type":"uint256"},{"internalType":"bool","name":"force","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"userAddress","type":"address"}],"name":"getUserDividends","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"userAddress","type":"address"}],"name":"getUserDownlineCount","outputs":[{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"userAddress","type":"address"}],"name":"getUserLottoRate","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"userAddress","type":"address"}],"name":"getUserRefRate","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"userAddress","type":"address"}],"name":"getUserReferralBonus","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"userAddress","type":"address"}],"name":"getUserReferralTotalBonus","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"userAddress","type":"address"}],"name":"getUserReferralWithdrawn","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"userAddress","type":"address"}],"name":"getUserReferrer","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"userAddress","type":"address"}],"name":"getUserTotalDeposits","outputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"userAddress","type":"address"}],"name":"getUserlottoStats","outputs":[{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getlottoLastPrizes","outputs":[{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getlottoStats","outputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"referrer","type":"address"},{"internalType":"uint8","name":"plan","type":"uint8"}],"name":"invest","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"uint256","name":"nt","type":"uint256"}],"name":"lottoDeposit","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"marketingAddress","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"projectAddress","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"startUNIX","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalRefBonus","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalStaked","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"withdraw","outputs":[],"stateMutability":"nonpayable","type":"function"}]

60e060405261138860809081526109c460a0526101f460c052620000289060009060036200035c565b506040805160a08101825260198152600f6020820152600a91810191909152600560608201819052600260808301526200006591600191620003b2565b503480156200007357600080fd5b50604051620034993803806200349983398101604081905262000096916200040c565b813b15620000db5760405162461bcd60e51b815260206004820152600e60248201526d10b6b0b935b2ba34b733a0b2323960911b604482015260640160405180910390fd5b60008111620000e957600080fd5b81600560006101000a8154816001600160a01b0302191690836001600160a01b0316021790555033600660006101000a8154816001600160a01b0302191690836001600160a01b031602179055508060048190555060176040518060400160405280600e8152602001611d4c815250908060018154018082558091505060019003906000526020600020906002020160009091909190915060008201518160000155602082015181600101555050601760405180604001604052806015815260200161157c81525090806001815401808255809150506001900390600052602060002090600202016000909190919091506000820151816000015560208201518160010155505060176040518060400160405280601c815260200161119481525090806001815401808255809150506001900390600052602060002090600202016000909190919091506000820151816000015560208201518160010155505060176040518060400160405280600e8152602001611d4c815250908060018154018082558091505060019003906000526020600020906002020160009091909190915060008201518160000155602082015181600101555050601760405180604001604052806015815260200161157c81525090806001815401808255809150506001900390600052602060002090600202016000909190919091506000820151816000015560208201518160010155505060176040518060400160405280601c8152602001611194815250908060018154018082558091505060019003906000526020600020906002020160009091909190915060008201518160000155602082015181600101555050505062000446565b828054828255906000526020600020908101928215620003a0579160200282015b82811115620003a0578251829061ffff169055916020019190600101906200037d565b50620003ae929150620003f5565b5090565b828054828255906000526020600020908101928215620003a0579160200282015b82811115620003a0578251829060ff16905591602001919060010190620003d3565b5b80821115620003ae5760008155600101620003f6565b600080604083850312156200041f578182fd5b82516001600160a01b038116811462000436578283fd5b6020939093015192949293505050565b61304380620004566000396000f3fe60806040526004361061021a5760003560e01c806369b11dd511610123578063aecaa634116100ab578063d7a3a1221161006f578063d7a3a12214610740578063d7ffca9114610760578063e262113e14610799578063e85abe09146107b4578063f64ab375146107ed5761021a565b8063aecaa6341461066e578063af3e2122146106a3578063c0806b03146106b9578063c234123814610714578063ccf5d75f1461072a5761021a565b80637f75567f116100f25780637f75567f146105c2578063817b1cd2146105e2578063a51b9533146105f8578063a5ece94114610618578063a8aeb6c2146106385761021a565b806369b11dd5146105595780636bb185561461056f5780636f9fb98a1461058f5780637e3abeea146105a25761021a565b806348c37203116101a6578063581c5ae611610175578063581c5ae6146104315780635936cf61146104445780635f9c863014610484578063600d20ce1461049757806365938a60146104b75761021a565b806348c37203146103ac57806348d44bd1146103e55780634aa7c003146103fb57806357fc86b41461041b5761021a565b806332bc298c116101ed57806332bc298c146102ea5780633310a17f1461030157806336144c9a146103215780633ccfd60b146103755780633cf96af11461038c5761021a565b806301c234a81461021f57806303a93c0c14610249578063040a772e146102aa578063153ab9df146102ca575b600080fd5b34801561022b57600080fd5b50610236620186a081565b6040519081526020015b60405180910390f35b34801561025557600080fd5b5061028f610264366004612e8e565b6001600160a01b03166000908152601860205260409020600381015460048201546005909201549092565b60408051938452602084019290925290820152606001610240565b3480156102b657600080fd5b506102366102c5366004612e8e565b610831565b3480156102d657600080fd5b506102366102e5366004612e8e565b610d35565b3480156102f657600080fd5b506102366201518081565b34801561030d57600080fd5b5061023661031c366004612e8e565b610d6c565b34801561032d57600080fd5b5061035d61033c366004612e8e565b6001600160a01b039081166000908152601860205260409020600201541690565b6040516001600160a01b039091168152602001610240565b34801561038157600080fd5b5061038a610da3565b005b34801561039857600080fd5b5060065461035d906001600160a01b031681565b3480156103b857600080fd5b506102366103c7366004612e8e565b6001600160a01b031660009081526018602052604090206007015490565b3480156103f157600080fd5b50610236610bb881565b34801561040757600080fd5b50610236610416366004612e8e565b611023565b34801561042757600080fd5b5061023661012c81565b61038a61043f366004612ed1565b61104c565b34801561045057600080fd5b5061046461045f366004612f35565b611575565b604080519485526020850193909352918301526060820152608001610240565b61038a610492366004612f03565b6116a2565b3480156104a357600080fd5b506102366104b2366004612f03565b6119af565b3480156104c357600080fd5b50600d54600e54600f54601054601154600954600a54600c54600854600754604080516001600160a01b039b8c168152998b1660208b0152978a1697890197909752948816606088015296909216608086015260a085015260c084015260e08301939093526032610100830152662386f26fc1000061012083015261014082019290925261016081019190915261018001610240565b34801561056557600080fd5b5061023660035481565b34801561057b57600080fd5b5061023661058a366004612e8e565b6119d0565b34801561059b57600080fd5b5047610236565b3480156105ae57600080fd5b506102366105bd366004612e8e565b6119fc565b3480156105ce57600080fd5b5061028f6105dd366004612e8e565b611a98565b3480156105ee57600080fd5b5061023660025481565b34801561060457600080fd5b50610236610613366004612f1b565b611c08565b34801561062457600080fd5b5060055461035d906001600160a01b031681565b34801561064457600080fd5b50610236610653366004612e8e565b6001600160a01b031660009081526018602052604090205490565b34801561067a57600080fd5b5061068e610689366004612f1b565b611cec565b60408051928352602083019190915201610240565b3480156106af57600080fd5b50610236611b5881565b3480156106c557600080fd5b506106d96106d4366004612ea8565b611d64565b6040805160ff90981688526020880196909652948601939093526060850191909152608084015260a0830152151560c082015260e001610240565b34801561072057600080fd5b5061023660045481565b34801561073657600080fd5b5061023661546081565b34801561074c57600080fd5b5061023661075b366004612f03565b612080565b34801561076c57600080fd5b5061023661077b366004612e8e565b6001600160a01b031660009081526018602052604090206001015490565b3480156107a557600080fd5b5061023666b1a2bc2ec5000081565b3480156107c057600080fd5b506102366107cf366004612e8e565b6001600160a01b031660009081526018602052604090206006015490565b3480156107f957600080fd5b50601254601354601454601554601654604080519586526020860194909452928401919091526060830152608082015260a001610240565b6001600160a01b038116600090815260186020908152604080832081518154610140948102820185019093526101208101838152859491938492849190879085015b828210156108ef5760008481526020908190206040805160e08101825260078602909201805460ff9081168452600180830154858701526002830154938501939093526003820154606085015260048201546080850152600582015460a085015260069091015416151560c08301529083529092019101610873565b505050908252506001820154602082015260028201546001600160a01b03166040808301919091528051606080820192839052909201919060038085019182845b81548152602001906001019080831161093057505050918352505060068201546020820152600782015460408201526008820154606082015260098201546080820152600a9091015460a09091015290506000805b825151811015610d2b5782518051829081106109b157634e487b7160e01b600052603260045260246000fd5b602002602001015160a0015183602001511015610d19576003836000015182815181106109ee57634e487b7160e01b600052603260045260246000fd5b60200260200101516000015160ff161015610c9f576000610a83620186a0610a7d86600001518581518110610a3357634e487b7160e01b600052603260045260246000fd5b60200260200101516020015187600001518681518110610a6357634e487b7160e01b600052603260045260246000fd5b6020026020010151604001516120f190919063ffffffff16565b90612177565b90506000846020015185600001518481518110610ab057634e487b7160e01b600052603260045260246000fd5b60200260200101516080015111610acb578460200151610afa565b8451805184908110610aed57634e487b7160e01b600052603260045260246000fd5b6020026020010151608001515b905060004286600001518581518110610b2357634e487b7160e01b600052603260045260246000fd5b602002602001015160a0015110610b3a5742610b69565b8551805185908110610b5c57634e487b7160e01b600052603260045260246000fd5b602002602001015160a001515b905080821015610c97576000610be662015180601789600001518881518110610ba257634e487b7160e01b600052603260045260246000fd5b60200260200101516000015160ff1681548110610bcf57634e487b7160e01b600052603260045260246000fd5b6000918252602090912060029091020154906120f1565b90506000610c61610c5a60178a600001518981518110610c1657634e487b7160e01b600052603260045260246000fd5b60200260200101516000015160ff1681548110610c4357634e487b7160e01b600052603260045260246000fd5b906000526020600020906002020160000154612080565b8390612177565b9050610c92610c8b62015180610a7d84610c85610c7e898b6121dc565b8b906120f1565b906120f1565b889061223a565b965050505b505050610d19565b8251805182908110610cc157634e487b7160e01b600052603260045260246000fd5b602002602001015160a00151421115610d1957610d1683600001518281518110610cfb57634e487b7160e01b600052603260045260246000fd5b6020026020010151606001518361223a90919063ffffffff16565b91505b80610d2381612fb2565b915050610985565b509150505b919050565b6000610d66610d4383610831565b6001600160a01b0384166000908152601860205260409020600601545b9061223a565b92915050565b6001600160a01b0381166000908152601860205260408120600381015482610d9a6064610c8584600a612177565b95945050505050565b33600081815260186020526040812091610dbc90610831565b336000908152601860205260409020600601549091508015610dec5760006006840155610de9828261223a565b91505b60008211610e395760405162461bcd60e51b81526020600482015260156024820152745573657220686173206e6f206469766964656e647360581b60448201526064015b60405180910390fd5b4782811015610e46578092505b42600185015560005b8454811015610fb957846000018181548110610e7b57634e487b7160e01b600052603260045260246000fd5b90600052602060002090600702016005015485600101541015610fa7576003856000018281548110610ebd57634e487b7160e01b600052603260045260246000fd5b600091825260209091206007909102015460ff161015610f23576000856000018281548110610efc57634e487b7160e01b600052603260045260246000fd5b60009182526020909120600790910201600601805460ff1916911515919091179055610fa7565b846000018181548110610f4657634e487b7160e01b600052603260045260246000fd5b906000526020600020906007020160050154421115610fa7576000856000018281548110610f8457634e487b7160e01b600052603260045260246000fd5b60009182526020909120600790910201600601805460ff19169115159190911790555b80610fb181612fb2565b915050610e4f565b50604051339084156108fc029085906000818181858888f19350505050158015610fe7573d6000803e3d6000fd5b5060405183815233907f7084f5476618d8e60b11ef0d7d3f06914655adb8793e28ff7f018d4c76d505d59060200160405180910390a250505050565b6001600160a01b0381166000908152601860205260408120600981015482610d9a6002836120f1565b60045442101561108b5760405162461bcd60e51b815260206004820152600a60248201526909cdee84098c2eadcc6d60b31b6044820152606401610e30565b66b1a2bc2ec5000034101561109f57600080fd5b60068160ff16106110e15760405162461bcd60e51b815260206004820152600c60248201526b24b73b30b634b210383630b760a11b6044820152606401610e30565b6110ea34612299565b33600090815260186020526040902060028101546001600160a01b0316611259576001600160a01b0383166000908152601860205260409020541580159061113b57506001600160a01b0383163314155b1561115e576002810180546001600160a01b0319166001600160a01b0385161790555b60028101546001600160a01b031660005b6003811015611256576001600160a01b0382161561123f576111db600160186000856001600160a01b03166001600160a01b0316815260200190815260200160002060030183600381106111d357634e487b7160e01b600052603260045260246000fd5b01549061223a565b6001600160a01b03831660009081526018602052604090206003908101908390811061121757634e487b7160e01b600052603260045260246000fd5b01556001600160a01b0391821660009081526018602052604090206002015490911690611244565b611256565b8061124e81612fb2565b91505061116f565b50505b60028101546001600160a01b0316156113cb5760028101546001600160a01b031660005b60038110156113c8576001600160a01b038216156113b15760006112dc620186a0610a7d600085815481106112c257634e487b7160e01b600052603260045260246000fd5b9060005260206000200154346120f190919063ffffffff16565b6001600160a01b038416600090815260186020526040902060060154909150611305908261223a565b6001600160a01b0384166000908152601860205260409020600681019190915560070154611333908261223a565b6001600160a01b038416600081815260186020908152604091829020600701939093555183815284923392917fd41f7e766eebcc7ff42b11ac8691bdf864db4afc0c55e71d629d54edce460d98910160405180910390a4506001600160a01b03918216600090815260186020526040902060020154909116906113b6565b6113c8565b806113c081612fb2565b91505061127d565b50505b805461140b574260018201556040513381527f9fd565cd14c3c391679eb0cad12a14dcf7534e9d3462bcb9b67a098a9bbbc24a9060200160405180910390a15b600080600061141a8534611575565b93505092509250836000016040518060e001604052808760ff16815260200185815260200134815260200184815260200142815260200183815260200160011515815250908060018154018082558091505060019003906000526020600020906007020160009091909190915060008201518160000160006101000a81548160ff021916908360ff1602179055506020820151816001015560408201518160020155606082015181600301556080820151816004015560a0820151816005015560c08201518160060160006101000a81548160ff02191690831515021790555050506115113460025461223a90919063ffffffff16565b6002556040805160ff871681526020810185905234818301526060810184905242608082015260a08101839052905133917f84e02daa69bdb087c9fe8d3041abca495512cb14e723070f6d1d4efface82e5d919081900360c00190a2505050505050565b60008060008061158486611c08565b935060038660ff1610156115e2576115db60178760ff16815481106115b957634e487b7160e01b600052603260045260246000fd5b6000918252602090912060029091020154610c85620186a0610a7d89896120f1565b9250611663565b60068660ff1610156116635760005b60178760ff168154811061161557634e487b7160e01b600052603260045260246000fd5b9060005260206000209060020201600001548110156116615761164d611646620186a0610a7d88610c858b8a61223a565b859061223a565b93508061165981612fb2565b9150506115f1565b505b42915061169761169060178860ff1681548110610c4357634e487b7160e01b600052603260045260246000fd5b839061223a565b905092959194509250565b333b1580156116b057503332145b6116b957600080fd5b33600090815260186020526040902080546117165760405162461bcd60e51b815260206004820152601860248201527f4465706f736974206973207265717569726520666972737400000000000000006044820152606401610e30565b60018210156117675760405162461bcd60e51b815260206004820152601e60248201527f4d696e696d756d206e756d626572206f66207469636b657473206973203100006044820152606401610e30565b600a5461177590839061223a565b6032101580156117955750600a81015461179090839061223a565b600a10155b6117e15760405162461bcd60e51b815260206004820181905260248201527f4d6178696d756d206e756d626572206f66207469636b657473206578636565646044820152606401610e30565b6117f282662386f26fc100006120f1565b341461182f5760405162461bcd60e51b815260206004820152600c60248201526b15dc9bdb99c8105b5bdd5b9d60a21b6044820152606401610e30565b6009546000908152601960205260409020600c5461184d908461223a565b600c55600a5461185d908461223a565b600a55600982015461186f908461223a565b6009830155600a820154611883908461223a565b600a830155600854611895903461223a565b60085560015b83811161192d5760408051808201909152338152600b5483919060208201906118c590600161223a565b905281546001808201845560009384526020808520845160029094020180546001600160a01b0319166001600160a01b039094169390931783559290920151910155600b80549161191583612fb2565b9190505550808061192590612fb2565b91505061189b565b50600b5460405133917f42e6ac2176f7dd4a34030aa09cee5ccc42b4b4e28bf6868b734cdf190864d9f39161196a91348252602082015260400190565b60405180910390a26032600a5414156119aa57611985612384565b60006008819055600a819055600b81905560098054916119a483612fb2565b91905055505b505050565b600081815481106119bf57600080fd5b600091825260209091200154905081565b6001600160a01b03811660009081526018602052604081206006810154600790910154610d66916121dc565b6000805b6001600160a01b038316600090815260186020526040902054811015611a92576001600160a01b03831660009081526018602052604090208054611a7e919083908110611a5d57634e487b7160e01b600052603260045260246000fd5b9060005260206000209060070201600201548361223a90919063ffffffff16565b915080611a8a81612fb2565b915050611a00565b50919050565b6001600160a01b03811660009081526018602090815260408083208151815461014094810282018501909352610120810183815285948594859492849290918491879085015b82821015611b5a5760008481526020908190206040805160e08101825260078602909201805460ff9081168452600180830154858701526002830154938501939093526003820154606085015260048201546080850152600582015460a085015260069091015416151560c08301529083529092019101611ade565b505050908252506001820154602082015260028201546001600160a01b03166040808301919091528051606080820192839052909201919060038085019182845b815481526020019060010190808311611b9b57505050918352505060068201546020820152600782015460408201526008820154606082015260098201546080820152600a9091015460a09091015260c081015160e0820151610100909201519097919650945092505050565b600080611c1433611023565b90506000611c2133610d6c565b9050600454421115611cad57611ca481610d6084610d60611c6062015180610a7d611c57600454426121dc90919063ffffffff16565b61012c906120f1565b60178a60ff1681548110611c8457634e487b7160e01b600052603260045260246000fd5b90600052602060002090600202016001015461223a90919063ffffffff16565b92505050610d30565b60178460ff1681548110611cd157634e487b7160e01b600052603260045260246000fd5b90600052602060002090600202016001015492505050610d30565b60008060178360ff1681548110611d1357634e487b7160e01b600052603260045260246000fd5b906000526020600020906002020160000154915060178360ff1681548110611d4b57634e487b7160e01b600052603260045260246000fd5b9060005260206000209060020201600101549050915091565b600080600080600080600080601860008b6001600160a01b03166001600160a01b031681526020019081526020016000206040518061012001604052908160008201805480602002602001604051908101604052809291908181526020016000905b82821015611e425760008481526020908190206040805160e08101825260078602909201805460ff9081168452600180830154858701526002830154938501939093526003820154606085015260048201546080850152600582015460a085015260069091015416151560c08301529083529092019101611dc6565b505050908252506001820154602082015260028201546001600160a01b03166040808301919091528051606080820192839052909201919060038085019182845b815481526020019060010190808311611e83575050505050815260200160068201548152602001600782015481526020016008820154815260200160098201548152602001600a8201548152505090508060000151518910611f175760405162461bcd60e51b815260206004820152600d60248201526c092dcecc2d8d2c840d2dcc8caf609b1b6044820152606401610e30565b805180518a908110611f3957634e487b7160e01b600052603260045260246000fd5b602002602001015160000151975080600001518981518110611f6b57634e487b7160e01b600052603260045260246000fd5b602002602001015160200151965080600001518981518110611f9d57634e487b7160e01b600052603260045260246000fd5b602002602001015160400151955080600001518981518110611fcf57634e487b7160e01b600052603260045260246000fd5b60200260200101516060015194508060000151898151811061200157634e487b7160e01b600052603260045260246000fd5b60200260200101516080015193508060000151898151811061203357634e487b7160e01b600052603260045260246000fd5b602002602001015160a0015192508060000151898151811061206557634e487b7160e01b600052603260045260246000fd5b602002602001015160c0015191505092959891949750929550565b6000806120916201518060046120f1565b905060006120b162015180610a7d600454426121dc90919063ffffffff16565b905060006120c1826154606120f1565b9050828111156120ce5750815b60006120e7826120e188620151806120f1565b906121dc565b9695505050505050565b60008261210057506000610d66565b600061210c8385612f7c565b9050826121198583612f68565b146121705760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610e30565b9392505050565b60008082116121c85760405162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f0000000000006044820152606401610e30565b60006121d48385612f68565b949350505050565b60008282111561222e5760405162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f7700006044820152606401610e30565b60006121d48385612f9b565b6000806122478385612f50565b9050838110156121705760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610e30565b6005546001600160a01b03166108fc6122bb620186a0610a7d85611b586120f1565b6040518115909202916000818181858888f193505050501580156122e3573d6000803e3d6000fd5b506006546001600160a01b03166108fc612306620186a0610a7d85610bb86120f1565b6040518115909202916000818181858888f1935050505015801561232e573d6000803e3d6000fd5b50337f2899dc8c12def1caa9accb64257cf2fd9f960f21bb27a560a757eae3c2ec43c1612370620186a0610a7d612369611b58610bb861223a565b86906120f1565b60405190815260200160405180910390a250565b6009546000908152601960205260408120906123a36001603281612dc9565b905060006123b5600160326002612dc9565b905060006123c7600160326003612dc9565b905060006123d9600160326004612dc9565b905060006123eb600160326005612dc9565b905060006123fa600854612299565b6008546007541561243b57600754600090612416906014612177565b600854909150612426908261223a565b60085560075461243690826121dc565b600755505b61245761244e6064610a7d84600c6120f1565b6007549061223a565b60075560005b6032811015612dbe57601860008a600001838154811061248d57634e487b7160e01b600052603260045260246000fd5b600091825260208083206002909202909101546001600160a01b031683528201929092526040019020600a015415612516576000601860008b60000184815481106124e857634e487b7160e01b600052603260045260246000fd5b600091825260208083206002909202909101546001600160a01b031683528201929092526040019020600a01555b8789600001828154811061253a57634e487b7160e01b600052603260045260246000fd5b906000526020600020906002020160010154141561270d576125986064610a7d600160008154811061257c57634e487b7160e01b600052603260045260246000fd5b90600052602060002001546008546120f190919063ffffffff16565b92508860000181815481106125bd57634e487b7160e01b600052603260045260246000fd5b600091825260208220600290910201546040516001600160a01b039091169185156108fc02918691818181858888f19350505050158015612602573d6000803e3d6000fd5b5061266183601860008c600001858154811061262e57634e487b7160e01b600052603260045260246000fd5b600091825260208083206002909202909101546001600160a01b031683528201929092526040019020600801549061223a565b601860008b600001848154811061268857634e487b7160e01b600052603260045260246000fd5b600091825260208083206002909202909101546001600160a01b0316835282019290925260400190206008015588548990829081106126d757634e487b7160e01b600052603260045260246000fd5b6000918252602090912060029091020154600d80546001600160a01b0319166001600160a01b0390921691909117905560128390555b8689600001828154811061273157634e487b7160e01b600052603260045260246000fd5b90600052602060002090600202016001015414156128b4576127726064610a7d6001808154811061257c57634e487b7160e01b600052603260045260246000fd5b925088600001818154811061279757634e487b7160e01b600052603260045260246000fd5b600091825260208220600290910201546040516001600160a01b039091169185156108fc02918691818181858888f193505050501580156127dc573d6000803e3d6000fd5b5061280883601860008c600001858154811061262e57634e487b7160e01b600052603260045260246000fd5b601860008b600001848154811061282f57634e487b7160e01b600052603260045260246000fd5b600091825260208083206002909202909101546001600160a01b03168352820192909252604001902060080155885489908290811061287e57634e487b7160e01b600052603260045260246000fd5b6000918252602090912060029091020154600e80546001600160a01b0319166001600160a01b0390921691909117905560138390555b858960000182815481106128d857634e487b7160e01b600052603260045260246000fd5b9060005260206000209060020201600101541415612a5c5761291a6064610a7d600160028154811061257c57634e487b7160e01b600052603260045260246000fd5b925088600001818154811061293f57634e487b7160e01b600052603260045260246000fd5b600091825260208220600290910201546040516001600160a01b039091169185156108fc02918691818181858888f19350505050158015612984573d6000803e3d6000fd5b506129b083601860008c600001858154811061262e57634e487b7160e01b600052603260045260246000fd5b601860008b60000184815481106129d757634e487b7160e01b600052603260045260246000fd5b600091825260208083206002909202909101546001600160a01b031683528201929092526040019020600801558854899082908110612a2657634e487b7160e01b600052603260045260246000fd5b6000918252602090912060029091020154600f80546001600160a01b0319166001600160a01b0390921691909117905560148390555b84896000018281548110612a8057634e487b7160e01b600052603260045260246000fd5b9060005260206000209060020201600101541415612c0457612ac26064610a7d600160038154811061257c57634e487b7160e01b600052603260045260246000fd5b9250886000018181548110612ae757634e487b7160e01b600052603260045260246000fd5b600091825260208220600290910201546040516001600160a01b039091169185156108fc02918691818181858888f19350505050158015612b2c573d6000803e3d6000fd5b50612b5883601860008c600001858154811061262e57634e487b7160e01b600052603260045260246000fd5b601860008b6000018481548110612b7f57634e487b7160e01b600052603260045260246000fd5b600091825260208083206002909202909101546001600160a01b031683528201929092526040019020600801558854899082908110612bce57634e487b7160e01b600052603260045260246000fd5b6000918252602090912060029091020154601080546001600160a01b0319166001600160a01b0390921691909117905560158390555b83896000018281548110612c2857634e487b7160e01b600052603260045260246000fd5b9060005260206000209060020201600101541415612dac57612c6a6064610a7d600160048154811061257c57634e487b7160e01b600052603260045260246000fd5b9250886000018181548110612c8f57634e487b7160e01b600052603260045260246000fd5b600091825260208220600290910201546040516001600160a01b039091169185156108fc02918691818181858888f19350505050158015612cd4573d6000803e3d6000fd5b50612d0083601860008c600001858154811061262e57634e487b7160e01b600052603260045260246000fd5b601860008b6000018481548110612d2757634e487b7160e01b600052603260045260246000fd5b600091825260208083206002909202909101546001600160a01b031683528201929092526040019020600801558854899082908110612d7657634e487b7160e01b600052603260045260246000fd5b6000918252602090912060029091020154601180546001600160a01b0319166001600160a01b0390921691909117905560168390555b80612db681612fb2565b91505061245d565b505050505050505050565b600080612ddb6001610d608688612e37565b9050846000612e2c82610d6085612df2428a6120f1565b612dfc448b6120f1565b60408051602081019390935282015260600160408051601f19818403018152919052805160209091012090612e5a565b979650505050505050565b600081831115612e5257612e4b8284612f9b565b9050610d66565b506000610d66565b60006121708284612fcd565b80356001600160a01b0381168114610d3057600080fd5b803560ff81168114610d3057600080fd5b600060208284031215612e9f578081fd5b61217082612e66565b60008060408385031215612eba578081fd5b612ec383612e66565b946020939093013593505050565b60008060408385031215612ee3578182fd5b612eec83612e66565b9150612efa60208401612e7d565b90509250929050565b600060208284031215612f14578081fd5b5035919050565b600060208284031215612f2c578081fd5b61217082612e7d565b60008060408385031215612f47578182fd5b612ec383612e7d565b60008219821115612f6357612f63612fe1565b500190565b600082612f7757612f77612ff7565b500490565b6000816000190483118215151615612f9657612f96612fe1565b500290565b600082821015612fad57612fad612fe1565b500390565b6000600019821415612fc657612fc6612fe1565b5060010190565b600082612fdc57612fdc612ff7565b500690565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052601260045260246000fdfea2646970667358221220079af31a87fbc32f4f87fa72bce74b5a6a0f727650e29502ba71fa1e72907e8764736f6c634300080300330000000000000000000000005a18e17a9391703c92c9c99b23abd7837fbdceee000000000000000000000000000000000000000000000000000000006070ea80

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

0000000000000000000000005a18e17a9391703c92c9c99b23abd7837fbdceee000000000000000000000000000000000000000000000000000000006070ea80

-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 0000000000000000000000005a18e17a9391703c92c9c99b23abd7837fbdceee
Arg [1] : 000000000000000000000000000000000000000000000000000000006070ea80


Deployed ByteCode Sourcemap

1454:18848:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1766:49;;;;;;;;;;;;1809:6;1766:49;;;;;7646:25:1;;;7634:2;7619:18;1766:49:0;;;;;;;;16928:205;;;;;;;;;;-1:-1:-1;16928:205:0;;;;;:::i;:::-;-1:-1:-1;;;;;17039:18:0;16999:7;17039:18;;;:5;:18;;;;;:25;;;:28;17069;;;;17099;;;;;17039;;16928:205;;;;;8137:25:1;;;8193:2;8178:18;;8171:34;;;;8221:18;;;8214:34;8125:2;8110:18;16928:205:0;8092:162:1;14294:1291:0;;;;;;;;;;-1:-1:-1;14294:1291:0;;;;;:::i;:::-;;:::i;17565:161::-;;;;;;;;;;-1:-1:-1;17565:161:0;;;;;:::i;:::-;;:::i;1888:42::-;;;;;;;;;;;;1924:6;1888:42;;16082:277;;;;;;;;;;-1:-1:-1;16082:277:0;;;;;:::i;:::-;;:::i;16804:119::-;;;;;;;;;;-1:-1:-1;16804:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;16891:18:0;;;16870:7;16891:18;;;:5;:18;;;;;:27;;;;;16804:119;;;;-1:-1:-1;;;;;1915:32:1;;;1897:51;;1885:2;1870:18;16804:119:0;1852:102:1;6605:1107:0;;;;;;;;;;;;;:::i;:::-;;2477:37;;;;;;;;;;-1:-1:-1;2477:37:0;;;;-1:-1:-1;;;;;2477:37:0;;;17264:131;;;;;;;;;;-1:-1:-1;17264:131:0;;;;;:::i;:::-;-1:-1:-1;;;;;17361:18:0;17340:7;17361:18;;;:5;:18;;;;;:29;;;;17264:131;1626:42;;;;;;;;;;;;1664:4;1626:42;;16371:300;;;;;;;;;;-1:-1:-1;16371:300:0;;;;;:::i;:::-;;:::i;1720:42::-;;;;;;;;;;;;1759:3;1720:42;;5004:1595;;;;;;:::i;:::-;;:::i;13677:611::-;;;;;;;;;;-1:-1:-1;13677:611:0;;;;;:::i;:::-;;:::i;:::-;;;;8490:25:1;;;8546:2;8531:18;;8524:34;;;;8574:18;;;8567:34;8632:2;8617:18;;8610:34;8477:3;8462:19;13677:611:0;8444:206:1;7718:1468:0;;;;;;:::i;:::-;;:::i;1568:54::-;;;;;;;;;;-1:-1:-1;1568:54:0;;;;;:::i;:::-;;:::i;18747:392::-;;;;;;;;;;-1:-1:-1;18919:14:0;;18935;;18951;;18967;;18983;;18999:11;;19012:24;;19038:22;;19105:15;;19122:8;;18747:392;;;-1:-1:-1;;;;;18919:14:0;;;2678:34:1;;18935:14:0;;;2743:2:1;2728:18;;2721:43;18951:14:0;;;2780:18:1;;;2773:43;;;;18967:14:0;;;2847:2:1;2832:18;;2825:43;18983:14:0;;;;2899:3:1;2884:19;;2877:44;2658:3;2937:19;;2930:35;2996:3;2981:19;;2974:35;3040:3;3025:19;;3018:35;;;;2158:2:0;3084:3:1;3069:19;;3062:35;2030:10:0;3128:3:1;3113:19;;3106:35;3172:3;3157:19;;3150:36;;;;3217:3;3202:19;;3195:36;;;;2627:3;2612:19;18747:392:0;2594:643:1;2368:28:0;;;;;;;;;;;;;;;;17400:160;;;;;;;;;;-1:-1:-1;17400:160:0;;;;;:::i;:::-;;:::i;13002:98::-;;;;;;;;;;-1:-1:-1;13074:21:0;13002:98;;17870:231;;;;;;;;;;-1:-1:-1;17870:231:0;;;;;:::i;:::-;;:::i;19336:224::-;;;;;;;;;;-1:-1:-1;19336:224:0;;;;;:::i;:::-;;:::i;2338:26::-;;;;;;;;;;;;;;;;13261:410;;;;;;;;;;-1:-1:-1;13261:410:0;;;;;:::i;:::-;;:::i;2431:39::-;;;;;;;;;;-1:-1:-1;2431:39:0;;;;-1:-1:-1;;;;;2431:39:0;;;17731:134;;;;;;;;;;-1:-1:-1;17731:134:0;;;;;:::i;:::-;-1:-1:-1;;;;;17826:18:0;17805:7;17826:18;;;:5;:18;;;;;:34;;17731:134;13105:151;;;;;;;;;;-1:-1:-1;13105:151:0;;;;;:::i;:::-;;:::i;:::-;;;;7856:25:1;;;7912:2;7897:18;;7890:34;;;;7829:18;13105:151:0;7811:119:1;1672:44:0;;;;;;;;;;;;1712:4;1672:44;;18107:634;;;;;;;;;;-1:-1:-1;18107:634:0;;;;;:::i;:::-;;:::i;:::-;;;;10005:4:1;9993:17;;;9975:36;;10042:2;10027:18;;10020:34;;;;10070:18;;;10063:34;;;;10128:2;10113:18;;10106:34;;;;10171:3;10156:19;;10149:35;10215:3;10200:19;;10193:35;10272:14;10265:22;10259:3;10244:19;;10237:51;9962:3;9947:19;18107:634:0;9929:365:1;2403:24:0;;;;;;;;;;;;;;;;1819:53;;;;;;;;;;;;1863:9;1819:53;;15591:479;;;;;;;;;;-1:-1:-1;15591:479:0;;;;;:::i;:::-;;:::i;16676:123::-;;;;;;;;;;-1:-1:-1;16676:123:0;;;;;:::i;:::-;-1:-1:-1;;;;;16765:18:0;16744:7;16765:18;;;:5;:18;;;;;:29;;;;16676:123;1510:54;;;;;;;;;;;;1554:10;1510:54;;17138:121;;;;;;;;;;-1:-1:-1;17138:121:0;;;;;:::i;:::-;-1:-1:-1;;;;;17230:18:0;17209:7;17230:18;;;:5;:18;;;;;:24;;;;17138:121;19151:177;;;;;;;;;;-1:-1:-1;19266:9:0;;19277;;19288;;19299;;19310;;19151:177;;;8914:25:1;;;8970:2;8955:18;;8948:34;;;;8998:18;;;8991:34;;;;9056:2;9041:18;;9034:34;9099:3;9084:19;;9077:35;8901:3;8886:19;19151:177:0;8868:250:1;14294:1291:0;-1:-1:-1;;;;;14400:18:0;;14362:7;14400:18;;;:5;:18;;;;;;;;14381:37;;;;;;;;;;;;;;;;;;;;;14362:7;;14381:37;;;;14400:18;;14381:37;14362:7;;14381:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;14381:37:0;;;-1:-1:-1;14381:37:0;;;;;;;;;;;;-1:-1:-1;;;;;14381:37:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;14381:37:0;;;-1:-1:-1;;14381:37:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;14461:1088:0;14485:13;;:20;14481:24;;14461:1088;;;14549:13;;:16;;14563:1;;14549:16;;;;-1:-1:-1;;;14549:16:0;;;;;;;;;;;;;;;:23;;;14531:4;:15;;;:41;14527:1011;;;14621:1;14597:4;:13;;;14611:1;14597:16;;;;;;-1:-1:-1;;;14597:16:0;;;;;;;;;;;;;;;:21;;;:25;;;14593:930;;;14647:13;14663:75;1809:6;14663:53;14691:4;:13;;;14705:1;14691:16;;;;;;-1:-1:-1;;;14691:16:0;;;;;;;;;;;;;;;:24;;;14663:4;:13;;;14677:1;14663:16;;;;;;-1:-1:-1;;;14663:16:0;;;;;;;;;;;;;;;:23;;;:27;;:53;;;;:::i;:::-;:57;;:75::i;:::-;14647:91;;14761:12;14801:4;:15;;;14776:4;:13;;;14790:1;14776:16;;;;;;-1:-1:-1;;;14776:16:0;;;;;;;;;;;;;;;:22;;;:40;:83;;14844:4;:15;;;14776:83;;;14819:13;;:16;;14833:1;;14819:16;;;;-1:-1:-1;;;14819:16:0;;;;;;;;;;;;;;;:22;;;14776:83;14761:98;;14882:10;14921:15;14895:4;:13;;;14909:1;14895:16;;;;;;-1:-1:-1;;;14895:16:0;;;;;;;;;;;;;;;:23;;;:41;:85;;14965:15;14895:85;;;14939:13;;:16;;14953:1;;14939:16;;;;-1:-1:-1;;;14939:16:0;;;;;;;;;;;;;;;:23;;;14895:85;14882:98;;15014:2;15007:4;:9;15003:351;;;15045:16;15064:48;1924:6;15064:5;15070:4;:13;;;15084:1;15070:16;;;;;;-1:-1:-1;;;15070:16:0;;;;;;;;;;;;;;;:21;;;15064:28;;;;;;;;-1:-1:-1;;;15064:28:0;;;;;;;;;;;;;;;;;;;;;;:33;;:37;:48::i;:::-;15045:67;;15139:15;15157:64;15170:50;15186:5;15192:4;:13;;;15206:1;15192:16;;;;;;-1:-1:-1;;;15192:16:0;;;;;;;;;;;;;;;:21;;;15186:28;;;;;;;;-1:-1:-1;;;15186:28:0;;;;;;;;;;;;;;;;;;;:33;;;15170:15;:50::i;:::-;15157:8;;:12;:64::i;:::-;15139:82;-1:-1:-1;15262:68:0;15278:51;1924:6;15278:36;15139:82;15278:23;15288:12;:2;15295:4;15288:6;:12::i;:::-;15278:5;;:9;:23::i;:::-;:27;;:36::i;:51::-;15262:11;;:15;:68::i;:::-;15248:82;;15003:351;;;14593:930;;;;;;15401:13;;:16;;15415:1;;15401:16;;;;-1:-1:-1;;;15401:16:0;;;;;;;;;;;;;;;:23;;;15383:15;:41;15379:144;;;15463:40;15479:4;:13;;;15493:1;15479:16;;;;;;-1:-1:-1;;;15479:16:0;;;;;;;;;;;;;;;:23;;;15463:11;:15;;:40;;;;:::i;:::-;15449:54;;15379:144;14507:3;;;;:::i;:::-;;;;14461:1088;;;-1:-1:-1;15566:11:0;-1:-1:-1;;14294:1291:0;;;;:::o;17565:161::-;17632:7;17653:68;17691:29;17708:11;17691:16;:29::i;:::-;-1:-1:-1;;;;;17230:18:0;;17209:7;17230:18;;;:5;:18;;;;;:24;;;17653:33;:37;;:68::i;:::-;17646:75;17565:161;-1:-1:-1;;17565:161:0:o;16082:277::-;-1:-1:-1;;;;;16188:18:0;;16148:7;16188:18;;;:5;:18;;;;;16237:11;;;:14;16148:7;16284:34;16314:3;16285:23;16237:14;2305:2;16285:13;:23::i;16284:34::-;16262:56;16082:277;-1:-1:-1;;;;;16082:277:0:o;6605:1107::-;6669:10;6643:17;6663;;;:5;:17;;;;;;6713:28;;:16;:28::i;:::-;6797:10;6752:21;17230:18;;;:5;:18;;;;;:24;;;6691:50;;-1:-1:-1;6823:17:0;;6819:123;;6870:1;6857:10;;;:14;6900:30;:11;6916:13;6900:15;:30::i;:::-;6886:44;;6819:123;6974:1;6960:11;:15;6952:49;;;;-1:-1:-1;;;6952:49:0;;3444:2:1;6952:49:0;;;3426:21:1;3483:2;3463:18;;;3456:30;-1:-1:-1;;;3502:18:1;;;3495:51;3563:18;;6952:49:0;;;;;;;;;7038:21;7074:29;;;7070:91;;;7134:15;7120:29;;7070:91;7189:15;7171;;;:33;7220:9;7215:388;7239:20;;7235:24;;7215:388;;;7303:4;:13;;7317:1;7303:16;;;;;;-1:-1:-1;;;7303:16:0;;;;;;;;;;;;;;;;;;;:23;;;7285:4;:15;;;:41;7281:311;;;7375:1;7351:4;:13;;7365:1;7351:16;;;;;;-1:-1:-1;;;7351:16:0;;;;;;;;;;;;;;;;;;;;;;:21;;;:25;7347:230;;;7426:5;7401:4;:13;;7415:1;7401:16;;;;;;-1:-1:-1;;;7401:16:0;;;;;;;;;;;;;;;;;;;;;;:22;;:30;;-1:-1:-1;;7401:30:0;;;;;;;;;;7347:230;;;7479:4;:13;;7493:1;7479:16;;;;;;-1:-1:-1;;;7479:16:0;;;;;;;;;;;;;;;;;;;:23;;;7461:15;:41;7457:120;;;7552:5;7527:4;:13;;7541:1;7527:16;;;;;;-1:-1:-1;;;7527:16:0;;;;;;;;;;;;;;;;;;;;;;:22;;:30;;-1:-1:-1;;7527:30:0;;;;;;;;;;7457:120;7261:3;;;;:::i;:::-;;;;7215:388;;;-1:-1:-1;7613:41:0;;7621:10;;7613:41;;;;;7642:11;;7613:41;;;;7642:11;7621:10;7613:41;;;;;;;;;;;;;;;;;;;;-1:-1:-1;7670:34:0;;7646:25:1;;;7680:10:0;;7670:34;;7634:2:1;7619:18;7670:34:0;;;;;;;6605:1107;;;;:::o;16371:300::-;-1:-1:-1;;;;;16479:18:0;;16439:7;16479:18;;;:5;:18;;;;;16538:24;;;;16439:7;16595:35;1982:1;16538:24;16595:14;:35::i;5004:1595::-;5100:9;;5081:15;:28;;5073:51;;;;-1:-1:-1;;;5073:51:0;;7363:2:1;5073:51:0;;;7345:21:1;7402:2;7382:18;;;7375:30;-1:-1:-1;;;7421:18:1;;;7414:40;7471:18;;5073:51:0;7335:160:1;5073:51:0;1554:10;5137:9;:30;;5129:39;;;;;;5194:1;5187:4;:8;;;5179:33;;;;-1:-1:-1;;;5179:33:0;;7022:2:1;5179:33:0;;;7004:21:1;7061:2;7041:18;;;7034:30;-1:-1:-1;;;7080:18:1;;;7073:42;7132:18;;5179:33:0;6994:162:1;5179:33:0;5219:20;5229:9;5219;:20::i;:::-;5272:10;5246:17;5266;;;:5;:17;;;;;5292:13;;;;-1:-1:-1;;;;;5292:13:0;5288:384;;-1:-1:-1;;;;;5331:15:0;;5365:1;5331:15;;;:5;:15;;;;;:31;:35;;;;:61;;-1:-1:-1;;;;;;5370:22:0;;5382:10;5370:22;;5331:61;5327:105;;;5401:13;;;:24;;-1:-1:-1;;;;;;5401:24:0;-1:-1:-1;;;;;5401:24:0;;;;;5327:105;5454:13;;;;-1:-1:-1;;;;;5454:13:0;5437:14;5473:194;5497:1;5493;:5;5473:194;;;-1:-1:-1;;;;;5516:20:0;;;5512:148;;5572:30;5600:1;5572:5;:13;5578:6;-1:-1:-1;;;;;5572:13:0;-1:-1:-1;;;;;5572:13:0;;;;;;;;;;;;:20;;5593:1;5572:23;;;;;-1:-1:-1;;;5572:23:0;;;;;;;;;;;;:27;:30::i;:::-;-1:-1:-1;;;;;5546:13:0;;;;;;:5;:13;;;;;:20;;;;;5567:1;;5546:23;;;;-1:-1:-1;;;5546:23:0;;;;;;;;;;:56;-1:-1:-1;;;;;5619:13:0;;;;;;;:5;:13;;;;;:22;;;;;;;5512:148;;;5655:5;;5512:148;5500:3;;;;:::i;:::-;;;;5473:194;;;;5288:384;;5682:13;;;;-1:-1:-1;;;;;5682:13:0;:27;5678:476;;5734:13;;;;-1:-1:-1;;;;;5734:13:0;5717:14;5753:396;5777:1;5773;:5;5753:396;;;-1:-1:-1;;;;;5796:20:0;;;5792:350;;5826:14;5843:57;1809:6;5843:35;5857:17;5875:1;5857:20;;;;;;-1:-1:-1;;;5857:20:0;;;;;;;;;;;;;;;;;5843:9;:13;;:35;;;;:::i;:57::-;-1:-1:-1;;;;;5930:13:0;;;;;;:5;:13;;;;;:19;;;5826:74;;-1:-1:-1;5930:31:0;;5826:74;5930:23;:31::i;:::-;-1:-1:-1;;;;;5908:13:0;;;;;;:5;:13;;;;;:19;;;:53;;;;5996:24;;;:36;;6025:6;5996:28;:36::i;:::-;-1:-1:-1;;;;;5969:13:0;;;;;;:5;:13;;;;;;;;;:24;;:63;;;;6045:39;7646:25:1;;;6074:1:0;;6062:10;;5969:13;6045:39;;7619:18:1;6045:39:0;;;;;;;-1:-1:-1;;;;;;6101:13:0;;;;;;;:5;:13;;;;;:22;;;;;;;5792:350;;;6137:5;;5792:350;5780:3;;;;:::i;:::-;;;;5753:396;;;;5678:476;;6164:20;;6160:105;;6215:15;6197;;;:33;6241:18;;6248:10;1897:51:1;;6241:18:0;;1885:2:1;1870:18;6241::0;;;;;;;6160:105;6274:15;6291:14;6309;6327:26;6337:4;6343:9;6327;:26::i;:::-;6273:80;;;;;;;6364:4;:13;;6383:72;;;;;;;;6391:4;6383:72;;;;;;6397:7;6383:72;;;;6406:9;6383:72;;;;6417:6;6383:72;;;;6425:15;6383:72;;;;6442:6;6383:72;;;;6450:4;6383:72;;;;;6364:92;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6477:26;6493:9;6477:11;;:15;;:26;;;;:::i;:::-;6463:11;:40;6513:81;;;9436:4:1;9424:17;;9406:36;;9473:2;9458:18;;9451:34;;;6551:9:0;9501:18:1;;;9494:34;9559:2;9544:18;;9537:34;;;6570:15:0;9602:3:1;9587:19;;9580:35;9646:3;9631:19;;9624:35;;;6513:81:0;;6524:10;;6513:81;;;;;;9393:3:1;6513:81:0;;;5004:1595;;;;;;:::o;13677:611::-;13747:15;13764:14;13780:15;13797:14;13833:16;13844:4;13833:10;:16::i;:::-;13823:26;;13871:1;13864:4;:8;;;13860:319;;;13898:64;13945:5;13951:4;13945:11;;;;;;;;-1:-1:-1;;;13945:11:0;;;;;;;;;;;;;;;;;;;;;;:16;13898:42;1809:6;13898:20;:7;13910;13898:11;:20::i;:64::-;13889:73;;13860:319;;;13991:1;13984:4;:8;;;13980:199;;;14014:9;14009:159;14033:5;14039:4;14033:11;;;;;;;;-1:-1:-1;;;14033:11:0;;;;;;;;;;;;;;;;;;;:16;;;14029:1;:20;14009:159;;;14084:68;14095:56;1809:6;14095:34;14121:7;14096:19;:7;14108:6;14096:11;:19::i;14095:56::-;14084:6;;:10;:68::i;:::-;14075:77;-1:-1:-1;14051:3:0;;;;:::i;:::-;;;;14009:159;;;;13980:199;14199:15;14189:25;;14234:46;14246:33;14262:5;14268:4;14262:11;;;;;;;;-1:-1:-1;;;14262:11:0;;;;;;;;14246:33;14234:7;;:11;:46::i;:::-;14225:55;;13677:611;;;;;;;:::o;7718:1468::-;7800:10;19678:17;19714:8;;;7788:50;;-1:-1:-1;7815:10:0;7829:9;7815:23;7788:50;7780:59;;;;;;7876:10;7850:17;7870;;;:5;:17;;;;;7906:20;;7898:61;;;;-1:-1:-1;;;7898:61:0;;6308:2:1;7898:61:0;;;6290:21:1;6347:2;6327:18;;;6320:30;6386:26;6366:18;;;6359:54;6430:18;;7898:61:0;6280:174:1;7898:61:0;7984:1;7978:2;:7;;7970:50;;;;-1:-1:-1;;;7970:50:0;;5206:2:1;7970:50:0;;;5188:21:1;5245:2;5225:18;;;5218:30;5284:32;5264:18;;;5257:60;5334:18;;7970:50:0;5178:180:1;7970:50:0;8068:24;;8061:32;;:2;;:6;:32::i;:::-;2158:2;8039:54;;:101;;;;-1:-1:-1;8124:15:0;;;;8117:23;;:2;;:6;:23::i;:::-;2231:2;8097:43;;8039:101;8031:146;;;;-1:-1:-1;;;8031:146:0;;6661:2:1;8031:146:0;;;6643:21:1;;;6680:18;;;6673:30;6739:34;6719:18;;;6712:62;6791:18;;8031:146:0;6633:182:1;8031:146:0;8210:19;:2;2030:10;8210:6;:19::i;:::-;8197:9;:32;8189:57;;;;-1:-1:-1;;;8189:57:0;;5565:2:1;8189:57:0;;;5547:21:1;5604:2;5584:18;;;5577:30;-1:-1:-1;;;5623:18:1;;;5616:42;5675:18;;8189:57:0;5537:162:1;8189:57:0;8289:11;;8257:21;8281:20;;;:7;:20;;;;;8347:22;;:30;;8374:2;8347:26;:30::i;:::-;8322:22;:55;8415:24;;:32;;8444:2;8415:28;:32::i;:::-;8388:24;:59;8485:24;;;;:32;;8514:2;8485:28;:32::i;:::-;8458:24;;;:59;8546:15;;;;:23;;8566:2;8546:19;:23::i;:::-;8528:15;;;:41;8608:15;;:30;;8628:9;8608:19;:30::i;:::-;8590:15;:48;8686:1;8670:160;8694:2;8689:1;:7;8670:160;;8743:42;;;;;;;;;8750:10;8743:42;;8762:15;;8718:6;;8743:42;;;;;8762:22;;8782:1;8762:19;:22::i;:::-;8743:42;;8718:68;;;;;;;;-1:-1:-1;8718:68:0;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;8718:68:0;-1:-1:-1;;;;;8718:68:0;;;;;;;;;;;;;;;;;8801:15;:17;;;;;;:::i;:::-;;;;;;8698:3;;;;;:::i;:::-;;;;8670:160;;;-1:-1:-1;8893:15:0;;8850:59;;8870:10;;8850:59;;;;8882:9;7856:25:1;;7912:2;7897:18;;7890:34;7844:2;7829:18;;7811:119;8850:59:0;;;;;;;;2158:2;8938:24;;:46;8934:245;;;9001:13;:11;:13::i;:::-;9061:1;9043:15;:19;;;9077:24;:28;;;9120:15;:19;;;9154:11;:13;;;;;;:::i;:::-;;;;;;8934:245;7718:1468;;;:::o;1568:54::-;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;1568:54:0;:::o;17400:160::-;-1:-1:-1;;;;;17530:18:0;;17475:7;17530:18;;;:5;:18;;;;;:24;;;;17496:29;;;;;:59;;:33;:59::i;17870:231::-;17941:14;;17962:135;-1:-1:-1;;;;;17986:18:0;;;;;;:5;:18;;;;;:34;17982:38;;17962:135;;;-1:-1:-1;;;;;18053:18:0;;;;;;:5;:18;;;;;:30;;18042:49;;18053:18;18081:1;;18053:30;;;;-1:-1:-1;;;18053:30:0;;;;;;;;;;;;;;;;;;;:37;;;18042:6;:10;;:49;;;;:::i;:::-;18033:58;-1:-1:-1;18022:3:0;;;;:::i;:::-;;;;17962:135;;;;17870:231;;;:::o;19336:224::-;-1:-1:-1;;;;;19458:18:0;;19405:7;19458:18;;;:5;:18;;;;;;;;19439:37;;;;;;;;;;;;;;;;;;;;;19405:7;;;;;;19458:18;19439:37;;;;19458:18;;19405:7;;19439:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;19439:37:0;;;-1:-1:-1;19439:37:0;;;;;;;;;;;;-1:-1:-1;;;;;19439:37:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;19439:37:0;;;-1:-1:-1;;19439:37:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19495:15;;;;19511:24;;;;19536:15;;;;;19495;;19511:24;;-1:-1:-1;19536:15:0;-1:-1:-1;19336:224:0;-1:-1:-1;;;19336:224:0:o;13261:410::-;13314:7;13331:21;13355:28;13372:10;13355:16;:28::i;:::-;13331:52;;13391:19;13413:26;13428:10;13413:14;:26::i;:::-;13391:48;;13466:9;;13448:15;:27;13444:220;;;13490:124;13602:11;13490:107;13583:13;13490:88;13514:63;1924:6;13514:48;13531:30;13551:9;;13531:15;:19;;:30;;;;:::i;:::-;1759:3;;13514:16;:48::i;:63::-;13490:5;13496:4;13490:11;;;;;;;;-1:-1:-1;;;13490:11:0;;;;;;;;;;;;;;;;;;;:19;;;:23;;:88;;;;:::i;:124::-;13483:131;;;;;;13444:220;13639:5;13645:4;13639:11;;;;;;;;-1:-1:-1;;;13639:11:0;;;;;;;;;;;;;;;;;;;:19;;;13632:26;;;;;;13105:151;13158:12;13172:15;13201:5;13207:4;13201:11;;;;;;;;-1:-1:-1;;;13201:11:0;;;;;;;;;;;;;;;;;;;:16;;;13194:23;;13232:5;13238:4;13232:11;;;;;;;;-1:-1:-1;;;13232:11:0;;;;;;;;;;;;;;;;;;;:19;;;13222:29;;13105:151;;;:::o;18107:634::-;18192:10;18204:15;18221:14;18237;18253:13;18268:14;18284:10;18306:16;18325:5;:18;18331:11;-1:-1:-1;;;;;18325:18:0;-1:-1:-1;;;;;18325:18:0;;;;;;;;;;;;18306:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;18306:37:0;;;-1:-1:-1;18306:37:0;;;;;;;;;;;;-1:-1:-1;;;;;18306:37:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18370:4;:13;;;:20;18362:5;:28;18354:54;;;;-1:-1:-1;;;18354:54:0;;4150:2:1;18354:54:0;;;4132:21:1;4189:2;4169:18;;;4162:30;-1:-1:-1;;;4208:18:1;;;4201:43;4261:18;;18354:54:0;4122:163:1;18354:54:0;18428:13;;:20;;18442:5;;18428:20;;;;-1:-1:-1;;;18428:20:0;;;;;;;;;;;;;;;:25;;;18421:32;;18474:4;:13;;;18488:5;18474:20;;;;;;-1:-1:-1;;;18474:20:0;;;;;;;;;;;;;;;:28;;;18464:38;;18522:4;:13;;;18536:5;18522:20;;;;;;-1:-1:-1;;;18522:20:0;;;;;;;;;;;;;;;:27;;;18513:36;;18569:4;:13;;;18583:5;18569:20;;;;;;-1:-1:-1;;;18569:20:0;;;;;;;;;;;;;;;:27;;;18560:36;;18615:4;:13;;;18629:5;18615:20;;;;;;-1:-1:-1;;;18615:20:0;;;;;;;;;;;;;;;:26;;;18607:34;;18661:4;:13;;;18675:5;18661:20;;;;;;-1:-1:-1;;;18661:20:0;;;;;;;;;;;;;;;:27;;;18652:36;;18707:4;:13;;;18721:5;18707:20;;;;;;-1:-1:-1;;;18707:20:0;;;;;;;;;;;;;;;:26;;;18699:34;;18107:634;;;;;;;;;;;:::o;15591:479::-;15655:7;;15695:16;1924:6;15709:1;15695:13;:16::i;:::-;15675:36;;15722:16;15741:45;1924:6;15741:30;15761:9;;15741:15;:19;;:30;;;;:::i;:45::-;15722:64;-1:-1:-1;15797:20:0;15820:31;15722:64;1863:9;15820:12;:31::i;:::-;15797:54;;15881:9;15866:12;:24;15862:76;;;-1:-1:-1;15917:9:0;15862:76;15948:19;15970:41;15998:12;15970:23;:8;1924:6;15970:12;:23::i;:::-;:27;;:41::i;:::-;15948:63;15591:479;-1:-1:-1;;;;;;15591:479:0:o;20703:246::-;20761:7;20785:6;20781:47;;-1:-1:-1;20815:1:0;20808:8;;20781:47;20838:9;20850:5;20854:1;20850;:5;:::i;:::-;20838:17;-1:-1:-1;20883:1:0;20874:5;20878:1;20838:17;20874:5;:::i;:::-;:10;20866:56;;;;-1:-1:-1;;;20866:56:0;;5906:2:1;20866:56:0;;;5888:21:1;5945:2;5925:18;;;5918:30;5984:34;5964:18;;;5957:62;-1:-1:-1;;;6035:18:1;;;6028:31;6076:19;;20866:56:0;5878:223:1;20866:56:0;20940:1;20703:246;-1:-1:-1;;;20703:246:0:o;20955:177::-;21013:7;21045:1;21041;:5;21033:44;;;;-1:-1:-1;;;21033:44:0;;4851:2:1;21033:44:0;;;4833:21:1;4890:2;4870:18;;;4863:30;4929:28;4909:18;;;4902:56;4975:18;;21033:44:0;4823:176:1;21033:44:0;21088:9;21100:5;21104:1;21100;:5;:::i;:::-;21088:17;20955:177;-1:-1:-1;;;;20955:177:0:o;20515:182::-;20573:7;20606:1;20601;:6;;20593:49;;;;-1:-1:-1;;;20593:49:0;;4492:2:1;20593:49:0;;;4474:21:1;4531:2;4511:18;;;4504:30;4570:32;4550:18;;;4543:60;4620:18;;20593:49:0;4464:180:1;20593:49:0;20653:9;20665:5;20669:1;20665;:5;:::i;20330:179::-;20388:7;;20420:5;20424:1;20420;:5;:::i;:::-;20408:17;;20449:1;20444;:6;;20436:46;;;;-1:-1:-1;;;20436:46:0;;3794:2:1;20436:46:0;;;3776:21:1;3833:2;3813:18;;;3806:30;3872:29;3852:18;;;3845:57;3919:18;;20436:46:0;3766:177:1;4685:314:0;4737:16;;-1:-1:-1;;;;;4737:16:0;:76;4763:49;1809:6;4763:27;:8;1712:4;4763:12;:27::i;:49::-;4737:76;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;4820:14:0;;-1:-1:-1;;;;;4820:14:0;:72;4844:47;1809:6;4844:25;:8;1664:4;4844:12;:25::i;:47::-;4820:72;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;4913:10:0;4904:87;4924:66;1809:6;4924:44;4937:30;1712:4;1664;4937:17;:30::i;:::-;4924:8;;:12;:44::i;:66::-;4904:87;;7646:25:1;;;7634:2;7619:18;4904:87:0;;;;;;;4685:314;:::o;9541:3455::-;9617:11;;9585:21;9609:20;;;:7;:20;;;;;;9672:36;9683:1;2158:2;9683:1;9672:10;:36::i;:::-;9657:51;;9719:12;9734:36;9745:1;2158:2;9768:1;9734:10;:36::i;:::-;9719:51;;9781:12;9796:36;9807:1;2158:2;9830:1;9796:10;:36::i;:::-;9781:51;;9843:12;9858:36;9869:1;2158:2;9892:1;9858:10;:36::i;:::-;9843:51;;9905:12;9920:36;9931:1;2158:2;9954:1;9920:10;:36::i;:::-;9905:51;;9967:14;10001:26;10011:15;;10001:9;:26::i;:::-;10061:15;;10092:8;;:12;10088:182;;10134:8;;10120:11;;10134:16;;10147:2;10134:12;:16::i;:::-;10187:15;;10120:30;;-1:-1:-1;10187:24:0;;10120:30;10187:19;:24::i;:::-;10169:15;:42;10237:8;;:17;;10250:3;10237:12;:17::i;:::-;10226:8;:28;-1:-1:-1;10088:182:0;10301:33;10314:19;10329:3;10314:10;:2;10321;10314:6;:10::i;:19::-;10301:8;;;:12;:33::i;:::-;10290:8;:44;10359:9;10355:2634;2158:2;10374:1;:22;10355:2634;;;10436:5;:37;10442:6;:19;;10462:1;10442:22;;;;;;-1:-1:-1;;;10442:22:0;;;;;;;;;;;;;;;;;;;;;;;;:30;-1:-1:-1;;;;;10442:30:0;10436:37;;;;;;;;;;;;:48;;;:53;10432:145;;10561:1;10510:5;:37;10516:6;:19;;10536:1;10516:22;;;;;;-1:-1:-1;;;10516:22:0;;;;;;;;;;;;;;;;;;;;;;;;:30;-1:-1:-1;;;;;10516:30:0;10510:37;;;;;;;;;;;;:48;;:52;10432:145;10647:4;10608:6;:19;;10628:1;10608:22;;;;;;-1:-1:-1;;;10608:22:0;;;;;;;;;;;;;;;;;;;:35;;;:43;10604:467;;;10680:52;10728:3;10681:41;10701:17;10719:1;10701:20;;;;;;-1:-1:-1;;;10701:20:0;;;;;;;;;;;;;;;;;10681:15;;:19;;:41;;;;:::i;10680:52::-;10671:61;;10774:6;:19;;10794:1;10774:22;;;;;;-1:-1:-1;;;10774:22:0;;;;;;;;;;;;;;;;;;;;;:30;10750:74;;-1:-1:-1;;;;;10774:30:0;;;;10750:74;;;;;10817:6;;10750:74;10774:22;10750:74;10817:6;10774:30;10750:74;;;;;;;;;;;;;;;;;;;;;10893:62;10948:6;10894:5;:37;10900:6;:19;;10920:1;10900:22;;;;;;-1:-1:-1;;;10900:22:0;;;;;;;;;;;;;;;;;;;;;;;;:30;-1:-1:-1;;;;;10900:30:0;10894:37;;;;;;;;;;;;:48;;;;10893:54;:62::i;:::-;10842:5;:37;10848:6;:19;;10868:1;10848:22;;;;;;-1:-1:-1;;;10848:22:0;;;;;;;;;;;;;;;;;;;;;;;;:30;-1:-1:-1;;;;;10848:30:0;10842:37;;;;;;;;;;;;:48;;:113;10990:22;;:6;;11010:1;;10990:22;;;;-1:-1:-1;;;10990:22:0;;;;;;;;;;;;;;;;;;;;;;:30;10973:14;:47;;-1:-1:-1;;;;;;10973:47:0;-1:-1:-1;;;;;10990:30:0;;;10973:47;;;;;;11038:9;:18;;;10604:467;11127:4;11088:6;:19;;11108:1;11088:22;;;;;;-1:-1:-1;;;11088:22:0;;;;;;;;;;;;;;;;;;;:35;;;:43;11084:467;;;11160:52;11208:3;11161:41;11181:17;11199:1;11181:20;;;;;;-1:-1:-1;;;11181:20:0;;;;;;;;11160:52;11151:61;;11254:6;:19;;11274:1;11254:22;;;;;;-1:-1:-1;;;11254:22:0;;;;;;;;;;;;;;;;;;;;;:30;11230:74;;-1:-1:-1;;;;;11254:30:0;;;;11230:74;;;;;11297:6;;11230:74;11254:22;11230:74;11297:6;11254:30;11230:74;;;;;;;;;;;;;;;;;;;;;11373:62;11428:6;11374:5;:37;11380:6;:19;;11400:1;11380:22;;;;;;-1:-1:-1;;;11380:22:0;;;;;;;;11373:62;11322:5;:37;11328:6;:19;;11348:1;11328:22;;;;;;-1:-1:-1;;;11328:22:0;;;;;;;;;;;;;;;;;;;;;;;;:30;-1:-1:-1;;;;;11328:30:0;11322:37;;;;;;;;;;;;:48;;:113;11470:22;;:6;;11490:1;;11470:22;;;;-1:-1:-1;;;11470:22:0;;;;;;;;;;;;;;;;;;;;;;:30;11453:14;:47;;-1:-1:-1;;;;;;11453:47:0;-1:-1:-1;;;;;11470:30:0;;;11453:47;;;;;;11518:9;:18;;;11084:467;11607:4;11568:6;:19;;11588:1;11568:22;;;;;;-1:-1:-1;;;11568:22:0;;;;;;;;;;;;;;;;;;;:35;;;:43;11564:462;;;11639:52;11687:3;11640:41;11660:17;11678:1;11660:20;;;;;;-1:-1:-1;;;11660:20:0;;;;;;;;11639:52;11630:61;;11732:6;:19;;11752:1;11732:22;;;;;;-1:-1:-1;;;11732:22:0;;;;;;;;;;;;;;;;;;;;;:30;11708:74;;-1:-1:-1;;;;;11732:30:0;;;;11708:74;;;;;11775:6;;11708:74;11732:22;11708:74;11775:6;11732:30;11708:74;;;;;;;;;;;;;;;;;;;;;11850:62;11905:6;11851:5;:37;11857:6;:19;;11877:1;11857:22;;;;;;-1:-1:-1;;;11857:22:0;;;;;;;;11850:62;11799:5;:37;11805:6;:19;;11825:1;11805:22;;;;;;-1:-1:-1;;;11805:22:0;;;;;;;;;;;;;;;;;;;;;;;;:30;-1:-1:-1;;;;;11805:30:0;11799:37;;;;;;;;;;;;:48;;:113;11946:22;;:6;;11966:1;;11946:22;;;;-1:-1:-1;;;11946:22:0;;;;;;;;;;;;;;;;;;;;;;:30;11929:14;:47;;-1:-1:-1;;;;;;11929:47:0;-1:-1:-1;;;;;11946:30:0;;;11929:47;;;;;;11993:9;:18;;;11564:462;12082:4;12043:6;:19;;12063:1;12043:22;;;;;;-1:-1:-1;;;12043:22:0;;;;;;;;;;;;;;;;;;;:35;;;:43;12039:462;;;12114:52;12162:3;12115:41;12135:17;12153:1;12135:20;;;;;;-1:-1:-1;;;12135:20:0;;;;;;;;12114:52;12105:61;;12207:6;:19;;12227:1;12207:22;;;;;;-1:-1:-1;;;12207:22:0;;;;;;;;;;;;;;;;;;;;;:30;12183:74;;-1:-1:-1;;;;;12207:30:0;;;;12183:74;;;;;12250:6;;12183:74;12207:22;12183:74;12250:6;12207:30;12183:74;;;;;;;;;;;;;;;;;;;;;12325:62;12380:6;12326:5;:37;12332:6;:19;;12352:1;12332:22;;;;;;-1:-1:-1;;;12332:22:0;;;;;;;;12325:62;12274:5;:37;12280:6;:19;;12300:1;12280:22;;;;;;-1:-1:-1;;;12280:22:0;;;;;;;;;;;;;;;;;;;;;;;;:30;-1:-1:-1;;;;;12280:30:0;12274:37;;;;;;;;;;;;:48;;:113;12421:22;;:6;;12441:1;;12421:22;;;;-1:-1:-1;;;12421:22:0;;;;;;;;;;;;;;;;;;;;;;:30;12404:14;:47;;-1:-1:-1;;;;;;12404:47:0;-1:-1:-1;;;;;12421:30:0;;;12404:47;;;;;;12468:9;:18;;;12039:462;12557:4;12518:6;:19;;12538:1;12518:22;;;;;;-1:-1:-1;;;12518:22:0;;;;;;;;;;;;;;;;;;;:35;;;:43;12514:464;;;12590:52;12638:3;12591:41;12611:17;12629:1;12611:20;;;;;;-1:-1:-1;;;12611:20:0;;;;;;;;12590:52;12581:61;;12684:6;:19;;12704:1;12684:22;;;;;;-1:-1:-1;;;12684:22:0;;;;;;;;;;;;;;;;;;;;;:30;12660:74;;-1:-1:-1;;;;;12684:30:0;;;;12660:74;;;;;12727:6;;12660:74;12684:22;12660:74;12727:6;12684:30;12660:74;;;;;;;;;;;;;;;;;;;;;12802:62;12857:6;12803:5;:37;12809:6;:19;;12829:1;12809:22;;;;;;-1:-1:-1;;;12809:22:0;;;;;;;;12802:62;12751:5;:37;12757:6;:19;;12777:1;12757:22;;;;;;-1:-1:-1;;;12757:22:0;;;;;;;;;;;;;;;;;;;;;;;;:30;-1:-1:-1;;;;;12757:30:0;12751:37;;;;;;;;;;;;:48;;:113;12898:22;;:6;;12918:1;;12898:22;;;;-1:-1:-1;;;12898:22:0;;;;;;;;;;;;;;;;;;;;;;:30;12881:14;:47;;-1:-1:-1;;;;;;12881:47:0;-1:-1:-1;;;;;12898:30:0;;;12881:47;;;;;;12945:9;:18;;;12514:464;10398:3;;;;:::i;:::-;;;;10355:2634;;;;9541:3455;;;;;;;;:::o;9198:327::-;9278:7;9299:9;9311:24;9333:1;9312:15;9320:2;9324;9312:7;:15::i;9311:24::-;9299:36;-1:-1:-1;9358:2:0;9346:9;9387:106;9358:2;9395:90;9299:36;9424:24;:15;9444:3;9424:19;:24::i;:::-;9450:25;:16;9471:3;9450:20;:25::i;:::-;9413:63;;;;;;7856:25:1;;;;7897:18;;7890:34;7829:18;;9413:63:0;;;-1:-1:-1;;9413:63:0;;;;;;;;;9403:74;;9413:63;9403:74;;;;;9395:87;:90::i;9387:106::-;9371:122;9198:327;-1:-1:-1;;;;;;;9198:327:0:o;19736:186::-;19797:7;19825:1;19821;:5;19817:94;;;19849:5;19853:1;19849;:5;:::i;:::-;19842:12;;;;19817:94;-1:-1:-1;19894:1:0;19887:8;;21138:98;21196:7;21223:5;21227:1;21223;:5;:::i;14:173:1:-;82:20;;-1:-1:-1;;;;;131:31:1;;121:42;;111:2;;177:1;174;167:12;192:156;258:20;;318:4;307:16;;297:27;;287:2;;338:1;335;328:12;353:196;;465:2;453:9;444:7;440:23;436:32;433:2;;;486:6;478;471:22;433:2;514:29;533:9;514:29;:::i;554:264::-;;;683:2;671:9;662:7;658:23;654:32;651:2;;;704:6;696;689:22;651:2;732:29;751:9;732:29;:::i;:::-;722:39;808:2;793:18;;;;780:32;;-1:-1:-1;;;641:177:1:o;823:266::-;;;950:2;938:9;929:7;925:23;921:32;918:2;;;971:6;963;956:22;918:2;999:29;1018:9;999:29;:::i;:::-;989:39;;1047:36;1079:2;1068:9;1064:18;1047:36;:::i;:::-;1037:46;;908:181;;;;;:::o;1094:190::-;;1206:2;1194:9;1185:7;1181:23;1177:32;1174:2;;;1227:6;1219;1212:22;1174:2;-1:-1:-1;1255:23:1;;1164:120;-1:-1:-1;1164:120:1:o;1289:192::-;;1399:2;1387:9;1378:7;1374:23;1370:32;1367:2;;;1420:6;1412;1405:22;1367:2;1448:27;1465:9;1448:27;:::i;1486:260::-;;;1613:2;1601:9;1592:7;1588:23;1584:32;1581:2;;;1634:6;1626;1619:22;1581:2;1662:27;1679:9;1662:27;:::i;10299:128::-;;10370:1;10366:6;10363:1;10360:13;10357:2;;;10376:18;;:::i;:::-;-1:-1:-1;10412:9:1;;10347:80::o;10432:120::-;;10498:1;10488:2;;10503:18;;:::i;:::-;-1:-1:-1;10537:9:1;;10478:74::o;10557:168::-;;10663:1;10659;10655:6;10651:14;10648:1;10645:21;10640:1;10633:9;10626:17;10622:45;10619:2;;;10670:18;;:::i;:::-;-1:-1:-1;10710:9:1;;10609:116::o;10730:125::-;;10798:1;10795;10792:8;10789:2;;;10803:18;;:::i;:::-;-1:-1:-1;10840:9:1;;10779:76::o;10860:135::-;;-1:-1:-1;;10920:17:1;;10917:2;;;10940:18;;:::i;:::-;-1:-1:-1;10987:1:1;10976:13;;10907:88::o;11000:112::-;;11058:1;11048:2;;11063:18;;:::i;:::-;-1:-1:-1;11097:9:1;;11038:74::o;11117:127::-;11178:10;11173:3;11169:20;11166:1;11159:31;11209:4;11206:1;11199:15;11233:4;11230:1;11223:15;11249:127;11310:10;11305:3;11301:20;11298:1;11291:31;11341:4;11338:1;11331:15;11365:4;11362:1;11355:15

Swarm Source

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