Contract 0xad5FB3B5a375ee389a055E41E29Dc59aC1775a5f

 
 
Txn Hash Method
Block
From
To
Value [Txn Fee]
0x55d32a40c9612d3618428cc087ec0718a9476f2ea9faf80fb1d5aac52e241c69Snapshot Moonsho...143595352022-01-14 13:32:5211 days 3 hrs agoMoonshots Farm: Deployer IN  0xad5fb3b5a375ee389a055e41e29dc59ac1775a5f0 BNB0.00195759
0x531943e540387f60b2aa9395485a9fcd880b0c978027f358981f2034132f4321Deposit142439732022-01-10 13:00:1515 days 3 hrs ago0xf6bfccfd77af8372e836815892ac0d3f98a023db IN  0xad5fb3b5a375ee389a055e41e29dc59ac1775a5f0 BNB0.00164314
0xddd29142f99c7713a1905002db60b1d6aacce203be30c704ea0ee905edc45d3cSweep Cake142292302022-01-10 0:43:0615 days 16 hrs agoMoonshots Farm: Deployer IN  0xad5fb3b5a375ee389a055e41e29dc59ac1775a5f0 BNB0.001015398
0x6b2ccda94b84a8e924c85b6695f04817364d5009425c4116e9ee852a16c9c7afSweep Fees142277582022-01-09 23:29:3015 days 17 hrs agoMoonshots Farm: Deployer IN  0xad5fb3b5a375ee389a055e41e29dc59ac1775a5f0 BNB0.00014906
0x1c9c56bd556444928a636c77147dce5f4f4e2da12442860c63f5299b05a19ae8Cashout142273482022-01-09 23:09:0015 days 17 hrs ago0x3f52fb161df67c3204b3ade93a9a6b0ef6dc6b46 IN  0xad5fb3b5a375ee389a055e41e29dc59ac1775a5f0 BNB0.001126795
0xe4d1f2e5cd58443d7b71dd66a3aff01fea1d0091b2afedd8e50e786820cb2752Cashout142273362022-01-09 23:08:2415 days 17 hrs ago0x3f52fb161df67c3204b3ade93a9a6b0ef6dc6b46 IN  0xad5fb3b5a375ee389a055e41e29dc59ac1775a5f0 BNB0.00113019
0x05b9f1d11d52b07708307ef6359debc7daa16c759403795e1c8d0172c1e7be26Cashout142273132022-01-09 23:07:1515 days 17 hrs ago0x3f52fb161df67c3204b3ade93a9a6b0ef6dc6b46 IN  0xad5fb3b5a375ee389a055e41e29dc59ac1775a5f0 BNB0.00137723
0xcd6fe0e96df280a0e74272606675eff80a71ec31b28e0932c0a3b4f4e14039a4Cashout142273092022-01-09 23:07:0315 days 17 hrs ago0x3f52fb161df67c3204b3ade93a9a6b0ef6dc6b46 IN  0xad5fb3b5a375ee389a055e41e29dc59ac1775a5f0 BNB0.00137723
0x0d12c63d6eb5a05666d8c0e7de55b9c2ff310bdff3a4bb53519d536fb891260dCashout142273052022-01-09 23:06:5115 days 17 hrs ago0x3f52fb161df67c3204b3ade93a9a6b0ef6dc6b46 IN  0xad5fb3b5a375ee389a055e41e29dc59ac1775a5f0 BNB0.00137717
0xde594423099033da6a9337a8fb33c471a5b5d56d2b6d4bd6f3525a61afc64c7dCashout142273002022-01-09 23:06:3615 days 17 hrs ago0x3f52fb161df67c3204b3ade93a9a6b0ef6dc6b46 IN  0xad5fb3b5a375ee389a055e41e29dc59ac1775a5f0 BNB0.00137723
0xc3d7d09313318ad0d39147dfa8ad938a299922947902afe8a91885c468fe201dCashout142272922022-01-09 23:06:1215 days 17 hrs ago0x3f52fb161df67c3204b3ade93a9a6b0ef6dc6b46 IN  0xad5fb3b5a375ee389a055e41e29dc59ac1775a5f0 BNB0.00137723
0x9688717c77f8e520061beda042d158ee90cc5c59f3bda2590fcf638f358ba572Cashout142272752022-01-09 23:05:2115 days 17 hrs ago0x3f52fb161df67c3204b3ade93a9a6b0ef6dc6b46 IN  0xad5fb3b5a375ee389a055e41e29dc59ac1775a5f0 BNB0.00137717
0x3350f3a0c5f4b483b87085531a7e0252b18c5e28eda2fd2322ede1c0cc925bdeCashout142272432022-01-09 23:03:4515 days 17 hrs ago0x3f52fb161df67c3204b3ade93a9a6b0ef6dc6b46 IN  0xad5fb3b5a375ee389a055e41e29dc59ac1775a5f0 BNB0.00137717
0x13d73845de34242d74ce0527dddfb640b691370bd671cdce3cf1ac06a0801f3aCashout142272362022-01-09 23:03:2415 days 17 hrs ago0x3f52fb161df67c3204b3ade93a9a6b0ef6dc6b46 IN  0xad5fb3b5a375ee389a055e41e29dc59ac1775a5f0 BNB0.00137723
0xf8483fa2381958d4d7b82c34279ac42dd9e6e87e56285a3e0fa3feae34a85030Cashout142272282022-01-09 23:03:0015 days 17 hrs ago0x3f52fb161df67c3204b3ade93a9a6b0ef6dc6b46 IN  0xad5fb3b5a375ee389a055e41e29dc59ac1775a5f0 BNB0.001126795
0x58bcfccdaf458002103612a74e7d7ee01b864a2a486745034309223cf844cfb8Cashout142272132022-01-09 23:02:1515 days 17 hrs ago0x3f52fb161df67c3204b3ade93a9a6b0ef6dc6b46 IN  0xad5fb3b5a375ee389a055e41e29dc59ac1775a5f0 BNB0.00137723
0x82ef63d777cdb7f3a9fea1e4ee972e3e178a5e3a1158849db927fb3dcca688c2Cashout142272092022-01-09 23:02:0315 days 17 hrs ago0x3f52fb161df67c3204b3ade93a9a6b0ef6dc6b46 IN  0xad5fb3b5a375ee389a055e41e29dc59ac1775a5f0 BNB0.001540465
0xe211150523503a1bbbb41291b94834433c9f90a632464817210817bb6e29c83fDeposit142269132022-01-09 22:47:1515 days 18 hrs ago0x3c21e44099ba801be905a606cbddebb3b8ba4476 IN  0xad5fb3b5a375ee389a055e41e29dc59ac1775a5f0 BNB0.001317765
0x95ea974bb120bbd6c5f77eec2760254beda26919be343abda113be14728efebbDeposit142265822022-01-09 22:30:4215 days 18 hrs ago0x31bbc7d1c470c08a3144a57d647ada3e5bd6dcd9 IN  0xad5fb3b5a375ee389a055e41e29dc59ac1775a5f0 BNB0.00203364
0xed31361de68e754c902182003294d0b8c7378ca2994bf37872bf015379d9f0c7Deposit142258532022-01-09 21:54:1515 days 18 hrs ago0xac1508227d3505e57e168f7678afc973231475fe IN  0xad5fb3b5a375ee389a055e41e29dc59ac1775a5f0 BNB0.00012576
0x274a9c3fd4db98fe8fd5938eb90831fea0c50c2a73d6b0ccc0763b0f2a3cbfbaDeposit142258492022-01-09 21:54:0315 days 18 hrs ago0xac1508227d3505e57e168f7678afc973231475fe IN  0xad5fb3b5a375ee389a055e41e29dc59ac1775a5f0 BNB0.001519385
0x8681456d6583fa659122aadce7c1703987107200015c976ead98c6b94be57c42Deposit142255332022-01-09 21:38:1515 days 19 hrs ago0x48eb49f97f983f365d27feab5f7210ad6245e410 IN  0xad5fb3b5a375ee389a055e41e29dc59ac1775a5f0 BNB0.001404215
0x4759272e8c153c14a08a47e961ecdc8fc1b1d6b6ed0f84dd32ca36ebdfeb4dd6Cashout142253082022-01-09 21:27:0015 days 19 hrs ago0x79a960fb8f4128b81432fdf70be6db8f33538b3d IN  0xad5fb3b5a375ee389a055e41e29dc59ac1775a5f0 BNB0.00128991
0xa4ab41fca9f19ff0db3bd126d3ec6a2c2a895b36bbd71056aaf8bfad575dc3a7Deposit142252322022-01-09 21:23:1215 days 19 hrs ago0x48eb49f97f983f365d27feab5f7210ad6245e410 IN  0xad5fb3b5a375ee389a055e41e29dc59ac1775a5f0 BNB0.00184482
0xcf563597b9859124aefa66131f3c4f932f86d5d3ffdc7a502e57c3e33c677550Sweep Cake142244302022-01-09 20:43:0615 days 20 hrs agoMoonshots Farm: Deployer IN  0xad5fb3b5a375ee389a055e41e29dc59ac1775a5f0 BNB0.001015398
[ Download CSV Export 
Parent Txn Hash Block From To Value
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
CakeVault

Compiler Version
v0.5.8+commit.23d335f2

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at BscScan.com on 2022-01-08
*/

pragma solidity 0.5.8;

/**
 *
 * https://moonshots.farm
 * 
 * Want to own the next 1000x SHIB/DOGE/HEX token? Farm a new/trending moonshot every other day, automagically!
 *
 */

contract CakeVault {
	using SafeMath for uint256;
	using SafeMath128 for uint128;

	ERC20 constant bones = ERC20(0x08426874d46f90e5E527604fA5E3e30486770Eb3);
	ERC20 constant cake = ERC20(0x0E09FaBB73Bd3Ade0a17ECC321fD13a19e81cE82);
	ERC20 constant wbnb = ERC20(0xbb4CdB9CBd36B01bD1cBaEBF2De08d9173bc095c);

	SyrupPool constant cakePool = SyrupPool(0x73feaa1eE314F8c655E354234017bE2193C9E24E);
	BonesStaking bonesStaking = BonesStaking(0x57D3Ac2c209D9De02A80700C1D1C2cA4BC029b04);
	
	UniswapV2 constant cakeV2 = UniswapV2(0x10ED43C718714eb63d5aA57B78B54704E256024E);
	MoonshotGovernance constant governance = MoonshotGovernance(0x7cE91cEa92e6934ec2AAA577C94a13E27c8a4F21);

	mapping(address => uint16[]) public playersSnapshotDays; // Epochs player changed balance 
	mapping(address => uint128[]) public playersSnapshotBalances; // Balances for the above epochs
	
	mapping(address => mapping(uint256 => bool)) public playersSnapshotsClaimed;
	uint256[] public totalDepositSnapshots;
	uint256[] public farmedAmountSnapshots; // Amount of tokens farmed by epoch
	address[] public farmedTokensSnapshots; // Address which was farmed by epoch

	uint256 public totalShares;
	uint256 public pricePerShare = 10 ** 18;
	uint256 constant internal magnitude = 2 ** 64;

	uint256 public lockPeriod = 30; // Moonshots unlock after 30 snapshots (60 days)
	uint256 constant withdrawPeriod = 15; // Moonshots expire in 15 snapshots (30 days to claim)
	uint256 public lastSnapshot;

	uint256 public pendingBonesAlloc;
	uint256 public pendingFeesAlloc;
	uint256 public cashoutTax = 20; // 0.2% withdraw fee to prevent abuse
	address blobby = msg.sender;

	constructor() public {
		wbnb.approve(address(bonesStaking), 2 ** 255);
		bones.approve(address(bonesStaking), 2 ** 255);
		cake.approve(address(cakePool), 2 ** 255);
		cake.approve(address(cakeV2), 2 ** 255);
	}
	
	function() payable external { /* Payable */ }

	function deposit(uint128 amount) external {
		address farmer = msg.sender;
		require(farmer == tx.origin);
		require(cake.transferFrom(address(farmer), address(this), amount));
		pullOutstandingDivs();

		cakePool.enterStaking(amount);

		uint256 sharesGained = (uint256(amount) * (10 ** 18)) / pricePerShare;
		totalShares += sharesGained;

		uint128 oldBalance;
		uint256 length = playersSnapshotBalances[farmer].length;
		if (length > 0) {
			oldBalance = playersSnapshotBalances[farmer][length - 1];
		}
		updateBalance(oldBalance.add(uint128(sharesGained)), farmer);
	}

	function updateBalance(uint128 newBalance, address farmer) internal {
		uint256 length = playersSnapshotDays[farmer].length;
		if (length > 0 && playersSnapshotDays[farmer][length - 1] == epoch()) {
			playersSnapshotBalances[farmer][length - 1] = newBalance;
		} else {
			playersSnapshotDays[farmer].push(epoch());
			playersSnapshotBalances[farmer].push(newBalance);
		}
	}

	function pullOutstandingDivs() public {
		if (totalShares > 0) {
			uint256 beforeBalance = cake.balanceOf(address(this));
			cakePool.leaveStaking(0);

			uint256 divsGained = cake.balanceOf(address(this)) - beforeBalance;
			uint256 bonesShare = (divsGained * 5) / 100; // 5% to bones stakers
			uint256 toCompound = (divsGained - bonesShare) / 2; // Half cake farmed gets compounded, other half yolos into the x100 moonshot coins
			cakePool.enterStaking(toCompound);
			pricePerShare += toCompound * (10 ** 18) / totalShares;
			pendingBonesAlloc += bonesShare;
		}
	}

	function cashout(uint128 amount) external {
		address farmer = msg.sender;
		pullOutstandingDivs();

		uint256 shares = amount * (10 ** 18) / pricePerShare;
		totalShares = totalShares.sub(shares);

		uint256 length = playersSnapshotBalances[farmer].length;
		require(length > 0);
		uint128 oldBalance = playersSnapshotBalances[farmer][length - 1];
		updateBalance(oldBalance.sub(uint128(shares)), farmer);

		cakePool.leaveStaking(amount);

		uint256 fee = (amount * cashoutTax) / 10000;
		pendingFeesAlloc += fee;
		require(cake.transfer(farmer, amount - fee));
	}

	function claimYield(uint256 index) external {
		require(!playersSnapshotsClaimed[msg.sender][index]);
		require(index.add(lockPeriod) < epoch() && epoch() <= index.add(lockPeriod + withdrawPeriod)); // 60 + 30 days to claim
		uint256 playersBalance = playersBalanceOnDay(index);
		if (playersBalance > 0) {
			uint256 divs = (farmedAmountSnapshots[index] * playersBalance) / totalDepositSnapshots[index];
			if (divs > 0) {
				playersSnapshotsClaimed[msg.sender][index] = true;
				if (farmedTokensSnapshots[index] == address(bones)) {
					bonesStaking.depositFor(msg.sender, divs);
				} else {
					ERC20(farmedTokensSnapshots[index]).transfer(msg.sender, divs);
				}
			}
		}
	}

	function pullBonusBones() external {
		require(msg.sender == blobby);
		governance.pullWeeklyRewards();
	}

	function updateBonesStaking(address newStaking) external {
		require(msg.sender == blobby);
		bonesStaking = BonesStaking(newStaking);
		wbnb.approve(address(bonesStaking), 2 ** 255);
		bones.approve(address(bonesStaking), 2 ** 255);
	}

	function sweepCake(uint256 amount, uint256 minBNB) external {
		require(msg.sender == blobby);
		pendingBonesAlloc = pendingBonesAlloc.sub(amount);

		address[] memory path = new address[](2);
        path[0] = address(cake);
        path[1] = address(wbnb);
        
        cakeV2.swapExactTokensForTokens(amount, minBNB, path, address(this), 2 ** 255);
		bonesStaking.distributeDivs(wbnb.balanceOf(address(this)));
	}

	function sweepExpired(uint256 index, uint256 tokens, uint256 minBNB, bool sweepBNB, bool pullInstead) external {
		require(msg.sender == blobby);
		require(epoch() > index.add(lockPeriod + withdrawPeriod)); // 60 + 30 days passed
		ERC20 moonshot = ERC20(farmedTokensSnapshots[index]);
		require(address(moonshot) != address(bones)); // No need to sweep bones

		uint256 amount = tokens;
		if (amount == 0) {
			amount = moonshot.balanceOf(address(this));
		}

		if (amount > 0) {
			if (pullInstead) { // If liquidity no longer exists can just remove expired token
				moonshot.transfer(blobby, amount);
			} else {
				address[] memory path = new address[](2);
				path[0] = address(moonshot);
				path[1] = address(wbnb);
				cakeV2.swapExactTokensForTokens(amount, minBNB, path, address(this), 2 ** 255);
			}
		}

		if (sweepBNB) { // Once dust gets enough, sweep to use as LP/buybacks/burns
			wbnb.transfer(blobby, wbnb.balanceOf(address(this)));
		}
	}

	// Incase anyone mistakely sends unrelated tokens to this contract
	function sweepLostTokens(address token, uint256 amount, address recipient) external {
		require(msg.sender == blobby);
		require(token != address(cake));

		uint256 start = farmedTokensSnapshots.length - 1;
		for (uint256 i = 0; i < 90; i++) {
			// Token address cannot be in any of the last 90 snapshots
			require(token != farmedTokensSnapshots[start - i]);
		}
		ERC20(token).transfer(recipient, amount);
	}

	function sweepFees(address recipient, uint256 amount) external {
		require(msg.sender == blobby);
		pendingFeesAlloc = pendingFeesAlloc.sub(amount);
		cake.transfer(recipient, amount);
	}

	function updateFee(uint256 newAmount) external {
		require(msg.sender == blobby);
		require(newAmount <= 50); // 0.5% max
		cashoutTax = newAmount;
	}

	function updateLockPeriod(uint256 newLockPeriod) external {
		require(msg.sender == blobby);
		require(newLockPeriod <= 60 && newLockPeriod >= 15); // So can be slightly tweaked if necessary
		lockPeriod = newLockPeriod;
	}

	function buyMoonshots(uint256 amount, uint256 minTokens) public {
		require(msg.sender == blobby);

		uint256 length = farmedTokensSnapshots.length;
		require(length > 0);
		address moonshot = farmedTokensSnapshots[length - 1];

        require(amount <= moonshotAlloc());
		if (amount > 0) {
			address[] memory path = new address[](3);
        	path[0] = address(cake);
        	path[1] = address(wbnb);
			path[2] = address(moonshot);
        	cakeV2.swapExactTokensForTokens(amount, minTokens, path, address(this), 2 ** 255);
		}
	}

	function snapshotMoonshotDivs(address nextToken, uint256 minTokens) external {
		require(msg.sender == blobby);
		require(now > lastSnapshot + 23 hours);

		uint256 length = farmedTokensSnapshots.length;
		if (length > 0) { // No prior gains when adding first token
			address priorMoonshot = farmedTokensSnapshots[length - 1];
			if (minTokens > 0) { // Can buy more tokens before snapshot
				buyMoonshots(moonshotAlloc(), minTokens);
			}
			farmedAmountSnapshots.push(ERC20(priorMoonshot).balanceOf(address(this)));
			totalDepositSnapshots.push(totalShares); // Store amount owned and amount farming (for divs calc)
		}

		farmedTokensSnapshots.push(nextToken); // Move onto next moonshot token
		ERC20(nextToken).approve(address(cakeV2), 2 ** 255);
		lastSnapshot = now;
	}



	function moonshotAlloc() view public returns (uint256) {
		return(cake.balanceOf(address(this)) - (pendingBonesAlloc + pendingFeesAlloc));
	}

	function cakeBalance(address farmer) view public returns (uint256) {
		uint256 pendingPricePerShare = pricePerShare;
		uint256 pendingCompoundCake = (cakePool.pendingCake(0, address(this)) * 475) / 1000;
		pendingPricePerShare += (pendingCompoundCake * (10 ** 18)) / totalShares;

		uint256 length = playersSnapshotBalances[farmer].length;
		return (playersSnapshotBalances[farmer][length - 1] * pendingPricePerShare) / (10 ** 18);
	}

	function totalCakeBalance() view public returns (uint256) {
		return (totalShares * pricePerShare) / (10 ** 18);
	}

	function epoch() public view returns (uint16) {
		return uint16(farmedTokensSnapshots.length - 1);
	}
	
	function playersBalanceOnDay(uint256 search) public view returns (uint256) {
		for (uint256 i = playersSnapshotDays[msg.sender].length - 1; i >= 0; i--) {
			uint256 day = playersSnapshotDays[msg.sender][i];
			if (day <= search) {
				return playersSnapshotBalances[msg.sender][i];
			}
		}
		return 0;
	}

	function availableYields(uint256 offset, uint256 amount) external view returns (address[] memory, uint256[] memory, bool[] memory) {
        uint256 results = amount;
        if (results > farmedTokensSnapshots.length - offset) {
            results = farmedTokensSnapshots.length - offset;
        }

        address[] memory tokens = new address[](results);
        uint256[] memory yields = new uint256[](results);
		bool[] memory claimed = new bool[](results);

		uint256 start = farmedTokensSnapshots.length - (offset + 1);
		for (uint256 i = 0; i < results; i++) {
			(tokens[i], yields[i], claimed[i]) = availableYield(start);
			start--;
		}

		return (tokens, yields, claimed);
	}
	
	function availableYield(uint256 index) public view returns (address, uint256, bool) {
		uint256 yieldShare;
		if (index < farmedAmountSnapshots.length) {
			yieldShare = (farmedAmountSnapshots[index] * playersBalanceOnDay(index)) / totalDepositSnapshots[index];
		}
		return (farmedTokensSnapshots[index], yieldShare, playersSnapshotsClaimed[msg.sender][index]);
	}

}



interface BonesStaking {
	function depositFor(address player, uint256 amount) external;
	function distributeDivs(uint256 amount) external;
}

interface MoonshotGovernance {
	function pullWeeklyRewards() external;
}

interface SyrupPool {
	function enterStaking(uint256 _amount) external;
	function leaveStaking(uint256 _amount) external;
	function emergencyWithdraw(uint256 _pid) external;
	function pendingCake(uint256 _pid, address _user) external view returns (uint256); 
}

interface WBNB {
	function withdraw(uint wad) external;
}

interface UniswapV2 {
	function swapExactTokensForTokens(uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline) external returns (uint[] memory amounts);
	function addLiquidityETH(address token, uint amountTokenDesired, uint amountTokenMin, uint amountETHMin, address to, uint deadline) external payable returns (uint amountToken, uint amountETH, uint liquidity);
}

interface ERC20 {
	function totalSupply() external view returns (uint256);
	function balanceOf(address who) external view returns (uint256);
	function allowance(address owner, address spender) external view returns (uint256);
	function transfer(address to, uint256 value) external returns (bool);
	function approve(address spender, uint256 value) external returns (bool);
	function approveAndCall(address spender, uint tokens, bytes calldata data) external returns (bool success);
	function transferFrom(address from, address to, uint256 value) external returns (bool);
	function burn(uint256 amount) external;

	event Transfer(address indexed from, address indexed to, uint256 value);
	event Approval(address indexed owner, address indexed spender, uint256 value);
}

library SafeMath {

	/**
	* @dev Multiplies two numbers, throws on overflow.
	*/
	function mul(uint256 a, uint256 b) internal pure returns (uint256) {
		if (a == 0) {
			return 0;
		}
		uint256 c = a * b;
		assert(c / a == b);
		return c;
	}

	/**
	* @dev Integer division of two numbers, truncating the quotient.
	*/
	function div(uint256 a, uint256 b) internal pure returns (uint256) {
		// assert(b > 0); // Solidity automatically throws when dividing by 0
		uint256 c = a / b;
		// assert(a == b * c + a % b); // There is no case in which this doesn't hold
		return c;
	}

	/**
	* @dev Substracts two numbers, throws on overflow (i.e. if subtrahend is greater than minuend).
	*/
	function sub(uint256 a, uint256 b) internal pure returns (uint256) {
		assert(b <= a);
		return a - b;
	}

	/**
	* @dev Adds two numbers, throws on overflow.
	*/
	function add(uint256 a, uint256 b) internal pure returns (uint256) {
		uint256 c = a + b;
		assert(c >= a);
		return c;
	}
}

library SafeMath128 {

	/**
	* @dev Adds two numbers, throws on overflow.
	*/
	function add(uint128 a, uint128 b) internal pure returns (uint128) {
		uint128 c = a + b;
		assert(c >= a);
		return c;
	}

	/**
	* @dev Substracts two numbers, throws on overflow (i.e. if subtrahend is greater than minuend).
	*/
	function sub(uint128 a, uint128 b) internal pure returns (uint128) {
		assert(b <= a);
		return a - b;
	}

}

Contract Security Audit

Contract ABI

[{"constant":false,"inputs":[{"name":"amount","type":"uint128"}],"name":"cashout","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"token","type":"address"},{"name":"amount","type":"uint256"},{"name":"recipient","type":"address"}],"name":"sweepLostTokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalShares","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"lockPeriod","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"index","type":"uint256"}],"name":"claimYield","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"amount","type":"uint256"},{"name":"minBNB","type":"uint256"}],"name":"sweepCake","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"search","type":"uint256"}],"name":"playersBalanceOnDay","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"farmedTokensSnapshots","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"nextToken","type":"address"},{"name":"minTokens","type":"uint256"}],"name":"snapshotMoonshotDivs","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"amount","type":"uint128"}],"name":"deposit","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"offset","type":"uint256"},{"name":"amount","type":"uint256"}],"name":"availableYields","outputs":[{"name":"","type":"address[]"},{"name":"","type":"uint256[]"},{"name":"","type":"bool[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"},{"name":"","type":"uint256"}],"name":"playersSnapshotDays","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"},{"name":"","type":"uint256"}],"name":"playersSnapshotsClaimed","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"moonshotAlloc","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"},{"name":"","type":"uint256"}],"name":"playersSnapshotBalances","outputs":[{"name":"","type":"uint128"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"pullBonusBones","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"epoch","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"newAmount","type":"uint256"}],"name":"updateFee","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"recipient","type":"address"},{"name":"amount","type":"uint256"}],"name":"sweepFees","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"newLockPeriod","type":"uint256"}],"name":"updateLockPeriod","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"amount","type":"uint256"},{"name":"minTokens","type":"uint256"}],"name":"buyMoonshots","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"farmer","type":"address"}],"name":"cakeBalance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"pricePerShare","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"farmedAmountSnapshots","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"totalDepositSnapshots","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"index","type":"uint256"},{"name":"tokens","type":"uint256"},{"name":"minBNB","type":"uint256"},{"name":"sweepBNB","type":"bool"},{"name":"pullInstead","type":"bool"}],"name":"sweepExpired","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"newStaking","type":"address"}],"name":"updateBonesStaking","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"pendingBonesAlloc","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"cashoutTax","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"index","type":"uint256"}],"name":"availableYield","outputs":[{"name":"","type":"address"},{"name":"","type":"uint256"},{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"pendingFeesAlloc","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalCakeBalance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"lastSnapshot","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"pullOutstandingDivs","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"}]

