Sponsored Link: Join FundYourselfNow ICO – Crypto crowdfunding platform to find talent, raise funding while protecting project fraud
Contract Overview | SmartRoulette
ETH Balance: 0 Ether
ETH USD Value: $0
No Of Transactions: 3533 txns
  Latest 25 txns from a total Of 3533 transactions View All

TxHash Block Age From To Value [TxFee]
0x3b806e1da123be69e98e1320a8d7e473dd835dfbbf541f3014d868c6b08e6c5339223823 hrs 44 mins ago0x2f1cc53dea05a1fb7af819f658d6d334098261ef  IN   SmartRoulette0 Ether0.0006296
0x9b68e67103cfb0966629b945480024be6692d3c30ce780c13cd813d0e02ac3f539223144 hrs 5 mins ago0x8dabf21ef62a78a005fc47d9a03cb8e99dab8a07  IN   SmartRoulette0 Ether0.0027592
0x17f4b04fa695c8f94730a356b11b3b78e41560ff3f0b3ffcf79ed833c71ff2b039221804 hrs 48 mins ago0xb5a9b2693c3dfe31c471fbad4354610d7f959d4e  IN   SmartRoulette0 Ether0.000628
0x4257ff5ca2ebf06eee14571c61f3039cc9410d29740737d32996c0dee6f61fa139221794 hrs 48 mins ago0xb5a9b2693c3dfe31c471fbad4354610d7f959d4e  IN   SmartRoulette0 Ether0.0004012
0x8b3e795d28bb07c10cb01d8d6d0dcef2806ff7168fdbc93a76d9b0b3a34ff09939221734 hrs 49 mins ago0xe8e39e338771b8fbb67ca45a11e178224d435da0  IN   SmartRoulette0 Ether0.0010046
0xacc7dd7c75ef824f76b248a0de3de8c9982b6b92acee96d8b2d30e600aca46f439221614 hrs 51 mins ago0x4f2cbf5f6b682a060c77b569b5fe71b8e7b6b157  IN   SmartRoulette0 Ether0.00047728
0x0edf65cf4e3ddff8c47d289f6c966a1db88237717e19b85567f0a976990dcf1639221584 hrs 52 mins ago0xef4c4461aa2ccb0ccb528ba17f4c15c5103b6279  IN   SmartRoulette0 Ether0.000628
0x155dfd2f8bf0b4c78b27b5c097ffc2554128e98e07649108e5121684a4205d9d39221514 hrs 54 mins ago0x73e0734f60b29cd5de600a0d093899893bfb5800  IN   SmartRoulette0 Ether0.000628
0xf23d2281f4e465f1a3e6da5b4a79d3845f5ca32cbdd528fa29f5348532e368dd39217246 hrs 56 mins ago0xb338499980fb1fc7b597672d041d51164e278ddd  IN   SmartRoulette0 Ether0.0006312
0x977c896e4574b9c270a06f33062dc4d5a0188bbdff84a537984be01f66ad802839214538 hrs 14 mins ago0x253c081f64c72c1ff1a56d024aed7a03ee19652a  IN   SmartRoulette0 Ether0.00182139
0x75dcc30fb68b6543de3d7b5f3676cdfdb031bcced92c758a4db7615d30bed70e39214048 hrs 27 mins ago0xe8e39e338771b8fbb67ca45a11e178224d435da0  IN   SmartRoulette0 Ether0.0010062
0x3246ff6b5b4e9b28668fa6b7227a62b7988eea453816e743fb8fd0de9fbfb70139213788 hrs 35 mins ago0xe8e39e338771b8fbb67ca45a11e178224d435da0  IN   SmartRoulette0 Ether0.0010046
0xcd8fb944da8e1394e1c04fd126d5e4b233b2a34ae6c9c6fb2b9891da5cda04d839213568 hrs 41 mins ago0xe8e39e338771b8fbb67ca45a11e178224d435da0  IN   SmartRoulette0 Ether0.00254012
0x8d86081faf081208026e608ef0c19e8c7714ec933c151a78cd0226441399d48b392028013 hrs 56 mins ago0xb9c2d405136422708e64c22cb0b972ff08fab35e  IN   SmartRoulette0 Ether0.00130003
0x0a99d24dc06f084d05dff348609e1316bea739e141f2cb96f87052c309bff28f392027114 hrs ago0xb9c2d405136422708e64c22cb0b972ff08fab35e  IN   SmartRoulette0 Ether0.0027
0xe8fb4ed005442e70a9c89542202a0a8a58c5166cdc32acfab1f56fd31781f0e5392022514 hrs 12 mins ago0xd1cbe3a5ec1c628c585a379f4c89833ac9fa7e35  IN   SmartRoulette0 Ether0.000628
0xba875c5be0f4a2d87f99968cf756181efe8ebf9db57db2da746fbe7a55dc8990392019614 hrs 22 mins ago0xb9c2d405136422708e64c22cb0b972ff08fab35e  IN   SmartRoulette0 Ether0.0027
0xdf00ede24dd8243b9989622731db301ebdc87d2dd810ea3c46726e715937f3d1392009614 hrs 54 mins ago0xd2420eca5f9b7d7fd45dbc6955afba04d35714be  IN   SmartRoulette0 Ether0.0006312
0x14f52a80dce306a8e1d5718248cb16434c2892e57b707758320ac22056495ffe392009614 hrs 54 mins ago0x3db7d4c95a9342bd9e7e9e1dfc4f0f703d018fd2  IN   SmartRoulette0 Ether0.00508025
0x32101ad34fef39eceee1e671eca47967cb772d39ba285f078a8fc9e7463ead44391999215 hrs 23 mins ago0xbcf0d0f09c8ba9abed23d451ed41de65179a9e7f  IN   SmartRoulette0 Ether0.0008452
0xb80409a28c989e502d955cec09a8009667bac2ece22ed8d5e3f549314fe19134391982616 hrs 9 mins ago0xe8e39e338771b8fbb67ca45a11e178224d435da0  IN   SmartRoulette0 Ether0.0010046
0xff61d64f6b9cd233aea55c44a28bbd621edcb7249a8274a1694c41e95754b863391968816 hrs 49 mins ago0x6d28515bf27529843f14dc75cc7ee95a4783e3a1  IN   SmartRoulette0 Ether0.00111104
0xab61d0479aaf1e5ba6896dfe35e8a752ddcf83261f82e0630e0821fdd4f5ee6b391915219 hrs 33 mins ago0xfd280367567718c6f11e19712c9a38e1f7a5fd79  IN   SmartRoulette0 Ether0.001256
0x8c4185781ebba3b3f6d6ba4181cc271953dbc4200864fb89428d0a5d1b573a68391904720 hrs 4 mins ago0x5e85affd8bd2626e07ca77729a41ba5ff881d799  IN   SmartRoulette0 Ether0.001256
0xc47056a2ba1544aa755c410e838df8d48886774009c08dd88d83101752ed124a391876621 hrs 24 mins ago0xf00f3f8317f519ae0c5542f3c20eb2602e7fc7fe  IN   SmartRoulette0 Ether0.00052752

[Download: CSV Export ]    
 Internal Transactions as a result of Contract Execution
  Latest 25 Internal Txns, Click here to View More View All
