Contract 0x04051d989c80999c4d71480ff0744f929fcc7adc 7

 

Contract Overview

Balance:
0.072460802663708049 MATIC

MATIC Value:
$0.07 (@ $0.92/MATIC)
 
Txn Hash Method
Block
From
To
Value [Txn Fee]
0xccf3b460647ef1df45c6ebd9857cdba2edc407e9f7c799658db9c8e0f1793c97Withdraw317239122022-08-10 7:19:012 days 10 hrs ago0xfc0294c94fcba498a64f1ba5fb974aa8e59edfc5 IN  0x04051d989c80999c4d71480ff0744f929fcc7adc0 MATIC0.006661890003 30.000000014
0x1e470604946e7f9f30ba2bba4c8041d641745a5bb468f1af878155129cc84810Withdraw315744762022-08-06 4:26:416 days 13 hrs ago0xfc0294c94fcba498a64f1ba5fb974aa8e59edfc5 IN  0x04051d989c80999c4d71480ff0744f929fcc7adc0 MATIC0.008415900004 30.000000015
0x1a892e276d96898153100e86a304b9a50124ee22dad93c741e7dc2d25b7c9272Invest315744622022-08-06 4:26:096 days 13 hrs ago0xfc0294c94fcba498a64f1ba5fb974aa8e59edfc5 IN  0x04051d989c80999c4d71480ff0744f929fcc7adc1 MATIC0.010198950004 30.000000014
0xb39166c40a88726b4f46b5c85830b9a6d3816d6a7d53f67f5bc017bf4a27ce2cWithdraw315143372022-08-04 14:55:078 days 2 hrs ago0xdd8131f46fe862c4cef8f0b337cdf51a78c78d6a IN  0x04051d989c80999c4d71480ff0744f929fcc7adc0 MATIC0.007362150351 30.000001433
0x9a6aeabfe4e988678d30381f0c2f73baf0976f7ef5a2f6d66d9b1d376a72f23bWithdraw312284002022-07-28 7:47:2715 days 10 hrs ago0x546a67bc6e337561163f437525e71ce670839b7a IN  0x04051d989c80999c4d71480ff0744f929fcc7adc0 MATIC0.005306250009 30.000000054
0xd5aeae326b7df3f1a9ca61c22d64a5819ca06b0935fa57bd551ee87d70691f8eWithdraw311428702022-07-26 2:54:3617 days 14 hrs ago0xdd8131f46fe862c4cef8f0b337cdf51a78c78d6a IN  0x04051d989c80999c4d71480ff0744f929fcc7adc0 MATIC0.00885774941 30.069998099
0x55d3aa248b7db16a1a5ac5f87db93bd1a037b92e539266104d3ec5377ac6e6b2Withdraw311231222022-07-25 13:20:5218 days 4 hrs ago0xfc0294c94fcba498a64f1ba5fb974aa8e59edfc5 IN  0x04051d989c80999c4d71480ff0744f929fcc7adc0 MATIC0.01610945 50
0x37cb25754e02d3d68a28ef38238abfaaa86dff7071f5ab125a5aa002526cb500Invest311230262022-07-25 13:17:3618 days 4 hrs ago0xfc0294c94fcba498a64f1ba5fb974aa8e59edfc5 IN  0x04051d989c80999c4d71480ff0744f929fcc7adc1 MATIC0.032430976724 97.085071035
0xb294eb460cf454bf626f74debe35b328cf3861454815b64e97e913ff09c3005bWithdraw310807832022-07-24 9:19:4319 days 8 hrs ago0x3e001b15cb5a9fffb23ddaafbcc7a0d6e8f68902 IN  0x04051d989c80999c4d71480ff0744f929fcc7adc0 MATIC0.004904370971 30.000005945
0xdc2042a77333d8766771e40a34acd187840911f92192b425439cb2c409a1cd1aWithdraw310738772022-07-24 4:51:1119 days 12 hrs ago0xfc0294c94fcba498a64f1ba5fb974aa8e59edfc5 IN  0x04051d989c80999c4d71480ff0744f929fcc7adc0 MATIC0.008943570003 30.000000013
0xfa0d7cb5d31f87dd1a197e8c6ff64e8f2e93f1f0263aab58c0a3753c0bd1cd1bWithdraw310555612022-07-23 17:14:2720 days 35 mins ago0xdd8131f46fe862c4cef8f0b337cdf51a78c78d6a IN  0x04051d989c80999c4d71480ff0744f929fcc7adc0 MATIC0.016520319261 57.861881111
0x9bb1a4586fc36830f77529fc8b1475b583a6cc898bbdfa03f7ae5158c48fc235Withdraw308968322022-07-19 12:07:5024 days 5 hrs ago0x3e001b15cb5a9fffb23ddaafbcc7a0d6e8f68902 IN  0x04051d989c80999c4d71480ff0744f929fcc7adc0 MATIC0.006727218069 30.096043258
0xc3b8c04f1d3681be45643ca9baa59aaed0ab851c898bdbc1e0b120d24b1b5cf3Withdraw308629782022-07-18 13:58:3125 days 3 hrs ago0xdd8131f46fe862c4cef8f0b337cdf51a78c78d6a IN  0x04051d989c80999c4d71480ff0744f929fcc7adc0 MATIC0.008988175339 32.844915459
0x40b27d6e53a3323d643a98de8ea1e8cc4ee74d6810855bd53fa187879ab4ccf2Withdraw308351062022-07-17 20:06:5925 days 21 hrs ago0x296afa0be6cae58d4fe869c59d0243455d66107c IN  0x04051d989c80999c4d71480ff0744f929fcc7adc0 MATIC0.00606128204 33.310336333
0xf14f2a79b8e315f84c07bfa95620297fc30e4b75d9f370fdc50c968816acc743Withdraw308308702022-07-17 17:34:5726 days 15 mins ago0xfc0294c94fcba498a64f1ba5fb974aa8e59edfc5 IN  0x04051d989c80999c4d71480ff0744f929fcc7adc0 MATIC0.008503830015 30.000000056
0x4725cda77cc65a8d6f4a216bf5f3d09b9ef08b317d565c1fb04011332e78f93aWithdraw307576612022-07-15 16:37:5828 days 1 hr ago0xdd8131f46fe862c4cef8f0b337cdf51a78c78d6a IN  0x04051d989c80999c4d71480ff0744f929fcc7adc0 MATIC0.024017471738 101.00584036
0xed18586b5392569d4ee7f5212bc14a2eefe1f0e4d92281ca64dab39f5547a039Withdraw307511962022-07-15 11:51:4328 days 5 hrs ago0xfc0294c94fcba498a64f1ba5fb974aa8e59edfc5 IN  0x04051d989c80999c4d71480ff0744f929fcc7adc0 MATIC0.007575436676 30.254670438
0x2110d871a95da946803ae89683c7e333911003b5f6647674b93a749cb13140ceWithdraw307486342022-07-15 10:18:1528 days 7 hrs ago0xb7bfd58c946bc3365ce4e340810f2cdb0b6f9851 IN  0x04051d989c80999c4d71480ff0744f929fcc7adc0 MATIC0.01139296696 44.808862529
0xf81ce5dc11506d64e695f648f9700fda72c755cebe227c251b517ad90422d09fInvest307485822022-07-15 10:16:2728 days 7 hrs ago0xb7bfd58c946bc3365ce4e340810f2cdb0b6f9851 IN  0x04051d989c80999c4d71480ff0744f929fcc7adc0.1 MATIC0.001216656776 53.960916139
0xe29479559afccbaa2c1417a408f3b5850203d8424a78e478bda5afb2072c8e83Withdraw307084462022-07-14 8:53:1229 days 8 hrs ago0xdd8131f46fe862c4cef8f0b337cdf51a78c78d6a IN  0x04051d989c80999c4d71480ff0744f929fcc7adc0 MATIC0.020687062058 84.473190791
0x56660ed5f9dd84a2699654e796d9bbe81e0c9df981a62d9b0dbada37d5302a02Withdraw306771292022-07-13 10:55:1730 days 6 hrs ago0xfc0294c94fcba498a64f1ba5fb974aa8e59edfc5 IN  0x04051d989c80999c4d71480ff0744f929fcc7adc0 MATIC0.007645974698 30.087455773
0x92417a31959ec87a6003ef53c90c36d86c3b520d44338ef15bb7208c8eb51fdcWithdraw306726882022-07-13 8:02:5530 days 9 hrs ago0xdd8131f46fe862c4cef8f0b337cdf51a78c78d6a IN  0x04051d989c80999c4d71480ff0744f929fcc7adc0 MATIC0.007096613002 31.000000009
0x668c116fd77c39c6736921360cfd668cfa32890d13c9ce089bd18c4e3daad48bWithdraw306628852022-07-13 1:53:5130 days 15 hrs ago0xdaad969e2b80f195f7e03d02de425b2352dc3511 IN  0x04051d989c80999c4d71480ff0744f929fcc7adc0 MATIC0.007588627752 40.77912286
0x3fd0eb093242aed99f6b6197f6166588a3ffea035ae524456203ac51d14371f3Invest306411772022-07-12 12:14:2131 days 5 hrs ago0xb7bfd58c946bc3365ce4e340810f2cdb0b6f9851 IN  0x04051d989c80999c4d71480ff0744f929fcc7adc1 MATIC0.012570324012 30.010729126
0xf9305ba7deaee62a13c9a241cebe88bf305301dcfcbdde47d8ae47c9dbd0f3aaWithdraw306411252022-07-12 12:12:3331 days 5 hrs ago0xe669aeb9369f48fa7c8f55b7b0906e5d1ac522ac IN  0x04051d989c80999c4d71480ff0744f929fcc7adc0 MATIC0.00421932796 30.013927831
[ Download CSV Export 
Latest 25 internal transaction
Parent Txn Hash Block From To Value
0xccf3b460647ef1df45c6ebd9857cdba2edc407e9f7c799658db9c8e0f1793c97317239122022-08-10 7:19:012 days 10 hrs ago 0x04051d989c80999c4d71480ff0744f929fcc7adc0xfc0294c94fcba498a64f1ba5fb974aa8e59edfc50.108691203995562077 MATIC
0x1e470604946e7f9f30ba2bba4c8041d641745a5bb468f1af878155129cc84810315744762022-08-06 4:26:416 days 13 hrs ago 0x04051d989c80999c4d71480ff0744f929fcc7adc0xfc0294c94fcba498a64f1ba5fb974aa8e59edfc50.724608026637080508 MATIC
0x1a892e276d96898153100e86a304b9a50124ee22dad93c741e7dc2d25b7c9272315744622022-08-06 4:26:096 days 13 hrs ago 0x04051d989c80999c4d71480ff0744f929fcc7adc0xda143be4ff739cbf4af98a82d873b964bb1f6ea80.1 MATIC
0xb39166c40a88726b4f46b5c85830b9a6d3816d6a7d53f67f5bc017bf4a27ce2c315143372022-08-04 14:55:078 days 2 hrs ago 0x04051d989c80999c4d71480ff0744f929fcc7adc0xdd8131f46fe862c4cef8f0b337cdf51a78c78d6a0.023040133185402542 MATIC
0x9a6aeabfe4e988678d30381f0c2f73baf0976f7ef5a2f6d66d9b1d376a72f23b312284002022-07-28 7:47:2715 days 10 hrs ago 0x04051d989c80999c4d71480ff0744f929fcc7adc0x546a67bc6e337561163f437525e71ce670839b7a0.043200249722629765 MATIC
0xd5aeae326b7df3f1a9ca61c22d64a5819ca06b0935fa57bd551ee87d70691f8e311428702022-07-26 2:54:3617 days 14 hrs ago 0x04051d989c80999c4d71480ff0744f929fcc7adc0xdd8131f46fe862c4cef8f0b337cdf51a78c78d6a0.108000624306574415 MATIC
0x55d3aa248b7db16a1a5ac5f87db93bd1a037b92e539266104d3ec5377ac6e6b2311231222022-07-25 13:20:5218 days 4 hrs ago 0x04051d989c80999c4d71480ff0744f929fcc7adc0xfc0294c94fcba498a64f1ba5fb974aa8e59edfc50.720004162043829425 MATIC
0x37cb25754e02d3d68a28ef38238abfaaa86dff7071f5ab125a5aa002526cb500311230262022-07-25 13:17:3618 days 4 hrs ago 0x04051d989c80999c4d71480ff0744f929fcc7adc0xda143be4ff739cbf4af98a82d873b964bb1f6ea80.1 MATIC
0xb294eb460cf454bf626f74debe35b328cf3861454815b64e97e913ff09c3005b310807832022-07-24 9:19:4319 days 8 hrs ago 0x04051d989c80999c4d71480ff0744f929fcc7adc0x3e001b15cb5a9fffb23ddaafbcc7a0d6e8f689020.000007803832180175 MATIC
0xdc2042a77333d8766771e40a34acd187840911f92192b425439cb2c409a1cd1a310738772022-07-24 4:51:1119 days 12 hrs ago 0x04051d989c80999c4d71480ff0744f929fcc7adc0xfc0294c94fcba498a64f1ba5fb974aa8e59edfc50.000019509580450436 MATIC
0xfa0d7cb5d31f87dd1a197e8c6ff64e8f2e93f1f0263aab58c0a3753c0bd1cd1b310555612022-07-23 17:14:2720 days 35 mins ago 0x04051d989c80999c4d71480ff0744f929fcc7adc0xdd8131f46fe862c4cef8f0b337cdf51a78c78d6a0.000048773951126088 MATIC
0x9bb1a4586fc36830f77529fc8b1475b583a6cc898bbdfa03f7ae5158c48fc235308968322022-07-19 12:07:5024 days 5 hrs ago 0x04051d989c80999c4d71480ff0744f929fcc7adc0x3e001b15cb5a9fffb23ddaafbcc7a0d6e8f689020.00012193487781522 MATIC
0xc3b8c04f1d3681be45643ca9baa59aaed0ab851c898bdbc1e0b120d24b1b5cf3308629782022-07-18 13:58:3125 days 3 hrs ago 0x04051d989c80999c4d71480ff0744f929fcc7adc0xdd8131f46fe862c4cef8f0b337cdf51a78c78d6a0.000304837194538052 MATIC
0x40b27d6e53a3323d643a98de8ea1e8cc4ee74d6810855bd53fa187879ab4ccf2308351062022-07-17 20:06:5925 days 21 hrs ago 0x04051d989c80999c4d71480ff0744f929fcc7adc0x296afa0be6cae58d4fe869c59d0243455d66107c0.000762092986345129 MATIC
0xf14f2a79b8e315f84c07bfa95620297fc30e4b75d9f370fdc50c968816acc743308308702022-07-17 17:34:5726 days 15 mins ago 0x04051d989c80999c4d71480ff0744f929fcc7adc0xfc0294c94fcba498a64f1ba5fb974aa8e59edfc50.001905232465862825 MATIC
0x4725cda77cc65a8d6f4a216bf5f3d09b9ef08b317d565c1fb04011332e78f93a307576612022-07-15 16:37:5828 days 1 hr ago 0x04051d989c80999c4d71480ff0744f929fcc7adc0xdd8131f46fe862c4cef8f0b337cdf51a78c78d6a0.004763081164657063 MATIC
0xed18586b5392569d4ee7f5212bc14a2eefe1f0e4d92281ca64dab39f5547a039307511962022-07-15 11:51:4328 days 5 hrs ago 0x04051d989c80999c4d71480ff0744f929fcc7adc0xfc0294c94fcba498a64f1ba5fb974aa8e59edfc50.011907702911642656 MATIC
0x2110d871a95da946803ae89683c7e333911003b5f6647674b93a749cb13140ce307486342022-07-15 10:18:1528 days 7 hrs ago 0x04051d989c80999c4d71480ff0744f929fcc7adc0xb7bfd58c946bc3365ce4e340810f2cdb0b6f98510.02976925727910664 MATIC
0xe29479559afccbaa2c1417a408f3b5850203d8424a78e478bda5afb2072c8e83307084462022-07-14 8:53:1229 days 8 hrs ago 0x04051d989c80999c4d71480ff0744f929fcc7adc0xdd8131f46fe862c4cef8f0b337cdf51a78c78d6a0.074423143197766599 MATIC
0x56660ed5f9dd84a2699654e796d9bbe81e0c9df981a62d9b0dbada37d5302a02306771292022-07-13 10:55:1730 days 6 hrs ago 0x04051d989c80999c4d71480ff0744f929fcc7adc0xfc0294c94fcba498a64f1ba5fb974aa8e59edfc50.186057857994416496 MATIC
0x92417a31959ec87a6003ef53c90c36d86c3b520d44338ef15bb7208c8eb51fdc306726882022-07-13 8:02:5530 days 9 hrs ago 0x04051d989c80999c4d71480ff0744f929fcc7adc0xdd8131f46fe862c4cef8f0b337cdf51a78c78d6a0.465144644986041241 MATIC
0x668c116fd77c39c6736921360cfd668cfa32890d13c9ce089bd18c4e3daad48b306628852022-07-13 1:53:5130 days 15 hrs ago 0x04051d989c80999c4d71480ff0744f929fcc7adc0xdaad969e2b80f195f7e03d02de425b2352dc35110.911567596540860697 MATIC
0x3fd0eb093242aed99f6b6197f6166588a3ffea035ae524456203ac51d14371f3306411772022-07-12 12:14:2131 days 5 hrs ago 0x04051d989c80999c4d71480ff0744f929fcc7adc0xda143be4ff739cbf4af98a82d873b964bb1f6ea80.1 MATIC
0xf9305ba7deaee62a13c9a241cebe88bf305301dcfcbdde47d8ae47c9dbd0f3aa306411252022-07-12 12:12:3331 days 5 hrs ago 0x04051d989c80999c4d71480ff0744f929fcc7adc0xe669aeb9369f48fa7c8f55b7b0906e5d1ac522ac1.180213007276394151 MATIC
0xa3873e614e76249c7c47d33e6fd243cc8c9d7c6f723d8c52ab3bef4c905bee20306406082022-07-12 11:51:3731 days 5 hrs ago 0x04051d989c80999c4d71480ff0744f929fcc7adc0xfcdfae02216d9de8d2c3e56513b7dec50e4dfdce0.31483851528284322 MATIC
[ Download CSV Export 
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
MaticMaster

Compiler Version
v0.8.5+commit.a4f2e591

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license
/**
 *Submitted for verification at polygonscan.com on 2022-03-14
*/

// SPDX-License-Identifier: UNLICENSED
pragma solidity 0.8.5;

//===============================================================================================================================================

contract MaticMaster {

	//accept funds from Insurance
	receive() external payable {}

	bool public						LAUNCHED;
	address payable public			WALLET_DEV;
	uint constant public			PERCENTS_DIVIDER				= 1000;
	uint constant public			TIME_STEP						= 1 days;
	uint constant public			INVEST_MIN_AMOUNT				= 1 ether;				// 1 MATIC
	uint[] public					REFERRAL_PERCENTS				= [70, 20, 10, 5, 5];	// 7% 2% 1% 0.5% 0.5%
	uint constant public			DEV_FEE							= 100;					// dev fee 10% of deposit
	uint constant public			MAX_WITHDRAW_AMOUNT				= 10000 ether;			// claim 10000 MATIC max
	uint constant public			WITHDRAW_COOLDOWN				= 1 days;			    // claim 1 time per day
	uint constant public			WITHDRAW_RETURN_PERCENT	    	= 100;					// return 10% of claim
    
    mapping (uint => uint) public	DAYS7_MAXBALANCE;
	uint constant public			GUARD_LOWBALANCE_PERCENT	= 250;					// protection kicks in at 25% or lower
	uint constant public			REINVEST_PERCENT			= 100;					// auto reinvest 10% of claim
    uint constant public			LOWBALANCE_REINVEST_PERCENT	= 300;					// auto reinvest 30% of claim when low balance
	
	mapping (uint => THistoryDeposit) public DEPOSIT_HISTORY;
	uint public TOTAL_DEPOSITS;
	uint public TOTAL_INVESTED;
	uint public TOTAL_REFDIVIDENDS;
	uint public TOTAL_CLAIMED;
    uint public TOTAL_USERS;
	uint public GUARD_LOWBALANCE;

	struct TPlan {
		uint durationDays;
		uint percent;
	}

	struct TDeposit {
		uint planIdx;
		uint amount;
		uint timeStart;
		uint timeEnd;
		bool isReinvest;
	}

	struct THistoryDeposit {
		uint timestamp;
		uint duration;
		uint amount;
	}

	struct TUser {
		uint		checkpoint;
		TDeposit[]	deposits;
		TDeposit[]	depHistory;
		uint[5]		refCount;
		address referrer;
		uint refDividends;
		uint debtBuffer;
		uint totalInvested;
		uint totalRefDividends;
		uint totalClaimed;
	}


	TPlan[] public						PLANS;
	mapping( address => TUser ) public	USERS;

	event DevFeePaid(uint amount);
	event Reinvested(uint amount);
	event Claimed(address user, uint amount);
	event RefInvited(address referrer, address user);
	event RefDividends(address referrer, address user, uint refLevel, uint amount);
	event Newcomer(address user);
	event NewDeposit(address user, uint planIdx, uint amount);

	uint public		stat_maxDepositArrayLength;
	address public	stat_maxDepositArrayUser;
	uint public		stat_depositsReusedCounter;

	//-------------------------------------------------------------------------------------------------------------------------------------------

	constructor(address payable _walletDev) {

		WALLET_DEV = _walletDev;
		PLANS.push( TPlan(21,100) );
	}

	//-------------------------------------------------------------------------------------------------------------------------------------------

	function invest(address _referrer, uint8 _planIdx) public payable {

		require(msg.value >= INVEST_MIN_AMOUNT, "The deposit amount is too low");
		require(_planIdx < PLANS.length, "Invalid plan index");
		if(!LAUNCHED) {
			require(msg.sender == WALLET_DEV, "Project has not launched yet");
			LAUNCHED = true;
		}

		//transfer dev fee
		uint mfee = msg.value * DEV_FEE / PERCENTS_DIVIDER;
		WALLET_DEV.transfer(mfee);
		emit DevFeePaid(mfee);

		_setUserReferrer(msg.sender, _referrer);

		_allocateReferralRewards(msg.sender, msg.value);

		_createDeposit( msg.sender, _planIdx, msg.value, false );
		
	}

	//-------------------------------------------------------------------------------------------------------------------------------------------

	function withdraw() public {

		TUser storage user = USERS[msg.sender];

		uint claimAmount = _getUserDividends(msg.sender) + user.refDividends + user.debtBuffer;

		require(claimAmount > 0, "Nothing to withdraw");
		require(_canClaim(msg.sender), "Claim cooldown");

		user.checkpoint = block.timestamp;	//clear accumulated dividends
		user.refDividends = 0;				//clear refDividends
		user.debtBuffer = 0;				//clear debtBuffer


		//not enough contract balance? give what we can, promise to refund later
		uint balance = address(this).balance;
		if (claimAmount > balance) {
			user.debtBuffer += claimAmount - balance;
			claimAmount = balance;
		}

		//anti-whale protection
		if (claimAmount > MAX_WITHDRAW_AMOUNT) {
			user.debtBuffer += claimAmount - MAX_WITHDRAW_AMOUNT;
			claimAmount = MAX_WITHDRAW_AMOUNT;
		}

		// return 10%
		uint taxAmount = claimAmount * WITHDRAW_RETURN_PERCENT / PERCENTS_DIVIDER;
        
		//reinvest
        uint reinvestAmount;
        if (_isLowBalanceGuarded()) { // protect balance empty
		    reinvestAmount = claimAmount * LOWBALANCE_REINVEST_PERCENT / PERCENTS_DIVIDER;
        } else {
		    reinvestAmount = claimAmount * REINVEST_PERCENT / PERCENTS_DIVIDER;
        }

		_createDeposit( msg.sender, 0, reinvestAmount, true );
		emit Reinvested(reinvestAmount);

		claimAmount -= taxAmount;
		claimAmount -= reinvestAmount;

		//withdraw to user wallet
		user.totalClaimed += claimAmount;
		TOTAL_CLAIMED += claimAmount;
		payable(msg.sender).transfer( claimAmount );
		emit Claimed(msg.sender, claimAmount );

	}

	//-------------------------------------------------------------------------------------------------------------------------------------------

	function _canClaim(address _user) internal view returns(bool) {
		return (block.timestamp-USERS[_user].checkpoint >= WITHDRAW_COOLDOWN);
	}

	//-------------------------------------------------------------------------------------------------------------------------------------------

	function _isLowBalanceGuarded() internal returns(bool) {

		uint balance = address(this).balance;
		uint todayIdx = block.timestamp/TIME_STEP;

		//new high today
		if ( DAYS7_MAXBALANCE[todayIdx] < balance ) {
			DAYS7_MAXBALANCE[todayIdx] = balance;
		}

		//high of past 7 days
		uint rangeHigh;
		for( uint i=0; i<7; i++) {
			if( DAYS7_MAXBALANCE[todayIdx-i] > rangeHigh ) {
				rangeHigh = DAYS7_MAXBALANCE[todayIdx-i];
			}
		}

		GUARD_LOWBALANCE = rangeHigh*GUARD_LOWBALANCE_PERCENT/PERCENTS_DIVIDER;
		return balance < GUARD_LOWBALANCE;
	}

	//-------------------------------------------------------------------------------------------------------------------------------------------

	function _setUserReferrer(address _user, address _referrer) internal {

		if (USERS[_user].referrer != address(0)) return;	//already has a referrer
        if (USERS[_user].deposits.length > 0) return;	    //already deposited user cant set a referrer
		if (USERS[_referrer].deposits.length == 0) return;	//referrer doesnt exist
		if (_user == _referrer) return;						//cant refer to yourself

		//adopt
		USERS[_user].referrer = _referrer;

		//loop through the referrer hierarchy, increase every referral Levels counter
		address upline = USERS[_user].referrer;
		for (uint i=0; i < REFERRAL_PERCENTS.length; i++) {
			if(upline==address(0)) break;
			USERS[upline].refCount[i]++;
			upline = USERS[upline].referrer;
		}

		emit RefInvited(_referrer,_user);
	}

	//-------------------------------------------------------------------------------------------------------------------------------------------

	function _allocateReferralRewards(address _user, uint _depositAmount) internal {

		//loop through the referrer hierarchy, allocate refDividends
		address upline = USERS[_user].referrer;
		for (uint i=0; i < REFERRAL_PERCENTS.length; i++) {
			if (upline == address(0)) break;
			uint amount = _depositAmount * REFERRAL_PERCENTS[i] / PERCENTS_DIVIDER;
			USERS[upline].refDividends += amount;
			USERS[upline].totalRefDividends += amount;
			TOTAL_REFDIVIDENDS += amount;
			upline = USERS[upline].referrer;
			emit RefDividends(upline, _user, i, amount);
		}
	}

	//-------------------------------------------------------------------------------------------------------------------------------------------

	function _createDeposit( address _user, uint _planIdx, uint _amount, bool _isReinvest ) internal returns(uint o_depIdx) {

		TUser storage user = USERS[_user];

		//first deposit: set initial checkpoint
		if (user.deposits.length == 0) {
			user.checkpoint = block.timestamp;
            TOTAL_USERS++;
			emit Newcomer(_user);
		}

		TDeposit memory newDep = TDeposit( _planIdx, _amount, block.timestamp, block.timestamp + PLANS[_planIdx].durationDays * TIME_STEP, _isReinvest );

		//reuse a deceased slot or create new
		bool found;
		for(uint i=0; i<user.deposits.length; i++) {
			if(_isDepositDeceased(_user,i)) {
				user.deposits[i] = newDep;
				o_depIdx=i;
				found=true;
				stat_depositsReusedCounter++;
				break;
			}
		}
		if(!found) {
            o_depIdx=user.deposits.length;
            user.deposits.push(newDep);
		}

		//if not reinvest - update global stats
		if(!_isReinvest) {
			user.depHistory.push(newDep);
			user.totalInvested += _amount;
			DEPOSIT_HISTORY[TOTAL_DEPOSITS] = THistoryDeposit( block.timestamp, PLANS[_planIdx].durationDays*TIME_STEP, _amount );
			TOTAL_DEPOSITS++;
			TOTAL_INVESTED += _amount;
		}

		//technical data
 		if(stat_maxDepositArrayLength < user.deposits.length) {
			stat_maxDepositArrayLength = user.deposits.length;
			stat_maxDepositArrayUser = _user;
		}

		emit NewDeposit(_user, newDep.planIdx, newDep.amount);
	}

	//-------------------------------------------------------------------------------------------------------------------------------------------

	function _isDepositDeceased(address _user, uint _depIdx) internal view returns(bool) {
		return (USERS[_user].checkpoint >= USERS[_user].deposits[_depIdx].timeEnd);
	}

	//-------------------------------------------------------------------------------------------------------------------------------------------

	function _calculateDepositDividends(address _user, uint _depIdx) internal view returns (uint o_amount) {

		/* use _isDepositDeceased before calling this function to save gas */

		TUser storage user = USERS[_user];
		TDeposit storage deposit = user.deposits[_depIdx];

		//calculate withdrawable dividends starting from the last Claim checkpoint
		uint totalReward = deposit.amount * PLANS[deposit.planIdx].percent / PERCENTS_DIVIDER;
		uint timeA = deposit.timeStart > user.checkpoint ? deposit.timeStart : user.checkpoint;
		uint timeB = deposit.timeEnd < block.timestamp ? deposit.timeEnd : block.timestamp;
		if (timeA < timeB) {
			o_amount = totalReward * (timeB-timeA) / TIME_STEP;
		}
	}

	//-------------------------------------------------------------------------------------------------------------------------------------------

	function _getUserDividends(address _user) internal view returns (uint o_amount) {

		for(uint i=0;i<USERS[_user].deposits.length;i++) {
			if(_isDepositDeceased(_user,i)) continue;
			o_amount += _calculateDepositDividends(_user,i);
		}

	}

	//-------------------------------------------------------------------------------------------------------------------------------------------

	function getProjectInfo() public view returns(uint o_totDeposits, uint o_totInvested, uint o_totRefDividends, uint o_totClaimed, uint o_balance, uint o_guardLowBalance, uint o_totUsers, uint o_timestamp) {
		return( TOTAL_DEPOSITS, TOTAL_INVESTED, TOTAL_REFDIVIDENDS, TOTAL_CLAIMED, address(this).balance, GUARD_LOWBALANCE, TOTAL_USERS, block.timestamp );
	}

	function getDepositHistory() public view returns(THistoryDeposit[20] memory o_historyDeposits, uint o_timestamp) {

		o_timestamp = block.timestamp;
		uint _from = TOTAL_DEPOSITS>=20 ? TOTAL_DEPOSITS-20 : 0;
		for(uint i=_from; i<TOTAL_DEPOSITS; i++) {
			o_historyDeposits[i-_from] = DEPOSIT_HISTORY[i];
		}
        
	}

	//-------------------------------------------------------------------------------------------------------------------------------------------

	struct TPlanInfo {
		uint dividends;
		uint mActive;
		uint rActive;
	}

	struct TRefInfo {
		uint[5] count;
		uint dividends;
		uint totalEarned;
	}

	struct TUserInfo {
		uint claimable;
		uint checkpoint;
		uint totalDepositCount;
        uint activeDeposit;
        uint activeReinvest;
		uint totalInvested;
		uint totalClaimed;
	}

	function getUserInfo(address _user) public view returns (TPlanInfo memory o_planInfo, TRefInfo memory o_refInfo, TUserInfo memory o_userInfo, uint o_timestamp) {

		o_timestamp = block.timestamp;

		TUser storage user = USERS[_user];

        uint activeDeposit;
		//active invest/reinvest deposits
		for(uint i=0; i<user.deposits.length; i++) {
			if(_isDepositDeceased(_user,i)) continue;
			o_planInfo.dividends += _calculateDepositDividends(_user,i);
			
            if(!user.deposits[i].isReinvest){ 
                o_planInfo.mActive++; 
            } else {
                o_planInfo.rActive++;
                o_userInfo.activeReinvest += user.deposits[i].amount;
            }
        
            o_userInfo.activeDeposit += user.deposits[i].amount;
		}

		//referral stats
		o_refInfo.count = user.refCount;
		o_refInfo.dividends = user.refDividends;
		o_refInfo.totalEarned = user.totalRefDividends;

		//user stats
		o_userInfo.claimable = o_planInfo.dividends + o_refInfo.dividends + user.debtBuffer;
		o_userInfo.checkpoint = user.checkpoint;
		o_userInfo.totalInvested = user.totalInvested;
		o_userInfo.totalDepositCount = user.depHistory.length;
		o_userInfo.totalClaimed = user.totalClaimed;

	}

	function getUserDepositHistory(address _user, uint _index) public view returns(TDeposit memory o_deposit, uint o_timestamp) {

		o_timestamp = block.timestamp;

        o_deposit = USERS[_user].depHistory[_index];

	}

	//-------------------------------------------------------------------------------------------------------------------------------------------

	/* MOONARCH INTERFACE */

	function getUserAvailable(address _user) public view returns(uint) {
		if(!_canClaim(_user)) return 0;
		(,,TUserInfo memory userInfo,) = getUserInfo(_user);
		return userInfo.claimable;
	}

	function getUserCheckpoint(address _user) public view returns(uint) {
		return USERS[_user].checkpoint;
	}

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

	//-------------------------------------------------------------------------------------------------------------------------------------------

}

//===============================================================================================================================================

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address payable","name":"_walletDev","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Claimed","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"DevFeePaid","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint256","name":"planIdx","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"NewDeposit","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"user","type":"address"}],"name":"Newcomer","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"referrer","type":"address"},{"indexed":false,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint256","name":"refLevel","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"RefDividends","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"referrer","type":"address"},{"indexed":false,"internalType":"address","name":"user","type":"address"}],"name":"RefInvited","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Reinvested","type":"event"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"DAYS7_MAXBALANCE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"DEPOSIT_HISTORY","outputs":[{"internalType":"uint256","name":"timestamp","type":"uint256"},{"internalType":"uint256","name":"duration","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"DEV_FEE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"GUARD_LOWBALANCE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"GUARD_LOWBALANCE_PERCENT","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":"LAUNCHED","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"LOWBALANCE_REINVEST_PERCENT","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MAX_WITHDRAW_AMOUNT","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":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"PLANS","outputs":[{"internalType":"uint256","name":"durationDays","type":"uint256"},{"internalType":"uint256","name":"percent","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":"REINVEST_PERCENT","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":"TOTAL_CLAIMED","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"TOTAL_DEPOSITS","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"TOTAL_INVESTED","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"TOTAL_REFDIVIDENDS","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"TOTAL_USERS","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"USERS","outputs":[{"internalType":"uint256","name":"checkpoint","type":"uint256"},{"internalType":"address","name":"referrer","type":"address"},{"internalType":"uint256","name":"refDividends","type":"uint256"},{"internalType":"uint256","name":"debtBuffer","type":"uint256"},{"internalType":"uint256","name":"totalInvested","type":"uint256"},{"internalType":"uint256","name":"totalRefDividends","type":"uint256"},{"internalType":"uint256","name":"totalClaimed","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"WALLET_DEV","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"WITHDRAW_COOLDOWN","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"WITHDRAW_RETURN_PERCENT","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getContractBalance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getDepositHistory","outputs":[{"components":[{"internalType":"uint256","name":"timestamp","type":"uint256"},{"internalType":"uint256","name":"duration","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"}],"internalType":"struct MaticMaster.THistoryDeposit[20]","name":"o_historyDeposits","type":"tuple[20]"},{"internalType":"uint256","name":"o_timestamp","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getProjectInfo","outputs":[{"internalType":"uint256","name":"o_totDeposits","type":"uint256"},{"internalType":"uint256","name":"o_totInvested","type":"uint256"},{"internalType":"uint256","name":"o_totRefDividends","type":"uint256"},{"internalType":"uint256","name":"o_totClaimed","type":"uint256"},{"internalType":"uint256","name":"o_balance","type":"uint256"},{"internalType":"uint256","name":"o_guardLowBalance","type":"uint256"},{"internalType":"uint256","name":"o_totUsers","type":"uint256"},{"internalType":"uint256","name":"o_timestamp","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_user","type":"address"}],"name":"getUserAvailable","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_user","type":"address"}],"name":"getUserCheckpoint","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_user","type":"address"},{"internalType":"uint256","name":"_index","type":"uint256"}],"name":"getUserDepositHistory","outputs":[{"components":[{"internalType":"uint256","name":"planIdx","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"timeStart","type":"uint256"},{"internalType":"uint256","name":"timeEnd","type":"uint256"},{"internalType":"bool","name":"isReinvest","type":"bool"}],"internalType":"struct MaticMaster.TDeposit","name":"o_deposit","type":"tuple"},{"internalType":"uint256","name":"o_timestamp","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_user","type":"address"}],"name":"getUserInfo","outputs":[{"components":[{"internalType":"uint256","name":"dividends","type":"uint256"},{"internalType":"uint256","name":"mActive","type":"uint256"},{"internalType":"uint256","name":"rActive","type":"uint256"}],"internalType":"struct MaticMaster.TPlanInfo","name":"o_planInfo","type":"tuple"},{"components":[{"internalType":"uint256[5]","name":"count","type":"uint256[5]"},{"internalType":"uint256","name":"dividends","type":"uint256"},{"internalType":"uint256","name":"totalEarned","type":"uint256"}],"internalType":"struct MaticMaster.TRefInfo","name":"o_refInfo","type":"tuple"},{"components":[{"internalType":"uint256","name":"claimable","type":"uint256"},{"internalType":"uint256","name":"checkpoint","type":"uint256"},{"internalType":"uint256","name":"totalDepositCount","type":"uint256"},{"internalType":"uint256","name":"activeDeposit","type":"uint256"},{"internalType":"uint256","name":"activeReinvest","type":"uint256"},{"internalType":"uint256","name":"totalInvested","type":"uint256"},{"internalType":"uint256","name":"totalClaimed","type":"uint256"}],"internalType":"struct MaticMaster.TUserInfo","name":"o_userInfo","type":"tuple"},{"internalType":"uint256","name":"o_timestamp","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_referrer","type":"address"},{"internalType":"uint8","name":"_planIdx","type":"uint8"}],"name":"invest","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"stat_depositsReusedCounter","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"stat_maxDepositArrayLength","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"stat_maxDepositArrayUser","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"withdraw","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