6080604052600080546001600160a01b03199081167357d3ac2c209d9de02a80700c1d1c2ca4bc029b0417909155670de0b6b3a7640000600855601e6009556014600d55600e8054909116331790553480156200005b57600080fd5b5060008054604080517f095ea7b30000000000000000000000000000000000000000000000000000000081526001600160a01b0390921660048301527f800000000000000000000000000000000000000000000000000000000000000060248301525173bb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c9263095ea7b392604480820193602093909283900390910190829087803b158015620000fe57600080fd5b505af115801562000113573d6000803e3d6000fd5b505050506040513d60208110156200012a57600080fd5b505060008054604080517f095ea7b30000000000000000000000000000000000000000000000000000000081526001600160a01b0390921660048301527f80000000000000000000000000000000000000000000000000000000000000006024830152517308426874d46f90e5e527604fa5e3e30486770eb39263095ea7b392604480820193602093909283900390910190829087803b158015620001ce57600080fd5b505af1158015620001e3573d6000803e3d6000fd5b505050506040513d6020811015620001fa57600080fd5b5050604080517f095ea7b30000000000000000000000000000000000000000000000000000000081527373feaa1ee314f8c655e354234017be2193c9e24e60048201527f800000000000000000000000000000000000000000000000000000000000000060248201529051730e09fabb73bd3ade0a17ecc321fd13a19e81ce829163095ea7b39160448083019260209291908290030181600087803b158015620002a357600080fd5b505af1158015620002b8573d6000803e3d6000fd5b505050506040513d6020811015620002cf57600080fd5b5050604080517f095ea7b30000000000000000000000000000000000000000000000000000000081527310ed43c718714eb63d5aa57b78b54704e256024e60048201527f800000000000000000000000000000000000000000000000000000000000000060248201529051730e09fabb73bd3ade0a17ecc321fd13a19e81ce829163095ea7b39160448083019260209291908290030181600087803b1580156200037857600080fd5b505af11580156200038d573d6000803e3d6000fd5b505050506040513d6020811015620003a457600080fd5b50506129e680620003b66000396000f3fe6080604052600436106101f95760003560e01c80639012c4a81161010d578063b2ead9be116100a0578063e2e62e391161006f578063e2e62e391461081e578063e5e78ccf14610872578063ee9eee3b14610887578063fb861ac11461089c578063feedf80f146108b1576101f9565b8063b2ead9be1461077b578063b381000d146107c1578063d422b792146107f4578063e2c9f2a914610809576101f9565b806399008ded116100dc57806399008ded146106df57806399530b06146107125780639c5d4d2814610727578063a648512c14610751576101f9565b80639012c4a81461062257806390a3a0421461064c57806391db7b0d1461068557806393e4339e146106af576101f9565b8063471edf6a1161019057806370a387021161015f57806370a387021461054157806387d0eff41461058e5780638e2b80e4146105a35780638ea2b9d9146105f8578063900cf0cf1461060d576101f9565b8063471edf6a1461037757806354469aea146103b0578063634ed06c146103e357806369997873146104f1576101f9565b806340bd2e23116101cc57806340bd2e23146102ad5780634154b465146102d757806342d0fcd2146103075780634415745914610331576101f9565b806301f551df146101fb57806318a0182a1461022e5780633a98ef39146102715780633fd8b02f14610298575b005b34801561020757600080fd5b506101f96004803603602081101561021e57600080fd5b50356001600160801b03166108c6565b34801561023a57600080fd5b506101f96004803603606081101561025157600080fd5b506001600160a01b03813581169160208101359160409091013516610ae0565b34801561027d57600080fd5b50610286610bfa565b60408051918252519081900360200190f35b3480156102a457600080fd5b50610286610c00565b3480156102b957600080fd5b506101f9600480360360208110156102d057600080fd5b5035610c06565b3480156102e357600080fd5b506101f9600480360360408110156102fa57600080fd5b5080359060200135610e51565b34801561031357600080fd5b506102866004803603602081101561032a57600080fd5b5035611167565b34801561033d57600080fd5b5061035b6004803603602081101561035457600080fd5b5035611227565b604080516001600160a01b039092168252519081900360200190f35b34801561038357600080fd5b506101f96004803603604081101561039a57600080fd5b506001600160a01b03813516906020013561124e565b3480156103bc57600080fd5b506101f9600480360360208110156103d357600080fd5b50356001600160801b031661146a565b3480156103ef57600080fd5b506104136004803603604081101561040657600080fd5b508035906020013561165e565b60405180806020018060200180602001848103845287818151815260200191508051906020019060200280838360005b8381101561045b578181015183820152602001610443565b50505050905001848103835286818151815260200191508051906020019060200280838360005b8381101561049a578181015183820152602001610482565b50505050905001848103825285818151815260200191508051906020019060200280838360005b838110156104d95781810151838201526020016104c1565b50505050905001965050505050505060405180910390f35b3480156104fd57600080fd5b5061052a6004803603604081101561051457600080fd5b506001600160a01b03813516906020013561179c565b6040805161ffff9092168252519081900360200190f35b34801561054d57600080fd5b5061057a6004803603604081101561056457600080fd5b506001600160a01b0381351690602001356117e0565b604080519115158252519081900360200190f35b34801561059a57600080fd5b50610286611800565b3480156105af57600080fd5b506105dc600480360360408110156105c657600080fd5b506001600160a01b0381351690602001356118a5565b604080516001600160801b039092168252519081900360200190f35b34801561060457600080fd5b506101f96118ee565b34801561061957600080fd5b5061052a61196e565b34801561062e57600080fd5b506101f96004803603602081101561064557600080fd5b5035611978565b34801561065857600080fd5b506101f96004803603604081101561066f57600080fd5b506001600160a01b0381351690602001356119a2565b34801561069157600080fd5b506101f9600480360360208110156106a857600080fd5b5035611a5f565b3480156106bb57600080fd5b506101f9600480360360408110156106d257600080fd5b5080359060200135611a96565b3480156106eb57600080fd5b506102866004803603602081101561070257600080fd5b50356001600160a01b0316611d31565b34801561071e57600080fd5b50610286611e5f565b34801561073357600080fd5b506102866004803603602081101561074a57600080fd5b5035611e65565b34801561075d57600080fd5b506102866004803603602081101561077457600080fd5b5035611e83565b34801561078757600080fd5b506101f9600480360360a081101561079e57600080fd5b508035906020810135906040810135906060810135151590608001351515611e90565b3480156107cd57600080fd5b506101f9600480360360208110156107e457600080fd5b50356001600160a01b0316612337565b34801561080057600080fd5b50610286612498565b34801561081557600080fd5b5061028661249e565b34801561082a57600080fd5b506108486004803603602081101561084157600080fd5b50356124a4565b604080516001600160a01b0390941684526020840192909252151582820152519081900360600190f35b34801561087e57600080fd5b50610286612547565b34801561089357600080fd5b5061028661254d565b3480156108a857600080fd5b5061028661256c565b3480156108bd57600080fd5b506101f9612572565b336108cf612572565b600060085483670de0b6b3a7640000026001600160801b0316816108ef57fe5b049050610907816007546127b090919063ffffffff16565b6007556001600160a01b0382166000908152600260205260409020548061092d57600080fd5b6001600160a01b03831660009081526002602052604081208054600019840190811061095557fe5b6000918252602090912060028204015460019091166010026101000a90046001600160801b0316905061099161098b82856127c2565b856127e0565b60408051600160e01b631058d2810281526001600160801b038716600482015290517373feaa1ee314f8c655e354234017be2193c9e24e91631058d28191602480830192600092919082900301818387803b1580156109ef57600080fd5b505af1158015610a03573d6000803e3d6000fd5b505050506000612710600d54876001600160801b03160281610a2157fe5b600c805492909104918201905560408051600160e01b63a9059cbb0281526001600160a01b03881660048201526001600160801b03891683900360248201529051919250730e09fabb73bd3ade0a17ecc321fd13a19e81ce829163a9059cbb916044808201926020929091908290030181600087803b158015610aa357600080fd5b505af1158015610ab7573d6000803e3d6000fd5b505050506040513d6020811015610acd57600080fd5b5051610ad857600080fd5b505050505050565b600e546001600160a01b03163314610af757600080fd5b6001600160a01b038316730e09fabb73bd3ade0a17ecc321fd13a19e81ce821415610b2157600080fd5b6006546000190160005b605a811015610b6f57600681830381548110610b4357fe5b6000918252602090912001546001600160a01b0386811691161415610b6757600080fd5b600101610b2b565b50836001600160a01b031663a9059cbb83856040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050602060405180830381600087803b158015610bd057600080fd5b505af1158015610be4573d6000803e3d6000fd5b505050506040513d6020811015610ad857600080fd5b60075481565b60095481565b33600090815260036020908152604080832084845290915290205460ff1615610c2e57600080fd5b610c3661196e565b61ffff16610c4f6009548361298990919063ffffffff16565b108015610c7d5750600954610c6e908290600f0163ffffffff61298916565b610c7661196e565b61ffff1611155b610c8657600080fd5b6000610c9182611167565b90508015610e4d57600060048381548110610ca857fe5b90600052602060002001548260058581548110610cc157fe5b90600052602060002001540281610cd457fe5b0490508015610e4b573360009081526003602090815260408083208684529091529020805460ff19166001179055600680547308426874d46f90e5e527604fa5e3e30486770eb3919085908110610d2757fe5b6000918252602090912001546001600160a01b03161415610db0576000805460408051600160e11b6317a790f10281523360048201526024810185905290516001600160a01b0390921692632f4f21e29260448084019382900301818387803b158015610d9357600080fd5b505af1158015610da7573d6000803e3d6000fd5b50505050610e4b565b60068381548110610dbd57fe5b600091825260208083209091015460408051600160e01b63a9059cbb0281523360048201526024810186905290516001600160a01b039092169363a9059cbb9360448084019491939192918390030190829087803b158015610e1e57600080fd5b505af1158015610e32573d6000803e3d6000fd5b505050506040513d6020811015610e4857600080fd5b50505b505b5050565b600e546001600160a01b03163314610e6857600080fd5b600b54610e7b908363ffffffff6127b016565b600b556040805160028082526060808301845292602083019080388339019050509050730e09fabb73bd3ade0a17ecc321fd13a19e81ce8281600081518110610ec057fe5b60200260200101906001600160a01b031690816001600160a01b03168152505073bb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c81600181518110610f0257fe5b60200260200101906001600160a01b031690816001600160a01b0316815250507310ed43c718714eb63d5aa57b78b54704e256024e6001600160a01b03166338ed173984848430600160ff1b6040518663ffffffff1660e01b81526004018086815260200185815260200180602001846001600160a01b03166001600160a01b03168152602001838152602001828103825285818151815260200191508051906020019060200280838360005b83811015610fc7578181015183820152602001610faf565b505050509050019650505050505050600060405180830381600087803b158015610ff057600080fd5b505af1158015611004573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052602081101561102d57600080fd5b81019080805164010000000081111561104557600080fd5b8201602081018481111561105857600080fd5b815185602082028301116401000000008211171561107557600080fd5b505060005460408051600160e01b6370a0823102815230600482015290516001600160a01b03909216955063892e0614945073bb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c93506370a082319250602480820192602092909190829003018186803b1580156110e557600080fd5b505afa1580156110f9573d6000803e3d6000fd5b505050506040513d602081101561110f57600080fd5b50516040805163ffffffff841660e01b8152600481019290925251602480830192600092919082900301818387803b15801561114a57600080fd5b505af115801561115e573d6000803e3d6000fd5b50505050505050565b33600090815260016020526040812054600019015b33600090815260016020526040812080548390811061119757fe5b60009182526020909120601082040154600f9091166002026101000a900461ffff169050838111611218573360009081526002602052604090208054839081106111dd57fe5b90600052602060002090600291828204019190066010029054906101000a90046001600160801b03166001600160801b031692505050611222565b506000190161117c565b919050565b6006818154811061123457fe5b6000918252602090912001546001600160a01b0316905081565b600e546001600160a01b0316331461126557600080fd5b600a546201437001421161127857600080fd5b60065480156113875760006006600183038154811061129357fe5b6000918252602090912001546001600160a01b0316905082156112c1576112c16112bb611800565b84611a96565b60408051600160e01b6370a0823102815230600482015290516005916001600160a01b038416916370a0823191602480820192602092909190829003018186803b15801561130e57600080fd5b505afa158015611322573d6000803e3d6000fd5b505050506040513d602081101561133857600080fd5b5051815460018181018455600093845260208420909101919091556007546004805492830181559092527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b0155505b6006805460018101825560009182527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f0180546001600160a01b0319166001600160a01b03861690811790915560408051600160e01b63095ea7b30281527310ed43c718714eb63d5aa57b78b54704e256024e6004820152600160ff1b60248201529051919263095ea7b3926044808401936020939083900390910190829087803b15801561143557600080fd5b505af1158015611449573d6000803e3d6000fd5b505050506040513d602081101561145f57600080fd5b505042600a55505050565b3332811461147757600080fd5b60408051600160e01b6323b872dd0281526001600160a01b03831660048201523060248201526001600160801b03841660448201529051730e09fabb73bd3ade0a17ecc321fd13a19e81ce82916323b872dd9160648083019260209291908290030181600087803b1580156114eb57600080fd5b505af11580156114ff573d6000803e3d6000fd5b505050506040513d602081101561151557600080fd5b505161152057600080fd5b611528612572565b60408051600160e01b6341441d3b0281526001600160801b038416600482015290517373feaa1ee314f8c655e354234017be2193c9e24e916341441d3b91602480830192600092919082900301818387803b15801561158657600080fd5b505af115801561159a573d6000803e3d6000fd5b505050506000600854836001600160801b0316670de0b6b3a764000002816115be57fe5b600780549290910491820190556001600160a01b038316600090815260026020526040812054919250908015611642576001600160a01b03841660009081526002602052604090208054600019830190811061161657fe5b90600052602060002090600291828204019190066010029054906101000a90046001600160801b031691505b610e4861098b6001600160801b0384168563ffffffff61299f16565b60065460609081908190849086900381111561167c57506006548590035b6060816040519080825280602002602001820160405280156116a8578160200160208202803883390190505b5090506060826040519080825280602002602001820160405280156116d7578160200160208202803883390190505b509050606083604051908082528060200260200182016040528015611706578160200160208202803883390190505b506006549091508990036000190160005b8581101561178c57611728826124a4565b87848151811061173457fe5b6020026020010187858151811061174757fe5b6020026020010187868151811061175a57fe5b931515602094850291909101909301929092529190526001600160a01b03909116905260001990910190600101611717565b5092999198509650945050505050565b600160205281600052604060002081815481106117b557fe5b9060005260206000209060109182820401919006600202915091509054906101000a900461ffff1681565b600360209081526000928352604080842090915290825290205460ff1681565b6000600c54600b5401730e09fabb73bd3ade0a17ecc321fd13a19e81ce826001600160a01b03166370a08231306040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b15801561187357600080fd5b505afa158015611887573d6000803e3d6000fd5b505050506040513d602081101561189d57600080fd5b505103905090565b600260205281600052604060002081815481106118be57fe5b9060005260206000209060029182820401919006601002915091509054906101000a90046001600160801b031681565b600e546001600160a01b0316331461190557600080fd5b737ce91cea92e6934ec2aaa577c94a13e27c8a4f216001600160a01b031663dfcabf656040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561195457600080fd5b505af1158015611968573d6000803e3d6000fd5b50505050565b6006546000190190565b600e546001600160a01b0316331461198f57600080fd5b603281111561199d57600080fd5b600d55565b600e546001600160a01b031633146119b957600080fd5b600c546119cc908263ffffffff6127b016565b600c5560408051600160e01b63a9059cbb0281526001600160a01b0384166004820152602481018390529051730e09fabb73bd3ade0a17ecc321fd13a19e81ce829163a9059cbb9160448083019260209291908290030181600087803b158015611a3557600080fd5b505af1158015611a49573d6000803e3d6000fd5b505050506040513d602081101561196857600080fd5b600e546001600160a01b03163314611a7657600080fd5b603c8111158015611a885750600f8110155b611a9157600080fd5b600955565b600e546001600160a01b03163314611aad57600080fd5b60065480611aba57600080fd5b600060066001830381548110611acc57fe5b6000918252602090912001546001600160a01b03169050611aeb611800565b841115611af757600080fd5b83156119685760408051600380825260808201909252606091602082018380388339019050509050730e09fabb73bd3ade0a17ecc321fd13a19e81ce8281600081518110611b4157fe5b60200260200101906001600160a01b031690816001600160a01b03168152505073bb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c81600181518110611b8357fe5b60200260200101906001600160a01b031690816001600160a01b0316815250508181600281518110611bb157fe5b60200260200101906001600160a01b031690816001600160a01b0316815250507310ed43c718714eb63d5aa57b78b54704e256024e6001600160a01b03166338ed173986868430600160ff1b6040518663ffffffff1660e01b81526004018086815260200185815260200180602001846001600160a01b03166001600160a01b03168152602001838152602001828103825285818151815260200191508051906020019060200280838360005b83811015611c76578181015183820152602001611c5e565b505050509050019650505050505050600060405180830381600087803b158015611c9f57600080fd5b505af1158015611cb3573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526020811015611cdc57600080fd5b810190808051640100000000811115611cf457600080fd5b82016020810184811115611d0757600080fd5b8151856020820283011164010000000082111715611d2457600080fd5b5050505050505050505050565b60085460408051600160e01b631175a1dd028152600060048201819052306024830152915191929183916103e8917373feaa1ee314f8c655e354234017be2193c9e24e91631175a1dd916044808301926020929190829003018186803b158015611d9a57600080fd5b505afa158015611dae573d6000803e3d6000fd5b505050506040513d6020811015611dc457600080fd5b50516101db0281611dd157fe5b04905060075481670de0b6b3a76400000281611de957fe5b6001600160a01b03861660009081526002602052604090208054929091049390930192670de0b6b3a76400009084906000198401848110611e2657fe5b6000918252602090912060028204015460019091166010026101000a90046001600160801b03160281611e5557fe5b0495945050505050565b60085481565b60058181548110611e7257fe5b600091825260209091200154905081565b60048181548110611e7257fe5b600e546001600160a01b03163314611ea757600080fd5b600954611ebe908690600f0163ffffffff61298916565b611ec661196e565b61ffff1611611ed457600080fd5b600060068681548110611ee357fe5b6000918252602090912001546001600160a01b031690507308426874d46f90e5e527604fa5e3e30486770eb3811415611f1b57600080fd5b8480611f995760408051600160e01b6370a0823102815230600482015290516001600160a01b038416916370a08231916024808301926020929190829003018186803b158015611f6a57600080fd5b505afa158015611f7e573d6000803e3d6000fd5b505050506040513d6020811015611f9457600080fd5b505190505b801561221b57821561203057600e5460408051600160e01b63a9059cbb0281526001600160a01b0392831660048201526024810184905290519184169163a9059cbb916044808201926020929091908290030181600087803b158015611ffe57600080fd5b505af1158015612012573d6000803e3d6000fd5b505050506040513d602081101561202857600080fd5b5061221b9050565b6040805160028082526060808301845292602083019080388339019050509050828160008151811061205e57fe5b60200260200101906001600160a01b031690816001600160a01b03168152505073bb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c816001815181106120a057fe5b60200260200101906001600160a01b031690816001600160a01b0316815250507310ed43c718714eb63d5aa57b78b54704e256024e6001600160a01b03166338ed173983888430600160ff1b6040518663ffffffff1660e01b81526004018086815260200185815260200180602001846001600160a01b03166001600160a01b03168152602001838152602001828103825285818151815260200191508051906020019060200280838360005b8381101561216557818101518382015260200161214d565b505050509050019650505050505050600060405180830381600087803b15801561218e57600080fd5b505af11580156121a2573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405260208110156121cb57600080fd5b8101908080516401000000008111156121e357600080fd5b820160208101848111156121f657600080fd5b815185602082028301116401000000008211171561221357600080fd5b505050505050505b831561115e57600e5460408051600160e01b6370a08231028152306004820152905173bb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c9263a9059cbb926001600160a01b039091169184916370a08231916024808301926020929190829003018186803b15801561228c57600080fd5b505afa1580156122a0573d6000803e3d6000fd5b505050506040513d60208110156122b657600080fd5b50516040805163ffffffff851660e01b81526001600160a01b03909316600484015260248301919091525160448083019260209291908290030181600087803b15801561230257600080fd5b505af1158015612316573d6000803e3d6000fd5b505050506040513d602081101561232c57600080fd5b505050505050505050565b600e546001600160a01b0316331461234e57600080fd5b600080546001600160a01b0319166001600160a01b038381169190911780835560408051600160e01b63095ea7b3028152919092166004820152600160ff1b6024820152905173bb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c9263095ea7b392604480820193602093909283900390910190829087803b1580156123d357600080fd5b505af11580156123e7573d6000803e3d6000fd5b505050506040513d60208110156123fd57600080fd5b50506000805460408051600160e01b63095ea7b30281526001600160a01b039092166004830152600160ff1b6024830152517308426874d46f90e5e527604fa5e3e30486770eb39263095ea7b392604480820193602093909283900390910190829087803b15801561246e57600080fd5b505af1158015612482573d6000803e3d6000fd5b505050506040513d6020811015610e4b57600080fd5b600b5481565b600d5481565b6000806000806005805490508510156124fc57600485815481106124c457fe5b90600052602060002001546124d886611167565b600587815481106124e557fe5b906000526020600020015402816124f857fe5b0490505b6006858154811061250957fe5b60009182526020808320919091015433835260038252604080842098845297909152959020546001600160a01b0390951695909460ff169350915050565b600c5481565b6000670de0b6b3a7640000600854600754028161256657fe5b04905090565b600a5481565b600754156127ae5760408051600160e01b6370a082310281523060048201529051600091730e09fabb73bd3ade0a17ecc321fd13a19e81ce82916370a0823191602480820192602092909190829003018186803b1580156125d257600080fd5b505afa1580156125e6573d6000803e3d6000fd5b505050506040513d60208110156125fc57600080fd5b505160408051600160e01b631058d28102815260006004820181905291519293507373feaa1ee314f8c655e354234017be2193c9e24e92631058d2819260248084019391929182900301818387803b15801561265757600080fd5b505af115801561266b573d6000803e3d6000fd5b505060408051600160e01b6370a08231028152306004820152905160009350849250730e09fabb73bd3ade0a17ecc321fd13a19e81ce82916370a08231916024808301926020929190829003018186803b1580156126c857600080fd5b505afa1580156126dc573d6000803e3d6000fd5b505050506040513d60208110156126f257600080fd5b50510390506000606460058302049050600060028284030490507373feaa1ee314f8c655e354234017be2193c9e24e6001600160a01b03166341441d3b826040518263ffffffff1660e01b815260040180828152602001915050600060405180830381600087803b15801561276657600080fd5b505af115801561277a573d6000803e3d6000fd5b5050505060075481670de0b6b3a7640000028161279357fe5b600880549290910491909101905550600b8054909101905550505b565b6000828211156127bc57fe5b50900390565b6000826001600160801b0316826001600160801b031611156127bc57fe5b6001600160a01b0381166000908152600160205260409020548015801590612866575061280b61196e565b61ffff1660016000846001600160a01b03166001600160a01b03168152602001908152602001600020600183038154811061284257fe5b60009182526020909120601082040154600f9091166002026101000a900461ffff16145b156128d4576001600160a01b03821660009081526002602052604090208054849190600019840190811061289657fe5b90600052602060002090600291828204019190066010026101000a8154816001600160801b0302191690836001600160801b03160217905550610e4b565b6001600160a01b03821660009081526001602052604090206128f461196e565b815460018181018455600093845260208085206010808504909101805461ffff9687166002600f909716870261010090810a91820298909102199091169690961790556001600160a01b038816865283825260408620805480850182559087529190952092810490920180546001600160801b03808a169490931690950290930a918202910219909216919091179055505050565b60008282018381101561299857fe5b9392505050565b60008282016001600160801b03808516908216101561299857fefea165627a7a723058204c7488b60f99ab451aa5f4f7935256b079cd6c27cd4e46364980f44bf350ff860029

