Contract 0xa04fda365ab7ae267ff240bbf3d0eacf6e7e7fc9

 
 
Txn Hash Method
Block
From
To
Value [Txn Fee]
0x9954095f0673f5e4e5b0de0a72d3fa680d66f8f363dce50bb6ed5598f38534d9Withdraw78940242021-05-31 17:17:18110 days 5 hrs ago0x986b9ecad1cd7a292da7e156af44c538d81d329d IN  0xa04fda365ab7ae267ff240bbf3d0eacf6e7e7fc90 BNB0.000266145
0xc20a61c322d0b174d1644ea8b0affcc1fa1706d233a31b5b9e45d8ed46de9ca8Withdraw78778872021-05-31 3:47:28110 days 18 hrs ago0x15e38f9a414f8b079061812426fad9c5cab9e2e3 IN  0xa04fda365ab7ae267ff240bbf3d0eacf6e7e7fc90 BNB0.000274615
0x7aa826b426c3aa73b6d782d383d32ef371a5e2f64bbe9de7222d091e1aec48c9Withdraw77760752021-05-27 14:37:51114 days 7 hrs ago0x15e38f9a414f8b079061812426fad9c5cab9e2e3 IN  0xa04fda365ab7ae267ff240bbf3d0eacf6e7e7fc90 BNB0.00026585
0xcd436965848c0aaf9f2f4656c314da47370d6a274839e8ee09f4ef22ed54d0c8Withdraw77760392021-05-27 14:36:00114 days 8 hrs ago0x15e38f9a414f8b079061812426fad9c5cab9e2e3 IN  0xa04fda365ab7ae267ff240bbf3d0eacf6e7e7fc90 BNB0.000266145
0xeed0d5c6fc76c781fc7c79e1528d9d85a8b1de49f0143e7a5d8ef0d5437871e3Withdraw77373992021-05-26 6:03:20115 days 16 hrs ago0x6d9f6691fbc7f842f97cb4a9b939327ae0911155 IN  0xa04fda365ab7ae267ff240bbf3d0eacf6e7e7fc90 BNB0.000412545
0x44a9817d4b9a4bf57f0e153631baca0937bb5752220837e345a52cc4d1445606Withdraw77167182021-05-25 12:47:56116 days 9 hrs ago0x986b9ecad1cd7a292da7e156af44c538d81d329d IN  0xa04fda365ab7ae267ff240bbf3d0eacf6e7e7fc90 BNB0.000266145
0x574e7e1ebbca56b2ed3c60127dd36bcf39dc9110ddfb01631e5db049126919ebWithdraw76868282021-05-24 11:47:30117 days 10 hrs ago0x986b9ecad1cd7a292da7e156af44c538d81d329d IN  0xa04fda365ab7ae267ff240bbf3d0eacf6e7e7fc90 BNB0.000266145
0x901c90a6bb8e81eb668155edc6fbb7ef2c31e761245b4483959888cabd4d84f2Withdraw76621952021-05-23 15:10:07118 days 7 hrs ago0x15e38f9a414f8b079061812426fad9c5cab9e2e3 IN  0xa04fda365ab7ae267ff240bbf3d0eacf6e7e7fc90 BNB0.000266145
0x3710c582170a371af06e0a9784abf823bc489553210d192ff8d7017402cb3fccWithdraw76566532021-05-23 10:28:47118 days 12 hrs ago0x6d9f6691fbc7f842f97cb4a9b939327ae0911155 IN  0xa04fda365ab7ae267ff240bbf3d0eacf6e7e7fc90 BNB0.00041225
0x3dd035956e9a1c8069970683e48c93bd66d4f61bc9e0a4dba2e8f7f87f0220cdWithdraw76343462021-05-22 15:52:32119 days 6 hrs ago0x6d9f6691fbc7f842f97cb4a9b939327ae0911155 IN  0xa04fda365ab7ae267ff240bbf3d0eacf6e7e7fc90 BNB0.00041225
0xeac10582553f8d2118ac88b180db7e18111a71c4de5415b6e770c7728ebcca3cWithdraw76340932021-05-22 15:39:53119 days 6 hrs ago0x986b9ecad1cd7a292da7e156af44c538d81d329d IN  0xa04fda365ab7ae267ff240bbf3d0eacf6e7e7fc90 BNB0.000266145
0x8deff354ebf0acdaea267dc7bca9c27a203113ccd50aee7495979a04c0f5448cWithdraw76256202021-05-22 8:35:47119 days 14 hrs ago0x15e38f9a414f8b079061812426fad9c5cab9e2e3 IN  0xa04fda365ab7ae267ff240bbf3d0eacf6e7e7fc90 BNB0.00026585
0xef58d0c9b64765e95325d3fca0d7601c5fdf4a954ddfd42af2de9808b59862c4Withdraw76256192021-05-22 8:35:44119 days 14 hrs ago0x15e38f9a414f8b079061812426fad9c5cab9e2e3 IN  0xa04fda365ab7ae267ff240bbf3d0eacf6e7e7fc90 BNB0.00026585
0xbda59e0eed21f185bf643ff590328710064458574025b307c09068d3b9735f97Withdraw76255722021-05-22 8:33:23119 days 14 hrs ago0x15e38f9a414f8b079061812426fad9c5cab9e2e3 IN  0xa04fda365ab7ae267ff240bbf3d0eacf6e7e7fc90 BNB0.000266145
0xb260814c1d1002cb5a4d40b38addf3bf44d56758e985f6bf1efe993de877ac1bWithdraw76182522021-05-22 2:26:08119 days 20 hrs ago0xd1b934f7ba65774b8f3318af696f79e9114dd884 IN  0xa04fda365ab7ae267ff240bbf3d0eacf6e7e7fc90 BNB0.000266145
0xd47abf45730ddd51476f7ce3ae250fa58043112c2a96bd359db67d41d5bb8aabWithdraw76113462021-05-21 20:40:21120 days 1 hr ago0x6d9f6691fbc7f842f97cb4a9b939327ae0911155 IN  0xa04fda365ab7ae267ff240bbf3d0eacf6e7e7fc90 BNB0.000412545
0x35d3f65877c822a17056539e6b87ef5337c35ddf6002f7ec47cd64c9a511d324Withdraw76041052021-05-21 14:36:39120 days 8 hrs ago0x95bb0e93ceb54b50287a6c9ea70d2baa6176ec6c IN  0xa04fda365ab7ae267ff240bbf3d0eacf6e7e7fc90 BNB0.0002927595
0xbc814d805e92882fdc2d33284b7bdb955765ab9c642c6b4f13e40d505e36a7ecWithdraw76024642021-05-21 13:11:15120 days 9 hrs ago0x986b9ecad1cd7a292da7e156af44c538d81d329d IN  0xa04fda365ab7ae267ff240bbf3d0eacf6e7e7fc90 BNB0.00026585
0x441f5b1f0d6eb45fb133bf350e1a7864f785e10d7277f97b5e8b79b66ca9157cWithdraw76024632021-05-21 13:11:12120 days 9 hrs ago0x986b9ecad1cd7a292da7e156af44c538d81d329d IN  0xa04fda365ab7ae267ff240bbf3d0eacf6e7e7fc90 BNB0.000266145
0xf1b61d5dc29027b533c5d364e39f5a7e5934e9392d4050eb8b984e72babdc94eWithdraw75964652021-05-21 8:09:58120 days 14 hrs ago0xb7473ea75a8f66254f93210dc371a466190fb0fa IN  0xa04fda365ab7ae267ff240bbf3d0eacf6e7e7fc90 BNB0.00026585
0x7e15390c417e12cd17d6cdf0ff3c18af4f55f9e01ded2ea70557b9ee256bb597Withdraw75888052021-05-21 1:44:52120 days 20 hrs ago0xb7473ea75a8f66254f93210dc371a466190fb0fa IN  0xa04fda365ab7ae267ff240bbf3d0eacf6e7e7fc90 BNB0.00026585
0x544e3dbd5a3695165e342b9a6ff0d6aae2fe02772cb7dce713a27ec9e590c3f7Withdraw75855872021-05-20 23:02:38120 days 23 hrs ago0x2af1b4efb88a862d968e6b67401a537d3ae5c1d7 IN  0xa04fda365ab7ae267ff240bbf3d0eacf6e7e7fc90 BNB0.00026585
0x2f7ff92651e80ada5d1c7b3544c8f6ea1d36e07b0319d7f8b201db79f1b7f2a5Withdraw75840062021-05-20 21:43:35121 days 53 mins ago0x15e38f9a414f8b079061812426fad9c5cab9e2e3 IN  0xa04fda365ab7ae267ff240bbf3d0eacf6e7e7fc90 BNB0.000266145
0xbe5fe03a39cdc54b26d066e20c4ed31503e551ee7ec41d6dffa26bd28c790c3dWithdraw75792672021-05-20 17:46:36121 days 4 hrs ago0x461a7609d2c420fcae1cec7b146c3099fcbf05bc IN  0xa04fda365ab7ae267ff240bbf3d0eacf6e7e7fc90 BNB0.00026585
0xb89f359e2a5a2988b8f2da0e87d41b4ff0d97340f317eaa7a0aafbce2b88e8e3Withdraw75733172021-05-20 12:47:40121 days 9 hrs ago0x9aa03c41261106bed94b2acdbec1e4d2b8307519 IN  0xa04fda365ab7ae267ff240bbf3d0eacf6e7e7fc90 BNB0.000339345
[ Download CSV Export 
Latest 25 internal transaction
Parent Txn Hash Block From To Value
0x577a1a24ea06fc402edbf100e10ba5e0426c135deaee3a79c5a1d6bf0419309175625202021-05-20 3:43:46121 days 18 hrs ago 0xa04fda365ab7ae267ff240bbf3d0eacf6e7e7fc90xc8803a54318f1fb0af7b3e4e087d5fd535f4ed631.578817854157669784 BNB
0x850cf13cd772632038520ff9d54121d5e07205f9efcd53bdf6f7c08890218c6475624202021-05-20 3:38:46121 days 18 hrs ago 0xa04fda365ab7ae267ff240bbf3d0eacf6e7e7fc90x2af1b4efb88a862d968e6b67401a537d3ae5c1d70.011021515162037037 BNB
0xd4c273a6ec3f593d6370175bc60fd66de27a50a4c40145297509b90f58f74d1475620432021-05-20 3:19:55121 days 19 hrs ago 0xa04fda365ab7ae267ff240bbf3d0eacf6e7e7fc90xb7473ea75a8f66254f93210dc371a466190fb0fa0.007045052083333333 BNB
0xf9b0b86c68c7f9d41434ccde832d1392e2b4020ee344e14b6364eb618f01877a75615132021-05-20 2:53:25121 days 19 hrs ago 0xa04fda365ab7ae267ff240bbf3d0eacf6e7e7fc90x786038b26565bfb119e62856d7a22e44d86904860.002426666666666666 BNB
0x8ecf613cd97a809a3adbac68ed0276b5160f262e32052c704d4c1695ab06227975584132021-05-20 0:15:41121 days 22 hrs ago 0xa04fda365ab7ae267ff240bbf3d0eacf6e7e7fc90xa0f7ee02f8d2660553df889fe344aeeac55ba8130.056597722222222221 BNB
0x51ca4c3e24d229d4a8303077490fa89fa6dbcaa7c5636f90bc8f088a96d5887f75581712021-05-20 0:03:34121 days 22 hrs ago 0xa04fda365ab7ae267ff240bbf3d0eacf6e7e7fc90xf8dcb09ea9ae683df4c55060e6a25481aa3389c40.024976550925925925 BNB
0xa1ee43a7b8f61da93d6237bdb25173bfdc095da8bbba1ffc2bfbc63f0ec8f44875573942021-05-19 23:24:37121 days 23 hrs ago 0xa04fda365ab7ae267ff240bbf3d0eacf6e7e7fc90x3ccfcb8700f3306e40ed571d1b2c356921c61a2f0.532909722222222222 BNB
0x3ea5b52bdff076bd0ff5d2b4e05527e27665a75ef0ba8f81241e20fc1073e57f75561172021-05-19 22:20:46122 days 15 mins ago 0xa04fda365ab7ae267ff240bbf3d0eacf6e7e7fc90x461a7609d2c420fcae1cec7b146c3099fcbf05bc0.011940767361111111 BNB
0x77bd81257aad74d9b1bfbe5d852cd5a22a312d17ce19725532bd80b4774af82b75536192021-05-19 20:15:50122 days 2 hrs ago 0xa04fda365ab7ae267ff240bbf3d0eacf6e7e7fc90x6d9f6691fbc7f842f97cb4a9b939327ae09111550.050872596180555555 BNB
0x692f39fdd2a3572a91eec7f7f1857fbc150e79d23a1df5ca39ed228e24f5983475523042021-05-19 19:10:05122 days 3 hrs ago 0xa04fda365ab7ae267ff240bbf3d0eacf6e7e7fc90xf7bfc2ac991b3b6e1ff56fa4f9156d88a3e2ee490.109864351851851851 BNB
0x6db80503fc1d07267f3fedfb4430e05a0662f3630157207b04327654393ec02175522442021-05-19 19:07:05122 days 3 hrs ago 0xa04fda365ab7ae267ff240bbf3d0eacf6e7e7fc90xc8803a54318f1fb0af7b3e4e087d5fd535f4ed631.017337118055555554 BNB
0x2272cd4e0dcae5b901a3363a1b9eae6337ac792036179cff98b8e9196d7cd90975504822021-05-19 17:38:56122 days 4 hrs ago 0xa04fda365ab7ae267ff240bbf3d0eacf6e7e7fc90x9d95b82f5dcbb5ccaa222ba3d07e999317f648d40.09199943287037037 BNB
0xf4f0e6d220e4a15cb36d161fbf1eab22bcd33546affc3fb946a1d92670ae2d8f75504292021-05-19 17:36:17122 days 5 hrs ago 0xa04fda365ab7ae267ff240bbf3d0eacf6e7e7fc90xfb2f971120843ccce44e5806dbb947a9506bccef0.081244364719571874 BNB
0x6f8291eb3b048b72a6a55a9c624c5283809c19f1453ea7661d2c5241ffc1adf175502982021-05-19 17:29:44122 days 5 hrs ago 0xa04fda365ab7ae267ff240bbf3d0eacf6e7e7fc90x2ac76b53887a3aaba7d6688e9239b877e347936a0.039364148148148148 BNB
0x73d15c15e06712c654b9450862d38640251674c647b78d416fe29e12f26a1a7c75502972021-05-19 17:29:41122 days 5 hrs ago 0xa04fda365ab7ae267ff240bbf3d0eacf6e7e7fc90x2ac76b53887a3aaba7d6688e9239b877e347936a0.115936153318658201 BNB
0x173b1bf843a7ee27c15e9802d99ac7efe443d320153414cb6e87b9556090d88475502872021-05-19 17:29:11122 days 5 hrs ago 0xa04fda365ab7ae267ff240bbf3d0eacf6e7e7fc90x2b258af3037abe6ae50db554caf82f368706504b0.003 BNB
0x1e858f6b188d2b4604c7b874fca5db2c17f866009e2790d0a25f718a348abbb475502862021-05-19 17:29:08122 days 5 hrs ago 0xa04fda365ab7ae267ff240bbf3d0eacf6e7e7fc90x2b258af3037abe6ae50db554caf82f368706504b0.052281984953703703 BNB
0x24f433f5f450643221ec785e7ef1a8b5bf5ca10c4e80ae3b1d1416a39157237b75502732021-05-19 17:28:29122 days 5 hrs ago 0xa04fda365ab7ae267ff240bbf3d0eacf6e7e7fc90xf8d6ae87300f4ac87e96c7646c071ff6f7efb04f0.003 BNB
0xda52e698f01ab4d094d1aa78a84d42184d6cc163834f750a0852efdd7f5d416375502722021-05-19 17:28:26122 days 5 hrs ago 0xa04fda365ab7ae267ff240bbf3d0eacf6e7e7fc90xf8d6ae87300f4ac87e96c7646c071ff6f7efb04f0.056588518518518518 BNB
0xa67145f02fa5b59dfb5a8710b24597b45e9680f99beabe065865ef882f79ffe475502702021-05-19 17:28:20122 days 5 hrs ago 0xa04fda365ab7ae267ff240bbf3d0eacf6e7e7fc90xf8dcb09ea9ae683df4c55060e6a25481aa3389c40.078286331018518518 BNB
0x26e626ab9fb34dc5d306cbcbdf37b2b8972a536cf3faae3c5c1b8a10bb4e68e175502632021-05-19 17:27:58122 days 5 hrs ago 0xa04fda365ab7ae267ff240bbf3d0eacf6e7e7fc90x7aa43f7c26949074f86beb05c3fe736dc64497210.003 BNB
0x9d45a5dcdf14cd13d09a367b9a6641d85bef2875cdd6b74550cbd08636884c3475502612021-05-19 17:27:52122 days 5 hrs ago 0xa04fda365ab7ae267ff240bbf3d0eacf6e7e7fc90x7aa43f7c26949074f86beb05c3fe736dc64497210.027067027777777777 BNB
0xfaf562fae2a46963d6c31f73f6f9b5a1b169c5114906fd9583e471fde4c0ad3575502272021-05-19 17:26:10122 days 5 hrs ago 0xa04fda365ab7ae267ff240bbf3d0eacf6e7e7fc90x8f11587a46fd5b4ff786d264ae9d661487ac9e670.230372306637316406 BNB
0xcf87c00e3ff635fe8dd00a4748df7086fd4686a76ac4f5e208429e4b81373f0a75502262021-05-19 17:26:07122 days 5 hrs ago 0xa04fda365ab7ae267ff240bbf3d0eacf6e7e7fc90x8f11587a46fd5b4ff786d264ae9d661487ac9e670.044788879629629629 BNB
0x8e9dc32ac876a9f7242476cb2fc1b96761d110a266c8d217a6f1bcb5ddb05d4e75502132021-05-19 17:25:28122 days 5 hrs ago 0xa04fda365ab7ae267ff240bbf3d0eacf6e7e7fc90x86b3570ab4c4c626ea2d679f8f5a5e4bb46101320.585037697264154418 BNB
[ Download CSV Export 
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
BNBSTRIKE

Compiler Version
v0.5.8+commit.23d335f2

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

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

pragma solidity 0.5.8;

contract BNBSTRIKE {
	using SafeMath for uint256;

	uint256 constant public INVEST_MIN_AMOUNT = 0.05 ether;
	uint256 constant public PROJECT_FEE = 65;
	uint256 constant public DEVELOPER_FEE = 10;
	uint256 constant public MARKETING_FEE = 30;
	uint256 constant public PERCENT_STEP = 5;
	uint256 constant public PERCENTS_DIVIDER = 1000;
	uint256 constant public TIME_STEP = 1 days;
	
	uint256 constant public MAX_HOLD_PERCENT = 20;
	
	uint256[] public REFERRAL_PERCENTS_LEVEL_1 = [30, 20, 10];
	uint256[] public REFERRAL_PERCENTS_LEVEL_2 = [30, 20, 10, 5];
	uint256[] public REFERRAL_PERCENTS_LEVEL_3 = [30, 20, 10, 5, 5];
	uint256[] public REFERRAL_PERCENTS_LEVEL_4 = [30, 20, 10, 5, 5, 5];
	uint256[] public REFERRAL_PERCENTS_LEVEL_5 = [30, 20, 10, 5, 5, 5, 5];
	uint256[] public REFERRAL_PERCENTS_LEVEL_6 = [30, 20, 10, 5, 5, 5, 5, 5];
	
	
	uint256 public round = 0;
	uint256 public INVESTORS_POOL = 0;
	uint256 public participants = 0;
	
	uint256 public POOL_START_TIME;
	
	
    uint256 public totalStaked;
	uint256 public totalRefBonus;


    struct Plan {
        uint256 time;
        uint256 percent;
    }

    Plan[] internal plans;

	struct Deposit {
        uint8 plan;
		uint256 percent;
		uint256 amount;
		uint256 profit;
		uint256 start;
		uint256 finish;
	}

	struct User {
		Deposit[] deposits;
		uint256 checkpoint;
		uint256 holdBonusCheckpoint;
		address payable referrer;
		uint256 referrals;
		uint256 totalBonus;
		uint256 refRewards;
		uint256 turnover;
		uint256 poolRewards;
	}

	mapping (address => User) internal users;
	
	mapping(uint256 => mapping(address => uint256)) public poolParticipants; // round => address => amount of investment
    mapping(uint256 => mapping(uint256 => address)) public participantAdresses; // round => id => address

	uint256 public startUNIX;
	address payable private commissionWallet;
	address payable private developerWallet;
	address payable public marketingWallet;

	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);

	constructor(address payable wallet, address payable _developer, address payable _marketing) public {
		require(!isContract(wallet));
		commissionWallet = wallet;
		developerWallet = _developer;
		marketingWallet = _marketing;
		startUNIX = block.timestamp.add(18 hours);
		POOL_START_TIME = block.timestamp;

        plans.push(Plan(20, 60)); // 6% per day for 20 days
        plans.push(Plan(30, 50)); // 5% per day for 30 days
        plans.push(Plan(40, 40)); // 4% per day for 40 days
        plans.push(Plan(30, 30)); // 3-7% per day for 30 days (random)
        plans.push(Plan(30, 20)); // 2-9% per day for 30 days (random)
        plans.push(Plan(20, 80)); // 8-12% per day for 20 days (random)
	}


function invest(address payable referrer,uint8 plan) public payable {
        _invest(referrer, plan, msg.sender, msg.value, 0);
           
    }


	function _invest(address payable referrer, uint8 plan, address payable sender, uint256 value, uint256 extraProfit) private {
		require(value >= INVEST_MIN_AMOUNT);
        require(plan < 6, "Invalid plan");
        require(startUNIX < block.timestamp, "contract hasn`t started yet");

		uint256 fee = value.mul(PROJECT_FEE).div(PERCENTS_DIVIDER);
		commissionWallet.transfer(fee);
		uint256 developerFee = value.mul(DEVELOPER_FEE).div(PERCENTS_DIVIDER);
		developerWallet.transfer(developerFee);
		uint256 marketingAmount = value.mul(MARKETING_FEE).div(PERCENTS_DIVIDER);
		marketingWallet.transfer(marketingAmount);
		
		
		User storage user = users[sender];

		if (user.referrer == address(0)) {
			if (users[referrer].deposits.length > 0 && referrer != sender) {
				user.referrer = referrer;
			}

			address upline = user.referrer;
			for (uint256 i = 0; i < 8; i++) { // count 8 levels
				if (upline != address(0)) {
					users[upline].referrals = users[upline].referrals.add(1);
					upline = users[upline].referrer;
				} else break;
			}
		}

		if (user.referrer != address(0)) {
			address payable upline = user.referrer;
			uint256[] memory REFERRAL_PERCENTS = getReferralPercents(upline);
			for (uint256 i = 0; i < 8; i++) {  // count 8 levels
				if (upline != address(0)) {
				    if(REFERRAL_PERCENTS.length > i) {
    					uint256 amount = value.mul(REFERRAL_PERCENTS[i]).div(PERCENTS_DIVIDER);
    					
    					users[upline].refRewards = users[upline].refRewards.add(amount);
				    }
				    
					users[upline].turnover = users[upline].turnover.add(value);
					
					upline = users[upline].referrer;
				} else break;
			}

		}

		if (user.deposits.length == 0) {
			user.checkpoint = block.timestamp;
			user.holdBonusCheckpoint = block.timestamp;
			emit Newbie(sender);
		}

		(uint256 percent, uint256 profit, uint256 finish) = getResult(plan, value);
		
		percent = percent.add(extraProfit);
		
		user.deposits.push(Deposit(plan, percent, value, profit, block.timestamp, finish));

		totalStaked = totalStaked.add(value);
		
		getInPool(sender,value);
		
		emit NewDeposit(sender, plan, percent, value, profit, block.timestamp, finish);
	}

	function withdraw() public {
		User storage user = users[msg.sender];

		uint256 totalAmount = getUserDividends(msg.sender);

		require(totalAmount > 0, "User has no dividends");

		uint256 contractBalance = address(this).balance;
		if (contractBalance < totalAmount) {
			totalAmount = contractBalance;
		}

		user.checkpoint = block.timestamp;
		user.holdBonusCheckpoint = block.timestamp;

		msg.sender.transfer(totalAmount);
		
		user.poolRewards = 0;

		emit Withdrawn(msg.sender, totalAmount);

	}
	
	function withdrawAndReinvest(uint256 reinvestmentPercent, uint8 plan, address payable referrer) public {
	    require(reinvestmentPercent >=50, "Min. reinvestment must be 50%");
	    require(reinvestmentPercent <=100, "Max. reinvestment must be 100%");
	    
	    User storage user = users[msg.sender];
	    
	    uint256 totalAmount = getUserDividends(msg.sender);

		require(totalAmount > 0, "User has no dividends");
		
		uint256 reinvestment = totalAmount.mul(reinvestmentPercent).div(100);
		totalAmount = totalAmount.sub(reinvestment);
		
		uint256 extraProfit = getExtraProfit();
		
		
		_invest(referrer, plan, msg.sender, reinvestment, extraProfit);
		
		
		user.checkpoint = block.timestamp;
		user.poolRewards = 0;
		
		if(totalAmount > 0){
		    msg.sender.transfer(totalAmount);
		}
		
		emit Withdrawn(msg.sender, totalAmount);
	}
	
	function withdrawRef() public {
	    User storage user = users[msg.sender];
	    require(user.refRewards > 0 , 'user doesnt have referral rewards');
	    
	    msg.sender.transfer(user.refRewards);
	    
	    
	    
	    emit Withdrawn(msg.sender, user.refRewards);
	    
	   
	    user.totalBonus = user.totalBonus.add(user.refRewards);
	    user.refRewards = 0;
	}
	function getExtraProfit() public view returns(uint256) {
	     uint256 timeMultiplier = block.timestamp.sub(startUNIX).div(TIME_STEP).mul(3); // +0.3% per day
	     
	     return timeMultiplier.add(5); 
	}
	
	function getReferralPercents(address userAddress) public view returns(uint256[] memory) {
	     User storage user = users[userAddress];
	     
	     if((user.turnover >= 0 ether)&&(user.turnover <= 49.99 ether)){
	         return REFERRAL_PERCENTS_LEVEL_1;
	     }
	     if((user.turnover >= 50 ether)&&(user.turnover <= 99.99 ether)){
	         return REFERRAL_PERCENTS_LEVEL_2;
	     }
	     if((user.turnover >= 100 ether)&&(user.turnover <= 499.99 ether)){
	         return REFERRAL_PERCENTS_LEVEL_3;
	     }
	     if((user.turnover >= 500 ether)&&(user.turnover <= 999.99 ether)){
	         return REFERRAL_PERCENTS_LEVEL_4;
	     }
	     if((user.turnover >= 1000 ether)&&(user.turnover <= 1499.99 ether)){
	         return REFERRAL_PERCENTS_LEVEL_5;
	     }
	     if(user.turnover >= 1500 ether){
	         return REFERRAL_PERCENTS_LEVEL_6;
	     }
	}

	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) {
	    
		if(plan < 3){
			 return plans[plan].percent.add(PERCENT_STEP.mul(block.timestamp.sub(startUNIX)).div(TIME_STEP));
		} else {
		    uint256 random = getRandomPercent(plan);
		    return plans[plan].percent.add(random).add(PERCENT_STEP.mul(block.timestamp.sub(startUNIX)).div(TIME_STEP));
		}
    }
    
    function getRandomPercent(uint8 plan) private view returns(uint256) {
        uint256 mod;
        
        if(plan == 3){
            mod = 40; // (7% - 3%) * 10
        }
        if(plan == 4){
            mod = 70; // (9% - 2%) * 10
        }
        if(plan == 5){
            mod = 40; // (12% - 8%) * 10
        }
        
        
        bytes32 _blockhash = blockhash(block.number-1);
        
        
        uint256 random =  uint256(keccak256(abi.encode(_blockhash,block.timestamp,block.difficulty))).mod(100); // random number 0...99
        uint256 rand = random.mod(mod);
        
        
        return rand;
    }

	function getResult(uint8 plan, uint256 deposit) public view returns (uint256 percent, uint256 profit, uint256 finish) {
		percent = getPercent(plan);

	
		profit = deposit.mul(percent).div(PERCENTS_DIVIDER).mul(plans[plan].time);
	

		finish = block.timestamp.add(plans[plan].time.mul(TIME_STEP));
	}
	
	 function getUserPercentRate(address userAddress) public view returns (uint) {
        User storage user = users[userAddress];

        uint256 timeMultiplier = block.timestamp.sub(user.holdBonusCheckpoint).div(TIME_STEP).mul(2); // +0.2% per day
            if (timeMultiplier > MAX_HOLD_PERCENT) {
                timeMultiplier = MAX_HOLD_PERCENT;
            }

         return timeMultiplier;
    }

    function getInPool(address userAddress, uint256 amount) private {
        
        if(poolParticipants[round][userAddress] == 0) {
            participantAdresses[round][participants] = userAddress;
            participants = participants.add(1);
        }
        
        poolParticipants[round][userAddress] = poolParticipants[round][userAddress].add(amount);
        
        INVESTORS_POOL = INVESTORS_POOL.add(amount.mul(2).div(100)); // 2%
        
    }
    
    function giveAwayPool() public {
        
        require(block.timestamp > POOL_START_TIME.add(24 hours), ' to give away pool is possible once a day');
        
        (address TOP_1, address TOP_2, address TOP_3, address TOP_4, address TOP_5 ) = getTopAtPool();
        
        users[TOP_1].poolRewards = users[TOP_1].poolRewards.add(INVESTORS_POOL.mul(350).div(1000)); // 35%
        users[TOP_2].poolRewards = users[TOP_2].poolRewards.add(INVESTORS_POOL.mul(250).div(1000)); // 25%
        users[TOP_3].poolRewards = users[TOP_3].poolRewards.add(INVESTORS_POOL.mul(200).div(1000)); // 20%
        users[TOP_4].poolRewards = users[TOP_4].poolRewards.add(INVESTORS_POOL.mul(125).div(1000)); // 12.5%
        users[TOP_5].poolRewards = users[TOP_5].poolRewards.add(INVESTORS_POOL.mul(75).div(1000)); //7.5%
        
        // reset the pool
        
        INVESTORS_POOL = 0;
        round = round.add(1);
        participants = 0;
        
        POOL_START_TIME = block.timestamp;
        
        
        
    }
    
    function sort(uint[] memory data, address[] memory addresses) internal pure returns (address[] memory) {
        quickSort(data, addresses, int(0), int(data.length - 1));
        return addresses;
    }
    
    function quickSort(uint[] memory arr,address[] memory addresses , int left, int right) pure internal {
        int i = left;
        int j = right;
        if (i == j) return;
        uint pivot = arr[uint(left + (right - left) / 2)];
        while (i <= j) {
            while (arr[uint(i)] < pivot) i++;
            while (pivot < arr[uint(j)]) j--;
            if (i <= j) {
                (arr[uint(i)], arr[uint(j)]) = (arr[uint(j)], arr[uint(i)]);
                (addresses[uint(i)], addresses[uint(j)]) = (addresses[uint(j)], addresses[uint(i)]);
                i++;
                j--;
            }
        }
        if (left < j)
            quickSort(arr, addresses, left, j);
        if (i < right)
            quickSort(arr, addresses, i, right);
}
    

	function getTopAtPool() public view returns(address,address,address,address,address){
		uint256[] memory amounts = new uint256[](participants);
        address[] memory addresses = new address[](participants);
        
        for(uint256 i = 0; i < participants; i++){
            amounts[i] = poolParticipants[round][participantAdresses[round][i]];
            addresses[i] = participantAdresses[round][i];
        }
        
        addresses = sort(amounts,addresses);
        uint256 len = addresses.length;
        
        address TOP_1 = addresses[len-1];
        address TOP_2 = addresses[len-2];
        address TOP_3 = addresses[len-3];
        address TOP_4 = addresses[len-4];
        address TOP_5 = addresses[len-5];

		return(TOP_1, TOP_2, TOP_3, TOP_4, TOP_5);
	}
   
    
    
	function getUserDividends(address userAddress) public view returns (uint256) {
		User storage user = users[userAddress];

		uint256 totalAmount;
		
		uint256 holdBonus = getUserPercentRate(userAddress);

		for (uint256 i = 0; i < user.deposits.length; i++) {
			if (user.checkpoint < user.deposits[i].finish) {
				if (user.deposits[i].plan < 5) {
					uint256 share = user.deposits[i].amount.mul(user.deposits[i].percent.add(holdBonus)).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) {
						totalAmount = totalAmount.add(share.mul(to.sub(from)).div(TIME_STEP));
					}
				} else if (block.timestamp > user.deposits[i].finish) {
					totalAmount = totalAmount.add(user.deposits[i].profit);
				}
			}
		}

		return totalAmount.add(user.poolRewards);
	}

	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 getUserTurnover(address userAddress) public view returns(uint256){
	    return users[userAddress].turnover;
	}

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

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

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

	function getUserAvailable(address userAddress) public view returns(uint256) {
		return 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) {
	    User storage user = users[userAddress];

		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;
	}

	function isContract(address addr) internal view returns (bool) {
        uint size;
        assembly { size := extcodesize(addr) }
        return size > 0;
    }
}

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) {
        require(b != 0);
        return a % b;
    }
}