60806040526040518060a00160405280604660ff168152602001601460ff168152602001600a60ff168152602001600560ff168152602001600560ff1681525060019060056200005192919062000125565b503480156200005f57600080fd5b50604051620032e9380380620032e98339818101604052810190620000859190620001b2565b80600060016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600a60405180604001604052806015815260200160648152509080600181540180825580915050600190039060005260206000209060020201600090919091909150600082015181600001556020820151816001015550505062000237565b82805482825590600052602060002090810192821562000169579160200282015b8281111562000168578251829060ff1690559160200191906001019062000146565b5b5090506200017891906200017c565b5090565b5b80821115620001975760008160009055506001016200017d565b5090565b600081519050620001ac816200021d565b92915050565b600060208284031215620001cb57620001ca62000218565b5b6000620001db848285016200019b565b91505092915050565b6000620001f182620001f8565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600080fd5b6200022881620001e4565b81146200023457600080fd5b50565b6130a280620002476000396000f3fe6080604052600436106102085760003560e01c806367c897fe11610118578063c224bab3116100a0578063ed1326791161006f578063ed1326791461078b578063f2911d2b146107ca578063f4698495146107f5578063fbe2229314610820578063fce993e41461085d5761020f565b8063c224bab3146106ba578063d7ffca91146106f8578063dbd409ec14610735578063e262113e146107605761020f565b80639535779f116100e75780639535779f146105d0578063a1dec4ca1461060e578063a810be9314610639578063acb4868d14610664578063aed53d171461068f5761020f565b806367c897fe1461051d5780636f9fb98a1461054f5780637a0d725b1461057a578063950d91e9146105a55761020f565b80633ccfd60b1161019b57806351dac1b31161016a57806351dac1b31461042e578063581c5ae614610459578063600d20ce146104755780636386c1c7146104b2578063650fda8a146104f25761020f565b80633ccfd60b1461037e578063436a88c11461039557806344ba0ea2146103c05780634f697c37146103eb5761020f565b80632e4fe1b6116101d75780632e4fe1b6146102d257806332bc298c146102fd578063386a0eee146103285780633a4a23dd146103535761020f565b806301c234a8146102145780631011f1711461023f578063126445761461026a578063153ab9df146102955761020f565b3661020f57005b600080fd5b34801561022057600080fd5b50610229610889565b6040516102369190612b30565b60405180910390f35b34801561024b57600080fd5b5061025461088f565b6040516102619190612b30565b60405180910390f35b34801561027657600080fd5b5061027f610894565b60405161028c9190612b30565b60405180910390f35b3480156102a157600080fd5b506102bc60048036038101906102b79190612458565b61089a565b6040516102c99190612b30565b60405180910390f35b3480156102de57600080fd5b506102e76108d0565b6040516102f49190612b30565b60405180910390f35b34801561030957600080fd5b506103126108d6565b60405161031f9190612b30565b60405180910390f35b34801561033457600080fd5b5061033d6108dd565b60405161034a9190612b30565b60405180910390f35b34801561035f57600080fd5b506103686108e3565b6040516103759190612b30565b60405180910390f35b34801561038a57600080fd5b506103936108e8565b005b3480156103a157600080fd5b506103aa610c0e565b6040516103b79190612b30565b60405180910390f35b3480156103cc57600080fd5b506103d5610c13565b6040516103e29190612b30565b60405180910390f35b3480156103f757600080fd5b50610412600480360381019061040d9190612458565b610c21565b6040516104259796959493929190612b4b565b60405180910390f35b34801561043a57600080fd5b50610443610c83565b60405161045091906128d5565b60405180910390f35b610473600480360381019061046e91906124c5565b610ca9565b005b34801561048157600080fd5b5061049c60048036038101906104979190612505565b610ee3565b6040516104a99190612b30565b60405180910390f35b3480156104be57600080fd5b506104d960048036038101906104d49190612458565b610f07565b6040516104e99493929190612ae8565b60405180910390f35b3480156104fe57600080fd5b50610507611188565b60405161051491906128f0565b60405180910390f35b34801561052957600080fd5b506105326111ae565b604051610546989796959493929190612c1a565b60405180910390f35b34801561055b57600080fd5b506105646111e8565b6040516105719190612b30565b60405180910390f35b34801561058657600080fd5b5061058f6111f0565b60405161059c9190612b30565b60405180910390f35b3480156105b157600080fd5b506105ba6111f6565b6040516105c79190612b30565b60405180910390f35b3480156105dc57600080fd5b506105f760048036038101906105f29190612505565b6111fd565b604051610605929190612bba565b60405180910390f35b34801561061a57600080fd5b50610623611231565b6040516106309190612b30565b60405180910390f35b34801561064557600080fd5b5061064e611237565b60405161065b9190612b30565b60405180910390f35b34801561067057600080fd5b5061067961123d565b6040516106869190612a04565b60405180910390f35b34801561069b57600080fd5b506106a461124e565b6040516106b19190612b30565b60405180910390f35b3480156106c657600080fd5b506106e160048036038101906106dc9190612485565b611253565b6040516106ef929190612abf565b60405180910390f35b34801561070457600080fd5b5061071f600480360381019061071a9190612458565b611319565b60405161072c9190612b30565b60405180910390f35b34801561074157600080fd5b5061074a611365565b6040516107579190612b30565b60405180910390f35b34801561076c57600080fd5b5061077561136b565b6040516107829190612b30565b60405180910390f35b34801561079757600080fd5b506107b260048036038101906107ad9190612505565b611377565b6040516107c193929190612be3565b60405180910390f35b3480156107d657600080fd5b506107df6113a1565b6040516107ec9190612b30565b60405180910390f35b34801561080157600080fd5b5061080a6113a7565b6040516108179190612b30565b60405180910390f35b34801561082c57600080fd5b5061084760048036038101906108429190612505565b6113ad565b6040516108549190612b30565b60405180910390f35b34801561086957600080fd5b506108726113c5565b6040516108809291906129d9565b60405180910390f35b6103e881565b60fa81565b60075481565b60006108a582611483565b6108b257600090506108cb565b60006108bd83610f07565b509250505080600001519150505b919050565b600e5481565b6201518081565b60085481565b606481565b6000600b60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000209050600081600a01548260090154610940336114e0565b61094a9190612d03565b6109549190612d03565b905060008111610999576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161099090612a1f565b60405180910390fd5b6109a233611483565b6109e1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109d890612a5f565b60405180910390fd5b42826000018190555060008260090181905550600082600a0181905550600047905080821115610a35578082610a179190612de4565b83600a016000828254610a2a9190612d03565b925050819055508091505b69021e19e0c9bab2400000821115610a855769021e19e0c9bab240000082610a5d9190612de4565b83600a016000828254610a709190612d03565b9250508190555069021e19e0c9bab240000091505b60006103e8606484610a979190612d8a565b610aa19190612d59565b90506000610aad61157a565b15610ad4576103e861012c85610ac39190612d8a565b610acd9190612d59565b9050610af1565b6103e8606485610ae49190612d8a565b610aee9190612d59565b90505b610aff336000836001611661565b507f3784f4ef5deec94e3340d752ddbc17a7a04035afa08cbc39739c03157c08f8df81604051610b2f9190612b30565b60405180910390a18184610b439190612de4565b93508084610b519190612de4565b93508385600d016000828254610b679190612d03565b925050819055508360076000828254610b809190612d03565b925050819055503373ffffffffffffffffffffffffffffffffffffffff166108fc859081150290604051600060405180830381858888f19350505050158015610bcd573d6000803e3d6000fd5b507fd8138f8a3f377c5259ca548e70e4c2de94f129f5a11036a15b69513cba2b426a3385604051610bff929190612979565b60405180910390a15050505050565b606481565b69021e19e0c9bab240000081565b600b6020528060005260406000206000915090508060000154908060080160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169080600901549080600a01549080600b01549080600c01549080600d0154905087565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b670de0b6b3a7640000341015610cf4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ceb90612a7f565b60405180910390fd5b600a805490508160ff1610610d3e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d3590612a9f565b60405180910390fd5b60008054906101000a900460ff16610dfb57600060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610de0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610dd790612a3f565b60405180910390fd5b60016000806101000a81548160ff0219169083151502179055505b60006103e8606434610e0d9190612d8a565b610e179190612d59565b9050600060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015610e81573d6000803e3d6000fd5b507f950698cdb9b7566fe41d224bfa9c93dfd28c1647f02d76127b3e10bb1f880c1381604051610eb19190612b30565b60405180910390a1610ec33384611acc565b610ecd3334611e9b565b610edd338360ff16346000611661565b50505050565b60018181548110610ef357600080fd5b906000526020600020016000915090505481565b610f0f6122f2565b610f17612313565b610f1f61233a565b60004290506000600b60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000209050600080600090505b82600101805490508110156110b357610f88888261210e565b15610f92576110a0565b610f9c88826121c3565b87600001818151610fad9190612d03565b91508181525050826001018181548110610fca57610fc9612f26565b5b906000526020600020906005020160040160009054906101000a900460ff1661100857866020018051809190610fff90612e7f565b8152505061105f565b86604001805180919061101a90612e7f565b8152505082600101818154811061103457611033612f26565b5b906000526020600020906005020160010154856080018181516110579190612d03565b915081815250505b82600101818154811061107557611074612f26565b5b906000526020600020906005020160010154856060018181516110989190612d03565b915081815250505b80806110ab90612e7f565b915050610f6f565b50816003016005806020026040519081016040528092919082600580156110ef576020028201915b8154815260200190600101908083116110db575b50505050508560000181905250816009015485602001818152505081600c015485604001818152505081600a0154856020015187600001516111319190612d03565b61113b9190612d03565b846000018181525050816000015484602001818152505081600b01548460a0018181525050816002018054905084604001818152505081600d01548460c001818152505050509193509193565b600060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000806000806000806000806004546005546006546007544760095460085442975097509750975097509750975097509091929394959697565b600047905090565b60045481565b6201518081565b600a818154811061120d57600080fd5b90600052602060002090600202016000915090508060000154908060010154905082565b60065481565b61012c81565b60008054906101000a900460ff1681565b606481565b61125b612377565b6000429050600b60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020183815481106112b4576112b3612f26565b5b90600052602060002090600502016040518060a0016040529081600082015481526020016001820154815260200160028201548152602001600382015481526020016004820160009054906101000a900460ff16151515158152505091509250929050565b6000600b60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001549050919050565b60055481565b670de0b6b3a764000081565b60036020528060005260406000206000915090508060000154908060010154908060020154905083565b60095481565b600c5481565b60026020528060005260406000206000915090505481565b6113cd6123a8565b60004290506000601460045410156113e65760006113f6565b60146004546113f59190612de4565b5b905060008190505b60045481101561147d576003600082815260200190815260200160002060405180606001604052908160008201548152602001600182015481526020016002820154815250508483836114519190612de4565b6014811061146257611461612f26565b5b6020020181905250808061147590612e7f565b9150506113fe565b50509091565b600062015180600b60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000154426114d79190612de4565b10159050919050565b600080600090505b600b60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101805490508110156115745761153f838261210e565b1561154957611561565b61155383826121c3565b8261155e9190612d03565b91505b808061156c90612e7f565b9150506114e8565b50919050565b600080479050600062015180426115919190612d59565b905081600260008381526020019081526020016000205410156115c7578160026000838152602001908152602001600020819055505b600080600090505b600781101561163357816002600083866115e99190612de4565b81526020019081526020016000205411156116205760026000828561160e9190612de4565b81526020019081526020016000205491505b808061162b90612e7f565b9150506115cf565b506103e860fa826116449190612d8a565b61164e9190612d59565b6009819055506009548310935050505090565b600080600b60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020905060008160010180549050141561170e57428160000181905550600860008154809291906116d190612e7f565b91905055507fd8125dbdc86a55134fbcba904caad35e4fbbc65ff57fbb90650820e7d8c19fdc8660405161170591906128d5565b60405180910390a15b60006040518060a0016040528087815260200186815260200142815260200162015180600a898154811061174557611744612f26565b5b9060005260206000209060020201600001546117619190612d8a565b4261176c9190612d03565b81526020018515158152509050600080600090505b83600101805490508110156118465761179a898261210e565b1561183357828460010182815481106117b6576117b5612f26565b5b90600052602060002090600502016000820151816000015560208201518160010155604082015181600201556060820151816003015560808201518160040160006101000a81548160ff02191690831515021790555090505080945060019150600e600081548092919061182990612e7f565b9190505550611846565b808061183e90612e7f565b915050611781565b50806118cf5782600101805490509350826001018290806001815401808255809150506001900390600052602060002090600502016000909190919091506000820151816000015560208201518160010155604082015181600201556060820151816003015560808201518160040160006101000a81548160ff02191690831515021790555050505b84611a1d57826002018290806001815401808255809150506001900390600052602060002090600502016000909190919091506000820151816000015560208201518160010155604082015181600201556060820151816003015560808201518160040160006101000a81548160ff02191690831515021790555050508583600b0160008282546119609190612d03565b92505081905550604051806060016040528042815260200162015180600a8a815481106119905761198f612f26565b5b9060005260206000209060020201600001546119ac9190612d8a565b815260200187815250600360006004548152602001908152602001600020600082015181600001556020820151816001015560408201518160020155905050600460008154809291906119fe90612e7f565b91905055508560056000828254611a159190612d03565b925050819055505b8260010180549050600c541015611a7e578260010180549050600c8190555087600d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b7fa91e0c3165215fe453f5bf3de083d5fd6c4e62c491849155a042a647588c53a08883600001518460200151604051611ab9939291906129a2565b60405180910390a1505050949350505050565b600073ffffffffffffffffffffffffffffffffffffffff16600b60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060080160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611b6757611e97565b6000600b60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101805490501115611bba57611e97565b6000600b60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101805490501415611c0d57611e97565b8073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611c4657611e97565b80600b60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060080160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600b60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060080160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905060005b600180549050811015611e5b57600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611d7857611e5b565b600b60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206003018160058110611dcc57611dcb612f26565b5b016000815480929190611dde90612e7f565b9190505550600b60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060080160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1691508080611e5390612e7f565b915050611d31565b507f58ab8e83a533292260952de93118b9883cc6dbc129740367bffb86566e154b108284604051611e8d92919061290b565b60405180910390a1505b5050565b6000600b60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060080160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905060005b60018054905081101561210857600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611f4c57612108565b60006103e860018381548110611f6557611f64612f26565b5b906000526020600020015485611f7b9190612d8a565b611f859190612d59565b905080600b60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206009016000828254611fd99190612d03565b9250508190555080600b60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600c0160008282546120329190612d03565b92505081905550806006600082825461204b9190612d03565b92505081905550600b60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060080160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1692507ff7286f882847d6fb7a2ac074ede1632148f84e2841ab57f8dde07f01c5195e34838684846040516120ec9493929190612934565b60405180910390a150808061210090612e7f565b915050611f05565b50505050565b6000600b60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101828154811061216457612163612f26565b5b906000526020600020906005020160030154600b60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001541015905092915050565b600080600b60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000209050600081600101848154811061221f5761221e612f26565b5b9060005260206000209060050201905060006103e8600a83600001548154811061224c5761224b612f26565b5b906000526020600020906002020160010154836001015461226d9190612d8a565b6122779190612d59565b90506000836000015483600201541161229457836000015461229a565b82600201545b90506000428460030154106122af57426122b5565b83600301545b9050808210156122e7576201518082826122cf9190612de4565b846122da9190612d8a565b6122e49190612d59565b95505b505050505092915050565b60405180606001604052806000815260200160008152602001600081525090565b60405180606001604052806123266123d6565b815260200160008152602001600081525090565b6040518060e00160405280600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b6040518060a00160405280600081526020016000815260200160008152602001600081526020016000151581525090565b6040518061028001604052806014905b6123c06123f8565b8152602001906001900390816123b85790505090565b6040518060a00160405280600590602082028036833780820191505090505090565b60405180606001604052806000815260200160008152602001600081525090565b60008135905061242881613027565b92915050565b60008135905061243d8161303e565b92915050565b60008135905061245281613055565b92915050565b60006020828403121561246e5761246d612f55565b5b600061247c84828501612419565b91505092915050565b6000806040838503121561249c5761249b612f55565b5b60006124aa85828601612419565b92505060206124bb8582860161242e565b9150509250929050565b600080604083850312156124dc576124db612f55565b5b60006124ea85828601612419565b92505060206124fb85828601612443565b9150509250929050565b60006020828403121561251b5761251a612f55565b5b60006125298482850161242e565b91505092915050565b600061253e8383612763565b60608301905092915050565b600061255683836128b7565b60208301905092915050565b61256b81612e2a565b82525050565b61257a81612e18565b82525050565b61258981612cac565b6125938184612cdc565b925061259e82612c98565b8060005b838110156125cf5781516125b68782612532565b96506125c183612cc2565b9250506001810190506125a2565b505050505050565b6125e081612cb7565b6125ea8184612ce7565b92506125f582612ca2565b8060005b8381101561262657815161260d878261254a565b965061261883612ccf565b9250506001810190506125f9565b505050505050565b61263781612e3c565b82525050565b61264681612e3c565b82525050565b6000612659601383612cf2565b915061266482612f5a565b602082019050919050565b600061267c601c83612cf2565b915061268782612f83565b602082019050919050565b600061269f600e83612cf2565b91506126aa82612fac565b602082019050919050565b60006126c2601d83612cf2565b91506126cd82612fd5565b602082019050919050565b60006126e5601283612cf2565b91506126f082612ffe565b602082019050919050565b60a08201600082015161271160008501826128b7565b50602082015161272460208501826128b7565b50604082015161273760408501826128b7565b50606082015161274a60608501826128b7565b50608082015161275d608085018261262e565b50505050565b60608201600082015161277960008501826128b7565b50602082015161278c60208501826128b7565b50604082015161279f60408501826128b7565b50505050565b6060820160008201516127bb60008501826128b7565b5060208201516127ce60208501826128b7565b5060408201516127e160408501826128b7565b50505050565b60e0820160008201516127fd60008501826125d7565b50602082015161281060a08501826128b7565b50604082015161282360c08501826128b7565b50505050565b60e08201600082015161283f60008501826128b7565b50602082015161285260208501826128b7565b50604082015161286560408501826128b7565b50606082015161287860608501826128b7565b50608082015161288b60808501826128b7565b5060a082015161289e60a08501826128b7565b5060c08201516128b160c08501826128b7565b50505050565b6128c081612e68565b82525050565b6128cf81612e68565b82525050565b60006020820190506128ea6000830184612571565b92915050565b60006020820190506129056000830184612562565b92915050565b60006040820190506129206000830185612571565b61292d6020830184612571565b9392505050565b60006080820190506129496000830187612571565b6129566020830186612571565b61296360408301856128c6565b61297060608301846128c6565b95945050505050565b600060408201905061298e6000830185612571565b61299b60208301846128c6565b9392505050565b60006060820190506129b76000830186612571565b6129c460208301856128c6565b6129d160408301846128c6565b949350505050565b60006107a0820190506129ef6000830185612580565b6129fd6107808301846128c6565b9392505050565b6000602082019050612a19600083018461263d565b92915050565b60006020820190508181036000830152612a388161264c565b9050919050565b60006020820190508181036000830152612a588161266f565b9050919050565b60006020820190508181036000830152612a7881612692565b9050919050565b60006020820190508181036000830152612a98816126b5565b9050919050565b60006020820190508181036000830152612ab8816126d8565b9050919050565b600060c082019050612ad460008301856126fb565b612ae160a08301846128c6565b9392505050565b600061024082019050612afe60008301876127a5565b612b0b60608301866127e7565b612b19610140830185612829565b612b276102208301846128c6565b95945050505050565b6000602082019050612b4560008301846128c6565b92915050565b600060e082019050612b60600083018a6128c6565b612b6d6020830189612571565b612b7a60408301886128c6565b612b8760608301876128c6565b612b9460808301866128c6565b612ba160a08301856128c6565b612bae60c08301846128c6565b98975050505050505050565b6000604082019050612bcf60008301856128c6565b612bdc60208301846128c6565b9392505050565b6000606082019050612bf860008301866128c6565b612c0560208301856128c6565b612c1260408301846128c6565b949350505050565b600061010082019050612c30600083018b6128c6565b612c3d602083018a6128c6565b612c4a60408301896128c6565b612c5760608301886128c6565b612c6460808301876128c6565b612c7160a08301866128c6565b612c7e60c08301856128c6565b612c8b60e08301846128c6565b9998505050505050505050565b6000819050919050565b6000819050919050565b600060149050919050565b600060059050919050565b6000602082019050919050565b6000602082019050919050565b600081905092915050565b600081905092915050565b600082825260208201905092915050565b6000612d0e82612e68565b9150612d1983612e68565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115612d4e57612d4d612ec8565b5b828201905092915050565b6000612d6482612e68565b9150612d6f83612e68565b925082612d7f57612d7e612ef7565b5b828204905092915050565b6000612d9582612e68565b9150612da083612e68565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615612dd957612dd8612ec8565b5b828202905092915050565b6000612def82612e68565b9150612dfa83612e68565b925082821015612e0d57612e0c612ec8565b5b828203905092915050565b6000612e2382612e48565b9050919050565b6000612e3582612e48565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b6000612e8a82612e68565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415612ebd57612ebc612ec8565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600080fd5b7f4e6f7468696e6720746f20776974686472617700000000000000000000000000600082015250565b7f50726f6a65637420686173206e6f74206c61756e636865642079657400000000600082015250565b7f436c61696d20636f6f6c646f776e000000000000000000000000000000000000600082015250565b7f546865206465706f73697420616d6f756e7420697320746f6f206c6f77000000600082015250565b7f496e76616c696420706c616e20696e6465780000000000000000000000000000600082015250565b61303081612e18565b811461303b57600080fd5b50565b61304781612e68565b811461305257600080fd5b50565b61305e81612e72565b811461306957600080fd5b5056fea26469706673582212203fce45de9f30f6a279c037fc448fe31f7f09aa1757e94dd64a26829ef08c841f64736f6c63430008050033000000000000000000000000da143be4ff739cbf4af98a82d873b964bb1f6ea8

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