Deployed ByteCode Sourcemap

191:11271:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3710:583;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3710:583:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;3710:583:0;-1:-1:-1;;;;;3710:583:0;;:::i;6856:421::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6856:421:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;6856:421:0;;;;;;;;;;;;;;;;;:::i;1352:26::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1352:26:0;;;:::i;:::-;;;;;;;;;;;;;;;;1476:30;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1476:30:0;;;:::i;4298:699::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4298:699:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;4298:699:0;;:::i;5362:430::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5362:430:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;5362:430:0;;;;;;;:::i;10055:314::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10055:314:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;10055:314:0;;:::i;1271:38::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1271:38:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;1271:38:0;;:::i;:::-;;;;-1:-1:-1;;;;;1271:38:0;;;;;;;;;;;;;;8425:796;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8425:796:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;8425:796:0;;;;;;;;:::i;2136:591::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2136:591:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;2136:591:0;-1:-1:-1;;;;;2136:591:0;;:::i;10374:706::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10374:706:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;10374:706:0;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;10374:706:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;10374:706:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;10374:706:0;;;;;;;;;;;;;;;;;;;;;879:55;;8:9:-1;5:2;;;30:1;27;20:12;5:2;879:55:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;879:55:0;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;1072:75;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1072:75:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;1072:75:0;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;9230:143;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9230:143:0;;;:::i;972:60::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;972:60:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;972:60:0;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;972:60:0;;;;;;;;;;;;;;5002:109;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5002:109:0;;;:::i;9946:103::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9946:103:0;;;:::i;7478:154::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7478:154:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;7478:154:0;;:::i;7282:191::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7282:191:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;7282:191:0;;;;;;;;:::i;7637:227::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7637:227:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;7637:227:0;;:::i;7869:551::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7869:551:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;7869:551:0;;;;;;;:::i;9378:441::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9378:441:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;9378:441:0;-1:-1:-1;;;;;9378:441:0;;:::i;1382:39::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1382:39:0;;;:::i;1193:38::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1193:38:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;1193:38:0;;:::i;1151:::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1151:38:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;1151:38:0;;:::i;5797:985::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5797:985:0;;;;;;13:3:-1;8;5:12;2:2;;;30:1;27;20:12;2:2;-1:-1;5797:985:0;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;5116:241::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5116:241:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;5116:241:0;-1:-1:-1;;;;;5116:241:0;;:::i;1687:32::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1687:32:0;;;:::i;1758:30::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1758:30:0;;;:::i;11086:371::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11086:371:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;11086:371:0;;:::i;:::-;;;;-1:-1:-1;;;;;11086:371:0;;;;;;;;;;;;;;;;;;;;;;;;;;;1723:31;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1723:31:0;;;:::i;9824:117::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9824:117:0;;;:::i;1654:27::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1654:27:0;;;:::i;3121:584::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3121:584:0;;;:::i;3710:583::-;3774:10;3789:21;:19;:21::i;:::-;3817:14;3856:13;;3834:6;3844:8;3834:19;-1:-1:-1;;;;;3834:35:0;;;;;;;3817:52;;3888:23;3904:6;3888:11;;:15;;:23;;;;:::i;:::-;3874:11;:37;-1:-1:-1;;;;;3935:31:0;;3918:14;3935:31;;;:23;:31;;;;;:38;3986:10;3978:19;;;;;;-1:-1:-1;;;;;4023:31:0;;4002:18;4023:31;;;:23;:31;;;;;:43;;-1:-1:-1;;4055:10:0;;;4023:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;4023:43:0;;-1:-1:-1;4071:54:0;4085:31;4023:43;4108:6;4085:14;:31::i;:::-;4118:6;4071:13;:54::i;:::-;4132:29;;;-1:-1:-1;;;;;4132:29:0;;-1:-1:-1;;;;;4132:29:0;;;;;;;;547:42;;4132:21;;:29;;;;;-1:-1:-1;;4132:29:0;;;;;;;-1:-1:-1;547:42:0;4132:29;;;5:2:-1;;;;30:1;27;20:12;5:2;4132:29:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;4132:29:0;;;;4168:11;4206:5;4192:10;;4183:6;-1:-1:-1;;;;;4183:19:0;;4182:29;;;;;4216:16;:23;;4182:29;;;;4216:23;;;;;4252:35;;;-1:-1:-1;;;;;4252:35:0;;-1:-1:-1;;;;;4252:35:0;;;;;;-1:-1:-1;;;;;4274:12:0;;;;;4252:35;;;;;;4182:29;;-1:-1:-1;383:42:0;;4252:13;;:35;;;;;;;;;;;;;;;4216:16;383:42;4252:35;;;5:2:-1;;;;30:1;27;20:12;5:2;4252:35:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;4252:35:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;4252:35:0;4244:44;;;;;;3710:583;;;;;;:::o;6856:421::-;6967:6;;-1:-1:-1;;;;;6967:6:0;6953:10;:20;6945:29;;;;;;-1:-1:-1;;;;;6987:22:0;;383:42;6987:22;;6979:31;;;;;;7033:21;:28;-1:-1:-1;;7033:32:0;7017:13;7070:158;7094:2;7090:1;:6;7070:158;;;7189:21;7219:1;7211:5;:9;7189:32;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7180:41:0;;;7189:32;;7180:41;;7172:50;;;;;;7098:3;;7070:158;;;;7238:5;-1:-1:-1;;;;;7232:21:0;;7254:9;7265:6;7232:40;;;;;;;;;;;;;-1:-1:-1;;;;;7232:40:0;-1:-1:-1;;;;;7232:40:0;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7232:40:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;7232:40:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;1352:26:0;;;;:::o;1476:30::-;;;;:::o;4298:699::-;4380:10;4356:35;;;;:23;:35;;;;;;;;:42;;;;;;;;;;;4355:43;4347:52;;;;;;4436:7;:5;:7::i;:::-;4412:31;;:21;4422:10;;4412:5;:9;;:21;;;;:::i;:::-;:31;:84;;;;-1:-1:-1;4468:10:0;;4458:38;;:5;;1593:2;4468:27;4458:38;:9;:38;:::i;:::-;4447:7;:5;:7::i;:::-;:49;;;;4412:84;4404:93;;;;;;4527:22;4552:26;4572:5;4552:19;:26::i;:::-;4527:51;-1:-1:-1;4587:18:0;;4583:410;;4613:12;4678:21;4700:5;4678:28;;;;;;;;;;;;;;;;4660:14;4629:21;4651:5;4629:28;;;;;;;;;;;;;;;;:45;4628:78;;;;;;;-1:-1:-1;4716:8:0;;4712:276;;4757:10;4733:35;;;;:23;:35;;;;;;;;:42;;;;;;;;:49;;-1:-1:-1;;4733:49:0;4778:4;4733:49;;;4793:21;:28;;308:42;;4793:21;4769:5;;4793:28;;;;;;;;;;;;;;;;-1:-1:-1;;;;;4793:28:0;:46;4789:193;;;4849:12;;;:41;;;-1:-1:-1;;;;;4849:41:0;;4873:10;4849:41;;;;;;;;;;;;-1:-1:-1;;;;;4849:12:0;;;;:23;;:41;;;;;;;;;;:12;;:41;;;5:2:-1;;;;30:1;27;20:12;5:2;4849:41:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;4849:41:0;;;;4789:193;;;4918:21;4940:5;4918:28;;;;;;;;;;;;;;;;;;;;4912:62;;;-1:-1:-1;;;;;4912:62:0;;4957:10;4912:62;;;;;;;;;;;;-1:-1:-1;;;;;4918:28:0;;;;4912:44;;:62;;;;;4918:28;;4912:62;;;;;;;;;;4918:28;4912:62;;;5:2:-1;;;;30:1;27;20:12;5:2;4912:62:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;4912:62:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;4789:193:0;4583:410;;4298:699;;:::o;5362:430::-;5449:6;;-1:-1:-1;;;;;5449:6:0;5435:10;:20;5427:29;;;;;;5481:17;;:29;;5503:6;5481:29;:21;:29;:::i;:::-;5461:17;:49;5541:16;;;5555:1;5541:16;;;5517:21;5541:16;;;;;5517:21;5541:16;;;;;105:10:-1;5541:16:0;88:34:-1;136:17;;-1:-1;5541:16:0;5517:40;;383:42;5568:4;5573:1;5568:7;;;;;;;;;;;;;:23;-1:-1:-1;;;;;5568:23:0;;;-1:-1:-1;;;;;5568:23:0;;;;;458:42;5602:4;5607:1;5602:7;;;;;;;;;;;;;:23;-1:-1:-1;;;;;5602:23:0;;;-1:-1:-1;;;;;5602:23:0;;;;;723:42;-1:-1:-1;;;;;5646:31:0;;5678:6;5686;5694:4;5708;-1:-1:-1;;;5646:78:0;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;5646:78:0;-1:-1:-1;;;;;5646:78:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;5646:78:0;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5646:78:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5646:78:0;;;;;;39:16:-1;36:1;17:17;2:54;101:4;5646:78:0;80:15:-1;;;-1:-1;;76:31;65:43;;120:4;113:20;13:2;5:11;;2:2;;;29:1;26;19:12;2:2;5646:78:0;;;;;;19:11:-1;14:3;11:20;8:2;;;44:1;41;34:12;8:2;62:21;;123:4;114:14;;138:31;;;135:2;;;182:1;179;172:12;135:2;219:3;213:10;331:9;325:2;311:12;307:21;289:16;285:44;282:59;261:11;247:12;244:29;233:116;230:2;;;362:1;359;352:12;230:2;-1:-1;;5729:12:0;;5757:29;;;-1:-1:-1;;;;;5757:29:0;;5780:4;5757:29;;;;;;-1:-1:-1;;;;;5729:12:0;;;;-1:-1:-1;5729:27:0;;-1:-1:-1;458:42:0;;-1:-1:-1;5757:14:0;;-1:-1:-1;5757:29:0;;;;;;;;;;;;;;;458:42;5757:29;;;5:2:-1;;;;30:1;27;20:12;5:2;5757:29:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5757:29:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;5757:29:0;5729:58;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;5729:58:0;;;;;;;-1:-1:-1;5729:58:0;;;;5:2:-1;;;;30:1;27;20:12;5:2;5729:58:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5729:58:0;;;;5362:430;;;:::o;10055:314::-;10172:10;10121:7;10152:31;;;10193:1;10152:31;;;;;:38;-1:-1:-1;;10152:42:0;10135:217;10249:10;10215:11;10229:31;;;:19;:31;;;;;:34;;10261:1;;10229:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;10273:13:0;;;10269:78;;10326:10;10302:35;;;;:23;:35;;;;;:38;;10338:1;;10302:38;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;10302:38:0;-1:-1:-1;;;;;10295:45:0;;;;;;;10269:78;-1:-1:-1;;;10204:3:0;10135:217;;10055:314;;;;:::o;1271:38::-;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;1271:38:0;;-1:-1:-1;1271:38:0;:::o;8425:796::-;8529:6;;-1:-1:-1;;;;;8529:6:0;8515:10;:20;8507:29;;;;;;8555:12;;8570:8;8555:23;8549:3;:29;8541:38;;;;;;8603:21;:28;8640:10;;8636:425;;8700:21;8724;8755:1;8746:6;:10;8724:33;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;8724:33:0;;-1:-1:-1;8767:13:0;;8763:112;;8828:40;8841:15;:13;:15::i;:::-;8858:9;8828:12;:40::i;:::-;8907:45;;;-1:-1:-1;;;;;8907:45:0;;8946:4;8907:45;;;;;;8880:21;;-1:-1:-1;;;;;8907:30:0;;;;;:45;;;;;;;;;;;;;;;:30;:45;;;5:2:-1;;;;30:1;27;20:12;5:2;8907:45:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8907:45:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;8907:45:0;27:10:-1;;39:1;23:18;;;45:23;;-1:-1;8880:73:0;;;8907:45;8880:73;;;;;;;;;8986:11;;8959:21;27:10:-1;;23:18;;;45:23;;8959:39:0;;;;;;-1:-1:-1;8636:425:0;9067:21;27:10:-1;;39:1;23:18;;45:23;;-1:-1;9067:37:0;;;;;;;-1:-1:-1;;;;;;9067:37:0;-1:-1:-1;;;;;9067:37:0;;;;;;;;9142:51;;;-1:-1:-1;;;;;9142:51:0;;723:42;9142:51;;;;-1:-1:-1;;;9142:51:0;;;;;;9067:37;;9142:24;;:51;;;;;9067:37;;9142:51;;;;;;;;;;9067:37;9142:51;;;5:2:-1;;;;30:1;27;20:12;5:2;9142:51:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;9142:51:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;9213:3:0;9198:12;:18;-1:-1:-1;;;8425:796:0:o;2136:591::-;2200:10;2233:9;2223:19;;2215:28;;;;;;2256:57;;;-1:-1:-1;;;;;2256:57:0;;-1:-1:-1;;;;;2256:57:0;;;;;;2299:4;2256:57;;;;-1:-1:-1;;;;;2256:57:0;;;;;;;;383:42;;2256:17;;:57;;;;;;;;;;;;;;-1:-1:-1;383:42:0;2256:57;;;5:2:-1;;;;30:1;27;20:12;5:2;2256:57:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;2256:57:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;2256:57:0;2248:66;;;;;;2319:21;:19;:21::i;:::-;2347:29;;;-1:-1:-1;;;;;2347:29:0;;-1:-1:-1;;;;;2347:29:0;;;;;;;;547:42;;2347:21;;:29;;;;;-1:-1:-1;;2347:29:0;;;;;;;-1:-1:-1;547:42:0;2347:29;;;5:2:-1;;;;30:1;27;20:12;5:2;2347:29:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;2347:29:0;;;;2383:20;2439:13;;2415:6;-1:-1:-1;;;;;2407:15:0;2426:8;2407:28;2406:46;;;;;2457:11;:27;;2406:46;;;;2457:27;;;;;-1:-1:-1;;;;;2531:31:0;;2457:11;2531:31;;;:23;:31;;;;;:38;2406:46;;-1:-1:-1;2457:11:0;2578:10;;2574:84;;-1:-1:-1;;;;;2609:31:0;;;;;;:23;:31;;;;;:43;;-1:-1:-1;;2641:10:0;;;2609:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;2609:43:0;2596:56;;2574:84;2662:60;2676:37;-1:-1:-1;;;;;2676:14:0;;2699:12;2676:37;:14;:37;:::i;10374:706::-;10565:21;:28;10454:16;;;;;;10534:6;;10565:37;;;10555:47;;10551:127;;;-1:-1:-1;10629:21:0;:28;:37;;;10551:127;10690:23;10730:7;10716:22;;;;;;;;;;;;;;;;;;;;;;29:2:-1;21:6;17:15;117:4;105:10;97:6;88:34;136:17;;-1:-1;10716:22:0;;10690:48;;10749:23;10789:7;10775:22;;;;;;;;;;;;;;;;;;;;;;29:2:-1;21:6;17:15;117:4;105:10;97:6;88:34;136:17;;-1:-1;10775:22:0;;10749:48;;10802:21;10837:7;10826:19;;;;;;;;;;;;;;;;;;;;;;29:2:-1;21:6;17:15;117:4;105:10;97:6;88:34;136:17;;-1:-1;10826:19:0;-1:-1:-1;10868:21:0;:28;10802:43;;-1:-1:-1;10868:43:0;;;-1:-1:-1;;10868:43:0;10852:13;10916:121;10940:7;10936:1;:11;10916:121;;;10997:21;11012:5;10997:14;:21::i;:::-;10961:6;10968:1;10961:9;;;;;;;;;;;;;10972:6;10979:1;10972:9;;;;;;;;;;;;;10983:7;10991:1;10983:10;;;;;;;;10960:58;;;10983:10;;;;;;;;;;;10960:58;;;;;;;-1:-1:-1;;;;;10960:58:0;;;;;-1:-1:-1;;11024:7:0;;;;;10949:3;10916:121;;;-1:-1:-1;11051:6:0;;11059;;-1:-1:-1;11059:6:0;-1:-1:-1;10374:706:0;-1:-1:-1;;;;;10374:706:0:o;879:55::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;1072:75::-;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;9230:143::-;9276:7;9350:16;;9330:17;;:36;383:42;-1:-1:-1;;;;;9297:14:0;;9320:4;9297:29;;;;;;;;;;;;;-1:-1:-1;;;;;9297:29:0;-1:-1:-1;;;;;9297:29:0;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9297:29:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;9297:29:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;9297:29:0;:70;;-1:-1:-1;9230:143:0;:::o;972:60::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;972:60:0;;:::o;5002:109::-;5064:6;;-1:-1:-1;;;;;5064:6:0;5050:10;:20;5042:29;;;;;;830:42;-1:-1:-1;;;;;5076:28:0;;:30;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5076:30:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5076:30:0;;;;5002:109::o;9946:103::-;10011:21;:28;-1:-1:-1;;10011:32:0;9946:103;:::o;7478:154::-;7552:6;;-1:-1:-1;;;;;7552:6:0;7538:10;:20;7530:29;;;;;;7585:2;7572:9;:15;;7564:24;;;;;;7605:10;:22;7478:154::o;7282:191::-;7372:6;;-1:-1:-1;;;;;7372:6:0;7358:10;:20;7350:29;;;;;;7403:16;;:28;;7424:6;7403:28;:20;:28;:::i;:::-;7384:16;:47;7436:32;;;-1:-1:-1;;;;;7436:32:0;;-1:-1:-1;;;;;7436:32:0;;;;;;;;;;;;;;383:42;;7436:13;;:32;;;;;;;;;;;;;;-1:-1:-1;383:42:0;7436:32;;;5:2:-1;;;;30:1;27;20:12;5:2;7436:32:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;7436:32:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;7637:227:0;7722:6;;-1:-1:-1;;;;;7722:6:0;7708:10;:20;7700:29;;;;;;7759:2;7742:13;:19;;:42;;;;;7782:2;7765:13;:19;;7742:42;7734:51;;;;;;7833:10;:26;7637:227::o;7869:551::-;7960:6;;-1:-1:-1;;;;;7960:6:0;7946:10;:20;7938:29;;;;;;7991:21;:28;8032:10;8024:19;;;;;;8048:16;8067:21;8098:1;8089:6;:10;8067:33;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;8067:33:0;;-1:-1:-1;8131:15:0;:13;:15::i;:::-;8121:6;:25;;8113:34;;;;;;8156:10;;8152:264;;8198:16;;;8212:1;8198:16;;;;;;;;;8174:21;;8198:16;;;8174:21;;105:10:-1;8198:16:0;88:34:-1;136:17;;-1:-1;8198:16:0;8174:40;;383:42;8226:4;8231:1;8226:7;;;;;;;;;;;;;:23;-1:-1:-1;;;;;8226:23:0;;;-1:-1:-1;;;;;8226:23:0;;;;;458:42;8261:4;8266:1;8261:7;;;;;;;;;;;;;:23;-1:-1:-1;;;;;8261:23:0;;;-1:-1:-1;;;;;8261:23:0;;;;;8308:8;8290:4;8295:1;8290:7;;;;;;;;;;;;;:27;-1:-1:-1;;;;;8290:27:0;;;-1:-1:-1;;;;;8290:27:0;;;;;723:42;-1:-1:-1;;;;;8329:31:0;;8361:6;8369:9;8380:4;8394;-1:-1:-1;;;8329:81:0;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;8329:81:0;-1:-1:-1;;;;;8329:81:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;8329:81:0;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8329:81:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8329:81:0;;;;;;39:16:-1;36:1;17:17;2:54;101:4;8329:81:0;80:15:-1;;;-1:-1;;76:31;65:43;;120:4;113:20;13:2;5:11;;2:2;;;29:1;26;19:12;2:2;8329:81:0;;;;;;19:11:-1;14:3;11:20;8:2;;;44:1;41;34:12;8:2;62:21;;123:4;114:14;;138:31;;;135:2;;;182:1;179;172:12;135:2;219:3;213:10;331:9;325:2;311:12;307:21;289:16;285:44;282:59;261:11;247:12;244:29;233:116;230:2;;;362:1;359;352:12;230:2;-1:-1;;;;;;;7869:551:0;;;;:::o;9378:441::-;9481:13;;9530:38;;;-1:-1:-1;;;;;9530:38:0;;9436:7;9530:38;;;;;;9562:4;9530:38;;;;;;9436:7;;9481:13;9436:7;;9578:4;;547:42;;9530:20;;:38;;;;;;;;;;;;;;547:42;9530:38;;;5:2:-1;;;;30:1;27;20:12;5:2;9530:38:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;9530:38:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;9530:38:0;9571:3;9530:44;9529:53;;;;;;9499:83;;9648:11;;9612:19;9635:8;9612:32;9611:48;;;;;-1:-1:-1;;;;;9683:31:0;;9666:14;9683:31;;;:23;:31;;;;;:38;;9611:48;;;;9587:72;;;;;9805:8;;9587:72;;-1:-1:-1;;9766:10:0;;9734:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;9734:43:0;:66;9733:81;;;;;;;9378:441;-1:-1:-1;;;;;9378:441:0:o;1382:39::-;;;;:::o;1193:38::-;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;1193:38:0;:::o;1151:::-;;;;;;;;;;5797:985;5935:6;;-1:-1:-1;;;;;5935:6:0;5921:10;:20;5913:29;;;;;;5975:10;;5965:38;;:5;;1593:2;5975:27;5965:38;:9;:38;:::i;:::-;5955:7;:5;:7::i;:::-;:48;;;5947:57;;;;;;6032:14;6055:21;6077:5;6055:28;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;6055:28:0;;-1:-1:-1;308:42:0;6097:35;;;6089:44;;;;;;6183:6;6198:11;6194:71;;6226:33;;;-1:-1:-1;;;;;6226:33:0;;6253:4;6226:33;;;;;;-1:-1:-1;;;;;6226:18:0;;;;;:33;;;;;;;;;;;;;;:18;:33;;;5:2:-1;;;;30:1;27;20:12;5:2;6226:33:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6226:33:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;6226:33:0;;-1:-1:-1;6194:71:0;6275:10;;6271:363;;6297:11;6293:336;;;6398:6;;6380:33;;;-1:-1:-1;;;;;6380:33:0;;-1:-1:-1;;;;;6398:6:0;;;6380:33;;;;;;;;;;;;:17;;;;;;:33;;;;;;;;;;;;;;;6398:6;6380:17;:33;;;5:2:-1;;;;30:1;27;20:12;5:2;6380:33:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6380:33:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;6293:336:0;;-1:-1:-1;6293:336:0;;6457:16;;;6471:1;6457:16;;;6433:21;6457:16;;;;;6433:21;6457:16;;;;;105:10:-1;6457:16:0;88:34:-1;136:17;;-1:-1;6457:16:0;6433:40;;6498:8;6480:4;6485:1;6480:7;;;;;;;;;;;;;:27;-1:-1:-1;;;;;6480:27:0;;;-1:-1:-1;;;;;6480:27:0;;;;;458:42;6514:4;6519:1;6514:7;;;;;;;;;;;;;:23;-1:-1:-1;;;;;6514:23:0;;;-1:-1:-1;;;;;6514:23:0;;;;;723:42;-1:-1:-1;;;;;6544:31:0;;6576:6;6584;6592:4;6606;-1:-1:-1;;;6544:78:0;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;6544:78:0;-1:-1:-1;;;;;6544:78:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;6544:78:0;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6544:78:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6544:78:0;;;;;;39:16:-1;36:1;17:17;2:54;101:4;6544:78:0;80:15:-1;;;-1:-1;;76:31;65:43;;120:4;113:20;13:2;5:11;;2:2;;;29:1;26;19:12;2:2;6544:78:0;;;;;;19:11:-1;14:3;11:20;8:2;;;44:1;41;34:12;8:2;62:21;;123:4;114:14;;138:31;;;135:2;;;182:1;179;172:12;135:2;219:3;213:10;331:9;325:2;311:12;307:21;289:16;285:44;282:59;261:11;247:12;244:29;233:116;230:2;;;362:1;359;352:12;230:2;-1:-1;;;;;;;6293:336:0;6644:8;6640:138;;;6734:6;;6742:29;;;-1:-1:-1;;;;;6742:29:0;;6765:4;6742:29;;;;;;458:42;;6720:13;;-1:-1:-1;;;;;6734:6:0;;;;458:42;;6742:14;;:29;;;;;;;;;;;;;;458:42;6742:29;;;5:2:-1;;;;30:1;27;20:12;5:2;6742:29:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6742:29:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;6742:29:0;6720:52;;;;;;;;;;-1:-1:-1;;;;;6720:52:0;;;;;;;;;;;;;;;;;;;;6742:29;;6720:52;;;;;;;-1:-1:-1;6720:52:0;;;;5:2:-1;;;;30:1;27;20:12;5:2;6720:52:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6720:52:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;5797:985:0;;;;;;;:::o;5116:241::-;5200:6;;-1:-1:-1;;;;;5200:6:0;5186:10;:20;5178:29;;;;;;5212:12;:39;;-1:-1:-1;;;;;;5212:39:0;-1:-1:-1;;;;;5212:39:0;;;;;;;;;;5256:45;;;-1:-1:-1;;;;;5256:45:0;;5277:12;;;;5256:45;;;;-1:-1:-1;;;5256:45:0;;;;;;458:42;;5256:12;;:45;;;;;;;;;;;;;;;;;;458:42;5256:45;;;5:2:-1;;;;30:1;27;20:12;5:2;5256:45:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5256:45:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;5328:12:0;;;5306:46;;;-1:-1:-1;;;;;5306:46:0;;-1:-1:-1;;;;;5328:12:0;;;5306:46;;;;-1:-1:-1;;;5306:46:0;;;;;308:42;;5306:13;;:46;;;;;5256:45;;5306:46;;;;;;;;;;;308:42;5306:46;;;5:2:-1;;;;30:1;27;20:12;5:2;5306:46:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5306:46:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;1687:32:0;;;;:::o;1758:30::-;;;;:::o;11086:371::-;11146:7;11155;11164:4;11175:18;11210:21;:28;;;;11202:5;:36;11198:157;;;11321:21;11343:5;11321:28;;;;;;;;;;;;;;;;11291:26;11311:5;11291:19;:26::i;:::-;11260:21;11282:5;11260:28;;;;;;;;;;;;;;;;:57;11259:90;;;;;;11246:103;;11198:157;11367:21;11389:5;11367:28;;;;;;;;;;;;;;;;;;;;;11433:10;11409:35;;:23;:35;;;;;;:42;;;;;;;;;;;-1:-1:-1;;;;;11367:28:0;;;;11397:10;;11409:42;;;-1:-1:-1;11086:371:0;-1:-1:-1;;11086:371:0:o;1723:31::-;;;;:::o;9824:117::-;9873:7;9927:8;9909:13;;9895:11;;:27;9894:42;;;;;;9887:49;;9824:117;:::o;1654:27::-;;;;:::o;3121:584::-;3168:11;;:15;3164:537;;3215:29;;;-1:-1:-1;;;;;3215:29:0;;3238:4;3215:29;;;;;;3191:21;;383:42;;3215:14;;:29;;;;;;;;;;;;;;;383:42;3215:29;;;5:2:-1;;;;30:1;27;20:12;5:2;3215:29:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;3215:29:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;3215:29:0;3250:24;;;-1:-1:-1;;;;;3250:24:0;;3272:1;3250:24;;;;;;;;3215:29;;-1:-1:-1;547:42:0;;3250:21;;:24;;;;;3272:1;;3250:24;;;;;;3272:1;547:42;3250:24;;;5:2:-1;;;;30:1;27;20:12;5:2;3250:24:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;-1:-1;;3303:29:0;;;-1:-1:-1;;;;;3303:29:0;;3326:4;3303:29;;;;;;3282:18;;-1:-1:-1;3335:13:0;;-1:-1:-1;383:42:0;;3303:14;;:29;;;;;;;;;;;;;;383:42;3303:29;;;5:2:-1;;;;30:1;27;20:12;5:2;3303:29:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;3303:29:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;3303:29:0;:45;;-1:-1:-1;3354:18:0;3394:3;3389:1;3376:14;;3375:22;;-1:-1:-1;3426:18:0;3475:1;3448:23;;;3447:29;3426:50;;547:42;-1:-1:-1;;;;;3565:21:0;;3587:10;3565:33;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3565:33:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;3565:33:0;;;;3647:11;;3621:10;3635:8;3621:23;:37;;;;;3604:13;:54;;3621:37;;;;3604:54;;;;;;-1:-1:-1;3664:17:0;:31;;;;;;;-1:-1:-1;;3164:537:0;3121:584::o;13924:108::-;13982:7;14008:1;14003;:6;;13996:14;;;;-1:-1:-1;14022:5:0;;;13924:108::o;14552:::-;14610:7;14636:1;-1:-1:-1;;;;;14631:6:0;:1;-1:-1:-1;;;;;14631:6:0;;;14624:14;;;2732:384;-1:-1:-1;;;;;2822:27:0;;2805:14;2822:27;;;:19;:27;;;;;:34;2865:10;;;;;:64;;;2922:7;:5;:7::i;:::-;2879:50;;:19;:27;2899:6;-1:-1:-1;;;;;2879:27:0;-1:-1:-1;;;;;2879:27:0;;;;;;;;;;;;2916:1;2907:6;:10;2879:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:50;2865:64;2861:251;;;-1:-1:-1;;;;;2937:31:0;;;;;;:23;:31;;;;;:43;;2983:10;;2937:31;-1:-1:-1;;2969:10:0;;;2937:43;;;;;;;;;;;;;;;;;;;;;;;;:56;;;;;-1:-1:-1;;;;;2937:56:0;;;;;-1:-1:-1;;;;;2937:56:0;;;;;;2861:251;;;-1:-1:-1;;;;;3011:27:0;;;;;;:19;:27;;;;;3044:7;:5;:7::i;:::-;27:10:-1;;39:1;23:18;;;45:23;;-1:-1;3011:41:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3058:31:0;;;;;;;;;;27:10:-1;;23:18;;;45:23;;3058:48:0;;;;;;;;;;;;;;;-1:-1:-1;;;;;3058:48:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;2732:384;;;:::o;14095:126::-;14153:7;14179:5;;;14196:6;;;;14189:14;;;;14215:1;14095:126;-1:-1:-1;;;14095:126:0:o;14312:::-;14370:7;14396:5;;;-1:-1:-1;;;;;14413:6:0;;;;;;;;14406:14;;

Swarm Source

bzzr://4c7488b60f99ab451aa5f4f7935256b079cd6c27cd4e46364980f44bf350ff86
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.