Contract Security Audit

Contract ABI

[{"constant":true,"inputs":[],"name":"PERCENTS_DIVIDER","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"userAddress","type":"address"}],"name":"getUserDownlineCount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"userAddress","type":"address"}],"name":"getUserDividends","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"REFERRAL_PERCENTS_LEVEL_2","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"giveAwayPool","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"round","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"userAddress","type":"address"}],"name":"getUserAvailable","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"userAddress","type":"address"}],"name":"getUserPercentRate","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"REFERRAL_PERCENTS_LEVEL_4","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"INVESTORS_POOL","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"REFERRAL_PERCENTS_LEVEL_5","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"TIME_STEP","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"userAddress","type":"address"}],"name":"getUserReferrer","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"withdraw","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"MAX_HOLD_PERCENT","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"userAddress","type":"address"}],"name":"getUserReferralTotalBonus","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"PROJECT_FEE","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"PERCENT_STEP","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"referrer","type":"address"},{"name":"plan","type":"uint8"}],"name":"invest","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[{"name":"plan","type":"uint8"},{"name":"deposit","type":"uint256"}],"name":"getResult","outputs":[{"name":"percent","type":"uint256"},{"name":"profit","type":"uint256"},{"name":"finish","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalRefBonus","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"userAddress","type":"address"}],"name":"getUserReferralWithdrawn","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"participants","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"},{"name":"","type":"address"}],"name":"poolParticipants","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getContractBalance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"marketingWallet","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"userAddress","type":"address"}],"name":"getUserTotalDeposits","outputs":[{"name":"amount","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalStaked","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"REFERRAL_PERCENTS_LEVEL_3","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"plan","type":"uint8"}],"name":"getPercent","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"userAddress","type":"address"}],"name":"getUserAmountOfDeposits","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getTopAtPool","outputs":[{"name":"","type":"address"},{"name":"","type":"address"},{"name":"","type":"address"},{"name":"","type":"address"},{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"REFERRAL_PERCENTS_LEVEL_1","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"plan","type":"uint8"}],"name":"getPlanInfo","outputs":[{"name":"time","type":"uint256"},{"name":"percent","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"MARKETING_FEE","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"POOL_START_TIME","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getExtraProfit","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"userAddress","type":"address"}],"name":"getReferralPercents","outputs":[{"name":"","type":"uint256[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"userAddress","type":"address"}],"name":"getUserTurnover","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"userAddress","type":"address"},{"name":"index","type":"uint256"}],"name":"getUserDepositInfo","outputs":[{"name":"plan","type":"uint8"},{"name":"percent","type":"uint256"},{"name":"amount","type":"uint256"},{"name":"profit","type":"uint256"},{"name":"start","type":"uint256"},{"name":"finish","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"startUNIX","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"name":"participantAdresses","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"REFERRAL_PERCENTS_LEVEL_6","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"withdrawRef","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"reinvestmentPercent","type":"uint256"},{"name":"plan","type":"uint8"},{"name":"referrer","type":"address"}],"name":"withdrawAndReinvest","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"DEVELOPER_FEE","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"userAddress","type":"address"}],"name":"getUserCheckpoint","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"INVEST_MIN_AMOUNT","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"userAddress","type":"address"}],"name":"getUserRefRewards","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"wallet","type":"address"},{"name":"_developer","type":"address"},{"name":"_marketing","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"user","type":"address"}],"name":"Newbie","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"user","type":"address"},{"indexed":false,"name":"plan","type":"uint8"},{"indexed":false,"name":"percent","type":"uint256"},{"indexed":false,"name":"amount","type":"uint256"},{"indexed":false,"name":"profit","type":"uint256"},{"indexed":false,"name":"start","type":"uint256"},{"indexed":false,"name":"finish","type":"uint256"}],"name":"NewDeposit","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"user","type":"address"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"Withdrawn","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"referrer","type":"address"},{"indexed":true,"name":"referral","type":"address"},{"indexed":true,"name":"level","type":"uint256"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"RefBonus","type":"event"}]