ParentTxHash Block Age From To Value
0x714a67d59529a7a7126c9d043043d7543f08dc6fd08c3656a8aa910783fe2f92372233337 days 22 hrs ago0xcced5b8288086be8c38e23567e684c3740be4d480x2dff87f8892d65f7a97b1287e795405098ae7b7f3.506 Ether
0xaf9b31f45f72b8877486c9dabcdca6e75e25cb883f1918d66d6f94f238783945370095841 days 21 hrs ago0xcced5b8288086be8c38e23567e684c3740be4d480x2dff87f8892d65f7a97b1287e795405098ae7b7f0.5 Ether
0xca6ebdf59c193b517a9b1ffd2c2ea063db3ce99ac0bf67e95b69822ea93703f6370063541 days 22 hrs ago0xcced5b8288086be8c38e23567e684c3740be4d480x2dff87f8892d65f7a97b1287e795405098ae7b7f2.42 Ether
0x1d88e56f425fd78a53ac35f831e179eab2bfcd0761b83c86a21540d064527afd369223043 days 10 hrs ago0xcced5b8288086be8c38e23567e684c3740be4d480x2dff87f8892d65f7a97b1287e795405098ae7b7f68.308 Ether
0x87a942e9effab5992317832230983fb20dd57f9accca12b19001cce6a0ac21df368445944 days 18 hrs ago0xcced5b8288086be8c38e23567e684c3740be4d480x2dff87f8892d65f7a97b1287e795405098ae7b7f10.17 Ether
0x10942982adee33dde25b97318fce9d6156a86b8efbf2f9da75053aa8a420ad5d366062848 days 23 hrs ago0xcced5b8288086be8c38e23567e684c3740be4d480x2dff87f8892d65f7a97b1287e795405098ae7b7f2 Ether
0x1c0fe3d7a8855bbc0068b5400d2f2293f4096e9caaa6555a1775b3498e5887bb361593356 days 21 hrs ago0xcced5b8288086be8c38e23567e684c3740be4d480x2dff87f8892d65f7a97b1287e795405098ae7b7f8.35571 Ether
0x2da888b27874aeda7939800c0a5527657c1c12ddfecb905ce0ec69e1ecc5cfb1359965459 days 18 hrs ago0xcced5b8288086be8c38e23567e684c3740be4d480x2dff87f8892d65f7a97b1287e795405098ae7b7f30.01 Ether
0x31da3004e21b144ff4cb5998d99fcab8e379bd5afb80cfbc60b0f48e4c8ffbc4359905359 days 21 hrs ago0xcced5b8288086be8c38e23567e684c3740be4d480x2dff87f8892d65f7a97b1287e795405098ae7b7f21.75 Ether
0x8aa42adc74e83f0824f85967b0c70c372419aff222ea5abeb05738c6ca530054359844359 days 23 hrs ago0xcced5b8288086be8c38e23567e684c3740be4d480x2dff87f8892d65f7a97b1287e795405098ae7b7f0.18 Ether
0x584c1f168b1806de226ede1fca22eb1b4f29a1713bf7450c93be7c6ac7891c2f358854161 days 16 hrs ago0xcced5b8288086be8c38e23567e684c3740be4d480x2dff87f8892d65f7a97b1287e795405098ae7b7f151.5 Ether
0xc79497e01faa9c253bfe2b0ab181f785b740f497dcf45c61b717423518126de5358771461 days 19 hrs ago0xcced5b8288086be8c38e23567e684c3740be4d480x2dff87f8892d65f7a97b1287e795405098ae7b7f7.5 Ether
0xb79ae876a8ecb51e7d6d5c6b98010ff0d8fad109869235399d22aea69c748066358106762 days 23 hrs ago0xcced5b8288086be8c38e23567e684c3740be4d480x2dff87f8892d65f7a97b1287e795405098ae7b7f42.5 Ether
0x3b53d73a34d5b9aa1b1e5d599f765fc1e748d94c898f7bb9e95af8431de8eab7357290264 days 8 hrs ago0xcced5b8288086be8c38e23567e684c3740be4d480x2dff87f8892d65f7a97b1287e795405098ae7b7f0.18 Ether
0x95675db446c907d62df42bbbcb16c5689b83b4130acf9839c537f5fcc5d88232357287164 days 8 hrs ago0xcced5b8288086be8c38e23567e684c3740be4d480x2dff87f8892d65f7a97b1287e795405098ae7b7f0.9 Ether
0x950cdc2aebb4d7e241363e0f53d030d0de9b04cc9f812df0cc98350c28e5c398355655367 days 4 hrs ago0xcced5b8288086be8c38e23567e684c3740be4d480x2dff87f8892d65f7a97b1287e795405098ae7b7f2.49999999999984 Ether
0x950cdc2aebb4d7e241363e0f53d030d0de9b04cc9f812df0cc98350c28e5c398355655367 days 4 hrs ago0xcced5b8288086be8c38e23567e684c3740be4d480x355907a3144b0fa14edf951ac86a0d16d8987ada0.00000000000016 Ether
0xe209978a9c77720842e05ec0992e408dedef91e849a4baf5799a3221d5e607ee354664668 days 20 hrs ago0xcced5b8288086be8c38e23567e684c3740be4d480x2dff87f8892d65f7a97b1287e795405098ae7b7f9.9999999999999 Ether
0xe209978a9c77720842e05ec0992e408dedef91e849a4baf5799a3221d5e607ee354664668 days 20 hrs ago0xcced5b8288086be8c38e23567e684c3740be4d480x582a710d75b6cc6b3126bb078fdcbe20774df2590.0000000000001 Ether
0x0456104805dd01eecf5adba9e47dceb97d63529b6a4be8653834ab540bbad325354065069 days 21 hrs ago0xcced5b8288086be8c38e23567e684c3740be4d480x2dff87f8892d65f7a97b1287e795405098ae7b7f1.64999999999988 Ether
0x0456104805dd01eecf5adba9e47dceb97d63529b6a4be8653834ab540bbad325354065069 days 21 hrs ago0xcced5b8288086be8c38e23567e684c3740be4d480x355907a3144b0fa14edf951ac86a0d16d8987ada0.00000000000012 Ether
0x9a1471edc32938b66e3113f1286b7d4859bb18880fa5671e2f6edfecbf48c4db352397672 days 18 hrs ago0xcced5b8288086be8c38e23567e684c3740be4d480x2dff87f8892d65f7a97b1287e795405098ae7b7f9.9999999999999 Ether
0x9a1471edc32938b66e3113f1286b7d4859bb18880fa5671e2f6edfecbf48c4db352397672 days 18 hrs ago0xcced5b8288086be8c38e23567e684c3740be4d480x5dd915d0414fc1936d06d187c3c69d743263ae020.0000000000001 Ether
0xe2ae07d942c8fe46f6651657613c75bce548459876d6846a5dab6e56f8fb7091352195573 days 3 hrs ago0xcced5b8288086be8c38e23567e684c3740be4d480x2dff87f8892d65f7a97b1287e795405098ae7b7f10.00999999999998 Ether
0xe2ae07d942c8fe46f6651657613c75bce548459876d6846a5dab6e56f8fb7091352195573 days 3 hrs ago0xcced5b8288086be8c38e23567e684c3740be4d480x4e275a904301eae7912ea75f5db9f1b68a8ba55e0.00000000000002 Ether

[Download: CSV Export ]    
Warning: The compiled contract might be susceptible to SkipEmptyStringLiteral (low-severity), ConstantOptimizerSubtraction (low-severity) Solidity compiler bugs.

Contract Source Code Verified
Contract Name: SmartRouletteToken
Compiler Version: v0.4.8+commit.60cc1668
Optimization Enabled: Yes
Online Solidity Editor:  Click To View



  Contract Source Code   Find Similiar Contracts
pragma solidity ^0.4.8;

contract OldSmartRouletteToken
{
	function balanceOf( address who ) external constant returns (uint256);
	function totalSupply() constant returns (uint supply);
	function tempTokensBalanceOf( address who ) external constant returns (uint256);
	function tempTokensPeriodOf( address who ) external constant returns (uint256);
	function getCountHolders() external constant returns(uint256);
	function getCountTempHolders() external constant returns(uint256);
	function getItemHolders(uint256 index) external constant returns(address);
	function getItemTempHolders(uint256 index) external constant returns(address);
	function isOperationBlocked() external constant returns (bool);
}

