ETH Price: $1,542.11 (-14.83%)

Token

RouletteToken (RLT)
 

Overview

Max Total Supply

12,181,421.5293058128 RLT

Holders

2,051 (0.00%)

Total Transfers

-

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 10 Decimals)

Loading...
Loading
Loading...
Loading
Loading...
Loading

OVERVIEW

Developed and launched the prototype of «European Roulette» game based on Ethereum smart contract.

ICO Information

ICO Start Date : Apr 07, 2017   
ICO End Date : Apr 09, 2017
Total Cap  : 10,000,000 RLT
ICO Price  : $0.07 | 0.0015 ETH

# Exchange Pair Price  24H Volume % Volume

Contract Source Code Verified (Exact Match)

Contract Name:
SmartRouletteToken

Compiler Version
v0.4.8+commit.60cc1668

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2017-04-06
*/

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 Security Audit

Contract ABI

API
[{"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"}]

60a0604052600560608190527f45524332300000000000000000000000000000000000000000000000000000006080908152600080548180527f455243323000000000000000000000000000000000000000000000000000000a825590927f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563602060026001851615610100026000190190941693909304601f0192909204820192909190620000d9565b82800160010185558215620000d9579182015b82811115620000d9578251825591602001919060010190620000bc565b5b50620000fd9291505b80821115620000f95760008155600101620000e3565b5090565b505060118054600160a060020a03191690553462000000575b67016345785d8a0000600a5560108054600160a060020a0319908116738521e1f9220a251de0ab78f6a2e8754ca9e7524217909155600c80548216732dff87f8892d65f7a97b1287e795405098ae7b7f179055600f8054909116733501dd2b515edc1920f9007782da5ac01892250217905560408051808201909152600e8082527f526f756c6574746520546f6b656e0000000000000000000000000000000000006020928301908152600180546000829052825160ff1916601c1782559093601f60026000198488161561010002019093169290920491909101047fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf690810192916200024e565b828001600101855582156200024e579182015b828111156200024e57825182559160200191906001019062000231565b5b50620002729291505b80821115620000f95760008155600101620000e3565b5090565b50506040805180820190915260038082527f524c54000000000000000000000000000000000000000000000000000000000060209283019081526002805460008290528251600660ff1990911617825590937f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace60018316156101000260001901909216859004601f01048101929162000336565b8280016001018555821562000336579182015b828111156200033657825182559160200191906001019062000319565b5b506200035a9291505b80821115620000f95760008155600101620000e3565b5090565b50506003805460ff19908116600a179091556605543df729c000600b55672386f26fc100000060125561012c601355603260145560158054600160a060020a033316600160a060020a03199182168117909255601680548216909217909155600c805460a060020a60ff0219169055670214e8348c4f0000600d55681b1ae4d6e2ef500000600e556008805490921690915560198054909116732a650356bd894370cc1d6aba71b36c0ad6b3dc181790556000601a819055601b555b5b612c0780620004276000396000f300606060405236156102095763ffffffff60e060020a600035041663067eeeac81146106eb57806306fdde031461071657806307eb752e146107a3578063095ea7b31461080b5780630f762cfe1461083b578063159b4e911461087e57806315cff5461461089f57806318160ddd146108c05780631b2051f6146108df57806323b872dd1461090a5780632a6389dc1461094057806331119b4d14610961578063313ce5671461097c57806334a4a5271461099f5780633e675cb0146109be57806344d02c2a146109d05780634513a7f4146109f15780635a3b7e4214610a12578063662da45914610a9f57806370a0823114610ab15780637dd2899f14610adc5780638406ab8214610af757806394cfb3d814610b1257806395d89b4114610b3e5780639d8a021214610bcb578063a09d4ae414610bea578063a3fbbaae14610c05578063a9059cbb14610c20578063ae26373014610c50578063b812138514610c71578063b9f7d24214610c80578063bfafb91c14610c92578063c3d58d9514610ca4578063c8e569a814610cb3578063cbea441214610cc2578063d5afd6bc14610cee578063d84acf2014610cfd578063dc787bba14610d0f578063dd62ed3e14610d2e578063e1f4895a14610d5f578063e257699814610d7e578063e77f990614610d90578063ec0b420714610dbd578063eda23f2014610ddc578063f2b8551514610e44575b6106e95b60006000600030600160a060020a03166315cff5466000604051602001526040518163ffffffff1660e060020a028152600401809050602060405180830381600087803b156100005760325a03f1156100005750506040515115905061027257610000565b60155433600160a060020a039081169116141561028e57610000565b60165433600160a060020a03908116911614156102aa57610000565b60105433600160a060020a03908116911614156102c657610000565b600c5433600160a060020a03908116911614156102e257610000565b600f5433600160a060020a03908116911614156102fe57610000565b600160a060020a03331660009081526017602052604090205460ff161561032457610000565b600c5460a060020a900460ff16151561033c57610000565b600d5434101561034b57610000565b349250600e5483111561039157600e54604051909350600160a060020a033316903485900380156108fc02916000818181858888f1151593506103919250505057610000565b5b600354600b5460ff909116600a0a9250838302811561000057600c54600160a060020a031660009081526005602052604090205491900491508111156103ef5750600c54600160a060020a03166000908152600560205260409020545b81600b548202811561000057048311156104555733600160a060020a03166108fc83600b5484028115610000576040519190048603801590920291906000818181858888f1151593506104459250505057610000565b81600b5482028115610000570492505b600160a060020a03331660009081526005602052604090206001015460ff16151561050c57600c54600160a060020a0316600090815260056020526040902054819010156104a257610000565b6104ab33610e5f565b600c54600160a060020a03908116600090815260056020818152604080842080548790039055805180820182528681526001818401818152339097168652939092529092209151825591519101805460ff1916911515919091179055610624565b600e5482600b548302811561000057600b54600160a060020a0333166000908152600560205260409020549290910491859102811561000057040111156105ca57600160a060020a033316600090815260056020526040902054600b54600e5484028115610000570403905033600160a060020a03166108fc83600b5484028115610000576040519190048603801590920291906000818181858888f1151593506105ba9250505057610000565b81600b5482028115610000570492505b600c54600160a060020a0316600090815260056020526040902054819010156105f257610000565b600c54600160a060020a0390811660009081526005602052604080822080548590039055339092168152208054820190555b600083111561066257600c54604051600160a060020a039091169084156108fc029085906000818181858888f1151593506106629250505057610000565b5b60008111156106b15760408051600160a060020a03331681526020810183905281517f0c031f45b18305561115944c48c15b7aef3fdfe9182afbf6b01c249542ec6a11929181900390910190a15b600c54600160a060020a031660009081526005602052604090205415156106e357600c805460a060020a60ff02191690555b5b505050565b005b3461000057610704600160a060020a0360043516610efc565b60408051918252519081900360200190f35b3461000057610723610f49565b604080516020808252835181830152835191928392908301918501908083838215610769575b80518252602083111561076957601f199092019160209182019101610749565b505050905090810190601f1680156107955780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34610000576107b0610fd6565b60408051602080825283518183015283519192839290830191858101910280838382156107f8575b8051825260208311156107f857601f1990920191602091820191016107d8565b5050509050019250505060405180910390f35b3461000057610827600160a060020a0360043516602435611041565b604080519115158252519081900360200190f35b3461000057610863600160a060020a0360043581169060243516604435606435608435611109565b6040805192835260ff90911660208301528051918290030190f35b34610000576106e9600160a060020a036004351660243560443561145c565b005b3461000057610827611703565b604080519115158252519081900360200190f35b346100005761070461170d565b60408051918252519081900360200190f35b3461000057610704600160a060020a0360043516611714565b60408051918252519081900360200190f35b3461000057610827600160a060020a0360043581169060243516604435611768565b604080519115158252519081900360200190f35b3461000057610827611969565b604080519115158252519081900360200190f35b34610000576106e9600160a060020a03600435166119ce565b005b3461000057610989611a1e565b6040805160ff9092168252519081900360200190f35b3461000057610704611a27565b60408051918252519081900360200190f35b34610000576106e9600435611a2e565b005b3461000057610827611a5f565b604080519115158252519081900360200190f35b3461000057610827611a70565b604080519115158252519081900360200190f35b3461000057610723611ad5565b604080516020808252835181830152835191928392908301918501908083838215610769575b80518252602083111561076957601f199092019160209182019101610749565b505050905090810190601f1680156107955780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34610000576106e9600435611b63565b005b3461000057610704600160a060020a0360043516611b94565b60408051918252519081900360200190f35b34610000576106e9600160a060020a0360043516611bb3565b005b34610000576106e9600160a060020a0360043516611c02565b005b3461000057610b22600435611c79565b60408051600160a060020a039092168252519081900360200190f35b3461000057610723611cc6565b604080516020808252835181830152835191928392908301918501908083838215610769575b80518252602083111561076957601f199092019160209182019101610749565b505050905090810190601f1680156107955780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3461000057610704611d51565b60408051918252519081900360200190f35b34610000576106e9600160a060020a0360043516611d57565b005b34610000576106e9600160a060020a0360043516611e45565b005b3461000057610827600160a060020a0360043516602435611e95565b604080519115158252519081900360200190f35b3461000057610827612043565b604080519115158252519081900360200190f35b34610000576106e961204e565b005b34610000576106e960043561207a565b005b34610000576106e960043561240c565b005b34610000576106e9612440565b005b34610000576106e9612482565b005b3461000057610b226004356124bb565b60408051600160a060020a039092168252519081900360200190f35b34610000576106e9612508565b005b34610000576106e9600435612531565b005b34610000576107046129d7565b60408051918252519081900360200190f35b3461000057610704600160a060020a03600435811690602435166129de565b60408051918252519081900360200190f35b3461000057610704612a0b565b60408051918252519081900360200190f35b34610000576106e9600435612a12565b005b3461000057610827600160a060020a0360043516612a46565b604080519115158252519081900360200190f35b3461000057610704612a6b565b60408051918252519081900360200190f35b34610000576107b0612a72565b60408051602080825283518183015283519192839290830191858101910280838382156107f8575b8051825260208311156107f857601f1990920191602091820191016107d8565b5050509050019250505060405180910390f35b34610000576106e9600160a060020a0360043516612add565b005b600160a060020a03811660009081526005602052604090206001015460ff161515610ef85760048054806001018281815481835581811511610ec657600083815260209020610ec69181019083015b80821115610ec25760008155600101610eae565b5090565b5b505050916000526020600020900160005b8154600160a060020a038086166101009390930a92830292021916179055505b5b50565b600160a060020a03811660009081526006602052604081206002015442901015610f2857506000610f43565b50600160a060020a0381166000908152600660205260409020545b5b919050565b60018054604080516020600284861615610100026000190190941693909304601f81018490048402820184019092528181529291830182828015610fce5780601f10610fa357610100808354040283529160200191610fce565b820191906000526020600020905b815481529060010190602001808311610fb157829003601f168201915b505050505081565b60408051602081810183526000825260048054845181840281018401909552808552929392909183018282801561103657602002820191906000526020600020905b8154600160a060020a03168152600190910190602001808311611018575b505050505090505b90565b600030600160a060020a03166315cff5466000604051602001526040518163ffffffff1660e060020a028152600401809050602060405180830381600087803b156100005760325a03f115610000575050604051511590506110a257610000565b600160a060020a03338116600081815260076020908152604080832094881680845294825291829020869055815186815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a35060015b92915050565b6000600060006000600030600160a060020a03166315cff5466000604051602001526040518163ffffffff1660e060020a028152600401809050602060405180830381600087803b156100005760325a03f1156100005750506040515115905061117a57600094506001935061144f565b600160a060020a03331660009081526017602052604090205460ff1615156111a957600094506002935061144f565b600160a060020a038a1615156111c657600094506003935061144f565b8715806111d4575060125488115b156111e657600094506004935061144f565b6013548711806111f7575060145486115b1561120957600094506005935061144f565b600354600b5460ff909116600a0a9350612710898902850204811561000057600160a060020a038c16600090815260056020526040902060010154919004925060ff161561127457600160a060020a038a1660009081526005602052604090208054830190556112c2565b61127d8a610e5f565b60408051808201825283815260016020808301828152600160a060020a038f16600090815260059092529390209151825591519101805460ff19169115159190911790555b600b5460408051848152602081018b90528082018a905260608101869052608081019290925251600160a060020a038c16917f7d19c7776f05049226f581a23a4df896c65115763d8ec30490658efc4e8649cd919081900360a00190a2506000600160a060020a0389161561143b57600b54612710898802850204811561000057600160a060020a038b16600090815260056020526040902060010154919004915060ff161561138f57600160a060020a03891660009081526005602052604090208054820190556113dd565b61139889610e5f565b60408051808201825282815260016020808301828152600160a060020a038e16600090815260059092529390209151825591519101805460ff19169115159190911790555b600b5460408051838152602081018b905280820189905260608101869052608081019290925251600160a060020a038b16917f7d19c7776f05049226f581a23a4df896c65115763d8ec30490658efc4e8649cd919081900360a00190a25b600980548383010190559093506000925083905b5050509550959350505050565b60155460009033600160a060020a0390811691161461147a57610000565b30600160a060020a03166315cff5466000604051602001526040518163ffffffff1660e060020a028152600401809050602060405180830381600087803b156100005760325a03f115610000575050604051511590506114d957610000565b8215806114e4575081155b156114ee57610000565b50600354600f54600160a060020a031660009081526005602052604090205460ff909116600a0a92830292908390101561152757610000565b600160a060020a038416600090815260066020526040812054111561154b57610000565b600160a060020a03841660009081526006602052604090206003015460ff1615156116515760408051608081018252848152426020808301828152918601838501908152600160608501818152600160a060020a038b166000908152600690945295909220935184559151838201559051600283015591516003909101805460ff1916911515919091179055601c8054918201808255909190828183801582901161161b5760008381526020902061161b9181019083015b80821115610ec25760008155600101610eae565b5090565b5b505050916000526020600020900160005b8154600160a060020a038089166101009390930a928302920219161790555061167d565b600160a060020a0384166000908152600660205260409020838155426001820181905583016002909101555b600f54600160a060020a039081166000908152600560209081526040808320805488900390559287168083526006825291839020600181015460029091015484518881529283019190915281840152915190917fe618f558755e452b06d0601df03415708e328cfe09b29d8a3dc9f52867762cd5919081900360600190a25b5b50505050565b60085460ff165b90565b6009545b90565b600160a060020a0381166000908152600660205260408120600201544290101561174057506000610f43565b50600160a060020a038116600090815260066020526040902060020154610f43565b5b919050565b600030600160a060020a03166315cff5466000604051602001526040518163ffffffff1660e060020a028152600401809050602060405180830381600087803b156100005760325a03f115610000575050604051511590506117c957610000565b600160a060020a038416600090815260056020526040902054829010156117ef57610000565b600160a060020a03808516600090815260076020908152604080832033909416835292905220548290101561182357610000565b600160a060020a0383166000908152600560205260409020546118469083612bbc565b151561185157610000565b600160a060020a03808516600081815260076020908152604080832033861684528252808320805488900390559282526005905281812080548690039055918516825290206001015460ff16156118c557600160a060020a0383166000908152600560205260409020805483019055611913565b6118ce83610e5f565b60408051808201825283815260016020808301828152600160a060020a038816600090815260059092529390209151825591519101805460ff19169115159190911790555b82600160a060020a031684600160a060020a03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a35060015b9392505050565b6019546040805160006020918201819052825160e060020a6334a4a52702815292519093600160a060020a0316926334a4a52792600480830193919282900301818787803b156100005760325a03f11561000057505060405151601a54149150505b90565b60155433600160a060020a039081169116146119e957610000565b600160a060020a03811615156119fe57610000565b60158054600160a060020a031916600160a060020a0383161790555b5b50565b60035460ff1681565b6004545b90565b60165433600160a060020a03908116911614611a4957610000565b801515611a5557610000565b60128190555b5b50565b600c5460a060020a900460ff165b90565b6019546040805160006020918201819052825160e160020a636e3c3ddd02815292519093600160a060020a03169263dc787bba92600480830193919282900301818787803b156100005760325a03f11561000057505060405151601b54149150505b90565b6000805460408051602060026001851615610100026000190190941693909304601f81018490048402820184019092528181529291830182828015610fce5780601f10610fa357610100808354040283529160200191610fce565b820191906000526020600020905b815481529060010190602001808311610fb157829003601f168201915b505050505081565b60165433600160a060020a03908116911614611b7e57610000565b801515611b8a57610000565b600b8190555b5b50565b600160a060020a0381166000908152600560205260409020545b919050565b60165433600160a060020a03908116911614611bce57610000565b600160a060020a03811615611be257610000565b60118054600160a060020a031916600160a060020a0383161790555b5b50565b60165433600160a060020a03908116911614611c1d57610000565b600160a060020a0381161515611c3257610000565b600160a060020a03811660009081526017602052604090205460ff1615610ef857600160a060020a0381166000908152601760205260409020805460ff191690555b5b5b50565b601c546000908210611c8d57506000610f43565b601c82815481101561000057906000526020600020900160005b9054906101000a9004600160a060020a03169050610f43565b5b919050565b6002805460408051602060018416156101000260001901909316849004601f81018490048402820184019092528181529291830182828015610fce5780601f10610fa357610100808354040283529160200191610fce565b820191906000526020600020905b815481529060010190602001808311610fb157829003601f168201915b505050505081565b600b5481565b60155433600160a060020a03908116911614611d7257610000565b30600160a060020a03166315cff5466000604051602001526040518163ffffffff1660e060020a028152600401809050602060405180830381600087803b156100005760325a03f11561000057505060405151159050611dd157610000565b600160a060020a0381166000908152600660205260409020541515611df557610000565b600160a060020a0380821660008181526006602081815260408084208054600f549097168552600583529084208054909601909555928252909152808255600182018190556002909101555b5b50565b60165433600160a060020a03908116911614611e6057610000565b600160a060020a0381161515611e7557610000565b60168054600160a060020a031916600160a060020a0383161790555b5b50565b600030600160a060020a03166315cff5466000604051602001526040518163ffffffff1660e060020a028152600401809050602060405180830381600087803b156100005760325a03f11561000057505060405151159050611ef657610000565b600160a060020a03331660009081526005602052604090205482901015611f1c57610000565b600160a060020a038316600090815260056020526040902054611f3f9083612bbc565b1515611f4a57610000565b600160a060020a03338116600090815260056020526040808220805486900390559185168152206001015460ff1615611fa057600160a060020a0383166000908152600560205260409020805483019055611fee565b611fa983610e5f565b60408051808201825283815260016020808301828152600160a060020a038816600090815260059092529390209151825591519101805460ff19169115159190911790555b82600160a060020a031633600160a060020a03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a35060015b92915050565b60085460ff16155b90565b60165433600160a060020a0390811691161461206957610000565b6008805460ff191660011790555b5b565b6000600060006000601960009054906101000a9004600160a060020a0316600160a060020a03166315cff5466000604051602001526040518163ffffffff1660e060020a028152600401809050602060405180830381600087803b156100005760325a03f1156100005750506040515190508015612149575030600160a060020a03166315cff5466000604051602001526040518163ffffffff1660e060020a028152600401809050602060405180830381600087803b156100005760325a03f1156100005750506040515190505b15612404576019546040805160006020918201819052825160e060020a6334a4a5270281529251600160a060020a03909416936334a4a5279360048082019493918390030190829087803b156100005760325a03f11561000057505060405151601a549095509350505b838310156123fe57601954604080516000602091820181905282517fcbea4412000000000000000000000000000000000000000000000000000000008152600481018890529251600160a060020a039094169363cbea44129360248082019493918390030190829087803b156100005760325a03f1156100005750506040805180516019546000602093840181905284517f70a08231000000000000000000000000000000000000000000000000000000008152600160a060020a03808516600483015295519398509490911694506370a08231936024808201949392918390030190829087803b156100005760325a03f11561000057505060405151915050600160a060020a038216732a650356bd894370cc1d6aba71b36c0ad6b3dc18141561238557600f54600160a060020a031660009081526005602052604090206001015460ff16151561235f57600f5461231490600160a060020a0316610e5f565b60408051808201825282815260016020808301828152600f54600160a060020a0316600090815260059092529390209151825591519101805460ff1916911515919091179055612380565b600f54600160a060020a031660009081526005602052604090208054820190555b6123d3565b61238e82610e5f565b60408051808201825282815260016020808301828152600160a060020a038716600090815260059092529390209151825591519101805460ff19169115159190911790555b6009805482019055600019850115156123eb576123fe565b600019909401935b6001909201916121b3565b601a8390555b5b5050505050565b60165433600160a060020a0390811691161461242757610000565b6103e881111561243657610000565b60138190555b5b50565b60165433600160a060020a0390811691161461245b57610000565b600c805460a060020a60ff02191660a060020a1790556008805460ff191660011790555b5b565b60165433600160a060020a0390811691161461249d57610000565b600c805460a060020a60ff02191690556008805460ff191690555b5b565b60045460009082106124cf57506000610f43565b600482815481101561000057906000526020600020900160005b9054906101000a9004600160a060020a03169050610f43565b5b919050565b60165433600160a060020a0390811691161461252357610000565b6008805460ff191690555b5b565b60006000600060006000601960009054906101000a9004600160a060020a0316600160a060020a03166315cff5466000604051602001526040518163ffffffff1660e060020a028152600401809050602060405180830381600087803b156100005760325a03f1156100005750506040515190508015612602575030600160a060020a03166315cff5466000604051602001526040518163ffffffff1660e060020a028152600401809050602060405180830381600087803b156100005760325a03f1156100005750506040515190505b156129ce576019546040805160006020918201819052825160e160020a636e3c3ddd0281529251600160a060020a039094169363dc787bba9360048082019493918390030190829087803b156100005760325a03f11561000057505060405151601b549096509450505b848410156129c857601954604080516000602091820181905282517f94cfb3d8000000000000000000000000000000000000000000000000000000008152600481018990529251600160a060020a03909416936394cfb3d89360248082019493918390030190829087803b156100005760325a03f1156100005750506040805180516019546000602093840181905284517f067eeeac000000000000000000000000000000000000000000000000000000008152600160a060020a038085166004830152955193995094909116945063067eeeac936024808201949392918390030190829087803b156100005760325a03f11561000057505060405151925050600160a060020a038316732a650356bd894370cc1d6aba71b36c0ad6b3dc18141561283a57600f54600160a060020a031660009081526005602052604090206001015460ff1615156128145760408051808201825283815260016020808301828152600f8054600160a060020a039081166000908152600590945295909220935184555192909101805460ff1916921515929092179091555461280f9116610e5f565b612835565b600f54600160a060020a031660009081526005602052604090208054830190555b61299d565b601c805480600101828181548183558181151161287c5760008381526020902061287c9181019083015b80821115610ec25760008155600101610eae565b5090565b5b505050916000526020600020900160005b85909190916101000a815481600160a060020a030219169083600160a060020a0316021790555050601960009054906101000a9004600160a060020a0316600160a060020a0316631b2051f6846000604051602001526040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050602060405180830381600087803b156100005760325a03f115610000575050604080518051608082018352858252426020808401918252838501838152600160608601818152600160a060020a038c1660009081526006909452969092209451855591519084015551600283015591516003909101805460ff19169115159190911790559150505b6009805483019055600019860115156129b5576129c8565b600019909501945b60019093019261266c565b601b8490555b5b505050505050565b601c545b90565b600160a060020a038083166000908152600760209081526040808320938516835292905220545b92915050565b600b545b90565b60165433600160a060020a03908116911614612a2d57610000565b6103e8811115612a3c57610000565b60148190555b5b50565b600160a060020a0381166000908152601760205260409020805460ff16905b50919050565b600a545b90565b604080516020818101835260008252601c8054845181840281018401909552808552929392909183018282801561103657602002820191906000526020600020905b8154600160a060020a03168152600190910190602001808311611018575b505050505090505b90565b60165433600160a060020a03908116911614612af857610000565b600160a060020a0381161515612b0d57610000565b60408051602080820183526001808352600160a060020a038516600090815260179092529290209051815460ff1916901515179055601880549182018082559091908281838015829011610ec657600083815260209020610ec69181019083015b80821115610ec25760008155600101610eae565b5090565b5b505050916000526020600020900160005b8154600160a060020a038086166101009390930a92830292021916179055505b5b50565b60008282840110158015612bd257508182840110155b90505b929150505600a165627a7a72305820f447564ef5a20e883bf5c5519d2567087097c1daab1c4ecd501e250a6889ea640029