60806040526040518060600160405280601e60ff168152602001601460ff168152602001600a60ff1681525060009060036200003d92919062000629565b506040518060800160405280601e60ff168152602001601460ff168152602001600a60ff168152602001600560ff1681525060019060046200008192919062000680565b506040518060a00160405280601e60ff168152602001601460ff168152602001600a60ff168152602001600560ff168152602001600560ff168152506002906005620000cf929190620006d7565b506040518060c00160405280601e60ff168152602001601460ff168152602001600a60ff168152602001600560ff168152602001600560ff168152602001600560ff168152506003906006620001279291906200072e565b506040518060e00160405280601e60ff168152602001601460ff168152602001600a60ff168152602001600560ff168152602001600560ff168152602001600560ff168152602001600560ff1681525060049060076200018992919062000785565b50604051806101000160405280601e60ff168152602001601460ff168152602001600a60ff168152602001600560ff168152602001600560ff168152602001600560ff168152602001600560ff168152602001600560ff168152506005906008620001f6929190620007dc565b506000600655600060075560006008553480156200021357600080fd5b506040516060806200496e833981018060405260608110156200023557600080fd5b810190808051906020019092919080519060200190929190805190602001909291905050506200026b836200058d60201b60201c565b156200027657600080fd5b82601160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555081601260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080601360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506200035561fd2042620005a060201b62002eef1790919060201c565b60108190555042600981905550600c604051806040016040528060148152602001603c815250908060018154018082558091505090600182039060005260206000209060020201600090919290919091506000820151816000015560208201518160010155505050600c6040518060400160405280601e81526020016032815250908060018154018082558091505090600182039060005260206000209060020201600090919290919091506000820151816000015560208201518160010155505050600c6040518060400160405280602881526020016028815250908060018154018082558091505090600182039060005260206000209060020201600090919290919091506000820151816000015560208201518160010155505050600c6040518060400160405280601e8152602001601e815250908060018154018082558091505090600182039060005260206000209060020201600090919290919091506000820151816000015560208201518160010155505050600c6040518060400160405280601e81526020016014815250908060018154018082558091505090600182039060005260206000209060020201600090919290919091506000820151816000015560208201518160010155505050600c60405180604001604052806014815260200160508152509080600181540180825580915050906001820390600052602060002090600202016000909192909190915060008201518160000155602082015181600101555050505050506200085b565b600080823b905060008111915050919050565b6000808284019050838110156200061f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b8280548282559060005260206000209081019282156200066d579160200282015b828111156200066c578251829060ff169055916020019190600101906200064a565b5b5090506200067c919062000833565b5090565b828054828255906000526020600020908101928215620006c4579160200282015b82811115620006c3578251829060ff16905591602001919060010190620006a1565b5b509050620006d3919062000833565b5090565b8280548282559060005260206000209081019282156200071b579160200282015b828111156200071a578251829060ff16905591602001919060010190620006f8565b5b5090506200072a919062000833565b5090565b82805482825590600052602060002090810192821562000772579160200282015b8281111562000771578251829060ff169055916020019190600101906200074f565b5b50905062000781919062000833565b5090565b828054828255906000526020600020908101928215620007c9579160200282015b82811115620007c8578251829060ff16905591602001919060010190620007a6565b5b509050620007d8919062000833565b5090565b82805482825590600052602060002090810192821562000820579160200282015b828111156200081f578251829060ff16905591602001919060010190620007fd565b5b5090506200082f919062000833565b5090565b6200085891905b80821115620008545760008160009055506001016200083a565b5090565b90565b614103806200086b6000396000f3fe6080604052600436106102ae5760003560e01c80636f9fb98a11610175578063b531cefe116100dc578063c981ed9411610095578063d56b75461161006f578063d56b7546146110ef578063d7ffca911461111a578063e262113e1461117f578063f9dc38dd146111aa576102ae565b8063c981ed9414611021578063ca7dd83514611070578063cb8fd2ce14611087576102ae565b8063b531cefe14610da3578063bd4a6ab614610dce578063be325aa514610e74578063c0806b0314610ed9578063c234123814610f71578063c361c14d14610f9c576102ae565b8063a8aeb6c21161012e578063a8aeb6c214610b1d578063aae5b4da14610b82578063ad82a9e614610ca5578063aecaa63414610cf4578063af3e212214610d4d578063b3cbdf9114610d78576102ae565b80636f9fb98a1461096a57806375f0a874146109955780637e3abeea146109ec578063817b1cd214610a515780638e30179214610a7c578063a51b953314610acb576102ae565b806336144c9a11610219578063581c5ae6116101d2578063581c5ae6146107855780635936cf61146107d657806369b11dd5146108405780636bb185561461086b5780636c4470fb146108d05780636ef935c9146108fb576102ae565b806336144c9a146105f75780633ccfd60b14610688578063447673081461069f57806348c37203146106ca57806348d44bd11461072f57806357fc86b41461075a576102ae565b8063153ab9df1161026b578063153ab9df146104395780631b9a26f01461049e578063260796521461050357806327ba05b7146105525780632fc701f51461057d57806332bc298c146105cc576102ae565b806301c234a8146102b357806303a93c0c146102de578063040a772e1461034357806309760d81146103a85780630dd5dcaf146103f7578063146ca5311461040e575b600080fd5b3480156102bf57600080fd5b506102c861120f565b6040518082815260200191505060405180910390f35b3480156102ea57600080fd5b5061032d6004803603602081101561030157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611215565b6040518082815260200191505060405180910390f35b34801561034f57600080fd5b506103926004803603602081101561036657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611261565b6040518082815260200191505060405180910390f35b3480156103b457600080fd5b506103e1600480360360208110156103cb57600080fd5b8101908080359060200190929190505050611546565b6040518082815260200191505060405180910390f35b34801561040357600080fd5b5061040c611567565b005b34801561041a57600080fd5b506104236119ff565b6040518082815260200191505060405180910390f35b34801561044557600080fd5b506104886004803603602081101561045c57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611a05565b6040518082815260200191505060405180910390f35b3480156104aa57600080fd5b506104ed600480360360208110156104c157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611a17565b6040518082815260200191505060405180910390f35b34801561050f57600080fd5b5061053c6004803603602081101561052657600080fd5b8101908080359060200190929190505050611ab6565b6040518082815260200191505060405180910390f35b34801561055e57600080fd5b50610567611ad7565b6040518082815260200191505060405180910390f35b34801561058957600080fd5b506105b6600480360360208110156105a057600080fd5b8101908080359060200190929190505050611add565b6040518082815260200191505060405180910390f35b3480156105d857600080fd5b506105e1611afe565b6040518082815260200191505060405180910390f35b34801561060357600080fd5b506106466004803603602081101561061a57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611b05565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561069457600080fd5b5061069d611b71565b005b3480156106ab57600080fd5b506106b4611d15565b6040518082815260200191505060405180910390f35b3480156106d657600080fd5b50610719600480360360208110156106ed57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611d1a565b6040518082815260200191505060405180910390f35b34801561073b57600080fd5b50610744611d66565b6040518082815260200191505060405180910390f35b34801561076657600080fd5b5061076f611d6b565b6040518082815260200191505060405180910390f35b6107d46004803603604081101561079b57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803560ff169060200190929190505050611d70565b005b3480156107e257600080fd5b5061081c600480360360408110156107f957600080fd5b81019080803560ff16906020019092919080359060200190929190505050611d82565b60405180848152602001838152602001828152602001935050505060405180910390f35b34801561084c57600080fd5b50610855611e40565b6040518082815260200191505060405180910390f35b34801561087757600080fd5b506108ba6004803603602081101561088e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611e46565b6040518082815260200191505060405180910390f35b3480156108dc57600080fd5b506108e5611e92565b6040518082815260200191505060405180910390f35b34801561090757600080fd5b506109546004803603604081101561091e57600080fd5b8101908080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611e98565b6040518082815260200191505060405180910390f35b34801561097657600080fd5b5061097f611ebd565b6040518082815260200191505060405180910390f35b3480156109a157600080fd5b506109aa611edc565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156109f857600080fd5b50610a3b60048036036020811015610a0f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611f02565b6040518082815260200191505060405180910390f35b348015610a5d57600080fd5b50610a66611fdd565b6040518082815260200191505060405180910390f35b348015610a8857600080fd5b50610ab560048036036020811015610a9f57600080fd5b8101908080359060200190929190505050611fe3565b6040518082815260200191505060405180910390f35b348015610ad757600080fd5b50610b0760048036036020811015610aee57600080fd5b81019080803560ff169060200190929190505050612004565b6040518082815260200191505060405180910390f35b348015610b2957600080fd5b50610b6c60048036036020811015610b4057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612121565b6040518082815260200191505060405180910390f35b348015610b8e57600080fd5b50610b97612170565b604051808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019550505050505060405180910390f35b348015610cb157600080fd5b50610cde60048036036020811015610cc857600080fd5b81019080803590602001909291905050506123f7565b6040518082815260200191505060405180910390f35b348015610d0057600080fd5b50610d3060048036036020811015610d1757600080fd5b81019080803560ff169060200190929190505050612418565b604051808381526020018281526020019250505060405180910390f35b348015610d5957600080fd5b50610d62612468565b6040518082815260200191505060405180910390f35b348015610d8457600080fd5b50610d8d61246d565b6040518082815260200191505060405180910390f35b348015610daf57600080fd5b50610db8612473565b6040518082815260200191505060405180910390f35b348015610dda57600080fd5b50610e1d60048036036020811015610df157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506124cf565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b83811015610e60578082015181840152602081019050610e45565b505050509050019250505060405180910390f35b348015610e8057600080fd5b50610ec360048036036020811015610e9757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612828565b6040518082815260200191505060405180910390f35b348015610ee557600080fd5b50610f3260048036036040811015610efc57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050612874565b604051808760ff1660ff168152602001868152602001858152602001848152602001838152602001828152602001965050505050505060405180910390f35b348015610f7d57600080fd5b50610f866129aa565b6040518082815260200191505060405180910390f35b348015610fa857600080fd5b50610fdf60048036036040811015610fbf57600080fd5b8101908080359060200190929190803590602001909291905050506129b0565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561102d57600080fd5b5061105a6004803603602081101561104457600080fd5b81019080803590602001909291905050506129f2565b6040518082815260200191505060405180910390f35b34801561107c57600080fd5b50611085612a13565b005b34801561109357600080fd5b506110ed600480360360608110156110aa57600080fd5b8101908080359060200190929190803560ff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612b80565b005b3480156110fb57600080fd5b50611104612e47565b6040518082815260200191505060405180910390f35b34801561112657600080fd5b506111696004803603602081101561113d57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612e4c565b6040518082815260200191505060405180910390f35b34801561118b57600080fd5b50611194612e98565b6040518082815260200191505060405180910390f35b3480156111b657600080fd5b506111f9600480360360208110156111cd57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612ea3565b6040518082815260200191505060405180910390f35b6103e881565b6000600d60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600401549050919050565b600080600d60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002090506000806112b185611a17565b905060008090505b8360000180549050811015611524578360000181815481106112d757fe5b9060005260206000209060060201600501548460010154101561151757600584600001828154811061130557fe5b906000526020600020906006020160000160009054906101000a900460ff1660ff1610156114b75760006113a86103e861139a61136b8689600001878154811061134b57fe5b906000526020600020906006020160010154612eef90919063ffffffff16565b88600001868154811061137a57fe5b906000526020600020906006020160020154612f7790919063ffffffff16565b612ffd90919063ffffffff16565b9050600085600101548660000184815481106113c057fe5b906000526020600020906006020160040154116113e1578560010154611403565b8560000183815481106113f057fe5b9060005260206000209060060201600401545b905060004287600001858154811061141757fe5b906000526020600020906006020160050154106114345742611456565b86600001848154811061144357fe5b9060005260206000209060060201600501545b9050808210156114af576114ac61149d6201518061148f611480868661308c90919063ffffffff16565b87612f7790919063ffffffff16565b612ffd90919063ffffffff16565b87612eef90919063ffffffff16565b95505b505050611516565b8360000181815481106114c657fe5b906000526020600020906006020160050154421115611515576115128460000182815481106114f157fe5b90600052602060002090600602016003015484612eef90919063ffffffff16565b92505b5b5b80806001019150506112b9565b5061153c836008015483612eef90919063ffffffff16565b9350505050919050565b6001818154811061155357fe5b906000526020600020016000915090505481565b61157f62015180600954612eef90919063ffffffff16565b42116115d6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602981526020018061406d6029913960400191505060405180910390fd5b60008060008060006115e6612170565b9450945094509450945061166f61161e6103e861161061015e600754612f7790919063ffffffff16565b612ffd90919063ffffffff16565b600d60008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060080154612eef90919063ffffffff16565b600d60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600801819055506117336116e26103e86116d460fa600754612f7790919063ffffffff16565b612ffd90919063ffffffff16565b600d60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060080154612eef90919063ffffffff16565b600d60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600801819055506117f76117a66103e861179860c8600754612f7790919063ffffffff16565b612ffd90919063ffffffff16565b600d60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060080154612eef90919063ffffffff16565b600d60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600801819055506118bb61186a6103e861185c607d600754612f7790919063ffffffff16565b612ffd90919063ffffffff16565b600d60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060080154612eef90919063ffffffff16565b600d60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206008018190555061197f61192e6103e8611920604b600754612f7790919063ffffffff16565b612ffd90919063ffffffff16565b600d60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060080154612eef90919063ffffffff16565b600d60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206008018190555060006007819055506119e36001600654612eef90919063ffffffff16565b6006819055506000600881905550426009819055505050505050565b60065481565b6000611a1082611261565b9050919050565b600080600d60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002090506000611a9c6002611a8e62015180611a8086600201544261308c90919063ffffffff16565b612ffd90919063ffffffff16565b612f7790919063ffffffff16565b90506014811115611aac57601490505b8092505050919050565b60038181548110611ac357fe5b906000526020600020016000915090505481565b60075481565b60048181548110611aea57fe5b906000526020600020016000915090505481565b6201518081565b6000600d60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b6000600d60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002090506000611bbf33611261565b905060008111611c37576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f5573657220686173206e6f206469766964656e6473000000000000000000000081525060200191505060405180910390fd5b60003073ffffffffffffffffffffffffffffffffffffffff1631905081811015611c5f578091505b4283600101819055504283600201819055503373ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f19350505050158015611cb7573d6000803e3d6000fd5b50600083600801819055503373ffffffffffffffffffffffffffffffffffffffff167f7084f5476618d8e60b11ef0d7d3f06914655adb8793e28ff7f018d4c76d505d5836040518082815260200191505060405180910390a2505050565b601481565b6000600d60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600501549050919050565b604181565b600581565b611d7e828233346000613115565b5050565b6000806000611d9085612004565b9250611dec600c8660ff1681548110611da557fe5b906000526020600020906002020160000154611dde6103e8611dd08789612f7790919063ffffffff16565b612ffd90919063ffffffff16565b612f7790919063ffffffff16565b9150611e37611e2862015180600c8860ff1681548110611e0857fe5b906000526020600020906002020160000154612f7790919063ffffffff16565b42612eef90919063ffffffff16565b90509250925092565b600b5481565b6000600d60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600501549050919050565b60085481565b600e602052816000526040600020602052806000526040600020600091509150505481565b60003073ffffffffffffffffffffffffffffffffffffffff1631905090565b601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600080600090505b600d60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000180549050811015611fd757611fc8600d60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000018281548110611fa757fe5b90600052602060002090600602016002015483612eef90919063ffffffff16565b91508080600101915050611f0a565b50919050565b600a5481565b60028181548110611ff057fe5b906000526020600020016000915090505481565b600060038260ff16101561208957612082612052620151806120446120346010544261308c90919063ffffffff16565b6005612f7790919063ffffffff16565b612ffd90919063ffffffff16565b600c8460ff168154811061206257fe5b906000526020600020906002020160010154612eef90919063ffffffff16565b905061211c565b600061209483613ba9565b90506121186120d6620151806120c86120b86010544261308c90919063ffffffff16565b6005612f7790919063ffffffff16565b612ffd90919063ffffffff16565b61210a83600c8760ff16815481106120ea57fe5b906000526020600020906002020160010154612eef90919063ffffffff16565b612eef90919063ffffffff16565b9150505b919050565b6000600d60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001805490509050919050565b600080600080600060606008546040519080825280602002602001820160405280156121ab5781602001602082028038833980820191505090505b50905060606008546040519080825280602002602001820160405280156121e15781602001602082028038833980820191505090505b50905060008090505b60085481101561233f57600e600060065481526020019081526020016000206000600f60006006548152602001908152602001600020600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483828151811061229957fe5b602002602001018181525050600f60006006548152602001908152602001600020600082815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168282815181106122f857fe5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505080806001019150506121ea565b5061234a8282613c5c565b9050600081519050600082600183038151811061236357fe5b60200260200101519050600083600284038151811061237e57fe5b60200260200101519050600084600385038151811061239957fe5b6020026020010151905060008560048603815181106123b457fe5b6020026020010151905060008660058703815181106123cf57fe5b6020026020010151905084848484849c509c509c509c509c5050505050505050509091929394565b6000818154811061240457fe5b906000526020600020016000915090505481565b600080600c8360ff168154811061242b57fe5b9060005260206000209060020201600001549150600c8360ff168154811061244f57fe5b9060005260206000209060020201600101549050915091565b601e81565b60095481565b6000806124b360036124a5620151806124976010544261308c90919063ffffffff16565b612ffd90919063ffffffff16565b612f7790919063ffffffff16565b90506124c9600582612eef90919063ffffffff16565b91505090565b60606000600d60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000209050600081600701541015801561253657506802b5c0282441c70000816007015411155b1561259457600080548060200260200160405190810160405280929190818152602001828054801561258757602002820191906000526020600020905b815481526020019060010190808311612573575b5050505050915050612823565b6802b5e3af16b18800008160070154101580156125be575068056ba3d73af34f0000816007015411155b1561261c57600180548060200260200160405190810160405280929190818152602001828054801561260f57602002820191906000526020600020905b8154815260200190600101908083116125fb575b5050505050915050612823565b68056bc75e2d631000008160070154101580156126465750681b1ac14ff07f8f0000816007015411155b156126a457600280548060200260200160405190810160405280929190818152602001828054801561269757602002820191906000526020600020905b815481526020019060010190808311612683575b5050505050915050612823565b681b1ae4d6e2ef5000008160070154101580156126ce5750683635a626d36edf0000816007015411155b1561272c57600380548060200260200160405190810160405280929190818152602001828054801561271f57602002820191906000526020600020905b81548152602001906001019080831161270b575b5050505050915050612823565b683635c9adc5dea0000081600701541015801561275657506851508afdb65e2f0000816007015411155b156127b45760048054806020026020016040519081016040528092919081815260200182805480156127a757602002820191906000526020600020905b815481526020019060010190808311612793575b5050505050915050612823565b685150ae84a8cdf0000081600701541061282157600580548060200260200160405190810160405280929190818152602001828054801561281457602002820191906000526020600020905b815481526020019060010190808311612800575b5050505050915050612823565b505b919050565b6000600d60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600701549050919050565b6000806000806000806000600d60008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002090508060000188815481106128cf57fe5b906000526020600020906006020160000160009054906101000a900460ff1696508060000188815481106128ff57fe5b906000526020600020906006020160010154955080600001888154811061292257fe5b906000526020600020906006020160020154945080600001888154811061294557fe5b906000526020600020906006020160030154935080600001888154811061296857fe5b906000526020600020906006020160040154925080600001888154811061298b57fe5b9060005260206000209060060201600501549150509295509295509295565b60105481565b600f6020528160005260406000206020528060005260406000206000915091509054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600581815481106129ff57fe5b906000526020600020016000915090505481565b6000600d60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002090506000816006015411612ab3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260218152602001806140b76021913960400191505060405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff166108fc82600601549081150290604051600060405180830381858888f19350505050158015612afd573d6000803e3d6000fd5b503373ffffffffffffffffffffffffffffffffffffffff167f7084f5476618d8e60b11ef0d7d3f06914655adb8793e28ff7f018d4c76d505d582600601546040518082815260200191505060405180910390a2612b6b81600601548260050154612eef90919063ffffffff16565b81600501819055506000816006018190555050565b6032831015612bf7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601d8152602001807f4d696e2e207265696e766573746d656e74206d7573742062652035302500000081525060200191505060405180910390fd5b6064831115612c6e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601e8152602001807f4d61782e207265696e766573746d656e74206d7573742062652031303025000081525060200191505060405180910390fd5b6000600d60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002090506000612cbc33611261565b905060008111612d34576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f5573657220686173206e6f206469766964656e6473000000000000000000000081525060200191505060405180910390fd5b6000612d5c6064612d4e8885612f7790919063ffffffff16565b612ffd90919063ffffffff16565b9050612d71818361308c90919063ffffffff16565b91506000612d7d612473565b9050612d8c8587338585613115565b428460010181905550600084600801819055506000831115612df0573373ffffffffffffffffffffffffffffffffffffffff166108fc849081150290604051600060405180830381858888f19350505050158015612dee573d6000803e3d6000fd5b505b3373ffffffffffffffffffffffffffffffffffffffff167f7084f5476618d8e60b11ef0d7d3f06914655adb8793e28ff7f018d4c76d505d5846040518082815260200191505060405180910390a250505050505050565b600a81565b6000600d60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101549050919050565b66b1a2bc2ec5000081565b6000600d60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600601549050919050565b600080828401905083811015612f6d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b600080831415612f8a5760009050612ff7565b6000828402905082848281612f9b57fe5b0414612ff2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260218152602001806140966021913960400191505060405180910390fd5b809150505b92915050565b6000808211613074576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525060200191505060405180910390fd5b600082848161307f57fe5b0490508091505092915050565b600082821115613104576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601e8152602001807f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525060200191505060405180910390fd5b600082840390508091505092915050565b66b1a2bc2ec5000082101561312957600080fd5b60068460ff16106131a2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600c8152602001807f496e76616c696420706c616e000000000000000000000000000000000000000081525060200191505060405180910390fd5b4260105410613219576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f636f6e7472616374206861736e6074207374617274656420796574000000000081525060200191505060405180910390fd5b60006132436103e8613235604186612f7790919063ffffffff16565b612ffd90919063ffffffff16565b9050601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f193505050501580156132ad573d6000803e3d6000fd5b5060006132d86103e86132ca600a87612f7790919063ffffffff16565b612ffd90919063ffffffff16565b9050601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015613342573d6000803e3d6000fd5b50600061336d6103e861335f601e88612f7790919063ffffffff16565b612ffd90919063ffffffff16565b9050601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f193505050501580156133d7573d6000803e3d6000fd5b506000600d60008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000209050600073ffffffffffffffffffffffffffffffffffffffff168160030160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156136c5576000600d60008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001805490501180156134f557508673ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff1614155b1561353e57888160030160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b60008160030160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905060008090505b60088110156136c257600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16146136b0576136006001600d60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060040154612eef90919063ffffffff16565b600d60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060040181905550600d60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1691506136b5565b6136c2565b808060010191505061356d565b50505b600073ffffffffffffffffffffffffffffffffffffffff168160030160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146139955760008160030160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690506060613751826124cf565b905060008090505b600881101561399157600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161461397f57808251111561387a5760006137db6103e86137cd8585815181106137b657fe5b60200260200101518d612f7790919063ffffffff16565b612ffd90919063ffffffff16565b905061383281600d60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060154612eef90919063ffffffff16565b600d60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060181905550505b6138cf89600d60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060070154612eef90919063ffffffff16565b600d60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060070181905550600d60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169250613984565b613991565b8080600101915050613759565b5050505b600081600001805490501415613a1b574281600101819055504281600201819055507f9fd565cd14c3c391679eb0cad12a14dcf7534e9d3462bcb9b67a098a9bbbc24a87604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a15b6000806000613a2a8b8a611d82565b925092509250613a438884612eef90919063ffffffff16565b9250836000016040518060c001604052808d60ff1681526020018581526020018b8152602001848152602001428152602001838152509080600181540180825580915050906001820390600052602060002090600602016000909192909190915060008201518160000160006101000a81548160ff021916908360ff1602179055506020820151816001015560408201518160020155606082015181600301556080820151816004015560a08201518160050155505050613b0f89600a54612eef90919063ffffffff16565b600a81905550613b1f8a8a613c78565b8973ffffffffffffffffffffffffffffffffffffffff167f84e02daa69bdb087c9fe8d3041abca495512cb14e723070f6d1d4efface82e5d8c858c864287604051808760ff1660ff168152602001868152602001858152602001848152602001838152602001828152602001965050505050505060405180910390a2505050505050505050505050565b60008060038360ff161415613bbd57602890505b60048360ff161415613bce57604690505b60058360ff161415613bdf57602890505b6000600143034090506000613c3760648342446040516020018084815260200183815260200182815260200193505050506040516020818303038152906040528051906020012060001c613e5790919063ffffffff16565b90506000613c4e8483613e5790919063ffffffff16565b905080945050505050919050565b6060613c6f838360006001875103613e78565b81905092915050565b6000600e6000600654815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541415613d575781600f600060065481526020019081526020016000206000600854815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550613d506001600854612eef90919063ffffffff16565b6008819055505b613dbc81600e6000600654815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612eef90919063ffffffff16565b600e6000600654815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550613e4d613e3c6064613e2e600285612f7790919063ffffffff16565b612ffd90919063ffffffff16565b600754612eef90919063ffffffff16565b6007819055505050565b600080821415613e6657600080fd5b818381613e6f57fe5b06905092915050565b6000829050600082905080821415613e91575050614066565b600086600286860381613ea057fe5b05860181518110613ead57fe5b602002602001015190505b818313614038575b80878481518110613ecd57fe5b60200260200101511015613ee8578280600101935050613ec0565b5b868281518110613ef557fe5b6020026020010151811015613f1257818060019003925050613ee9565b81831361403357868281518110613f2557fe5b6020026020010151878481518110613f3957fe5b6020026020010151888581518110613f4d57fe5b60200260200101898581518110613f6057fe5b6020026020010182815250828152505050858281518110613f7d57fe5b6020026020010151868481518110613f9157fe5b6020026020010151878581518110613fa557fe5b60200260200101888581518110613fb857fe5b602002602001018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152508273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815250505082806001019350508180600190039250505b613eb8565b8185121561404d5761404c87878785613e78565b5b838312156140625761406187878587613e78565b5b5050505b5050505056fe20746f2067697665206177617920706f6f6c20697320706f737369626c65206f6e6365206120646179536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f777573657220646f65736e74206861766520726566657272616c2072657761726473a165627a7a723058203911c1a92677d429de1292f1991567ce1a8446a23d0df465b70b1c8c8d5d5da40029000000000000000000000000a963efcb7c6c8bd3356fe9cd0cb46460a51b8777000000000000000000000000b11d2acaff12ab764546ab5559864b69f3eccf6f0000000000000000000000007e89cadcfa0524bd703460ee6bf6e28c3fc3023c

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

