Sponsored Link:   Synapse - Decentralized Data & AI Marketplace. TOKEN SALE LIVE - Save 50%.
Contract Overview | SmartRoulette
ETH Balance: 0 Ether
ETH USD Value: $0
No Of Transactions: 4188 txns
Token Tracker 0xcced5b8288086be8c38e23567e684c3740be4d48
  Latest 25 txns from a total Of 4188 transactions View All

TxHash Age From To Value [TxFee]
0xffd5cecbd51f393c5649636f03fa546af6cfcf15c300355b0747e7556761d5464 days 3 hrs ago0x6d28515bf27529843f14dc75cc7ee95a4783e3a1  IN   SmartRoulette0 Ether0.00055424
0xaf67f5bad6ad6619aa453ee42d3d173b441761c6c1c4048d470ecb77c0e6c60e4 days 12 hrs ago0x51e767d1de3c080164cf698c80c73fd6c66f7830  IN   SmartRoulette0 Ether0.000025184
0x64dcbbc5da76a8079565dfc2ecfbb8283a97001d7f86995f8032e93636f4a19b5 days 3 hrs ago0x6d28515bf27529843f14dc75cc7ee95a4783e3a1  IN   SmartRoulette0 Ether0.000221696
0x4c5c1a72f547d529dc6a14ef3e9368dcac67e8a51ee8bf43230a2728810a44245 days 8 hrs ago0x51e767d1de3c080164cf698c80c73fd6c66f7830  IN   SmartRoulette0 Ether0.000201472
0xa50535c8477538097d938a3fd19d1053652f2e58b001c23715d3ccff4b51ffd25 days 9 hrs ago0xfab3e927fc300a80ea0e7e5d98c5b3f4df96ee2d  IN   SmartRoulette0 Ether0.000025184
0xb5f8a7a41b6dcaf2231d4e517c05b212337218a23279f88504ea6273dd4bcae36 days 3 hrs ago0x6d28515bf27529843f14dc75cc7ee95a4783e3a1  IN   SmartRoulette0 Ether0.000221696
0xde7e9224b388b6fef1f2dec5b2776e6e8751ed5bc41c77e75ed1657716b085187 days 3 hrs ago0x6d28515bf27529843f14dc75cc7ee95a4783e3a1  IN   SmartRoulette0 Ether0.000110848
0xa9cae114b321526a5d64115af3f3f79a881fbada4d563c3968912d2a283b492e7 days 8 hrs ago0xcd0b7c78292fe083800cd479d05aa32c5be5b6d2  IN   SmartRoulette0 Ether0.000528864
0xc482d31709ead44a9c4e6b9356f526227f5eadf52663f132a45513ef074d54888 days 3 hrs ago0x6d28515bf27529843f14dc75cc7ee95a4783e3a1  IN   SmartRoulette0 Ether0.00055424
0x36d2f9ec4e00ca74cf9e7302b1c65ffb742ca390205f7b3d82b52148dea1afd88 days 12 hrs ago0xe8e39e338771b8fbb67ca45a11e178224d435da0  IN   SmartRoulette0 Ether0.0010046
0x29309c6970715aa4756812cde0aaf56f513d0468afe3cbae20154b20f2891bdc8 days 15 hrs ago0x12775e0dbe06536eeac67c209cc94843946d13ee  IN   SmartRoulette0 Ether0.000484344
0xec1a38c9d047aeb9d830a8bda89851ad3f0e4afab88e37ce8b055a1158127ce29 days 3 hrs ago0x6d28515bf27529843f14dc75cc7ee95a4783e3a1  IN   SmartRoulette0 Ether0.000581952
0x11bfbe84b8234b5466998728831e7c5f02bdbade99767ef244639377cbc4f7db9 days 5 hrs ago0x1254a59bbaf93abc56d6f078f5e507fbad9c85d4  IN   SmartRoulette0 Ether0.000528864
0x1916b872f3455c342be89034df0489eebc531874f1a5803832053f5ea1e72f169 days 5 hrs ago0x51e767d1de3c080164cf698c80c73fd6c66f7830  IN   SmartRoulette0 Ether0.000528864
0x04fcc91aa041fe70522ed27574ad32e2487461bec4fda56734da2ee8e48838369 days 20 hrs ago0x1254a59bbaf93abc56d6f078f5e507fbad9c85d4  IN   SmartRoulette0 Ether0.000604416
0x4b7d20be73f5b504489a7786ad7bfb17b30debf5248019248c283e0109b9b7cd10 days 3 hrs ago0x6d28515bf27529843f14dc75cc7ee95a4783e3a1  IN   SmartRoulette0 Ether0.000609664
0xed461315137e97dcd6be893091f6f692b626827692a0e70f9b8088ab130fef3911 days 3 hrs ago0x6d28515bf27529843f14dc75cc7ee95a4783e3a1  IN   SmartRoulette0 Ether0.000581952
0xe6a41f7c9449cff528234c575f5e40574c4ab4cfb3f63efd16df356600a1d7d011 days 6 hrs ago0x6109a2620e607f76e5b0b24cfa860238a78f2f0d  IN   SmartRoulette0 Ether0.0006296
0x3f41c702a1b9b48732eaa7611990315c703303c12e6ca3278a10801f9ba0eeef11 days 7 hrs ago0x045e718cc8bf15f93ea31e94e95b6ce5ea2fa423  IN   SmartRoulette0 Ether0.000843864
0x6240e0617def9e0dbbc158968e3ed755810d04ef8715f2999215cc131fb6e00111 days 13 hrs ago0x8ac6de3568dcc186ce6e6592b2a8eac61dacc88f  IN   SmartRoulette0 Ether0.0006296
0x48d8eebf9dd0bee06efb59410bed7c5d3dd2d20d6b5233557e813b396998ecdc11 days 14 hrs ago0x56b0a985555932e6a5aa603a310f4d6e811473c9  IN   SmartRoulette0 Ether0.001820049
0xe84da5d6d4c70c0dc17fdf2a839f72fa473cde326c8f052f60f8e33db47b5ab412 days 2 hrs ago0xbc1622c154acf4134c96f75e9acf493c06250ac2  IN   SmartRoulette0 Ether0.0006312
0x42e603daca346779c6f56e8492d326e4e9ae815f9cbdf1bd12fcf76c14a493ca12 days 2 hrs ago0x1a8a67603eacb511b6aad692061bb8184bf0c5d1  IN   SmartRoulette0 Ether0.00080496
0xbf4145412332f96abed2c59a557de6339c95e3fc9858d0ec408d2171dc7c655112 days 3 hrs ago0x6d28515bf27529843f14dc75cc7ee95a4783e3a1  IN   SmartRoulette0 Ether0.000617551507
0xbbd8996ffe030586084dc660ae2acf2a56b65bc2d0095813c1b3574d73313d8612 days 6 hrs ago0xe8e39e338771b8fbb67ca45a11e178224d435da0  IN   SmartRoulette0 Ether0.0010046
[ 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
0x714a67d59529a7a7126c9d043043d7543f08dc6fd08c3656a8aa910783fe2f923722333159 days 8 hrs ago0xcced5b8288086be8c38e23567e684c3740be4d480x2dff87f8892d65f7a97b1287e795405098ae7b7f3.506 Ether
0xaf9b31f45f72b8877486c9dabcdca6e75e25cb883f1918d66d6f94f2387839453700958163 days 7 hrs ago0xcced5b8288086be8c38e23567e684c3740be4d480x2dff87f8892d65f7a97b1287e795405098ae7b7f0.5 Ether
0xca6ebdf59c193b517a9b1ffd2c2ea063db3ce99ac0bf67e95b69822ea93703f63700635163 days 8 hrs ago0xcced5b8288086be8c38e23567e684c3740be4d480x2dff87f8892d65f7a97b1287e795405098ae7b7f2.42 Ether
0x1d88e56f425fd78a53ac35f831e179eab2bfcd0761b83c86a21540d064527afd3692230164 days 20 hrs ago0xcced5b8288086be8c38e23567e684c3740be4d480x2dff87f8892d65f7a97b1287e795405098ae7b7f68.308 Ether
0x87a942e9effab5992317832230983fb20dd57f9accca12b19001cce6a0ac21df3684459166 days 5 hrs ago0xcced5b8288086be8c38e23567e684c3740be4d480x2dff87f8892d65f7a97b1287e795405098ae7b7f10.17 Ether
0x10942982adee33dde25b97318fce9d6156a86b8efbf2f9da75053aa8a420ad5d3660628170 days 10 hrs ago0xcced5b8288086be8c38e23567e684c3740be4d480x2dff87f8892d65f7a97b1287e795405098ae7b7f2 Ether
0x1c0fe3d7a8855bbc0068b5400d2f2293f4096e9caaa6555a1775b3498e5887bb3615933178 days 8 hrs ago0xcced5b8288086be8c38e23567e684c3740be4d480x2dff87f8892d65f7a97b1287e795405098ae7b7f8.35571 Ether
0x2da888b27874aeda7939800c0a5527657c1c12ddfecb905ce0ec69e1ecc5cfb13599654181 days 5 hrs ago0xcced5b8288086be8c38e23567e684c3740be4d480x2dff87f8892d65f7a97b1287e795405098ae7b7f30.01 Ether
0x31da3004e21b144ff4cb5998d99fcab8e379bd5afb80cfbc60b0f48e4c8ffbc43599053181 days 7 hrs ago0xcced5b8288086be8c38e23567e684c3740be4d480x2dff87f8892d65f7a97b1287e795405098ae7b7f21.75 Ether
0x8aa42adc74e83f0824f85967b0c70c372419aff222ea5abeb05738c6ca5300543598443181 days 10 hrs ago0xcced5b8288086be8c38e23567e684c3740be4d480x2dff87f8892d65f7a97b1287e795405098ae7b7f0.18 Ether
0x584c1f168b1806de226ede1fca22eb1b4f29a1713bf7450c93be7c6ac7891c2f3588541183 days 2 hrs ago0xcced5b8288086be8c38e23567e684c3740be4d480x2dff87f8892d65f7a97b1287e795405098ae7b7f151.5 Ether
0xc79497e01faa9c253bfe2b0ab181f785b740f497dcf45c61b717423518126de53587714183 days 6 hrs ago0xcced5b8288086be8c38e23567e684c3740be4d480x2dff87f8892d65f7a97b1287e795405098ae7b7f7.5 Ether
0xb79ae876a8ecb51e7d6d5c6b98010ff0d8fad109869235399d22aea69c7480663581067184 days 9 hrs ago0xcced5b8288086be8c38e23567e684c3740be4d480x2dff87f8892d65f7a97b1287e795405098ae7b7f42.5 Ether
0x3b53d73a34d5b9aa1b1e5d599f765fc1e748d94c898f7bb9e95af8431de8eab73572902185 days 19 hrs ago0xcced5b8288086be8c38e23567e684c3740be4d480x2dff87f8892d65f7a97b1287e795405098ae7b7f0.18 Ether
0x95675db446c907d62df42bbbcb16c5689b83b4130acf9839c537f5fcc5d882323572871185 days 19 hrs ago0xcced5b8288086be8c38e23567e684c3740be4d480x2dff87f8892d65f7a97b1287e795405098ae7b7f0.9 Ether
0x950cdc2aebb4d7e241363e0f53d030d0de9b04cc9f812df0cc98350c28e5c3983556553188 days 14 hrs ago0xcced5b8288086be8c38e23567e684c3740be4d480x2dff87f8892d65f7a97b1287e795405098ae7b7f2.49999999999984 Ether
0x950cdc2aebb4d7e241363e0f53d030d0de9b04cc9f812df0cc98350c28e5c3983556553188 days 14 hrs ago0xcced5b8288086be8c38e23567e684c3740be4d480x355907a3144b0fa14edf951ac86a0d16d8987ada0.00000000000016 Ether
0xe209978a9c77720842e05ec0992e408dedef91e849a4baf5799a3221d5e607ee3546646190 days 7 hrs ago0xcced5b8288086be8c38e23567e684c3740be4d480x2dff87f8892d65f7a97b1287e795405098ae7b7f9.9999999999999 Ether
0xe209978a9c77720842e05ec0992e408dedef91e849a4baf5799a3221d5e607ee3546646190 days 7 hrs ago0xcced5b8288086be8c38e23567e684c3740be4d480x582a710d75b6cc6b3126bb078fdcbe20774df2590.0000000000001 Ether
0x0456104805dd01eecf5adba9e47dceb97d63529b6a4be8653834ab540bbad3253540650191 days 8 hrs ago0xcced5b8288086be8c38e23567e684c3740be4d480x2dff87f8892d65f7a97b1287e795405098ae7b7f1.64999999999988 Ether
0x0456104805dd01eecf5adba9e47dceb97d63529b6a4be8653834ab540bbad3253540650191 days 8 hrs ago0xcced5b8288086be8c38e23567e684c3740be4d480x355907a3144b0fa14edf951ac86a0d16d8987ada0.00000000000012 Ether
0x9a1471edc32938b66e3113f1286b7d4859bb18880fa5671e2f6edfecbf48c4db3523976194 days 5 hrs ago0xcced5b8288086be8c38e23567e684c3740be4d480x2dff87f8892d65f7a97b1287e795405098ae7b7f9.9999999999999 Ether
0x9a1471edc32938b66e3113f1286b7d4859bb18880fa5671e2f6edfecbf48c4db3523976194 days 5 hrs ago0xcced5b8288086be8c38e23567e684c3740be4d480x5dd915d0414fc1936d06d187c3c69d743263ae020.0000000000001 Ether
0xe2ae07d942c8fe46f6651657613c75bce548459876d6846a5dab6e56f8fb70913521955194 days 13 hrs ago0xcced5b8288086be8c38e23567e684c3740be4d480x2dff87f8892d65f7a97b1287e795405098ae7b7f10.00999999999998 Ether
0xe2ae07d942c8fe46f6651657613c75bce548459876d6846a5dab6e56f8fb70913521955194 days 13 hrs ago0xcced5b8288086be8c38e23567e684c3740be4d480x4e275a904301eae7912ea75f5db9f1b68a8ba55e0.00000000000002 Ether
[ Download CSV Export  ] 
Contract Name: SmartRouletteToken
Compiler Version: v0.4.8+commit.60cc1668
Optimization Enabled: Yes
Runs (Optimiser):  200



  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.