contract SmartRouletteToken {
	string public standard = 'ERC20';
    string public name; // token name
    string public symbol; // token symbol
    uint8 public decimals; // a number of symbols after comma

	struct holderData {
		/**
		*	Token holders details
		*/
		uint256 tokens_count;
		bool init;
	}

	struct tempHolderData {
		/**
		*	Temporary token holders details
		*/
		uint256 tokens_count;
		uint256 start_date;
		uint256 end_date;
		bool init;
	}

	address[] listAddrHolders; // permanent token holders list

	mapping( address => holderData ) _balances; // token ownership
	mapping( address => tempHolderData ) _temp_balance; // temporary token ownership
	mapping( address => mapping( address => uint256 ) ) _approvals; // token transfer right

	bool stop_operation; // transaction stop
	
	uint256 _supply; // total amount of tokens
	uint256 _init_count_tokens; // initial amount of tokens
	uint256 public costOfOneToken; // token price equivalent to wei
	
	address wallet_ICO;
	bool enableICO; // ico status (launched or not)
	uint256 min_value_buyToken; //in wei
	uint256 max_value_buyToken; //in wei

	address fond_wallet;
	address developer_wallet;

	address divident_contract = address(0x0);
	
	event TokenBuy(address buyer, uint256 amountOfTokens);

	// emission limits
	uint256 max_value_bet; // maximum size of bet for emission
	uint256 max_coef_player; // maximum size of emission coefficient for a player
	uint256 max_coef_partner; // maximum size of emission coefficient for an affiliate


	address developer; // developer's address
	address manager; // contract managing address (management can be made from the smart contract)

	struct gamesData {
		bool init;
	}

	mapping( address => gamesData) listGames; // List of allowed games
	address[] addrGames;

	//old token contract for data restorage
	OldSmartRouletteToken oldSmartToken;

	uint256 countHoldersTransferredFromOldContract; //amount of permanent token holders whose balance has been restored
	uint256 countHoldersTempTransferredFromOldContract; //amount of temporary token holders whose balance has been restored

	function SmartRouletteToken()
	{
		_init_count_tokens = 100000000000000000;
		developer_wallet = address(0x8521E1f9220A251dE0ab78f6a2E8754Ca9E75242);
		wallet_ICO = address(0x2dff87f8892d65f7a97b1287e795405098ae7b7f);
		fond_wallet = address(0x3501DD2B515EDC1920f9007782Da5ac018922502);

        name = 'Roulette Token';                                   
        symbol = 'RLT';                               
        decimals = 10;
        costOfOneToken = 1500000000000000;

		max_value_bet = 2560000000000000000;
		max_coef_player = 300;
		max_coef_partner = 50;

		developer = msg.sender;
		manager = msg.sender;		
		
		enableICO = false;
		min_value_buyToken = 150000000000000000;
		max_value_buyToken = 500000000000000000000;

		stop_operation = false;

		oldSmartToken = OldSmartRouletteToken(0x2a650356bd894370cc1d6aba71b36c0ad6b3dc18);
		countHoldersTransferredFromOldContract= 0;
		countHoldersTempTransferredFromOldContract = 0;
	}

	modifier isDeveloper(){
		if (msg.sender!=developer) throw;
		_;
	}

	modifier isManager(){
		if (msg.sender!=manager) throw;
		_;
	}

	modifier isAccessStopOperation(){
		if (msg.sender!=manager && msg.sender!=developer && (msg.sender!=divident_contract || divident_contract==address(0x0))) throw;
		_;
	}

	function IsTransferFromOldContractDone() constant returns(bool)
	{
		return countHoldersTransferredFromOldContract == oldSmartToken.getCountHolders();
	}

	/**
    *	restoreAllPersistentTokens() - function of restoring the balance of permanent token holders. Once the function has been completed,
    *	blockchain saves the index with which token holders addresses will start being received during the following function operation.
    *
    *	@param limit - amount of token holders addresses requiring the balance restorage.
    *
    **/
	function restoreAllPersistentTokens(uint256 limit)
	{
		if(oldSmartToken.isOperationBlocked() && this.isOperationBlocked())
		{
			uint256 len = oldSmartToken.getCountHolders();
			uint256 i = countHoldersTransferredFromOldContract;
			for(; i < len; i++)
			{
				address holder = oldSmartToken.getItemHolders(i);
				uint256 count_tokens = oldSmartToken.balanceOf(holder);
				if(holder == address(0x2a650356bd894370cc1d6aba71b36c0ad6b3dc18)) {
					if(!_balances[fond_wallet].init){
						addUserToList(fond_wallet);
						_balances[fond_wallet] = holderData(count_tokens, true);
					}
					else{
						_balances[fond_wallet].tokens_count += count_tokens;
					}
				}
				else{
					addUserToList(holder);
					_balances[holder] = holderData(count_tokens, true);
				}

				_supply += count_tokens;

				if (limit - 1 == 0) break;
				limit--;
			}
			countHoldersTransferredFromOldContract = i;
		}
	}

	function IsTransferTempFromOldContractDone() constant returns(bool)
	{
		return countHoldersTempTransferredFromOldContract == oldSmartToken.getCountTempHolders();
	}

	/**
    *	restoreAllTempTokens() - function of temnporary token balance restorage. Once the function has been completed,
    *	blockchain saves the index with which temporary token holders addresses will start being received during the following function operation.
    *
    *	@param limit - amount of token holders addresses requiring the balance restorage.
    *
    **/
	function restoreAllTempTokens(uint256 limit)
	{
		if(oldSmartToken.isOperationBlocked() && this.isOperationBlocked())
		{
			uint256 len = oldSmartToken.getCountTempHolders();
			uint256 i = countHoldersTempTransferredFromOldContract;
			for(; i < len; i++)
			{
				address holder = oldSmartToken.getItemTempHolders(i);
				uint256 count_tokens = oldSmartToken.tempTokensBalanceOf(holder);

				if(holder == address(0x2a650356bd894370cc1d6aba71b36c0ad6b3dc18)) {
					if(!_balances[fond_wallet].init){
						_balances[fond_wallet] = holderData(count_tokens, true);
						addUserToList(fond_wallet);
					}
					else{
						_balances[fond_wallet].tokens_count += count_tokens;
					}
				}
				else{
					listAddrTempHolders.push(holder);
					uint256 end_date = oldSmartToken.tempTokensPeriodOf(holder);
					_temp_balance[holder] = tempHolderData(count_tokens, now, end_date, true);
				}

				_supply += count_tokens;

				if (limit - 1 == 0) break;
				limit--;
			}
			countHoldersTempTransferredFromOldContract = i;
		}
	}


	function changeDeveloper(address new_developer) isDeveloper
	{
		if(new_developer == address(0x0)) throw;
		developer = new_developer;
	}

	function changeManager(address new_manager) isManager external
	{
		if(new_manager == address(0x0)) throw;
		manager = new_manager;
	}

	function changeMaxValueBetForEmission(uint256 new_value) isManager external
	{
		if(new_value == 0) throw;
		max_value_bet = new_value;
	}

	function changeMaxCoefPlayerForEmission(uint256 new_value) isManager external
	{
		if(new_value > 1000) throw;
		max_coef_player = new_value;
	}

	function changeMaxCoefPartnerForEmission(uint256 new_value) isManager external
	{
		if(new_value > 1000) throw;
		max_coef_partner = new_value;
	}

	function changeDividentContract(address new_contract) isManager external
	{
		if(new_contract!=address(0x0)) throw;
		divident_contract = new_contract;
	}

	function newCostToken(uint256 new_cost)	isManager external
	{
		if(new_cost == 0) throw;
		costOfOneToken = new_cost;
	}

	function getCostToken() external constant returns(uint256)
	{
		return costOfOneToken;
	}

	function addNewGame(address new_game) isManager external
	{
		if(new_game == address(0x0)) throw;
		listGames[new_game] = gamesData(true);
		addrGames.push(new_game);
	}

	function deleteGame(address game) isManager external
	{
		if(game == address(0x0)) throw;
		if(listGames[game].init){
			listGames[game].init = false;
		}
	}

	function addUserToList(address user) internal {
		if(!_balances[user].init){
			listAddrHolders.push(user);
		}
	}

    function getListAddressHolders() constant returns(address[]){
        return listAddrHolders;
    }

    function getCountHolders() external constant returns(uint256){
        return listAddrHolders.length;
    }

    function getItemHolders(uint256 index) external constant returns(address){
        if(index >= listAddrHolders.length) return address(0x0);
        else return listAddrHolders[index];
    }

	function gameListOf( address who ) external constant returns (bool value) {
		gamesData game_data = listGames[who];
		return game_data.init;
	}

	//------------------------------------
	// Tokens Functions
	//------------------------------------
	event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(address indexed owner, address indexed spender, uint256 value);

    function stopOperation() isManager external {
		stop_operation = true;
	}

	function startOperation() isManager external {
		stop_operation = false;
	}

	function isOperationBlocked() external constant returns (bool){
		return stop_operation;
	}

	function isOperationAllowed() external constant returns (bool){
		return !stop_operation;
	}

	function runICO() isManager external {
		enableICO = true;
		stop_operation = true;
	}

	function stopICO() isManager external {
		enableICO = false;
		stop_operation = false;
	}

	function infoICO() constant returns (bool){
		return enableICO;
	}

	function totalSupply() external constant returns (uint256 supply) {
		return _supply;
	}

	function initCountTokens() external constant returns (uint256 init_count) {
		return _init_count_tokens;
	}

	/**
    *  balanceOf() - constant function check concrete tokens balance
    *
    *  @param who - account owner
    *
    *  @return the value of balance
    */
	function balanceOf( address who ) external constant returns (uint256 value) {
		return _balances[who].tokens_count;
	}

	/**
    *
    * allowance() - constant function to check how much is
    *               permitted to spend to 3rd person from owner balance
    *
    *  @param owner   - owner of the balance
    *  @param spender - permitted to spend from this balance person
    *
    *  @return - remaining right to spend
    *
    */
	function allowance(address owner, address spender) constant returns (uint256 _allowance) {
		return _approvals[owner][spender];
	}


	function safeToAdd(uint256 a, uint256 b) internal returns (bool) {
		// overflow check
		return (a + b >= a && a + b >= b);
	}

	/**
    * transfer() - transfer tokens from msg.sender balance
    *              to requested account
    *
    *  @param to    - target address to transfer tokens
    *  @param value - ammount of tokens to transfer
    *
    *  @return - success / failure of the transaction
    */
	function transfer( address to, uint256 value) returns (bool ok) {
		if(this.isOperationBlocked()) throw;

		if( _balances[msg.sender].tokens_count < value ) {
		    throw;
		}
		if( !safeToAdd(_balances[to].tokens_count, value) ) {
		    throw;
		}

		_balances[msg.sender].tokens_count -= value;
		if(_balances[to].init){
			_balances[to].tokens_count += value;
		}
		else{
			addUserToList(to);
			_balances[to] = holderData(value, true);
		}

		Transfer( msg.sender, to, value );
		return true;
	}

	/**
    * transferFrom() - used to move allowed funds from other owner
    *                  account
    *
    *  @param from  - move funds from account
    *  @param to    - move funds to account
    *  @param value - move the value
    *
    *  @return - return true on success false otherwise
    */
	function transferFrom( address from, address to, uint256 value) returns (bool ok) 
	{
		if(this.isOperationBlocked()) throw;

		if( _balances[from].tokens_count < value ) {
		    throw;
		}
		
		if( _approvals[from][msg.sender] < value ) {
		    throw;
		}
		if( !safeToAdd(_balances[to].tokens_count, value) ) {
		    throw;
		}
		// transfer and return true
		_approvals[from][msg.sender] -= value;
		_balances[from].tokens_count -= value;
		if(_balances[to].init){
			_balances[to].tokens_count += value;
		}
		else{
			addUserToList(to);
			_balances[to] = holderData(value, true);
		}		
		
		Transfer( from, to, value );
		return true;
	}

	/**
     *
     * approve() - function approves to a person to spend some tokens from
     *           owner balance.
     *
     *  @param spender - person whom this right been granted.
     *  @param value   - value to spend.
     *
     *  @return true in case of success, otherwise failure
     *
     */
	function approve(address spender, uint256 value) returns (bool ok) 
	{
		if(this.isOperationBlocked()) throw;

		_approvals[msg.sender][spender] = value;
		Approval( msg.sender, spender, value );
		return true;
	}

	event Emission(address indexed to, uint256 value, uint256 bet, uint256 coef, uint256 decimals, uint256 cost_token);

	/**
    *
    *  emission() - emission of tokens initiated by the game contract.
    *
    *  @param player       - player's address.
    *  @param partner      - affiliate's address.
    *  @param value_bet    - player's bet value.
    *  @param coef_player  - player's coefficient emission.
    *  @param coef_partner - affiliate's coefficient emission.
    *
    *  @return (true, 0) in case of success, otherwise (False, error_code)
    *
    *
    *  Error code 1 - operation stoped
    *  Error code 2 - sender address is not in games list
    *  Error code 3 - incorrect player's address
    *  Error code 4 - incorrect value bet
    *  Error code 5 - incorrect emission coefficient
    */
	function emission(address player, address partner, uint256 value_bet, uint256 coef_player, uint256 coef_partner) external returns(uint256, uint8) {
        if(this.isOperationBlocked()) return (0, 1);

        if(listGames[msg.sender].init == false) return (0, 2);
        if(player == address(0x0)) return (0, 3);
        if(value_bet == 0 || value_bet > max_value_bet) return (0, 4);
        if(coef_player > max_coef_player || coef_partner > max_coef_partner) return (0, 5);

		uint256 decimals_token = 10**uint256(decimals);

		uint256 player_token = ((value_bet*coef_player*decimals_token)/10000)/costOfOneToken;
		if(_balances[player].init){
			_balances[player].tokens_count += player_token;
		}
		else{
			addUserToList(player);
			_balances[player] = holderData(player_token, true);
		}
		Emission(player, player_token, value_bet, coef_player, decimals_token, costOfOneToken);

		uint256 partner_token = 0;
		if(partner != address(0x0)){
			partner_token = ((value_bet*coef_partner*decimals_token)/10000)/costOfOneToken;
			if(_balances[partner].init){
				_balances[partner].tokens_count += partner_token;
			}
			else{
				addUserToList(partner);
				_balances[partner] = holderData(partner_token, true);
			}
			Emission(partner, partner_token, value_bet, coef_partner, decimals_token, costOfOneToken);
		}

		_supply += (player_token+partner_token);

		return (player_token, 0);
	}

	//------------------------------------
	// Temporary Tokens
	//------------------------------------
	address[] listAddrTempHolders;
	event TempTokensSend(address indexed recipient, uint256 count, uint256 start, uint256 end);

	/**
     *
     *  sendTempTokens() - sending temporary tokens to address.
     *
     *  @param recipient - recipient's address.
     *  @param count     - temporary tokens amount.
     *  @param period    - period of possession of the tokens in seconds.
     *
     */
	function sendTempTokens(address recipient, uint256 count, uint256 period) isDeveloper {
		if(this.isOperationBlocked()) throw;

		if(count==0 || period==0) throw;
		
		uint256 decimals_token = 10**uint256(decimals);
		count = count*decimals_token;

		if(_balances[fond_wallet].tokens_count < count) throw;
		if(_temp_balance[recipient].tokens_count > 0) throw;

		if(!_temp_balance[recipient].init){
			_temp_balance[recipient] = tempHolderData(count, now, now + period, true);
			listAddrTempHolders.push(recipient);
		}
		else{
			_temp_balance[recipient].tokens_count = count;
			_temp_balance[recipient].start_date = now;
			_temp_balance[recipient].end_date = now + period;
		}
		_balances[fond_wallet].tokens_count -= count;
		TempTokensSend(recipient, count, _temp_balance[recipient].start_date, _temp_balance[recipient].end_date);
	}

	function tempTokensBalanceOf( address who ) external constant returns (uint256) {
		if(_temp_balance[who].end_date < now) return 0;
		else return _temp_balance[who].tokens_count;
	}

	function tempTokensPeriodOf( address who ) external constant returns (uint256) {
		if(_temp_balance[who].end_date < now) return 0;
		else return _temp_balance[who].end_date;
	}

	/**
     *
     *  returnTempTokens() - return of temporary tokens after the expiration of possession time.
     *
     *  @param recipient - temporary token holder address.
     *
     */
	function returnTempTokens(address recipient) isDeveloper {
		if(this.isOperationBlocked()) throw;
		
		if(_temp_balance[recipient].tokens_count == 0) throw;

		_balances[fond_wallet].tokens_count += _temp_balance[recipient].tokens_count;
		_temp_balance[recipient].tokens_count = 0;
		_temp_balance[recipient].start_date = 0;
		_temp_balance[recipient].end_date = 0;
	}

	function getListTempHolders() constant returns(address[]){
		return listAddrTempHolders;
	}

	function getCountTempHolders() external constant returns(uint256){
		return listAddrTempHolders.length;
	}

	function getItemTempHolders(uint256 index) external constant returns(address){
		if(index >= listAddrTempHolders.length) return address(0x0);
		else return listAddrTempHolders[index];
	}

	//------------------------------------
	// Invest Functions
	//------------------------------------

	function() payable
	{	
		if(this.isOperationBlocked()) throw;
		if(msg.sender == developer) throw;
		if(msg.sender == manager) throw;
		if(msg.sender == developer_wallet) throw;
		if(msg.sender == wallet_ICO) throw;
		if(msg.sender == fond_wallet) throw;

		if(listGames[msg.sender].init) throw;

		if(enableICO == false) throw;
			
		if(msg.value < min_value_buyToken) throw;
		
		uint256 value_send = msg.value;
		if(value_send > max_value_buyToken){
			value_send = max_value_buyToken;
			if(msg.sender.send(msg.value-max_value_buyToken)==false) throw;
		}

		uint256 decimals_token = 10**uint256(decimals);
		
		uint256 count_tokens = (value_send*decimals_token)/costOfOneToken;
		
		if(count_tokens >_balances[wallet_ICO].tokens_count ){
			count_tokens = _balances[wallet_ICO].tokens_count;
		}
		if(value_send > (count_tokens*costOfOneToken)/decimals_token){				
			if(msg.sender.send(value_send-((count_tokens*costOfOneToken)/decimals_token))==false) throw;
			value_send = (count_tokens*costOfOneToken)/decimals_token;
		}

		if(!_balances[msg.sender].init){
			if (_balances[wallet_ICO].tokens_count < count_tokens) throw;
			addUserToList(msg.sender);
			_balances[wallet_ICO].tokens_count -= count_tokens;
			_balances[msg.sender] = holderData(count_tokens, true);
		}
		else{
			if(((_balances[msg.sender].tokens_count*costOfOneToken)/decimals_token)+((count_tokens*costOfOneToken)/decimals_token)>max_value_buyToken) {
				count_tokens = ((max_value_buyToken*decimals_token)/costOfOneToken)-_balances[msg.sender].tokens_count;					
				if(msg.sender.send(value_send-((count_tokens*costOfOneToken)/decimals_token))==false) throw;
				value_send = (count_tokens*costOfOneToken)/decimals_token;
			}

			if (_balances[wallet_ICO].tokens_count < count_tokens) throw;
			_balances[wallet_ICO].tokens_count -= count_tokens;
			_balances[msg.sender].tokens_count += count_tokens;
		}

		if(value_send>0){
			if(wallet_ICO.send(value_send)==false) throw;
		}

		if(count_tokens>0){
			TokenBuy(msg.sender, count_tokens);
		}

		if(_balances[wallet_ICO].tokens_count == 0){
			enableICO = false;
		}
	}
}

  Contract ABI  