000000000000000000000000da143be4ff739cbf4af98a82d873b964bb1f6ea8

-----Decoded View---------------
Arg [0] : _walletDev (address): 0xda143be4ff739cbf4af98a82d873b964bb1f6ea8

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000da143be4ff739cbf4af98a82d873b964bb1f6ea8


Deployed ByteCode Sourcemap

215:14615:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;376:49;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1034:53;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1490:25;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14274:193;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2599:39;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;429:46;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1522:23;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1134:47;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3826:1609;;;;;;;;;;;;;:::i;:::-;;635:42;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;711:59;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2128:40;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;;;;;;:::i;:::-;;;;;;;;2556:39;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3048:627;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;550:59;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12616:1250;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;;;:::i;:::-;;;;;;;;337:35;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11411:360;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;;;;;;;;14585:94;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1396:26;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;801:52;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2099:25;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;1456:30;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1222:56;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;308:25;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;887:57;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13871:223;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;14472:108;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1426:26;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;479:53;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1336:56;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;;:::i;:::-;;;;;;;;1549:28;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2513:39;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;984:46;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11776:328;;;;;;;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;376:49;421:4;376:49;:::o;1034:53::-;1084:3;1034:53;:::o;1490:25::-;;;;:::o;14274:193::-;14335:4;14350:16;14360:5;14350:9;:16::i;:::-;14346:30;;14375:1;14368:8;;;;14346:30;14384:25;14414:18;14426:5;14414:11;:18::i;:::-;14381:51;;;;;14444:8;:18;;;14437:25;;;14274:193;;;;:::o;2599:39::-;;;;:::o;429:46::-;469:6;429:46;:::o;1522:23::-;;;;:::o;1134:47::-;1178:3;1134:47;:::o;3826:1609::-;3860:18;3881:5;:17;3887:10;3881:17;;;;;;;;;;;;;;;3860:38;;3905:16;3976:4;:15;;;3956:4;:17;;;3924:29;3942:10;3924:17;:29::i;:::-;:49;;;;:::i;:::-;:67;;;;:::i;:::-;3905:86;;4020:1;4006:11;:15;3998:47;;;;;;;;;;;;:::i;:::-;;;;;;;;;4058:21;4068:10;4058:9;:21::i;:::-;4050:48;;;;;;;;;;;;:::i;:::-;;;;;;;;;4123:15;4105:4;:15;;:33;;;;4193:1;4173:4;:17;;:21;;;;4241:1;4223:4;:15;;:19;;;;4349:12;4364:21;4349:36;;4408:7;4394:11;:21;4390:106;;;4456:7;4442:11;:21;;;;:::i;:::-;4423:4;:15;;;:40;;;;;;;:::i;:::-;;;;;;;;4483:7;4469:21;;4390:106;759:11;4533;:33;4529:142;;;759:11;4593;:33;;;;:::i;:::-;4574:4;:15;;;:52;;;;;;;:::i;:::-;;;;;;;;759:11;4632:33;;4529:142;4694:14;421:4;941:3;4711:11;:37;;;;:::i;:::-;:56;;;;:::i;:::-;4694:73;;4802:19;4836:22;:20;:22::i;:::-;4832:244;;;421:4;1275:3;4911:11;:41;;;;:::i;:::-;:60;;;;:::i;:::-;4894:77;;4832:244;;;421:4;1178:3;5015:11;:30;;;;:::i;:::-;:49;;;;:::i;:::-;4998:66;;4832:244;5082:53;5098:10;5110:1;5113:14;5129:4;5082:14;:53::i;:::-;;5145:26;5156:14;5145:26;;;;;;:::i;:::-;;;;;;;;5193:9;5178:24;;;;;:::i;:::-;;;5222:14;5207:29;;;;;:::i;:::-;;;5293:11;5272:4;:17;;;:32;;;;;;;:::i;:::-;;;;;;;;5326:11;5309:13;;:28;;;;;;;:::i;:::-;;;;;;;;5350:10;5342:28;;:43;5372:11;5342:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5395:33;5403:10;5415:11;5395:33;;;;;;;:::i;:::-;;;;;;;;3853:1582;;;;;3826:1609::o;635:42::-;674:3;635:42;:::o;711:59::-;759:11;711:59;:::o;2128:40::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;2556:39::-;;;;;;;;;;;;;:::o;3048:627::-;525:7;3129:9;:30;;3121:72;;;;;;;;;;;;:::i;:::-;;;;;;;;;3217:5;:12;;;;3206:8;:23;;;3198:54;;;;;;;;;;;;:::i;:::-;;;;;;;;;3261:8;;;;;;;;;;3257:112;;3299:10;;;;;;;;;;;3285:24;;:10;:24;;;3277:65;;;;;;;;;;;;:::i;:::-;;;;;;;;;3359:4;3348:8;;:15;;;;;;;;;;;;;;;;;;3257:112;3397:9;421:4;674:3;3409:9;:19;;;;:::i;:::-;:38;;;;:::i;:::-;3397:50;;3452:10;;;;;;;;;;;:19;;:25;3472:4;3452:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3487:16;3498:4;3487:16;;;;;;:::i;:::-;;;;;;;;3510:39;3527:10;3539:9;3510:16;:39::i;:::-;3556:47;3581:10;3593:9;3556:24;:47::i;:::-;3610:56;3626:10;3638:8;3610:56;;3648:9;3659:5;3610:14;:56::i;:::-;;3114:561;3048:627;;:::o;550:59::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;12616:1250::-;12673:27;;:::i;:::-;12702:25;;:::i;:::-;12729:27;;:::i;:::-;12758:16;12797:15;12783:29;;12819:18;12840:5;:12;12846:5;12840:12;;;;;;;;;;;;;;;12819:33;;12865:18;12929:6;12936:1;12929:8;;12925:476;12941:4;:13;;:20;;;;12939:1;:22;12925:476;;;12977:27;12996:5;13002:1;12977:18;:27::i;:::-;12974:40;;;13006:8;;12974:40;13044:35;13071:5;13077:1;13044:26;:35::i;:::-;13020:10;:20;;:59;;;;;;;:::i;:::-;;;;;;;;13103:4;:13;;13117:1;13103:16;;;;;;;;:::i;:::-;;;;;;;;;;;;:27;;;;;;;;;;;;13099:221;;13151:10;:18;;:20;;;;;;;;:::i;:::-;;;;;13099:221;;;13213:10;:18;;:20;;;;;;;;:::i;:::-;;;;;13281:4;:13;;13295:1;13281:16;;;;;;;;:::i;:::-;;;;;;;;;;;;:23;;;13252:10;:25;;:52;;;;;;;:::i;:::-;;;;;;;;13099:221;13372:4;:13;;13386:1;13372:16;;;;;;;;:::i;:::-;;;;;;;;;;;;:23;;;13344:10;:24;;:51;;;;;;;:::i;:::-;;;;;;;;12925:476;12963:3;;;;;:::i;:::-;;;;12925:476;;;;13445:4;:13;;13427:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:9;:15;;:31;;;;13485:4;:17;;;13463:9;:19;;:39;;;;;13531:4;:22;;;13507:9;:21;;:46;;;;;13644:4;:15;;;13622:9;:19;;;13599:10;:20;;;:42;;;;:::i;:::-;:60;;;;:::i;:::-;13576:10;:20;;:83;;;;;13688:4;:15;;;13664:10;:21;;:39;;;;;13735:4;:18;;;13708:10;:24;;:45;;;;;13789:4;:15;;:22;;;;13758:10;:28;;:53;;;;;13842:4;:17;;;13816:10;:23;;:43;;;;;12776:1090;;12616:1250;;;;;:::o;337:35::-;;;;;;;;;;;;;:::o;11411:360::-;11457:18;11477;11497:22;11521:17;11540:14;11556:22;11580:15;11597:16;11628:14;;11644;;11660:18;;11680:13;;11695:21;11718:16;;11736:11;;11749:15;11620:146;;;;;;;;;;;;;;;;11411:360;;;;;;;;:::o;14585:94::-;14635:4;14653:21;14646:28;;14585:94;:::o;1396:26::-;;;;:::o;801:52::-;847:6;801:52;:::o;2099:25::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;1456:30::-;;;;:::o;1222:56::-;1275:3;1222:56;:::o;308:25::-;;;;;;;;;;;;:::o;887:57::-;941:3;887:57;:::o;13871:223::-;13950:25;;:::i;:::-;13977:16;14016:15;14002:29;;14056:5;:12;14062:5;14056:12;;;;;;;;;;;;;;;:23;;14080:6;14056:31;;;;;;;;:::i;:::-;;;;;;;;;;;;14044:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13871:223;;;;;:::o;14472:108::-;14534:4;14552:5;:12;14558:5;14552:12;;;;;;;;;;;;;;;:23;;;14545:30;;14472:108;;;:::o;1426:26::-;;;;:::o;479:53::-;525:7;479:53;:::o;1336:56::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;1549:28::-;;;;:::o;2513:39::-;;;;:::o;984:46::-;;;;;;;;;;;;;;;;;:::o;11776:328::-;11825:44;;:::i;:::-;11871:16;11910:15;11896:29;;11930:10;11959:2;11943:14;;:18;;:42;;11984:1;11943:42;;;11979:2;11964:14;;:17;;;;:::i;:::-;11943:42;11930:55;;11994:6;12001:5;11994:12;;11990:100;12010:14;;12008:1;:16;11990:100;;;12066:15;:18;12082:1;12066:18;;;;;;;;;;;12037:47;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:17;12057:5;12055:1;:7;;;;:::i;:::-;12037:26;;;;;;;:::i;:::-;;;;;:47;;;;12026:3;;;;;:::i;:::-;;;;11990:100;;;;11889:215;11776:328;;:::o;5586:141::-;5642:4;847:6;5677:5;:12;5683:5;5677:12;;;;;;;;;;;;;;;:23;;;5661:15;:39;;;;:::i;:::-;:60;;5653:69;;5586:141;;;:::o;11013:247::-;11078:13;11104:6;11111:1;11104:8;;11100:154;11115:5;:12;11121:5;11115:12;;;;;;;;;;;;;;;:21;;:28;;;;11113:1;:30;11100:154;;;11158:27;11177:5;11183:1;11158:18;:27::i;:::-;11155:40;;;11187:8;;11155:40;11213:35;11240:5;11246:1;11213:26;:35::i;:::-;11201:47;;;;;:::i;:::-;;;11100:154;11144:3;;;;;:::i;:::-;;;;11100:154;;;;11013:247;;;:::o;5878:569::-;5927:4;5940:12;5955:21;5940:36;;5981:13;469:6;5997:15;:25;;;;:::i;:::-;5981:41;;6083:7;6054:16;:26;6071:8;6054:26;;;;;;;;;;;;:36;6049:92;;;6128:7;6099:16;:26;6116:8;6099:26;;;;;;;;;;;:36;;;;6049:92;6172:14;6196:6;6203:1;6196:8;;6191:137;6208:1;6206;:3;6191:137;;;6257:9;6226:16;:28;6252:1;6243:8;:10;;;;:::i;:::-;6226:28;;;;;;;;;;;;:40;6222:101;;;6288:16;:28;6314:1;6305:8;:10;;;;:::i;:::-;6288:28;;;;;;;;;;;;6276:40;;6222:101;6211:3;;;;;:::i;:::-;;;;6191:137;;;;421:4;1084:3;6353:9;:34;;;;:::i;:::-;:51;;;;:::i;:::-;6334:16;:70;;;;6426:16;;6416:7;:26;6409:33;;;;;5878:569;:::o;8255:1426::-;8360:13;8382:18;8403:5;:12;8409:5;8403:12;;;;;;;;;;;;;;;8382:33;;8493:1;8469:4;:13;;:20;;;;:25;8465:130;;;8520:15;8502:4;:15;;:33;;;;8550:11;;:13;;;;;;;;;:::i;:::-;;;;;;8574:15;8583:5;8574:15;;;;;;:::i;:::-;;;;;;;;8465:130;8601:22;8626:119;;;;;;;;8636:8;8626:119;;;;8646:7;8626:119;;;;8655:15;8626:119;;;;469:6;8690:5;8696:8;8690:15;;;;;;;;:::i;:::-;;;;;;;;;;;;:28;;;:40;;;;:::i;:::-;8672:15;:58;;;;:::i;:::-;8626:119;;;;8732:11;8626:119;;;;;8601:144;;8793:10;8812:6;8819:1;8812:8;;8808:206;8824:4;:13;;:20;;;;8822:1;:22;8808:206;;;8860:27;8879:5;8885:1;8860:18;:27::i;:::-;8857:152;;;8915:6;8896:4;:13;;8910:1;8896:16;;;;;;;;:::i;:::-;;;;;;;;;;;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8937:1;8928:10;;8951:4;8945:10;;8962:26;;:28;;;;;;;;;:::i;:::-;;;;;;8997:5;;8857:152;8846:3;;;;;:::i;:::-;;;;8808:206;;;;9022:5;9018:102;;9053:4;:13;;:20;;;;9044:29;;9088:4;:13;;9107:6;9088:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9018:102;9173:11;9169:268;;9192:4;:15;;9213:6;9192:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9248:7;9226:4;:18;;;:29;;;;;;;:::i;:::-;;;;;;;;9295:83;;;;;;;;9312:15;9295:83;;;;469:6;9329:5;9335:8;9329:15;;;;;;;;:::i;:::-;;;;;;;;;;;;:28;;;:38;;;;:::i;:::-;9295:83;;;;9369:7;9295:83;;;9261:15;:31;9277:14;;9261:31;;;;;;;;;;;:117;;;;;;;;;;;;;;;;;;;;;;;;;;;9384:14;;:16;;;;;;;;;:::i;:::-;;;;;;9424:7;9406:14;;:25;;;;;;;:::i;:::-;;;;;;;;9169:268;9496:4;:13;;:20;;;;9467:26;;:49;9464:153;;;9553:4;:13;;:20;;;;9524:26;:49;;;;9606:5;9579:24;;:32;;;;;;;;;;;;;;;;;;9464:153;9628:48;9639:5;9646:6;:14;;;9662:6;:13;;;9628:48;;;;;;;;:::i;:::-;;;;;;;;8375:1306;;;8255:1426;;;;;;:::o;6598:780::-;6711:1;6678:35;;:5;:12;6684:5;6678:12;;;;;;;;;;;;;;;:21;;;;;;;;;;;;:35;;;6674:48;;6715:7;;6674:48;6792:1;6761:5;:12;6767:5;6761:12;;;;;;;;;;;;;;;:21;;:28;;;;:32;6757:45;;;6795:7;;6757:45;6895:1;6859:5;:16;6865:9;6859:16;;;;;;;;;;;;;;;:25;;:32;;;;:37;6855:50;;;6898:7;;6855:50;6946:9;6937:18;;:5;:18;;;6933:31;;;6957:7;;6933:31;7035:9;7011:5;:12;7017:5;7011:12;;;;;;;;;;;;;;;:21;;;:33;;;;;;;;;;;;;;;;;;7132:14;7149:5;:12;7155:5;7149:12;;;;;;;;;;;;;;;:21;;;;;;;;;;;;7132:38;;7180:6;7175:160;7194:17;:24;;;;7190:1;:28;7175:160;;;7250:1;7234:18;;:6;:18;;;7231:28;;;7254:5;;7231:28;7265:5;:13;7271:6;7265:13;;;;;;;;;;;;;;;:22;;7288:1;7265:25;;;;;;;:::i;:::-;;;;:27;;;;;;;;;:::i;:::-;;;;;;7307:5;:13;7313:6;7307:13;;;;;;;;;;;;;;;:22;;;;;;;;;;;;7298:31;;7220:3;;;;;:::i;:::-;;;;7175:160;;;;7346:27;7357:9;7367:5;7346:27;;;;;;;:::i;:::-;;;;;;;;6667:711;6598:780;;;:::o;7529:575::-;7679:14;7696:5;:12;7702:5;7696:12;;;;;;;;;;;;;;;:21;;;;;;;;;;;;7679:38;;7727:6;7722:378;7741:17;:24;;;;7737:1;:28;7722:378;;;7800:1;7782:20;;:6;:20;;;7778:31;;;7804:5;;7778:31;7815:11;421:4;7846:17;7864:1;7846:20;;;;;;;;:::i;:::-;;;;;;;;;;7829:14;:37;;;;:::i;:::-;:56;;;;:::i;:::-;7815:70;;7921:6;7891:5;:13;7897:6;7891:13;;;;;;;;;;;;;;;:26;;;:36;;;;;;;:::i;:::-;;;;;;;;7968:6;7933:5;:13;7939:6;7933:13;;;;;;;;;;;;;;;:31;;;:41;;;;;;;:::i;:::-;;;;;;;;8002:6;7980:18;;:28;;;;;;;:::i;:::-;;;;;;;;8023:5;:13;8029:6;8023:13;;;;;;;;;;;;;;;:22;;;;;;;;;;;;8014:31;;8056:38;8069:6;8077:5;8084:1;8087:6;8056:38;;;;;;;;;:::i;:::-;;;;;;;;7772:328;7767:3;;;;;:::i;:::-;;;;7722:378;;;;7608:496;7529:575;;:::o;9832:169::-;9911:4;9957:5;:12;9963:5;9957:12;;;;;;;;;;;;;;;:21;;9979:7;9957:30;;;;;;;;:::i;:::-;;;;;;;;;;;;:38;;;9930:5;:12;9936:5;9930:12;;;;;;;;;;;;;;;:23;;;:65;;9922:74;;9832:169;;;;:::o;10152:710::-;10240:13;10337:18;10358:5;:12;10364:5;10358:12;;;;;;;;;;;;;;;10337:33;;10375:24;10402:4;:13;;10416:7;10402:22;;;;;;;;:::i;:::-;;;;;;;;;;;;10375:49;;10509:16;421:4;10545:5;10551:7;:15;;;10545:22;;;;;;;;:::i;:::-;;;;;;;;;;;;:30;;;10528:7;:14;;;:47;;;;:::i;:::-;:66;;;;:::i;:::-;10509:85;;10599:10;10632:4;:15;;;10612:7;:17;;;:35;:73;;10670:4;:15;;;10612:73;;;10650:7;:17;;;10612:73;10599:86;;10690:10;10721:15;10703:7;:15;;;:33;:69;;10757:15;10703:69;;;10739:7;:15;;;10703:69;10690:82;;10789:5;10781;:13;10777:81;;;469:6;10834:5;10828;:11;;;;:::i;:::-;10813;:27;;;;:::i;:::-;:39;;;;:::i;:::-;10802:50;;10777:81;10255:607;;;;;10152:710;;;;:::o;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;:::o;7:139:1:-;53:5;91:6;78:20;69:29;;107:33;134:5;107:33;:::i;:::-;59:87;;;;:::o;152:139::-;198:5;236:6;223:20;214:29;;252:33;279:5;252:33;:::i;:::-;204:87;;;;:::o;297:135::-;341:5;379:6;366:20;357:29;;395:31;420:5;395:31;:::i;:::-;347:85;;;;:::o;438:329::-;497:6;546:2;534:9;525:7;521:23;517:32;514:2;;;552:79;;:::i;:::-;514:2;672:1;697:53;742:7;733:6;722:9;718:22;697:53;:::i;:::-;687:63;;643:117;504:263;;;;:::o;773:474::-;841:6;849;898:2;886:9;877:7;873:23;869:32;866:2;;;904:79;;:::i;:::-;866:2;1024:1;1049:53;1094:7;1085:6;1074:9;1070:22;1049:53;:::i;:::-;1039:63;;995:117;1151:2;1177:53;1222:7;1213:6;1202:9;1198:22;1177:53;:::i;:::-;1167:63;;1122:118;856:391;;;;;:::o;1253:470::-;1319:6;1327;1376:2;1364:9;1355:7;1351:23;1347:32;1344:2;;;1382:79;;:::i;:::-;1344:2;1502:1;1527:53;1572:7;1563:6;1552:9;1548:22;1527:53;:::i;:::-;1517:63;;1473:117;1629:2;1655:51;1698:7;1689:6;1678:9;1674:22;1655:51;:::i;:::-;1645:61;;1600:116;1334:389;;;;;:::o;1729:329::-;1788:6;1837:2;1825:9;1816:7;1812:23;1808:32;1805:2;;;1843:79;;:::i;:::-;1805:2;1963:1;1988:53;2033:7;2024:6;2013:9;2009:22;1988:53;:::i;:::-;1978:63;;1934:117;1795:263;;;;:::o;2064:303::-;2195:10;2216:108;2320:3;2312:6;2216:108;:::i;:::-;2356:4;2351:3;2347:14;2333:28;;2206:161;;;;:::o;2373:179::-;2442:10;2463:46;2505:3;2497:6;2463:46;:::i;:::-;2541:4;2536:3;2532:14;2518:28;;2453:99;;;;:::o;2558:142::-;2661:32;2687:5;2661:32;:::i;:::-;2656:3;2649:45;2639:61;;:::o;2706:118::-;2793:24;2811:5;2793:24;:::i;:::-;2788:3;2781:37;2771:53;;:::o;2918:948::-;3118:84;3196:5;3118:84;:::i;:::-;3218:116;3327:6;3322:3;3218:116;:::i;:::-;3211:123;;3358:86;3438:5;3358:86;:::i;:::-;3467:7;3498:1;3483:376;3508:6;3505:1;3502:13;3483:376;;;3584:6;3578:13;3611:125;3732:3;3717:13;3611:125;:::i;:::-;3604:132;;3759:90;3842:6;3759:90;:::i;:::-;3749:100;;3543:316;3530:1;3527;3523:9;3518:14;;3483:376;;;3487:14;3094:772;;;;;:::o;3904:674::-;4030:52;4076:5;4030:52;:::i;:::-;4098:74;4165:6;4160:3;4098:74;:::i;:::-;4091:81;;4196:54;4244:5;4196:54;:::i;:::-;4273:7;4304:1;4289:282;4314:6;4311:1;4308:13;4289:282;;;4390:6;4384:13;4417:63;4476:3;4461:13;4417:63;:::i;:::-;4410:70;;4503:58;4554:6;4503:58;:::i;:::-;4493:68;;4349:222;4336:1;4333;4329:9;4324:14;;4289:282;;;4293:14;4006:572;;;;;:::o;4584:99::-;4655:21;4670:5;4655:21;:::i;:::-;4650:3;4643:34;4633:50;;:::o;4689:109::-;4770:21;4785:5;4770:21;:::i;:::-;4765:3;4758:34;4748:50;;:::o;4804:366::-;4946:3;4967:67;5031:2;5026:3;4967:67;:::i;:::-;4960:74;;5043:93;5132:3;5043:93;:::i;:::-;5161:2;5156:3;5152:12;5145:19;;4950:220;;;:::o;5176:366::-;5318:3;5339:67;5403:2;5398:3;5339:67;:::i;:::-;5332:74;;5415:93;5504:3;5415:93;:::i;:::-;5533:2;5528:3;5524:12;5517:19;;5322:220;;;:::o;5548:366::-;5690:3;5711:67;5775:2;5770:3;5711:67;:::i;:::-;5704:74;;5787:93;5876:3;5787:93;:::i;:::-;5905:2;5900:3;5896:12;5889:19;;5694:220;;;:::o;5920:366::-;6062:3;6083:67;6147:2;6142:3;6083:67;:::i;:::-;6076:74;;6159:93;6248:3;6159:93;:::i;:::-;6277:2;6272:3;6268:12;6261:19;;6066:220;;;:::o;6292:366::-;6434:3;6455:67;6519:2;6514:3;6455:67;:::i;:::-;6448:74;;6531:93;6620:3;6531:93;:::i;:::-;6649:2;6644:3;6640:12;6633:19;;6438:220;;;:::o;6730:1040::-;6875:4;6870:3;6866:14;6965:4;6958:5;6954:16;6948:23;6984:63;7041:4;7036:3;7032:14;7018:12;6984:63;:::i;:::-;6890:167;7141:4;7134:5;7130:16;7124:23;7160:63;7217:4;7212:3;7208:14;7194:12;7160:63;:::i;:::-;7067:166;7320:4;7313:5;7309:16;7303:23;7339:63;7396:4;7391:3;7387:14;7373:12;7339:63;:::i;:::-;7243:169;7497:4;7490:5;7486:16;7480:23;7516:63;7573:4;7568:3;7564:14;7550:12;7516:63;:::i;:::-;7422:167;7677:4;7670:5;7666:16;7660:23;7696:57;7747:4;7742:3;7738:14;7724:12;7696:57;:::i;:::-;7599:164;6844:926;;;:::o;7856:694::-;8005:4;8000:3;7996:14;8097:4;8090:5;8086:16;8080:23;8116:63;8173:4;8168:3;8164:14;8150:12;8116:63;:::i;:::-;8020:169;8275:4;8268:5;8264:16;8258:23;8294:63;8351:4;8346:3;8342:14;8328:12;8294:63;:::i;:::-;8199:168;8451:4;8444:5;8440:16;8434:23;8470:63;8527:4;8522:3;8518:14;8504:12;8470:63;:::i;:::-;8377:166;7974:576;;;:::o;8624:696::-;8775:4;8770:3;8766:14;8867:4;8860:5;8856:16;8850:23;8886:63;8943:4;8938:3;8934:14;8920:12;8886:63;:::i;:::-;8790:169;9044:4;9037:5;9033:16;9027:23;9063:63;9120:4;9115:3;9111:14;9097:12;9063:63;:::i;:::-;8969:167;9221:4;9214:5;9210:16;9204:23;9240:63;9297:4;9292:3;9288:14;9274:12;9240:63;:::i;:::-;9146:167;8744:576;;;:::o;9392:742::-;9541:4;9536:3;9532:14;9629:4;9622:5;9618:16;9612:23;9648:109;9751:4;9746:3;9742:14;9728:12;9648:109;:::i;:::-;9556:211;9854:4;9847:5;9843:16;9837:23;9873:63;9930:4;9925:3;9921:14;9907:12;9873:63;:::i;:::-;9777:169;10035:4;10028:5;10024:16;10018:23;10054:63;10111:4;10106:3;10102:14;10088:12;10054:63;:::i;:::-;9956:171;9510:624;;;:::o;10208:1441::-;10359:4;10354:3;10350:14;10451:4;10444:5;10440:16;10434:23;10470:63;10527:4;10522:3;10518:14;10504:12;10470:63;:::i;:::-;10374:169;10631:4;10624:5;10620:16;10614:23;10650:63;10707:4;10702:3;10698:14;10684:12;10650:63;:::i;:::-;10553:170;10818:4;10811:5;10807:16;10801:23;10837:63;10894:4;10889:3;10885:14;10871:12;10837:63;:::i;:::-;10733:177;11001:4;10994:5;10990:16;10984:23;11020:63;11077:4;11072:3;11068:14;11054:12;11020:63;:::i;:::-;10920:173;11185:4;11178:5;11174:16;11168:23;11204:63;11261:4;11256:3;11252:14;11238:12;11204:63;:::i;:::-;11103:174;11368:4;11361:5;11357:16;11351:23;11387:63;11444:4;11439:3;11435:14;11421:12;11387:63;:::i;:::-;11287:173;11550:4;11543:5;11539:16;11533:23;11569:63;11626:4;11621:3;11617:14;11603:12;11569:63;:::i;:::-;11470:172;10328:1321;;;:::o;11655:108::-;11732:24;11750:5;11732:24;:::i;:::-;11727:3;11720:37;11710:53;;:::o;11769:118::-;11856:24;11874:5;11856:24;:::i;:::-;11851:3;11844:37;11834:53;;:::o;11893:222::-;11986:4;12024:2;12013:9;12009:18;12001:26;;12037:71;12105:1;12094:9;12090:17;12081:6;12037:71;:::i;:::-;11991:124;;;;:::o;12121:254::-;12230:4;12268:2;12257:9;12253:18;12245:26;;12281:87;12365:1;12354:9;12350:17;12341:6;12281:87;:::i;:::-;12235:140;;;;:::o;12381:332::-;12502:4;12540:2;12529:9;12525:18;12517:26;;12553:71;12621:1;12610:9;12606:17;12597:6;12553:71;:::i;:::-;12634:72;12702:2;12691:9;12687:18;12678:6;12634:72;:::i;:::-;12507:206;;;;;:::o;12719:553::-;12896:4;12934:3;12923:9;12919:19;12911:27;;12948:71;13016:1;13005:9;13001:17;12992:6;12948:71;:::i;:::-;13029:72;13097:2;13086:9;13082:18;13073:6;13029:72;:::i;:::-;13111;13179:2;13168:9;13164:18;13155:6;13111:72;:::i;:::-;13193;13261:2;13250:9;13246:18;13237:6;13193:72;:::i;:::-;12901:371;;;;;;;:::o;13278:332::-;13399:4;13437:2;13426:9;13422:18;13414:26;;13450:71;13518:1;13507:9;13503:17;13494:6;13450:71;:::i;:::-;13531:72;13599:2;13588:9;13584:18;13575:6;13531:72;:::i;:::-;13404:206;;;;;:::o;13616:442::-;13765:4;13803:2;13792:9;13788:18;13780:26;;13816:71;13884:1;13873:9;13869:17;13860:6;13816:71;:::i;:::-;13897:72;13965:2;13954:9;13950:18;13941:6;13897:72;:::i;:::-;13979;14047:2;14036:9;14032:18;14023:6;13979:72;:::i;:::-;13770:288;;;;;;:::o;14064:556::-;14295:4;14333;14322:9;14318:20;14310:28;;14348:181;14526:1;14515:9;14511:17;14502:6;14348:181;:::i;:::-;14539:74;14607:4;14596:9;14592:20;14583:6;14539:74;:::i;:::-;14300:320;;;;;:::o;14626:210::-;14713:4;14751:2;14740:9;14736:18;14728:26;;14764:65;14826:1;14815:9;14811:17;14802:6;14764:65;:::i;:::-;14718:118;;;;:::o;14842:419::-;15008:4;15046:2;15035:9;15031:18;15023:26;;15095:9;15089:4;15085:20;15081:1;15070:9;15066:17;15059:47;15123:131;15249:4;15123:131;:::i;:::-;15115:139;;15013:248;;;:::o;15267:419::-;15433:4;15471:2;15460:9;15456:18;15448:26;;15520:9;15514:4;15510:20;15506:1;15495:9;15491:17;15484:47;15548:131;15674:4;15548:131;:::i;:::-;15540:139;;15438:248;;;:::o;15692:419::-;15858:4;15896:2;15885:9;15881:18;15873:26;;15945:9;15939:4;15935:20;15931:1;15920:9;15916:17;15909:47;15973:131;16099:4;15973:131;:::i;:::-;15965:139;;15863:248;;;:::o;16117:419::-;16283:4;16321:2;16310:9;16306:18;16298:26;;16370:9;16364:4;16360:20;16356:1;16345:9;16341:17;16334:47;16398:131;16524:4;16398:131;:::i;:::-;16390:139;;16288:248;;;:::o;16542:419::-;16708:4;16746:2;16735:9;16731:18;16723:26;;16795:9;16789:4;16785:20;16781:1;16770:9;16766:17;16759:47;16823:131;16949:4;16823:131;:::i;:::-;16815:139;;16713:248;;;:::o;16967:430::-;17136:4;17174:3;17163:9;17159:19;17151:27;;17188:119;17304:1;17293:9;17289:17;17280:6;17188:119;:::i;:::-;17317:73;17385:3;17374:9;17370:19;17361:6;17317:73;:::i;:::-;17141:256;;;;;:::o;17403:875::-;17740:4;17778:3;17767:9;17763:19;17755:27;;17792:125;17914:1;17903:9;17899:17;17890:6;17792:125;:::i;:::-;17927:124;18047:2;18036:9;18032:18;18023:6;17927:124;:::i;:::-;18061:127;18183:3;18172:9;18168:19;18159:6;18061:127;:::i;:::-;18198:73;18266:3;18255:9;18251:19;18242:6;18198:73;:::i;:::-;17745:533;;;;;;;:::o;18284:222::-;18377:4;18415:2;18404:9;18400:18;18392:26;;18428:71;18496:1;18485:9;18481:17;18472:6;18428:71;:::i;:::-;18382:124;;;;:::o;18512:886::-;18773:4;18811:3;18800:9;18796:19;18788:27;;18825:71;18893:1;18882:9;18878:17;18869:6;18825:71;:::i;:::-;18906:72;18974:2;18963:9;18959:18;18950:6;18906:72;:::i;:::-;18988;19056:2;19045:9;19041:18;19032:6;18988:72;:::i;:::-;19070;19138:2;19127:9;19123:18;19114:6;19070:72;:::i;:::-;19152:73;19220:3;19209:9;19205:19;19196:6;19152:73;:::i;:::-;19235;19303:3;19292:9;19288:19;19279:6;19235:73;:::i;:::-;19318;19386:3;19375:9;19371:19;19362:6;19318:73;:::i;:::-;18778:620;;;;;;;;;;:::o;19404:332::-;19525:4;19563:2;19552:9;19548:18;19540:26;;19576:71;19644:1;19633:9;19629:17;19620:6;19576:71;:::i;:::-;19657:72;19725:2;19714:9;19710:18;19701:6;19657:72;:::i;:::-;19530:206;;;;;:::o;19742:442::-;19891:4;19929:2;19918:9;19914:18;19906:26;;19942:71;20010:1;19999:9;19995:17;19986:6;19942:71;:::i;:::-;20023:72;20091:2;20080:9;20076:18;20067:6;20023:72;:::i;:::-;20105;20173:2;20162:9;20158:18;20149:6;20105:72;:::i;:::-;19896:288;;;;;;:::o;20190:997::-;20479:4;20517:3;20506:9;20502:19;20494:27;;20531:71;20599:1;20588:9;20584:17;20575:6;20531:71;:::i;:::-;20612:72;20680:2;20669:9;20665:18;20656:6;20612:72;:::i;:::-;20694;20762:2;20751:9;20747:18;20738:6;20694:72;:::i;:::-;20776;20844:2;20833:9;20829:18;20820:6;20776:72;:::i;:::-;20858:73;20926:3;20915:9;20911:19;20902:6;20858:73;:::i;:::-;20941;21009:3;20998:9;20994:19;20985:6;20941:73;:::i;:::-;21024;21092:3;21081:9;21077:19;21068:6;21024:73;:::i;:::-;21107;21175:3;21164:9;21160:19;21151:6;21107:73;:::i;:::-;20484:703;;;;;;;;;;;:::o;21274:130::-;21371:4;21394:3;21386:11;;21376:28;;;:::o;21410:98::-;21475:4;21498:3;21490:11;;21480:28;;;:::o;21514:136::-;21611:6;21639:4;21629:14;;21618:32;;;:::o;21656:104::-;21721:6;21749:4;21739:14;;21728:32;;;:::o;21766:143::-;21866:4;21898;21893:3;21889:14;21881:22;;21871:38;;;:::o;21915:111::-;21983:4;22015;22010:3;22006:14;21998:22;;21988:38;;;:::o;22032:175::-;22161:11;22198:3;22183:18;;22173:34;;;;:::o;22213:133::-;22300:11;22337:3;22322:18;;22312:34;;;;:::o;22352:169::-;22436:11;22470:6;22465:3;22458:19;22510:4;22505:3;22501:14;22486:29;;22448:73;;;;:::o;22527:305::-;22567:3;22586:20;22604:1;22586:20;:::i;:::-;22581:25;;22620:20;22638:1;22620:20;:::i;:::-;22615:25;;22774:1;22706:66;22702:74;22699:1;22696:81;22693:2;;;22780:18;;:::i;:::-;22693:2;22824:1;22821;22817:9;22810:16;;22571:261;;;;:::o;22838:185::-;22878:1;22895:20;22913:1;22895:20;:::i;:::-;22890:25;;22929:20;22947:1;22929:20;:::i;:::-;22924:25;;22968:1;22958:2;;22973:18;;:::i;:::-;22958:2;23015:1;23012;23008:9;23003:14;;22880:143;;;;:::o;23029:348::-;23069:7;23092:20;23110:1;23092:20;:::i;:::-;23087:25;;23126:20;23144:1;23126:20;:::i;:::-;23121:25;;23314:1;23246:66;23242:74;23239:1;23236:81;23231:1;23224:9;23217:17;23213:105;23210:2;;;23321:18;;:::i;:::-;23210:2;23369:1;23366;23362:9;23351:20;;23077:300;;;;:::o;23383:191::-;23423:4;23443:20;23461:1;23443:20;:::i;:::-;23438:25;;23477:20;23495:1;23477:20;:::i;:::-;23472:25;;23516:1;23513;23510:8;23507:2;;;23521:18;;:::i;:::-;23507:2;23566:1;23563;23559:9;23551:17;;23428:146;;;;:::o;23580:96::-;23617:7;23646:24;23664:5;23646:24;:::i;:::-;23635:35;;23625:51;;;:::o;23682:104::-;23727:7;23756:24;23774:5;23756:24;:::i;:::-;23745:35;;23735:51;;;:::o;23792:90::-;23826:7;23869:5;23862:13;23855:21;23844:32;;23834:48;;;:::o;23888:126::-;23925:7;23965:42;23958:5;23954:54;23943:65;;23933:81;;;:::o;24020:77::-;24057:7;24086:5;24075:16;;24065:32;;;:::o;24103:86::-;24138:7;24178:4;24171:5;24167:16;24156:27;;24146:43;;;:::o;24195:233::-;24234:3;24257:24;24275:5;24257:24;:::i;:::-;24248:33;;24303:66;24296:5;24293:77;24290:2;;;24373:18;;:::i;:::-;24290:2;24420:1;24413:5;24409:13;24402:20;;24238:190;;;:::o;24434:180::-;24482:77;24479:1;24472:88;24579:4;24576:1;24569:15;24603:4;24600:1;24593:15;24620:180;24668:77;24665:1;24658:88;24765:4;24762:1;24755:15;24789:4;24786:1;24779:15;24806:180;24854:77;24851:1;24844:88;24951:4;24948:1;24941:15;24975:4;24972:1;24965:15;25115:117;25224:1;25221;25214:12;25238:169;25378:21;25374:1;25366:6;25362:14;25355:45;25344:63;:::o;25413:178::-;25553:30;25549:1;25541:6;25537:14;25530:54;25519:72;:::o;25597:164::-;25737:16;25733:1;25725:6;25721:14;25714:40;25703:58;:::o;25767:179::-;25907:31;25903:1;25895:6;25891:14;25884:55;25873:73;:::o;25952:168::-;26092:20;26088:1;26080:6;26076:14;26069:44;26058:62;:::o;26126:122::-;26199:24;26217:5;26199:24;:::i;:::-;26192:5;26189:35;26179:2;;26238:1;26235;26228:12;26179:2;26169:79;:::o;26254:122::-;26327:24;26345:5;26327:24;:::i;:::-;26320:5;26317:35;26307:2;;26366:1;26363;26356:12;26307:2;26297:79;:::o;26382:118::-;26453:22;26469:5;26453:22;:::i;:::-;26446:5;26443:33;26433:2;;26490:1;26487;26480:12;26433:2;26423:77;:::o

Swarm Source

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