Deployed Bytecode

0x606060405236156102095763ffffffff60e060020a600035041663067eeeac81146106eb57806306fdde031461071657806307eb752e146107a3578063095ea7b31461080b5780630f762cfe1461083b578063159b4e911461087e57806315cff5461461089f57806318160ddd146108c05780631b2051f6146108df57806323b872dd1461090a5780632a6389dc1461094057806331119b4d14610961578063313ce5671461097c57806334a4a5271461099f5780633e675cb0146109be57806344d02c2a146109d05780634513a7f4146109f15780635a3b7e4214610a12578063662da45914610a9f57806370a0823114610ab15780637dd2899f14610adc5780638406ab8214610af757806394cfb3d814610b1257806395d89b4114610b3e5780639d8a021214610bcb578063a09d4ae414610bea578063a3fbbaae14610c05578063a9059cbb14610c20578063ae26373014610c50578063b812138514610c71578063b9f7d24214610c80578063bfafb91c14610c92578063c3d58d9514610ca4578063c8e569a814610cb3578063cbea441214610cc2578063d5afd6bc14610cee578063d84acf2014610cfd578063dc787bba14610d0f578063dd62ed3e14610d2e578063e1f4895a14610d5f578063e257699814610d7e578063e77f990614610d90578063ec0b420714610dbd578063eda23f2014610ddc578063f2b8551514610e44575b6106e95b60006000600030600160a060020a03166315cff5466000604051602001526040518163ffffffff1660e060020a028152600401809050602060405180830381600087803b156100005760325a03f1156100005750506040515115905061027257610000565b60155433600160a060020a039081169116141561028e57610000565b60165433600160a060020a03908116911614156102aa57610000565b60105433600160a060020a03908116911614156102c657610000565b600c5433600160a060020a03908116911614156102e257610000565b600f5433600160a060020a03908116911614156102fe57610000565b600160a060020a03331660009081526017602052604090205460ff161561032457610000565b600c5460a060020a900460ff16151561033c57610000565b600d5434101561034b57610000565b349250600e5483111561039157600e54604051909350600160a060020a033316903485900380156108fc02916000818181858888f1151593506103919250505057610000565b5b600354600b5460ff909116600a0a9250838302811561000057600c54600160a060020a031660009081526005602052604090205491900491508111156103ef5750600c54600160a060020a03166000908152600560205260409020545b81600b548202811561000057048311156104555733600160a060020a03166108fc83600b5484028115610000576040519190048603801590920291906000818181858888f1151593506104459250505057610000565b81600b5482028115610000570492505b600160a060020a03331660009081526005602052604090206001015460ff16151561050c57600c54600160a060020a0316600090815260056020526040902054819010156104a257610000565b6104ab33610e5f565b600c54600160a060020a03908116600090815260056020818152604080842080548790039055805180820182528681526001818401818152339097168652939092529092209151825591519101805460ff1916911515919091179055610624565b600e5482600b548302811561000057600b54600160a060020a0333166000908152600560205260409020549290910491859102811561000057040111156105ca57600160a060020a033316600090815260056020526040902054600b54600e5484028115610000570403905033600160a060020a03166108fc83600b5484028115610000576040519190048603801590920291906000818181858888f1151593506105ba9250505057610000565b81600b5482028115610000570492505b600c54600160a060020a0316600090815260056020526040902054819010156105f257610000565b600c54600160a060020a0390811660009081526005602052604080822080548590039055339092168152208054820190555b600083111561066257600c54604051600160a060020a039091169084156108fc029085906000818181858888f1151593506106629250505057610000565b5b60008111156106b15760408051600160a060020a03331681526020810183905281517f0c031f45b18305561115944c48c15b7aef3fdfe9182afbf6b01c249542ec6a11929181900390910190a15b600c54600160a060020a031660009081526005602052604090205415156106e357600c805460a060020a60ff02191690555b5b505050565b005b3461000057610704600160a060020a0360043516610efc565b60408051918252519081900360200190f35b3461000057610723610f49565b604080516020808252835181830152835191928392908301918501908083838215610769575b80518252602083111561076957601f199092019160209182019101610749565b505050905090810190601f1680156107955780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34610000576107b0610fd6565b60408051602080825283518183015283519192839290830191858101910280838382156107f8575b8051825260208311156107f857601f1990920191602091820191016107d8565b5050509050019250505060405180910390f35b3461000057610827600160a060020a0360043516602435611041565b604080519115158252519081900360200190f35b3461000057610863600160a060020a0360043581169060243516604435606435608435611109565b6040805192835260ff90911660208301528051918290030190f35b34610000576106e9600160a060020a036004351660243560443561145c565b005b3461000057610827611703565b604080519115158252519081900360200190f35b346100005761070461170d565b60408051918252519081900360200190f35b3461000057610704600160a060020a0360043516611714565b60408051918252519081900360200190f35b3461000057610827600160a060020a0360043581169060243516604435611768565b604080519115158252519081900360200190f35b3461000057610827611969565b604080519115158252519081900360200190f35b34610000576106e9600160a060020a03600435166119ce565b005b3461000057610989611a1e565b6040805160ff9092168252519081900360200190f35b3461000057610704611a27565b60408051918252519081900360200190f35b34610000576106e9600435611a2e565b005b3461000057610827611a5f565b604080519115158252519081900360200190f35b3461000057610827611a70565b604080519115158252519081900360200190f35b3461000057610723611ad5565b604080516020808252835181830152835191928392908301918501908083838215610769575b80518252602083111561076957601f199092019160209182019101610749565b505050905090810190601f1680156107955780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34610000576106e9600435611b63565b005b3461000057610704600160a060020a0360043516611b94565b60408051918252519081900360200190f35b34610000576106e9600160a060020a0360043516611bb3565b005b34610000576106e9600160a060020a0360043516611c02565b005b3461000057610b22600435611c79565b60408051600160a060020a039092168252519081900360200190f35b3461000057610723611cc6565b604080516020808252835181830152835191928392908301918501908083838215610769575b80518252602083111561076957601f199092019160209182019101610749565b505050905090810190601f1680156107955780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3461000057610704611d51565b60408051918252519081900360200190f35b34610000576106e9600160a060020a0360043516611d57565b005b34610000576106e9600160a060020a0360043516611e45565b005b3461000057610827600160a060020a0360043516602435611e95565b604080519115158252519081900360200190f35b3461000057610827612043565b604080519115158252519081900360200190f35b34610000576106e961204e565b005b34610000576106e960043561207a565b005b34610000576106e960043561240c565b005b34610000576106e9612440565b005b34610000576106e9612482565b005b3461000057610b226004356124bb565b60408051600160a060020a039092168252519081900360200190f35b34610000576106e9612508565b005b34610000576106e9600435612531565b005b34610000576107046129d7565b60408051918252519081900360200190f35b3461000057610704600160a060020a03600435811690602435166129de565b60408051918252519081900360200190f35b3461000057610704612a0b565b60408051918252519081900360200190f35b34610000576106e9600435612a12565b005b3461000057610827600160a060020a0360043516612a46565b604080519115158252519081900360200190f35b3461000057610704612a6b565b60408051918252519081900360200190f35b34610000576107b0612a72565b60408051602080825283518183015283519192839290830191858101910280838382156107f8575b8051825260208311156107f857601f1990920191602091820191016107d8565b5050509050019250505060405180910390f35b34610000576106e9600160a060020a0360043516612add565b005b600160a060020a03811660009081526005602052604090206001015460ff161515610ef85760048054806001018281815481835581811511610ec657600083815260209020610ec69181019083015b80821115610ec25760008155600101610eae565b5090565b5b505050916000526020600020900160005b8154600160a060020a038086166101009390930a92830292021916179055505b5b50565b600160a060020a03811660009081526006602052604081206002015442901015610f2857506000610f43565b50600160a060020a0381166000908152600660205260409020545b5b919050565b60018054604080516020600284861615610100026000190190941693909304601f81018490048402820184019092528181529291830182828015610fce5780601f10610fa357610100808354040283529160200191610fce565b820191906000526020600020905b815481529060010190602001808311610fb157829003601f168201915b505050505081565b60408051602081810183526000825260048054845181840281018401909552808552929392909183018282801561103657602002820191906000526020600020905b8154600160a060020a03168152600190910190602001808311611018575b505050505090505b90565b600030600160a060020a03166315cff5466000604051602001526040518163ffffffff1660e060020a028152600401809050602060405180830381600087803b156100005760325a03f115610000575050604051511590506110a257610000565b600160a060020a03338116600081815260076020908152604080832094881680845294825291829020869055815186815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a35060015b92915050565b6000600060006000600030600160a060020a03166315cff5466000604051602001526040518163ffffffff1660e060020a028152600401809050602060405180830381600087803b156100005760325a03f1156100005750506040515115905061117a57600094506001935061144f565b600160a060020a03331660009081526017602052604090205460ff1615156111a957600094506002935061144f565b600160a060020a038a1615156111c657600094506003935061144f565b8715806111d4575060125488115b156111e657600094506004935061144f565b6013548711806111f7575060145486115b1561120957600094506005935061144f565b600354600b5460ff909116600a0a9350612710898902850204811561000057600160a060020a038c16600090815260056020526040902060010154919004925060ff161561127457600160a060020a038a1660009081526005602052604090208054830190556112c2565b61127d8a610e5f565b60408051808201825283815260016020808301828152600160a060020a038f16600090815260059092529390209151825591519101805460ff19169115159190911790555b600b5460408051848152602081018b90528082018a905260608101869052608081019290925251600160a060020a038c16917f7d19c7776f05049226f581a23a4df896c65115763d8ec30490658efc4e8649cd919081900360a00190a2506000600160a060020a0389161561143b57600b54612710898802850204811561000057600160a060020a038b16600090815260056020526040902060010154919004915060ff161561138f57600160a060020a03891660009081526005602052604090208054820190556113dd565b61139889610e5f565b60408051808201825282815260016020808301828152600160a060020a038e16600090815260059092529390209151825591519101805460ff19169115159190911790555b600b5460408051838152602081018b905280820189905260608101869052608081019290925251600160a060020a038b16917f7d19c7776f05049226f581a23a4df896c65115763d8ec30490658efc4e8649cd919081900360a00190a25b600980548383010190559093506000925083905b5050509550959350505050565b60155460009033600160a060020a0390811691161461147a57610000565b30600160a060020a03166315cff5466000604051602001526040518163ffffffff1660e060020a028152600401809050602060405180830381600087803b156100005760325a03f115610000575050604051511590506114d957610000565b8215806114e4575081155b156114ee57610000565b50600354600f54600160a060020a031660009081526005602052604090205460ff909116600a0a92830292908390101561152757610000565b600160a060020a038416600090815260066020526040812054111561154b57610000565b600160a060020a03841660009081526006602052604090206003015460ff1615156116515760408051608081018252848152426020808301828152918601838501908152600160608501818152600160a060020a038b166000908152600690945295909220935184559151838201559051600283015591516003909101805460ff1916911515919091179055601c8054918201808255909190828183801582901161161b5760008381526020902061161b9181019083015b80821115610ec25760008155600101610eae565b5090565b5b505050916000526020600020900160005b8154600160a060020a038089166101009390930a928302920219161790555061167d565b600160a060020a0384166000908152600660205260409020838155426001820181905583016002909101555b600f54600160a060020a039081166000908152600560209081526040808320805488900390559287168083526006825291839020600181015460029091015484518881529283019190915281840152915190917fe618f558755e452b06d0601df03415708e328cfe09b29d8a3dc9f52867762cd5919081900360600190a25b5b50505050565b60085460ff165b90565b6009545b90565b600160a060020a0381166000908152600660205260408120600201544290101561174057506000610f43565b50600160a060020a038116600090815260066020526040902060020154610f43565b5b919050565b600030600160a060020a03166315cff5466000604051602001526040518163ffffffff1660e060020a028152600401809050602060405180830381600087803b156100005760325a03f115610000575050604051511590506117c957610000565b600160a060020a038416600090815260056020526040902054829010156117ef57610000565b600160a060020a03808516600090815260076020908152604080832033909416835292905220548290101561182357610000565b600160a060020a0383166000908152600560205260409020546118469083612bbc565b151561185157610000565b600160a060020a03808516600081815260076020908152604080832033861684528252808320805488900390559282526005905281812080548690039055918516825290206001015460ff16156118c557600160a060020a0383166000908152600560205260409020805483019055611913565b6118ce83610e5f565b60408051808201825283815260016020808301828152600160a060020a038816600090815260059092529390209151825591519101805460ff19169115159190911790555b82600160a060020a031684600160a060020a03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a35060015b9392505050565b6019546040805160006020918201819052825160e060020a6334a4a52702815292519093600160a060020a0316926334a4a52792600480830193919282900301818787803b156100005760325a03f11561000057505060405151601a54149150505b90565b60155433600160a060020a039081169116146119e957610000565b600160a060020a03811615156119fe57610000565b60158054600160a060020a031916600160a060020a0383161790555b5b50565b60035460ff1681565b6004545b90565b60165433600160a060020a03908116911614611a4957610000565b801515611a5557610000565b60128190555b5b50565b600c5460a060020a900460ff165b90565b6019546040805160006020918201819052825160e160020a636e3c3ddd02815292519093600160a060020a03169263dc787bba92600480830193919282900301818787803b156100005760325a03f11561000057505060405151601b54149150505b90565b6000805460408051602060026001851615610100026000190190941693909304601f81018490048402820184019092528181529291830182828015610fce5780601f10610fa357610100808354040283529160200191610fce565b820191906000526020600020905b815481529060010190602001808311610fb157829003601f168201915b505050505081565b60165433600160a060020a03908116911614611b7e57610000565b801515611b8a57610000565b600b8190555b5b50565b600160a060020a0381166000908152600560205260409020545b919050565b60165433600160a060020a03908116911614611bce57610000565b600160a060020a03811615611be257610000565b60118054600160a060020a031916600160a060020a0383161790555b5b50565b60165433600160a060020a03908116911614611c1d57610000565b600160a060020a0381161515611c3257610000565b600160a060020a03811660009081526017602052604090205460ff1615610ef857600160a060020a0381166000908152601760205260409020805460ff191690555b5b5b50565b601c546000908210611c8d57506000610f43565b601c82815481101561000057906000526020600020900160005b9054906101000a9004600160a060020a03169050610f43565b5b919050565b6002805460408051602060018416156101000260001901909316849004601f81018490048402820184019092528181529291830182828015610fce5780601f10610fa357610100808354040283529160200191610fce565b820191906000526020600020905b815481529060010190602001808311610fb157829003601f168201915b505050505081565b600b5481565b60155433600160a060020a03908116911614611d7257610000565b30600160a060020a03166315cff5466000604051602001526040518163ffffffff1660e060020a028152600401809050602060405180830381600087803b156100005760325a03f11561000057505060405151159050611dd157610000565b600160a060020a0381166000908152600660205260409020541515611df557610000565b600160a060020a0380821660008181526006602081815260408084208054600f549097168552600583529084208054909601909555928252909152808255600182018190556002909101555b5b50565b60165433600160a060020a03908116911614611e6057610000565b600160a060020a0381161515611e7557610000565b60168054600160a060020a031916600160a060020a0383161790555b5b50565b600030600160a060020a03166315cff5466000604051602001526040518163ffffffff1660e060020a028152600401809050602060405180830381600087803b156100005760325a03f11561000057505060405151159050611ef657610000565b600160a060020a03331660009081526005602052604090205482901015611f1c57610000565b600160a060020a038316600090815260056020526040902054611f3f9083612bbc565b1515611f4a57610000565b600160a060020a03338116600090815260056020526040808220805486900390559185168152206001015460ff1615611fa057600160a060020a0383166000908152600560205260409020805483019055611fee565b611fa983610e5f565b60408051808201825283815260016020808301828152600160a060020a038816600090815260059092529390209151825591519101805460ff19169115159190911790555b82600160a060020a031633600160a060020a03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a35060015b92915050565b60085460ff16155b90565b60165433600160a060020a0390811691161461206957610000565b6008805460ff191660011790555b5b565b6000600060006000601960009054906101000a9004600160a060020a0316600160a060020a03166315cff5466000604051602001526040518163ffffffff1660e060020a028152600401809050602060405180830381600087803b156100005760325a03f1156100005750506040515190508015612149575030600160a060020a03166315cff5466000604051602001526040518163ffffffff1660e060020a028152600401809050602060405180830381600087803b156100005760325a03f1156100005750506040515190505b15612404576019546040805160006020918201819052825160e060020a6334a4a5270281529251600160a060020a03909416936334a4a5279360048082019493918390030190829087803b156100005760325a03f11561000057505060405151601a549095509350505b838310156123fe57601954604080516000602091820181905282517fcbea4412000000000000000000000000000000000000000000000000000000008152600481018890529251600160a060020a039094169363cbea44129360248082019493918390030190829087803b156100005760325a03f1156100005750506040805180516019546000602093840181905284517f70a08231000000000000000000000000000000000000000000000000000000008152600160a060020a03808516600483015295519398509490911694506370a08231936024808201949392918390030190829087803b156100005760325a03f11561000057505060405151915050600160a060020a038216732a650356bd894370cc1d6aba71b36c0ad6b3dc18141561238557600f54600160a060020a031660009081526005602052604090206001015460ff16151561235f57600f5461231490600160a060020a0316610e5f565b60408051808201825282815260016020808301828152600f54600160a060020a0316600090815260059092529390209151825591519101805460ff1916911515919091179055612380565b600f54600160a060020a031660009081526005602052604090208054820190555b6123d3565b61238e82610e5f565b60408051808201825282815260016020808301828152600160a060020a038716600090815260059092529390209151825591519101805460ff19169115159190911790555b6009805482019055600019850115156123eb576123fe565b600019909401935b6001909201916121b3565b601a8390555b5b5050505050565b60165433600160a060020a0390811691161461242757610000565b6103e881111561243657610000565b60138190555b5b50565b60165433600160a060020a0390811691161461245b57610000565b600c805460a060020a60ff02191660a060020a1790556008805460ff191660011790555b5b565b60165433600160a060020a0390811691161461249d57610000565b600c805460a060020a60ff02191690556008805460ff191690555b5b565b60045460009082106124cf57506000610f43565b600482815481101561000057906000526020600020900160005b9054906101000a9004600160a060020a03169050610f43565b5b919050565b60165433600160a060020a0390811691161461252357610000565b6008805460ff191690555b5b565b60006000600060006000601960009054906101000a9004600160a060020a0316600160a060020a03166315cff5466000604051602001526040518163ffffffff1660e060020a028152600401809050602060405180830381600087803b156100005760325a03f1156100005750506040515190508015612602575030600160a060020a03166315cff5466000604051602001526040518163ffffffff1660e060020a028152600401809050602060405180830381600087803b156100005760325a03f1156100005750506040515190505b156129ce576019546040805160006020918201819052825160e160020a636e3c3ddd0281529251600160a060020a039094169363dc787bba9360048082019493918390030190829087803b156100005760325a03f11561000057505060405151601b549096509450505b848410156129c857601954604080516000602091820181905282517f94cfb3d8000000000000000000000000000000000000000000000000000000008152600481018990529251600160a060020a03909416936394cfb3d89360248082019493918390030190829087803b156100005760325a03f1156100005750506040805180516019546000602093840181905284517f067eeeac000000000000000000000000000000000000000000000000000000008152600160a060020a038085166004830152955193995094909116945063067eeeac936024808201949392918390030190829087803b156100005760325a03f11561000057505060405151925050600160a060020a038316732a650356bd894370cc1d6aba71b36c0ad6b3dc18141561283a57600f54600160a060020a031660009081526005602052604090206001015460ff1615156128145760408051808201825283815260016020808301828152600f8054600160a060020a039081166000908152600590945295909220935184555192909101805460ff1916921515929092179091555461280f9116610e5f565b612835565b600f54600160a060020a031660009081526005602052604090208054830190555b61299d565b601c805480600101828181548183558181151161287c5760008381526020902061287c9181019083015b80821115610ec25760008155600101610eae565b5090565b5b505050916000526020600020900160005b85909190916101000a815481600160a060020a030219169083600160a060020a0316021790555050601960009054906101000a9004600160a060020a0316600160a060020a0316631b2051f6846000604051602001526040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050602060405180830381600087803b156100005760325a03f115610000575050604080518051608082018352858252426020808401918252838501838152600160608601818152600160a060020a038c1660009081526006909452969092209451855591519084015551600283015591516003909101805460ff19169115159190911790559150505b6009805483019055600019860115156129b5576129c8565b600019909501945b60019093019261266c565b601b8490555b5b505050505050565b601c545b90565b600160a060020a038083166000908152600760209081526040808320938516835292905220545b92915050565b600b545b90565b60165433600160a060020a03908116911614612a2d57610000565b6103e8811115612a3c57610000565b60148190555b5b50565b600160a060020a0381166000908152601760205260409020805460ff16905b50919050565b600a545b90565b604080516020818101835260008252601c8054845181840281018401909552808552929392909183018282801561103657602002820191906000526020600020905b8154600160a060020a03168152600190910190602001808311611018575b505050505090505b90565b60165433600160a060020a03908116911614612af857610000565b600160a060020a0381161515612b0d57610000565b60408051602080820183526001808352600160a060020a038516600090815260179092529290209051815460ff1916901515179055601880549182018082559091908281838015829011610ec657600083815260209020610ec69181019083015b80821115610ec25760008155600101610eae565b5090565b5b505050916000526020600020900160005b8154600160a060020a038086166101009390930a92830292021916179055505b5b50565b60008282840110158015612bd257508182840110155b90505b929150505600a165627a7a72305820f447564ef5a20e883bf5c5519d2567087097c1daab1c4ecd501e250a6889ea640029

Swarm Source

bzzr://f447564ef5a20e883bf5c5519d2567087097c1daab1c4ecd501e250a6889ea64
Loading...
Loading
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.