[{"constant":true,"inputs":[{"name":"who","type":"address"}],"name":"tempTokensBalanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"getListAddressHolders","outputs":[{"name":"","type":"address[]"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"spender","type":"address"},{"name":"value","type":"uint256"}],"name":"approve","outputs":[{"name":"ok","type":"bool"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"player","type":"address"},{"name":"partner","type":"address"},{"name":"value_bet","type":"uint256"},{"name":"coef_player","type":"uint256"},{"name":"coef_partner","type":"uint256"}],"name":"emission","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint8"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"recipient","type":"address"},{"name":"count","type":"uint256"},{"name":"period","type":"uint256"}],"name":"sendTempTokens","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"isOperationBlocked","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"supply","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"who","type":"address"}],"name":"tempTokensPeriodOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"from","type":"address"},{"name":"to","type":"address"},{"name":"value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"ok","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"IsTransferFromOldContractDone","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"new_developer","type":"address"}],"name":"changeDeveloper","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"getCountHolders","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"new_value","type":"uint256"}],"name":"changeMaxValueBetForEmission","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"infoICO","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"IsTransferTempFromOldContractDone","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"standard","outputs":[{"name":"","type":"string"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"new_cost","type":"uint256"}],"name":"newCostToken","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"who","type":"address"}],"name":"balanceOf","outputs":[{"name":"value","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"new_contract","type":"address"}],"name":"changeDividentContract","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"game","type":"address"}],"name":"deleteGame","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"index","type":"uint256"}],"name":"getItemTempHolders","outputs":[{"name":"","type":"address"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"costOfOneToken","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"recipient","type":"address"}],"name":"returnTempTokens","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"new_manager","type":"address"}],"name":"changeManager","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"to","type":"address"},{"name":"value","type":"uint256"}],"name":"transfer","outputs":[{"name":"ok","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"isOperationAllowed","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"stopOperation","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"limit","type":"uint256"}],"name":"restoreAllPersistentTokens","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"new_value","type":"uint256"}],"name":"changeMaxCoefPlayerForEmission","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"runICO","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"stopICO","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"index","type":"uint256"}],"name":"getItemHolders","outputs":[{"name":"","type":"address"}],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"startOperation","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"limit","type":"uint256"}],"name":"restoreAllTempTokens","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"getCountTempHolders","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"owner","type":"address"},{"name":"spender","type":"address"}],"name":"allowance","outputs":[{"name":"_allowance","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"getCostToken","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"new_value","type":"uint256"}],"name":"changeMaxCoefPartnerForEmission","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"who","type":"address"}],"name":"gameListOf","outputs":[{"name":"value","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"initCountTokens","outputs":[{"name":"init_count","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"getListTempHolders","outputs":[{"name":"","type":"address[]"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"new_game","type":"address"}],"name":"addNewGame","outputs":[],"payable":false,"type":"function"},{"inputs":[],"payable":false,"type":"constructor"},{"payable":true,"type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"buyer","type":"address"},{"indexed":false,"name":"amountOfTokens","type":"uint256"}],"name":"TokenBuy","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"},{"indexed":true,"name":"spender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"},{"indexed":false,"name":"bet","type":"uint256"},{"indexed":false,"name":"coef","type":"uint256"},{"indexed":false,"name":"decimals","type":"uint256"},{"indexed":false,"name":"cost_token","type":"uint256"}],"name":"Emission","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"recipient","type":"address"},{"indexed":false,"name":"count","type":"uint256"},{"indexed":false,"name":"start","type":"uint256"},{"indexed":false,"name":"end","type":"uint256"}],"name":"TempTokensSend","type":"event"}]

  Contract Creation Code Switch To Opcodes View