000000000000000000000000a963efcb7c6c8bd3356fe9cd0cb46460a51b8777000000000000000000000000b11d2acaff12ab764546ab5559864b69f3eccf6f0000000000000000000000007e89cadcfa0524bd703460ee6bf6e28c3fc3023c

-----Decoded View---------------
Arg [0] : wallet (address): 0xa963efcb7c6c8bd3356fe9cd0cb46460a51b8777
Arg [1] : _developer (address): 0xb11d2acaff12ab764546ab5559864b69f3eccf6f
Arg [2] : _marketing (address): 0x7e89cadcfa0524bd703460ee6bf6e28c3fc3023c

-----Encoded View---------------
3 Constructor Arguments found :
Arg [0] : 000000000000000000000000a963efcb7c6c8bd3356fe9cd0cb46460a51b8777
Arg [1] : 000000000000000000000000b11d2acaff12ab764546ab5559864b69f3eccf6f
Arg [2] : 0000000000000000000000007e89cadcfa0524bd703460ee6bf6e28c3fc3023c


Deployed ByteCode Sourcemap

26:16803:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;319:47;;8:9:-1;5:2;;;30:1;27;20:12;5:2;319:47:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;15148:127;;8:9:-1;5:2;;;30:1;27;20:12;5:2;15148:127:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;15148:127:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;13777:983;;8:9:-1;5:2;;;30:1;27;20:12;5:2;13777:983:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;13777:983:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;532:60;;8:9:-1;5:2;;;30:1;27;20:12;5:2;532:60:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;532:60:0;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;10890:1044;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10890:1044:0;;;:::i;:::-;;888:24;;8:9:-1;5:2;;;30:1;27;20:12;5:2;888:24:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;15683:122;;8:9:-1;5:2;;;30:1;27;20:12;5:2;15683:122:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;15683:122:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;9987:411;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9987:411:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;9987:411:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;663:66;;8:9:-1;5:2;;;30:1;27;20:12;5:2;663:66:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;663:66:0;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;916:33;;8:9:-1;5:2;;;30:1;27;20:12;5:2;916:33:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;733:69;;8:9:-1;5:2;;;30:1;27;20:12;5:2;733:69:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;733:69:0;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;370:42;;8:9:-1;5:2;;;30:1;27;20:12;5:2;370:42:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;14897:119;;8:9:-1;5:2;;;30:1;27;20:12;5:2;14897:119:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;14897:119:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;5477:524;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5477:524:0;;;:::i;:::-;;419:45;;8:9:-1;5:2;;;30:1;27;20:12;5:2;419:45:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;15280:131;;8:9:-1;5:2;;;30:1;27;20:12;5:2;15280:131:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;15280:131:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;139:40;;8:9:-1;5:2;;;30:1;27;20:12;5:2;139:40:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;275;;8:9:-1;5:2;;;30:1;27;20:12;5:2;275:40:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;3081:149;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;3081:149:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;9672:308;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9672:308:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;9672:308:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1064:28;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1064:28:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;15416:130;;8:9:-1;5:2;;;30:1;27;20:12;5:2;15416:130:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;15416:130:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;953:31;;8:9:-1;5:2;;;30:1;27;20:12;5:2;953:31:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;1637:71;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1637:71:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1637:71:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;8365:98;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8365:98:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;1980:38;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1980:38:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;15949:231;;8:9:-1;5:2;;;30:1;27;20:12;5:2;15949:231:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;15949:231:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;1034:26;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1034:26:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;596:63;;8:9:-1;5:2;;;30:1;27;20:12;5:2;596:63:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;596:63:0;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;8624:377;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8624:377:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;8624:377:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;15810:134;;8:9:-1;5:2;;;30:1;27;20:12;5:2;15810:134:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;15810:134:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;12958:799;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12958:799:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;471:57;;8:9:-1;5:2;;;30:1;27;20:12;5:2;471:57:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;471:57:0;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;8468:151;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8468:151:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;8468:151:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;229:42;;8:9:-1;5:2;;;30:1;27;20:12;5:2;229:42:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;991:30;;8:9:-1;5:2;;;30:1;27;20:12;5:2;991:30:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;7266:209;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7266:209:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;7481:879;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7481:879:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;7481:879:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;7481:879:0;;;;;;;;;;;;;;;;;15022:121;;8:9:-1;5:2;;;30:1;27;20:12;5:2;15022:121:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;15022:121:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;16185:471;;8:9:-1;5:2;;;30:1;27;20:12;5:2;16185:471:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;16185:471:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1865:24;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1865:24:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;1759:74;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1759:74:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1759:74:0;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;806:72;;8:9:-1;5:2;;;30:1;27;20:12;5:2;806:72:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;806:72:0;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;6884:379;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6884:379:0;;;:::i;:::-;;6007:871;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6007:871:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;6007:871:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;183:42;;8:9:-1;5:2;;;30:1;27;20:12;5:2;183:42:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;14765:123;;8:9:-1;5:2;;;30:1;27;20:12;5:2;14765:123:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;14765:123:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;81:54;;8:9:-1;5:2;;;30:1;27;20:12;5:2;81:54:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;15552:126;;8:9:-1;5:2;;;30:1;27;20:12;5:2;15552:126:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;15552:126:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;319:47;362:4;319:47;:::o;15148:127::-;15219:7;15241:5;:18;15247:11;15241:18;;;;;;;;;;;;;;;:28;;;15233:37;;15148:127;;;:::o;13777:983::-;13845:7;13859:17;13879:5;:18;13885:11;13879:18;;;;;;;;;;;;;;;13859:38;;13904:19;13932:17;13952:31;13971:11;13952:18;:31::i;:::-;13932:51;;13995:9;14007:1;13995:13;;13990:719;14014:4;:13;;:20;;;;14010:1;:24;13990:719;;;14069:4;:13;;14083:1;14069:16;;;;;;;;;;;;;;;;;;:23;;;14051:4;:15;;;:41;14047:657;;;14129:1;14105:4;:13;;14119:1;14105:16;;;;;;;;;;;;;;;;;;:21;;;;;;;;;;;;:25;;;14101:597;;;14140:13;14156:90;362:4;14156:68;14184:39;14213:9;14184:4;:13;;14198:1;14184:16;;;;;;;;;;;;;;;;;;:24;;;:28;;:39;;;;:::i;:::-;14156:4;:13;;14170:1;14156:16;;;;;;;;;;;;;;;;;;:23;;;:27;;:68;;;;:::i;:::-;:72;;:90;;;;:::i;:::-;14140:106;;14254:12;14294:4;:15;;;14269:4;:13;;14283:1;14269:16;;;;;;;;;;;;;;;;;;:22;;;:40;:83;;14337:4;:15;;;14269:83;;;14312:4;:13;;14326:1;14312:16;;;;;;;;;;;;;;;;;;:22;;;14269:83;14254:98;;14360:10;14399:15;14373:4;:13;;14387:1;14373:16;;;;;;;;;;;;;;;;;;:23;;;:41;:85;;14443:15;14373:85;;;14417:4;:13;;14431:1;14417:16;;;;;;;;;;;;;;;;;;:23;;;14373:85;14360:98;;14477:2;14470:4;:9;14466:102;;;14504:55;14520:38;406:6;14520:23;14530:12;14537:4;14530:2;:6;;:12;;;;:::i;:::-;14520:5;:9;;:23;;;;:::i;:::-;:27;;:38;;;;:::i;:::-;14504:11;:15;;:55;;;;:::i;:::-;14490:69;;14466:102;14101:597;;;;;;14603:4;:13;;14617:1;14603:16;;;;;;;;;;;;;;;;;;:23;;;14585:15;:41;14581:117;;;14650:40;14666:4;:13;;14680:1;14666:16;;;;;;;;;;;;;;;;;;:23;;;14650:11;:15;;:40;;;;:::i;:::-;14636:54;;14581:117;14101:597;14047:657;14036:3;;;;;;;13990:719;;;;14722:33;14738:4;:16;;;14722:11;:15;;:33;;;;:::i;:::-;14715:40;;;;;13777:983;;;:::o;532:60::-;;;;;;;;;;;;;;;;;;;;;;;;;:::o;10890:1044::-;10968:29;10988:8;10968:15;;:19;;:29;;;;:::i;:::-;10950:15;:47;10942:101;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11065:13;11080;11095;11110;11125;11143:14;:12;:14::i;:::-;11064:93;;;;;;;;;;11205:63;11234:33;11262:4;11234:23;11253:3;11234:14;;:18;;:23;;;;:::i;:::-;:27;;:33;;;;:::i;:::-;11205:5;:12;11211:5;11205:12;;;;;;;;;;;;;;;:24;;;:28;;:63;;;;:::i;:::-;11178:5;:12;11184:5;11178:12;;;;;;;;;;;;;;;:24;;:90;;;;11313:63;11342:33;11370:4;11342:23;11361:3;11342:14;;:18;;:23;;;;:::i;:::-;:27;;:33;;;;:::i;:::-;11313:5;:12;11319:5;11313:12;;;;;;;;;;;;;;;:24;;;:28;;:63;;;;:::i;:::-;11286:5;:12;11292:5;11286:12;;;;;;;;;;;;;;;:24;;:90;;;;11421:63;11450:33;11478:4;11450:23;11469:3;11450:14;;:18;;:23;;;;:::i;:::-;:27;;:33;;;;:::i;:::-;11421:5;:12;11427:5;11421:12;;;;;;;;;;;;;;;:24;;;:28;;:63;;;;:::i;:::-;11394:5;:12;11400:5;11394:12;;;;;;;;;;;;;;;:24;;:90;;;;11529:63;11558:33;11586:4;11558:23;11577:3;11558:14;;:18;;:23;;;;:::i;:::-;:27;;:33;;;;:::i;:::-;11529:5;:12;11535:5;11529:12;;;;;;;;;;;;;;;:24;;;:28;;:63;;;;:::i;:::-;11502:5;:12;11508:5;11502:12;;;;;;;;;;;;;;;:24;;:90;;;;11639:62;11668:32;11695:4;11668:22;11687:2;11668:14;;:18;;:22;;;;:::i;:::-;:26;;:32;;;;:::i;:::-;11639:5;:12;11645:5;11639:12;;;;;;;;;;;;;;;:24;;;:28;;:62;;;;:::i;:::-;11612:5;:12;11618:5;11612:12;;;;;;;;;;;;;;;:24;;:89;;;;11783:1;11766:14;:18;;;;11803:12;11813:1;11803:5;;:9;;:12;;;;:::i;:::-;11795:5;:20;;;;11841:1;11826:12;:16;;;;11881:15;11863;:33;;;;10890:1044;;;;;:::o;888:24::-;;;;:::o;15683:122::-;15750:7;15771:29;15788:11;15771:16;:29::i;:::-;15764:36;;15683:122;;;:::o;9987:411::-;10057:4;10074:17;10094:5;:18;10100:11;10094:18;;;;;;;;;;;;;;;10074:38;;10125:22;10150:67;10215:1;10150:60;406:6;10150:45;10170:4;:24;;;10150:15;:19;;:45;;;;:::i;:::-;:49;;:60;;;;:::i;:::-;:64;;:67;;;;:::i;:::-;10125:92;;462:2;10253:14;:33;10249:107;;;462:2;10307:33;;10249:107;10376:14;10369:21;;;;9987:411;;;:::o;663:66::-;;;;;;;;;;;;;;;;;;;;;;;;;:::o;916:33::-;;;;:::o;733:69::-;;;;;;;;;;;;;;;;;;;;;;;;;:::o;370:42::-;406:6;370:42;:::o;14897:119::-;14963:7;14984:5;:18;14990:11;14984:18;;;;;;;;;;;;;;;:27;;;;;;;;;;;;14977:34;;14897:119;;;:::o;5477:524::-;5509:17;5529:5;:17;5535:10;5529:17;;;;;;;;;;;;;;;5509:37;;5553:19;5575:28;5592:10;5575:16;:28::i;:::-;5553:50;;5632:1;5618:11;:15;5610:49;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5666:23;5700:4;5692:21;;;5666:47;;5740:11;5722:15;:29;5718:76;;;5773:15;5759:29;;5718:76;5818:15;5800:4;:15;;:33;;;;5865:15;5838:4;:24;;:42;;;;5887:10;:19;;:32;5907:11;5887:32;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5887:32:0;5947:1;5928:4;:16;;:20;;;;5970:10;5960:34;;;5982:11;5960:34;;;;;;;;;;;;;;;;;;5477:524;;;:::o;419:45::-;462:2;419:45;:::o;15280:131::-;15356:7;15377:5;:18;15383:11;15377:18;;;;;;;;;;;;;;;:29;;;15370:36;;15280:131;;;:::o;139:40::-;177:2;139:40;:::o;275:::-;314:1;275:40;:::o;3081:149::-;3160:49;3168:8;3178:4;3184:10;3196:9;3207:1;3160:7;:49::i;:::-;3081:149;;:::o;9672:308::-;9741:15;9758:14;9774;9805:16;9816:4;9805:10;:16::i;:::-;9795:26;;9840:64;9887:5;9893:4;9887:11;;;;;;;;;;;;;;;;;;;;:16;;;9840:42;362:4;9840:20;9852:7;9840;:11;;:20;;;;:::i;:::-;:24;;:42;;;;:::i;:::-;:46;;:64;;;;:::i;:::-;9831:73;;9923:52;9943:31;406:6;9943:5;9949:4;9943:11;;;;;;;;;;;;;;;;;;;;:16;;;:20;;:31;;;;:::i;:::-;9923:15;:19;;:52;;;;:::i;:::-;9914:61;;9672:308;;;;;:::o;1064:28::-;;;;:::o;15416:130::-;15491:7;15512:5;:18;15518:11;15512:18;;;;;;;;;;;;;;;:29;;;15505:36;;15416:130;;;:::o;953:31::-;;;;:::o;1637:71::-;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;8365:98::-;8416:7;8445:4;8437:21;;;8430:28;;8365:98;:::o;1980:38::-;;;;;;;;;;;;;:::o;15949:231::-;16020:14;16046:9;16058:1;16046:13;;16041:135;16065:5;:18;16071:11;16065:18;;;;;;;;;;;;;;;:27;;:34;;;;16061:1;:38;16041:135;;;16121:49;16132:5;:18;16138:11;16132:18;;;;;;;;;;;;;;;:27;;16160:1;16132:30;;;;;;;;;;;;;;;;;;:37;;;16121:6;:10;;:49;;;;:::i;:::-;16112:58;;16101:3;;;;;;;16041:135;;;;15949:231;;;:::o;1034:26::-;;;;:::o;596:63::-;;;;;;;;;;;;;;;;;;;;;;;;;:::o;8624:377::-;8677:7;8708:1;8701:4;:8;;;8698:296;;;8724:88;8748:63;406:6;8748:48;8765:30;8785:9;;8765:15;:19;;:30;;;;:::i;:::-;314:1;8748:16;;:48;;;;:::i;:::-;:52;;:63;;;;:::i;:::-;8724:5;8730:4;8724:11;;;;;;;;;;;;;;;;;;;;:19;;;:23;;:88;;;;:::i;:::-;8717:95;;;;8698:296;8833:14;8850:22;8867:4;8850:16;:22::i;:::-;8833:39;;8888:100;8924:63;406:6;8924:48;8941:30;8961:9;;8941:15;:19;;:30;;;;:::i;:::-;314:1;8924:16;;:48;;;;:::i;:::-;:52;;:63;;;;:::i;:::-;8888:31;8912:6;8888:5;8894:4;8888:11;;;;;;;;;;;;;;;;;;;;:19;;;:23;;:31;;;;:::i;:::-;:35;;:100;;;;:::i;:::-;8881:107;;;8624:377;;;;:::o;15810:134::-;15884:7;15905:5;:18;15911:11;15905:18;;;;;;;;;;;;;;;:27;;:34;;;;15898:41;;15810:134;;;:::o;12958:799::-;13002:7;13010;13018;13026;13034;13047:24;13088:12;;13074:27;;;;;;;;;;;;;;;;;;;;;;29:2:-1;21:6;17:15;117:4;105:10;97:6;88:34;148:4;140:6;136:17;126:27;;0:157;13074:27:0;;;;13047:54;;13112:26;13155:12;;13141:27;;;;;;;;;;;;;;;;;;;;;;29:2:-1;21:6;17:15;117:4;105:10;97:6;88:34;148:4;140:6;136:17;126:27;;0:157;13141:27:0;;;;13112:56;;13193:9;13205:1;13193:13;;13189:194;13212:12;;13208:1;:16;13189:194;;;13258:16;:23;13275:5;;13258:23;;;;;;;;;;;:54;13282:19;:26;13302:5;;13282:26;;;;;;;;;;;:29;13309:1;13282:29;;;;;;;;;;;;;;;;;;;;;13258:54;;;;;;;;;;;;;;;;13245:7;13253:1;13245:10;;;;;;;;;;;;;:67;;;;;13342:19;:26;13362:5;;13342:26;;;;;;;;;;;:29;13369:1;13342:29;;;;;;;;;;;;;;;;;;;;;13327:9;13337:1;13327:12;;;;;;;;;;;;;:44;;;;;;;;;;;13226:3;;;;;;;13189:194;;;;13415:23;13420:7;13428:9;13415:4;:23::i;:::-;13403:35;;13449:11;13463:9;:16;13449:30;;13500:13;13516:9;13530:1;13526:3;:5;13516:16;;;;;;;;;;;;;;13500:32;;13543:13;13559:9;13573:1;13569:3;:5;13559:16;;;;;;;;;;;;;;13543:32;;13586:13;13602:9;13616:1;13612:3;:5;13602:16;;;;;;;;;;;;;;13586:32;;13629:13;13645:9;13659:1;13655:3;:5;13645:16;;;;;;;;;;;;;;13629:32;;13672:13;13688:9;13702:1;13698:3;:5;13688:16;;;;;;;;;;;;;;13672:32;;13718:5;13725;13732;13739;13746;13711:41;;;;;;;;;;;;;;;;;;12958:799;;;;;:::o;471:57::-;;;;;;;;;;;;;;;;;;;;;;;;;:::o;8468:151::-;8521:12;8535:15;8564:5;8570:4;8564:11;;;;;;;;;;;;;;;;;;;;:16;;;8557:23;;8595:5;8601:4;8595:11;;;;;;;;;;;;;;;;;;;;:19;;;8585:29;;8468:151;;;:::o;229:42::-;269:2;229:42;:::o;991:30::-;;;;:::o;7266:209::-;7312:7;7330:22;7355:52;7405:1;7355:45;406:6;7355:30;7375:9;;7355:15;:19;;:30;;;;:::i;:::-;:34;;:45;;;;:::i;:::-;:49;;:52;;;;:::i;:::-;7330:77;;7448:21;7467:1;7448:14;:18;;:21;;;;:::i;:::-;7441:28;;;7266:209;:::o;7481:879::-;7551:16;7578:17;7598:5;:18;7604:11;7598:18;;;;;;;;;;;;;;;7578:38;;7654:7;7637:4;:13;;;:24;;7636:58;;;;;7682:11;7665:4;:13;;;:28;;7636:58;7633:117;;;7715:25;7708:32;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7633:117;7779:8;7762:4;:13;;;:25;;7761:59;;;;;7808:11;7791:4;:13;;;:28;;7761:59;7758:118;;;7841:25;7834:32;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7758:118;7905:9;7888:4;:13;;;:26;;7887:61;;;;;7935:12;7918:4;:13;;;:29;;7887:61;7884:120;;;7969:25;7962:32;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7884:120;8033:9;8016:4;:13;;;:26;;8015:61;;;;;8063:12;8046:4;:13;;;:29;;8015:61;8012:120;;;8097:25;8090:32;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8012:120;8161:10;8144:4;:13;;;:27;;8143:63;;;;;8192:13;8175:4;:13;;;:30;;8143:63;8140:122;;;8227:25;8220:32;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8140:122;8290:10;8273:4;:13;;;:27;8270:86;;8321:25;8314:32;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8270:86;7481:879;;;;;:::o;15022:121::-;15088:7;15111:5;:18;15117:11;15111:18;;;;;;;;;;;;;;;:27;;;15104:34;;15022:121;;;:::o;16185:471::-;16269:10;16281:15;16298:14;16314;16330:13;16345:14;16369:17;16389:5;:18;16395:11;16389:18;;;;;;;;;;;;;;;16369:38;;16421:4;:13;;16435:5;16421:20;;;;;;;;;;;;;;;;;;:25;;;;;;;;;;;;16414:32;;16461:4;:13;;16475:5;16461:20;;;;;;;;;;;;;;;;;;:28;;;16451:38;;16503:4;:13;;16517:5;16503:20;;;;;;;;;;;;;;;;;;:27;;;16494:36;;16544:4;:13;;16558:5;16544:20;;;;;;;;;;;;;;;;;;:27;;;16535:36;;16584:4;:13;;16598:5;16584:20;;;;;;;;;;;;;;;;;;:26;;;16576:34;;16624:4;:13;;16638:5;16624:20;;;;;;;;;;;;;;;;;;:27;;;16615:36;;16185:471;;;;;;;;;:::o;1865:24::-;;;;:::o;1759:74::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;806:72::-;;;;;;;;;;;;;;;;;;;;;;;;;:::o;6884:379::-;6922:17;6942:5;:17;6948:10;6942:17;;;;;;;;;;;;;;;6922:37;;6993:1;6975:4;:15;;;:19;6967:66;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7048:10;:19;;:36;7068:4;:15;;;7048:36;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;7048:36:0;7128:10;7118:38;;;7140:4;:15;;;7118:38;;;;;;;;;;;;;;;;;;7195:36;7215:4;:15;;;7195:4;:15;;;:19;;:36;;;;:::i;:::-;7177:4;:15;;:54;;;;7257:1;7239:4;:15;;:19;;;;6884:379;:::o;6007:871::-;6148:2;6126:19;:24;;6118:66;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6222:3;6200:19;:25;;6192:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6275:17;6295:5;:17;6301:10;6295:17;;;;;;;;;;;;;;;6275:37;;6327:19;6349:28;6366:10;6349:16;:28::i;:::-;6327:50;;6406:1;6392:11;:15;6384:49;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6442:20;6465:45;6506:3;6465:36;6481:19;6465:11;:15;;:36;;;;:::i;:::-;:40;;:45;;;;:::i;:::-;6442:68;;6529:29;6545:12;6529:11;:15;;:29;;;;:::i;:::-;6515:43;;6567:19;6589:16;:14;:16::i;:::-;6567:38;;6618:62;6626:8;6636:4;6642:10;6654:12;6668:11;6618:7;:62::i;:::-;6711:15;6693:4;:15;;:33;;;;6750:1;6731:4;:16;;:20;;;;6777:1;6763:11;:15;6760:66;;;6788:10;:19;;:32;6808:11;6788:32;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6788:32:0;6760:66;6849:10;6839:34;;;6861:11;6839:34;;;;;;;;;;;;;;;;;;6007:871;;;;;;;:::o;183:42::-;223:2;183:42;:::o;14765:123::-;14833:7;14854:5;:18;14860:11;14854:18;;;;;;;;;;;;;;;:29;;;14847:36;;14765:123;;;:::o;81:54::-;125:10;81:54;:::o;15552:126::-;15620:7;15644:5;:18;15650:11;15644:18;;;;;;;;;;;;;;;:29;;;15637:36;;15552:126;;;:::o;16859:181::-;16917:7;16937:9;16953:1;16949;:5;16937:17;;16978:1;16973;:6;;16965:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17031:1;17024:8;;;16859:181;;;;:::o;17240:250::-;17298:7;17327:1;17322;:6;17318:47;;;17352:1;17345:8;;;;17318:47;17377:9;17393:1;17389;:5;17377:17;;17422:1;17417;17413;:5;;;;;;:10;17405:56;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17481:1;17474:8;;;17240:250;;;;;:::o;17498:179::-;17556:7;17588:1;17584;:5;17576:44;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17631:9;17647:1;17643;:5;;;;;;17631:17;;17668:1;17661:8;;;17498:179;;;;:::o;17048:184::-;17106:7;17139:1;17134;:6;;17126:49;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17186:9;17202:1;17198;:5;17186:17;;17223:1;17216:8;;;17048:184;;;;:::o;3237:2235::-;125:10;3373:5;:26;;3365:35;;;;;;3426:1;3419:4;:8;;;3411:33;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3475:15;3463:9;;:27;3455:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3529:11;3543:44;362:4;3543:22;177:2;3543:5;:9;;:22;;;;:::i;:::-;:26;;:44;;;;:::i;:::-;3529:58;;3592:16;;;;;;;;;;;:25;;:30;3618:3;3592:30;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;3592:30:0;3627:20;3650:46;362:4;3650:24;223:2;3650:5;:9;;:24;;;;:::i;:::-;:28;;:46;;;;:::i;:::-;3627:69;;3701:15;;;;;;;;;;;:24;;:38;3726:12;3701:38;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;3701:38:0;3744:23;3770:46;362:4;3770:24;269:2;3770:5;:9;;:24;;;;:::i;:::-;:28;;:46;;;;:::i;:::-;3744:72;;3821:15;;;;;;;;;;;:24;;:41;3846:15;3821:41;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;3821:41:0;3875:17;3895:5;:13;3901:6;3895:13;;;;;;;;;;;;;;;3875:33;;3944:1;3919:27;;:4;:13;;;;;;;;;;;;:27;;;3915:400;;;3992:1;3958:5;:15;3964:8;3958:15;;;;;;;;;;;;;;;:24;;:31;;;;:35;:57;;;;;4009:6;3997:18;;:8;:18;;;;3958:57;3954:101;;;4040:8;4024:4;:13;;;:24;;;;;;;;;;;;;;;;;;3954:101;4062:14;4079:4;:13;;;;;;;;;;;;4062:30;;4103:9;4115:1;4103:13;;4098:212;4122:1;4118;:5;4098:212;;;4177:1;4159:20;;:6;:20;;;4155:148;;4215:30;4243:1;4215:5;:13;4221:6;4215:13;;;;;;;;;;;;;;;:23;;;:27;;:30;;;;:::i;:::-;4189:5;:13;4195:6;4189:13;;;;;;;;;;;;;;;:23;;:56;;;;4262:5;:13;4268:6;4262:13;;;;;;;;;;;;;;;:22;;;;;;;;;;;;4253:31;;4155:148;;;4298:5;;4155:148;4125:3;;;;;;;4098:212;;;;3915:400;;4350:1;4325:27;;:4;:13;;;;;;;;;;;;:27;;;4321:615;;4360:22;4385:4;:13;;;;;;;;;;;;4360:38;;4404:34;4441:27;4461:6;4441:19;:27::i;:::-;4404:64;;4479:9;4491:1;4479:13;;4474:455;4498:1;4494;:5;4474:455;;;4554:1;4536:20;;:6;:20;;;4532:390;;4599:1;4572:17;:24;:28;4569:213;;;4614:14;4631:53;362:4;4631:31;4641:17;4659:1;4641:20;;;;;;;;;;;;;;4631:5;:9;;:31;;;;:::i;:::-;:35;;:53;;;;:::i;:::-;4614:70;;4734:36;4763:6;4734:5;:13;4740:6;4734:13;;;;;;;;;;;;;;;:24;;;:28;;:36;;;;:::i;:::-;4707:5;:13;4713:6;4707:13;;;;;;;;;;;;;;;:24;;:63;;;;4569:213;;4824:33;4851:5;4824;:13;4830:6;4824:13;;;;;;;;;;;;;;;:22;;;:26;;:33;;;;:::i;:::-;4799:5;:13;4805:6;4799:13;;;;;;;;;;;;;;;:22;;:58;;;;4881:5;:13;4887:6;4881:13;;;;;;;;;;;;;;;:22;;;;;;;;;;;;4872:31;;4532:390;;;4917:5;;4532:390;4501:3;;;;;;;4474:455;;;;4321:615;;;4970:1;4946:4;:13;;:20;;;;:25;4942:149;;;4997:15;4979:4;:15;;:33;;;;5045:15;5018:4;:24;;:42;;;;5071:14;5078:6;5071:14;;;;;;;;;;;;;;;;;;;;;;4942:149;5098:15;5115:14;5131;5149:22;5159:4;5165:5;5149:9;:22::i;:::-;5097:74;;;;;;5190:24;5202:11;5190:7;:11;;:24;;;;:::i;:::-;5180:34;;5223:4;:13;;5242:62;;;;;;;;5250:4;5242:62;;;;;;5256:7;5242:62;;;;5265:5;5242:62;;;;5272:6;5242:62;;;;5280:15;5242:62;;;;5297:6;5242:62;;;5223:82;;39:1:-1;33:3;27:10;23:18;57:10;52:3;45:23;79:10;72:17;;0:93;5223:82:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5326:22;5342:5;5326:11;;:15;;:22;;;;:::i;:::-;5312:11;:36;;;;5357:23;5367:6;5374:5;5357:9;:23::i;:::-;5405:6;5394:73;;;5413:4;5419:7;5428:5;5435:6;5443:15;5460:6;5394:73;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3237:2235;;;;;;;;;;;;:::o;9013:654::-;9072:7;9092:11;9135:1;9127:4;:9;;;9124:66;;;9158:2;9152:8;;9124:66;9211:1;9203:4;:9;;;9200:66;;;9234:2;9228:8;;9200:66;9287:1;9279:4;:9;;;9276:67;;;9310:2;9304:8;;9276:67;9373:18;9417:1;9404:12;:14;9394:25;9373:46;;9450:14;9468:84;9548:3;9497:10;9508:15;9524:16;9486:55;;;;;;;;;;;;;;;;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;9486:55:0;;;9476:66;;;;;;9468:75;;:79;;:84;;;;:::i;:::-;9450:102;;9587:12;9602:15;9613:3;9602:6;:10;;:15;;;;:::i;:::-;9587:30;;9655:4;9648:11;;;;;;9013:654;;;:::o;11946:205::-;12031:16;12060:56;12070:4;12076:9;12091:1;12113;12099:4;:11;:15;12060:9;:56::i;:::-;12134:9;12127:16;;11946:205;;;;:::o;10406:472::-;10534:1;10494:16;:23;10511:5;;10494:23;;;;;;;;;;;:36;10518:11;10494:36;;;;;;;;;;;;;;;;:41;10491:176;;;10595:11;10552:19;:26;10572:5;;10552:26;;;;;;;;;;;:40;10579:12;;10552:40;;;;;;;;;;;;:54;;;;;;;;;;;;;;;;;;10636:19;10653:1;10636:12;;:16;;:19;;;;:::i;:::-;10621:12;:34;;;;10491:176;10726:48;10767:6;10726:16;:23;10743:5;;10726:23;;;;;;;;;;;:36;10750:11;10726:36;;;;;;;;;;;;;;;;:40;;:48;;;;:::i;:::-;10687:16;:23;10704:5;;10687:23;;;;;;;;;;;:36;10711:11;10687:36;;;;;;;;;;;;;;;:87;;;;10812:42;10831:22;10849:3;10831:13;10842:1;10831:6;:10;;:13;;;;:::i;:::-;:17;;:22;;;;:::i;:::-;10812:14;;:18;;:42;;;;:::i;:::-;10795:14;:59;;;;10406:472;;:::o;17690:124::-;17748:7;17781:1;17776;:6;;17768:15;;;;;;17805:1;17801;:5;;;;;;17794:12;;17690:124;;;;:::o;12163:784::-;12275:5;12283:4;12275:12;;12298:5;12306;12298:13;;12331:1;12326;:6;12322:19;;;12334:7;;;;12322:19;12351:10;12364:3;12397:1;12389:4;12381:5;:12;12380:18;;;;;;12373:4;:25;12364:36;;;;;;;;;;;;;;12351:49;;12411:387;12423:1;12418;:6;12411:387;;12441:32;12463:5;12448:3;12457:1;12448:12;;;;;;;;;;;;;;:20;12441:32;;;12470:3;;;;;;;12441:32;;;12488;12503:3;12512:1;12503:12;;;;;;;;;;;;;;12495:5;:20;12488:32;;;12517:3;;;;;;;;12488:32;;;12544:1;12539;:6;12535:252;;12598:3;12607:1;12598:12;;;;;;;;;;;;;;12612:3;12621:1;12612:12;;;;;;;;;;;;;;12567:3;12576:1;12567:12;;;;;;;;;;;;;12581:3;12590:1;12581:12;;;;;;;;;;;;;12566:59;;;;;;;;;;12688:9;12703:1;12688:18;;;;;;;;;;;;;;12708:9;12723:1;12708:18;;;;;;;;;;;;;;12645:9;12660:1;12645:18;;;;;;;;;;;;;12665:9;12680:1;12665:18;;;;;;;;;;;;;12644:83;;;;;;;;;;;;;;;;;;12746:3;;;;;;;12768;;;;;;;;12535:252;12411:387;;;12819:1;12812:4;:8;12808:61;;;12835:34;12845:3;12850:9;12861:4;12867:1;12835:9;:34::i;:::-;12808:61;12888:5;12884:1;:9;12880:63;;;12908:35;12918:3;12923:9;12934:1;12937:5;12908:9;:35::i;:::-;12880:63;12163:784;;;;;;;;:::o

Swarm Source

bzzr://3911c1a92677d429de1292f1991567ce1a8446a23d0df465b70b1c8c8d5d5da4
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.