60a0604052600560608190527f45524332300000000000000000000000000000000000000000000000000000006080908152600080548180527f455243323000000000000000000000000000000000000000000000000000000a825590927f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563602060026001851615610100026000190190941693909304601f0192909204820192909190620000d9565b82800160010185558215620000d9579182015b82811115620000d9578251825591602001919060010190620000bc565b5b50620000fd9291505b80821115620000f95760008155600101620000e3565b5090565b505060118054600160a060020a03191690553462000000575b67016345785d8a0000600a5560108054600160a060020a0319908116738521e1f9220a251de0ab78f6a2e8754ca9e7524217909155600c80548216732dff87f8892d65f7a97b1287e795405098ae7b7f179055600f8054909116733501dd2b515edc1920f9007782da5ac01892250217905560408051808201909152600e8082527f526f756c6574746520546f6b656e0000000000000000000000000000000000006020928301908152600180546000829052825160ff1916601c1782559093601f60026000198488161561010002019093169290920491909101047fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf690810192916200024e565b828001600101855582156200024e579182015b828111156200024e57825182559160200191906001019062000231565b5b50620002729291505b80821115620000f95760008155600101620000e3565b5090565b50506040805180820190915260038082527f524c54000000000000000000000000000000000000000000000000000000000060209283019081526002805460008290528251600660ff1990911617825590937f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace60018316156101000260001901909216859004601f01048101929162000336565b8280016001018555821562000336579182015b828111156200033657825182559160200191906001019062000319565b5b506200035a9291505b80821115620000f95760008155600101620000e3565b5090565b50506003805460ff19908116600a179091556605543df729c000600b55672386f26fc100000060125561012c601355603260145560158054600160a060020a033316600160a060020a03199182168117909255601680548216909217909155600c805460a060020a60ff0219169055670214e8348c4f0000600d55681b1ae4d6e2ef500000600e556008805490921690915560198054909116732a650356bd894370cc1d6aba71b36c0ad6b3dc181790556000601a819055601b555b5b612c0780620004276000396000f300606060405236156102095763ffffffff60e060020a600035041663067eeeac81146106eb57806306fdde031461071657806307eb752e146107a3578063095ea7b31461080b5780630f762cfe1461083b578063159b4e911461087e57806315cff5461461089f57806318160ddd146108c05780631b2051f6146108df57806323b872dd1461090a5780632a6389dc1461094057806331119b4d14610961578063313ce5671461097c57806334a4a5271461099f5780633e675cb0146109be57806344d02c2a146109d05780634513a7f4146109f15780635a3b7e4214610a12578063662da45914610a9f57806370a0823114610ab15780637dd2899f14610adc5780638406ab8214610af757806394cfb3d814610b1257806395d89b4114610b3e5780639d8a021214610bcb578063a09d4ae414610bea578063a3fbbaae14610c05578063a9059cbb14610c20578063ae26373014610c50578063b812138514610c71578063b9f7d24214610c80578063bfafb91c14610c92578063c3d58d9514610ca4578063c8e569a814610cb3578063cbea441214610cc2578063d5afd6bc14610cee578063d84acf2014610cfd578063dc787bba14610d0f578063dd62ed3e14610d2e578063e1f4895a14610d5f578063e257699814610d7e578063e77f990614610d90578063ec0b420714610dbd578063eda23f2014610ddc578063f2b8551514610e44575b6106e95b60006000600030600160a060020a03166315cff5466000604051602001526040518163ffffffff1660e060020a028152600401809050602060405180830381600087803b156100005760325a03f1156100005750506040515115905061027257610000565b60155433600160a060020a039081169116141561028e57610000565b60165433600160a060020a03908116911614156102aa57610000565b60105433600160a060020a03908116911614156102c657610000565b600c5433600160a060020a03908116911614156102e257610000565b600f5433600160a060020a03908116911614156102fe57610000565b600160a060020a03331660009081526017602052604090205460ff161561032457610000565b600c5460a060020a900460ff16151561033c57610000565b600d5434101561034b57610000565b349250600e5483111561039157600e54604051909350600160a060020a033316903485900380156108fc02916000818181858888f1151593506103919250505057610000565b5b600354600b5460ff909116600a0a9250838302811561000057600c54600160a060020a031660009081526005602052604090205491900491508111156103ef5750600c54600160a060020a03166000908152600560205260409020545b81600b548202811561000057048311156104555733600160a060020a03166108fc83600b5484028115610000576040519190048603801590920291906000818181858888f1151593506104459250505057610000565b81600b5482028115610000570492505b600160a060020a03331660009081526005602052604090206001015460ff16151561050c57600c54600160a060020a0316600090815260056020526040902054819010156104a257610000565b6104ab33610e5f565b600c54600160a060020a03908116600090815260056020818152604080842080548790039055805180820182528681526001818401818152339097168652939092529092209151825591519101805460ff1916911515919091179055610624565b600e5482600b548302811561000057600b54600160a060020a0333166000908152600560205260409020549290910491859102811561000057040111156105ca57600160a060020a033316600090815260056020526040902054600b54600e5484028115610000570403905033600160a060020a03166108fc83600b5484028115610000576040519190048603801590920291906000818181858888f1151593506105ba9250505057610000565b81600b5482028115610000570492505b600c54600160a060020a0316600090815260056020526040902054819010156105f257610000565b600c54600160a060020a0390811660009081526005602052604080822080548590039055339092168152208054820190555b600083111561066257600c54604051600160a060020a039091169084156108fc029085906000818181858888f1151593506106629250505057610000565b5b60008111156106b15760408051600160a060020a03331681526020810183905281517f0c031f45b18305561115944c48c15b7aef3fdfe9182afbf6b01c249542ec6a11929181900390910190a15b600c54600160a060020a031660009081526005602052604090205415156106e357600c805460a060020a60ff02191690555b5b505050565b005b3461000057610704600160a060020a0360043516610efc565b60408051918252519081900360200190f35b3461000057610723610f49565b604080516020808252835181830152835191928392908301918501908083838215610769575b80518252602083111561076957601f199092019160209182019101610749565b505050905090810190601f1680156107955780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34610000576107b0610fd6565b60408051602080825283518183015283519192839290830191858101910280838382156107f8575b8051825260208311156107f857601f1990920191602091820191016107d8565b5050509050019250505060405180910390f35b3461000057610827600160a060020a0360043516602435611041565b604080519115158252519081900360200190f35b3461000057610863600160a060020a0360043581169060243516604435606435608435611109565b6040805192835260ff90911660208301528051918290030190f35b34610000576106e9600160a060020a036004351660243560443561145c565b005b3461000057610827611703565b604080519115158252519081900360200190f35b346100005761070461170d565b60408051918252519081900360200190f35b3461000057610704600160a060020a0360043516611714565b60408051918252519081900360200190f35b3461000057610827600160a060020a0360043581169060243516604435611768565b604080519115158252519081900360200190f35b3461000057610827611969565b604080519115158252519081900360200190f35b34610000576106e9600160a060020a03600435166119ce565b005b3461000057610989611a1e565b6040805160ff9092168252519081900360200190f35b3461000057610704611a27565b60408051918252519081900360200190f35b34610000576106e9600435611a2e565b005b3461000057610827611a5f565b604080519115158252519081900360200190f35b3461000057610827611a70565b604080519115158252519081900360200190f35b3461000057610723611ad5565b604080516020808252835181830152835191928392908301918501908083838215610769575b80518252602083111561076957601f199092019160209182019101610749565b505050905090810190601f1680156107955780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34610000576106e9600435611b63565b005b3461000057610704600160a060020a0360043516611b94565b60408051918252519081900360200190f35b34610000576106e9600160a060020a0360043516611bb3565b005b34610000576106e9600160a060020a0360043516611c02565b005b3461000057610b22600435611c79565b60408051600160a060020a039092168252519081900360200190f35b3461000057610723611cc6565b604080516020808252835181830152835191928392908301918501908083838215610769575b80518252602083111561076957601f199092019160209182019101610749565b505050905090810190601f1680156107955780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3461000057610704611d51565b60408051918252519081900360200190f35b34610000576106e9600160a060020a0360043516611d57565b005b34610000576106e9600160a060020a0360043516611e45565b005b3461000057610827600160a060020a0360043516602435611e95565b604080519115158252519081900360200190f35b3461000057610827612043565b604080519115158252519081900360200190f35b34610000576106e961204e565b005b34610000576106e960043561207a565b005b34610000576106e960043561240c565b005b34610000576106e9612440565b005b34610000576106e9612482565b005b3461000057610b226004356124bb565b60408051600160a060020a039092168252519081900360200190f35b34610000576106e9612508565b005b34610000576106e9600435612531565b005b34610000576107046129d7565b60408051918252519081900360200190f35b3461000057610704600160a060020a03600435811690602435166129de565b60408051918252519081900360200190f35b3461000057610704612a0b565b60408051918252519081900360200190f35b34610000576106e9600435612a12565b005b3461000057610827600160a060020a0360043516612a46565b604080519115158252519081900360200190f35b3461000057610704612a6b565b60408051918252519081900360200190f35b34610000576107b0612a72565b60408051602080825283518183015283519192839290830191858101910280838382156107f8575b8051825260208311156107f857601f1990920191602091820191016107d8565b5050509050019250505060405180910390f35b34610000576106e9600160a060020a0360043516612add565b005b600160a060020a03811660009081526005602052604090206001015460ff161515610ef85760048054806001018281815481835581811511610ec657600083815260209020610ec69181019083015b80821115610ec25760008155600101610eae565b5090565b5b505050916000526020600020900160005b8154600160a060020a038086166101009390930a92830292021916179055505b5b50565b600160a060020a03811660009081526006602052604081206002015442901015610f2857506000610f43565b50600160a060020a0381166000908152600660205260409020545b5b919050565b60018054604080516020600284861615610100026000190190941693909304601f81018490048402820184019092528181529291830182828015610fce5780601f10610fa357610100808354040283529160200191610fce565b820191906000526020600020905b815481529060010190602001808311610fb157829003601f168201915b505050505081565b60408051602081810183526000825260048054845181840281018401909552808552929392909183018282801561103657602002820191906000526020600020905b8154600160a060020a03168152600190910190602001808311611018575b505050505090505b90565b600030600160a060020a03166315cff5466000604051602001526040518163ffffffff1660e060020a028152600401809050602060405180830381600087803b156100005760325a03f115610000575050604051511590506110a257610000565b600160a060020a03338116600081815260076020908152604080832094881680845294825291829020869055815186815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a35060015b92915050565b6000600060006000600030600160a060020a03166315cff5466000604051602001526040518163ffffffff1660e060020a028152600401809050602060405180830381600087803b156100005760325a03f1156100005750506040515115905061117a57600094506001935061144f565b600160a060020a03331660009081526017602052604090205460ff1615156111a957600094506002935061144f565b600160a060020a038a1615156111c657600094506003935061144f565b8715806111d4575060125488115b156111e657600094506004935061144f565b6013548711806111f7575060145486115b1561120957600094506005935061144f565b600354600b5460ff909116600a0a9350612710898902850204811561000057600160a060020a038c16600090815260056020526040902060010154919004925060ff161561127457600160a060020a038a1660009081526005602052604090208054830190556112c2565b61127d8a610e5f565b60408051808201825283815260016020808301828152600160a060020a038f16600090815260059092529390209151825591519101805460ff19169115159190911790555b600b5460408051848152602081018b90528082018a905260608101869052608081019290925251600160a060020a038c16917f7d19c7776f05049226f581a23a4df896c65115763d8ec30490658efc4e8649cd919081900360a00190a2506000600160a060020a0389161561143b57600b54612710898802850204811561000057600160a060020a038b16600090815260056020526040902060010154919004915060ff161561138f57600160a060020a03891660009081526005602052604090208054820190556113dd565b61139889610e5f565b60408051808201825282815260016020808301828152600160a060020a038e16600090815260059092529390209151825591519101805460ff19169115159190911790555b600b5460408051838152602081018b905280820189905260608101869052608081019290925251600160a060020a038b16917f7d19c7776f05049226f581a23a4df896c65115763d8ec30490658efc4e8649cd919081900360a00190a25b600980548383010190559093506000925083905b5050509550959350505050565b60155460009033600160a060020a0390811691161461147a57610000565b30600160a060020a03166315cff5466000604051602001526040518163ffffffff1660e060020a028152600401809050602060405180830381600087803b156100005760325a03f115610000575050604051511590506114d957610000565b8215806114e4575081155b156114ee57610000565b50600354600f54600160a060020a031660009081526005602052604090205460ff909116600a0a92830292908390101561152757610000565b600160a060020a038416600090815260066020526040812054111561154b57610000565b600160a060020a03841660009081526006602052604090206003015460ff1615156116515760408051608081018252848152426020808301828152918601838501908152600160608501818152600160a060020a038b166000908152600690945295909220935184559151838201559051600283015591516003909101805460ff1916911515919091179055601c8054918201808255909190828183801582901161161b5760008381526020902061161b9181019083015b80821115610ec25760008155600101610eae565b5090565b5b505050916000526020600020900160005b8154600160a060020a038089166101009390930a928302920219161790555061167d565b600160a060020a0384166000908152600660205260409020838155426001820181905583016002909101555b600f54600160a060020a039081166000908152600560209081526040808320805488900390559287168083526006825291839020600181015460029091015484518881529283019190915281840152915190917fe618f558755e452b06d0601df03415708e328cfe09b29d8a3dc9f52867762cd5919081900360600190a25b5b50505050565b60085460ff165b90565b6009545b90565b600160a060020a0381166000908152600660205260408120600201544290101561174057506000610f43565b50600160a060020a038116600090815260066020526040902060020154610f43565b5b919050565b600030600160a060020a03166315cff5466000604051602001526040518163ffffffff1660e060020a028152600401809050602060405180830381600087803b156100005760325a03f115610000575050604051511590506117c957610000565b600160a060020a038416600090815260056020526040902054829010156117ef57610000565b600160a060020a03808516600090815260076020908152604080832033909416835292905220548290101561182357610000565b600160a060020a0383166000908152600560205260409020546118469083612bbc565b151561185157610000565b600160a060020a03808516600081815260076020908152604080832033861684528252808320805488900390559282526005905281812080548690039055918516825290206001015460ff16156118c557600160a060020a0383166000908152600560205260409020805483019055611913565b6118ce83610e5f565b60408051808201825283815260016020808301828152600160a060020a038816600090815260059092529390209151825591519101805460ff19169115159190911790555b82600160a060020a031684600160a060020a03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a35060015b9392505050565b6019546040805160006020918201819052825160e060020a6334a4a52702815292519093600160a060020a0316926334a4a52792600480830193919282900301818787803b156100005760325a03f11561000057505060405151601a54149150505b90565b60155433600160a060020a039081169116146119e957610000565b600160a060020a03811615156119fe57610000565b60158054600160a060020a031916600160a060020a0383161790555b5b50565b60035460ff1681565b6004545b90565b60165433600160a060020a03908116911614611a4957610000565b801515611a5557610000565b60128190555b5b50565b600c5460a060020a900460ff165b90565b6019546040805160006020918201819052825160e160020a636e3c3ddd02815292519093600160a060020a03169263dc787bba92600480830193919282900301818787803b156100005760325a03f11561000057505060405151601b54149150505b90565b6000805460408051602060026001851615610100026000190190941693909304601f81018490048402820184019092528181529291830182828015610fce5780601f10610fa357610100808354040283529160200191610fce565b820191906000526020600020905b815481529060010190602001808311610fb157829003601f168201915b505050505081565b60165433600160a060020a03908116911614611b7e57610000565b801515611b8a57610000565b600b8190555b5b50565b600160a060020a0381166000908152600560205260409020545b919050565b60165433600160a060020a03908116911614611bce57610000565b600160a060020a03811615611be257610000565b60118054600160a060020a031916600160a060020a0383161790555b5b50565b60165433600160a060020a03908116911614611c1d57610000565b600160a060020a0381161515611c3257610000565b600160a060020a03811660009081526017602052604090205460ff1615610ef857600160a060020a0381166000908152601760205260409020805460ff191690555b5b5b50565b601c546000908210611c8d57506000610f43565b601c82815481101561000057906000526020600020900160005b9054906101000a9004600160a060020a03169050610f43565b5b919050565b6002805460408051602060018416156101000260001901909316849004601f81018490048402820184019092528181529291830182828015610fce5780601f10610fa357610100808354040283529160200191610fce565b820191906000526020600020905b815481529060010190602001808311610fb157829003601f168201915b505050505081565b600b5481565b60155433600160a060020a03908116911614611d7257610000565b30600160a060020a03166315cff5466000604051602001526040518163ffffffff1660e060020a028152600401809050602060405180830381600087803b156100005760325a03f11561000057505060405151159050611dd157610000565b600160a060020a0381166000908152600660205260409020541515611df557610000565b600160a060020a0380821660008181526006602081815260408084208054600f549097168552600583529084208054909601909555928252909152808255600182018190556002909101555b5b50565b60165433600160a060020a03908116911614611e6057610000565b600160a060020a0381161515611e7557610000565b60168054600160a060020a031916600160a060020a0383161790555b5b50565b600030600160a060020a03166315cff5466000604051602001526040518163ffffffff1660e060020a028152600401809050602060405180830381600087803b156100005760325a03f11561000057505060405151159050611ef657610000565b600160a060020a03331660009081526005602052604090205482901015611f1c57610000565b600160a060020a038316600090815260056020526040902054611f3f9083612bbc565b1515611f4a57610000565b600160a060020a03338116600090815260056020526040808220805486900390559185168152206001015460ff1615611fa057600160a060020a0383166000908152600560205260409020805483019055611fee565b611fa983610e5f565b60408051808201825283815260016020808301828152600160a060020a038816600090815260059092529390209151825591519101805460ff19169115159190911790555b82600160a060020a031633600160a060020a03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a35060015b92915050565b60085460ff16155b90565b60165433600160a060020a0390811691161461206957610000565b6008805460ff191660011790555b5b565b6000600060006000601960009054906101000a9004600160a060020a0316600160a060020a03166315cff5466000604051602001526040518163ffffffff1660e060020a028152600401809050602060405180830381600087803b156100005760325a03f1156100005750506040515190508015612149575030600160a060020a03166315cff5466000604051602001526040518163ffffffff1660e060020a028152600401809050602060405180830381600087803b156100005760325a03f1156100005750506040515190505b15612404576019546040805160006020918201819052825160e060020a6334a4a5270281529251600160a060020a03909416936334a4a5279360048082019493918390030190829087803b156100005760325a03f11561000057505060405151601a549095509350505b838310156123fe57601954604080516000602091820181905282517fcbea4412000000000000000000000000000000000000000000000000000000008152600481018890529251600160a060020a039094169363cbea44129360248082019493918390030190829087803b156100005760325a03f1156100005750506040805180516019546000602093840181905284517f70a08231000000000000000000000000000000000000000000000000000000008152600160a060020a03808516600483015295519398509490911694506370a08231936024808201949392918390030190829087803b156100005760325a03f11561000057505060405151915050600160a060020a038216732a650356bd894370cc1d6aba71b36c0ad6b3dc18141561238557600f54600160a060020a031660009081526005602052604090206001015460ff16151561235f57600f5461231490600160a060020a0316610e5f565b60408051808201825282815260016020808301828152600f54600160a060020a0316600090815260059092529390209151825591519101805460ff1916911515919091179055612380565b600f54600160a060020a031660009081526005602052604090208054820190555b6123d3565b61238e82610e5f565b60408051808201825282815260016020808301828152600160a060020a038716600090815260059092529390209151825591519101805460ff19169115159190911790555b6009805482019055600019850115156123eb576123fe565b600019909401935b6001909201916121b3565b601a8390555b5b5050505050565b60165433600160a060020a0390811691161461242757610000565b6103e881111561243657610000565b60138190555b5b50565b60165433600160a060020a0390811691161461245b57610000565b600c805460a060020a60ff02191660a060020a1790556008805460ff191660011790555b5b565b60165433600160a060020a0390811691161461249d57610000565b600c805460a060020a60ff02191690556008805460ff191690555b5b565b60045460009082106124cf57506000610f43565b600482815481101561000057906000526020600020900160005b9054906101000a9004600160a060020a03169050610f43565b5b919050565b60165433600160a060020a0390811691161461252357610000565b6008805460ff191690555b5b565b60006000600060006000601960009054906101000a9004600160a060020a0316600160a060020a03166315cff5466000604051602001526040518163ffffffff1660e060020a028152600401809050602060405180830381600087803b156100005760325a03f1156100005750506040515190508015612602575030600160a060020a03166315cff5466000604051602001526040518163ffffffff1660e060020a028152600401809050602060405180830381600087803b156100005760325a03f1156100005750506040515190505b156129ce576019546040805160006020918201819052825160e160020a636e3c3ddd0281529251600160a060020a039094169363dc787bba9360048082019493918390030190829087803b156100005760325a03f11561000057505060405151601b549096509450505b848410156129c857601954604080516000602091820181905282517f94cfb3d8000000000000000000000000000000000000000000000000000000008152600481018990529251600160a060020a03909416936394cfb3d89360248082019493918390030190829087803b156100005760325a03f1156100005750506040805180516019546000602093840181905284517f067eeeac000000000000000000000000000000000000000000000000000000008152600160a060020a038085166004830152955193995094909116945063067eeeac936024808201949392918390030190829087803b156100005760325a03f11561000057505060405151925050600160a060020a038316732a650356bd894370cc1d6aba71b36c0ad6b3dc18141561283a57600f54600160a060020a031660009081526005602052604090206001015460ff1615156128145760408051808201825283815260016020808301828152600f8054600160a060020a039081166000908152600590945295909220935184555192909101805460ff1916921515929092179091555461280f9116610e5f565b612835565b600f54600160a060020a031660009081526005602052604090208054830190555b61299d565b601c805480600101828181548183558181151161287c5760008381526020902061287c9181019083015b80821115610ec25760008155600101610eae565b5090565b5b505050916000526020600020900160005b85909190916101000a815481600160a060020a030219169083600160a060020a0316021790555050601960009054906101000a9004600160a060020a0316600160a060020a0316631b2051f6846000604051602001526040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050602060405180830381600087803b156100005760325a03f115610000575050604080518051608082018352858252426020808401918252838501838152600160608601818152600160a060020a038c1660009081526006909452969092209451855591519084015551600283015591516003909101805460ff19169115159190911790559150505b6009805483019055600019860115156129b5576129c8565b600019909501945b60019093019261266c565b601b8490555b5b505050505050565b601c545b90565b600160a060020a038083166000908152600760209081526040808320938516835292905220545b92915050565b600b545b90565b60165433600160a060020a03908116911614612a2d57610000565b6103e8811115612a3c57610000565b60148190555b5b50565b600160a060020a0381166000908152601760205260409020805460ff16905b50919050565b600a545b90565b604080516020818101835260008252601c8054845181840281018401909552808552929392909183018282801561103657602002820191906000526020600020905b8154600160a060020a03168152600190910190602001808311611018575b505050505090505b90565b60165433600160a060020a03908116911614612af857610000565b600160a060020a0381161515612b0d57610000565b60408051602080820183526001808352600160a060020a038516600090815260179092529290209051815460ff1916901515179055601880549182018082559091908281838015829011610ec657600083815260209020610ec69181019083015b80821115610ec25760008155600101610eae565b5090565b5b505050916000526020600020900160005b8154600160a060020a038086166101009390930a92830292021916179055505b5b50565b60008282840110158015612bd257508182840110155b90505b929150505600a165627a7a72305820f447564ef5a20e883bf5c5519d2567087097c1daab1c4ecd501e250a6889ea640029

   Swarm Source:
bzzr://f447564ef5a20e883bf5c5519d2567087097c1daab1c4ecd501e250a6889ea64
View All
Block Age txn Difficulty GasUsed Reward
View All
Block Age UncleNumber Difficulty GasUsed Reward
Make sure to use the "downvote" button for any spammy posts, and the "upvote" for interesting conversations.