ETH Price: $2,708.96 (-1.97%)

Contract

0xe7979fE5442aD03C8706bE6c59312Eef0564A25d
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Refund_my_ether58998422018-07-03 18:58:182427 days ago1530644298IN
0xe7979fE5...f0564A25d
0 ETH0.0020702172
Set_allow_refund...58941702018-07-02 19:36:342428 days ago1530560194IN
0xe7979fE5...f0564A25d
0 ETH0.0006194322
Refund_my_ether58940032018-07-02 18:54:412428 days ago1530557681IN
0xe7979fE5...f0564A25d
0 ETH0.0016062472
Refund_my_ether58939772018-07-02 18:49:412428 days ago1530557381IN
0xe7979fE5...f0564A25d
0 ETH0.0016062472
Refund_my_ether58316182018-06-22 1:43:132439 days ago1529631793IN
0xe7979fE5...f0564A25d
0 ETH0.0004461820
Transfer57608692018-06-09 20:35:442451 days ago1528576544IN
0xe7979fE5...f0564A25d
5 ETH0.0083305866

Latest 1 internal transaction

Advanced mode:
Parent Transaction Hash Block
From
To
58998422018-07-03 18:58:182427 days ago1530644298
0xe7979fE5...f0564A25d
5 ETH
Loading...
Loading

Similar Match Source Code
This contract matches the deployed Bytecode of the Source Code for Contract 0x1D968EF5...01A8421A1
The constructor portion of the code might be different and could alter the actual behaviour of the contract

Contract Name:
Contract

Compiler Version
v0.4.25-nightly.2018.5.30+commit.3f3d6df2

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2018-05-31
*/

//author : dm & w
pragma solidity ^0.4.23;

library SafeMath {
  	function mul(uint256 a, uint256 b) internal pure returns (uint256) {
		if (a == 0) {
		return 0;
		}
		uint256 c = a * b;
		assert(c / a == b);
		return c;
	}

  	function div(uint256 a, uint256 b) internal pure returns (uint256) {
    	uint256 c = a / b;
    	return c;
  	}

  	function sub(uint256 a, uint256 b) internal pure returns (uint256) {
    	assert(b <= a);
    	return a - b;
  	}

  	function add(uint256 a, uint256 b) internal pure returns (uint256) {
    	uint256 c = a + b;
    	assert(c >= a);
    	return c;
  	}
}

contract ERC20 {
  	function transfer(address _to, uint256 _value) public returns (bool success);
  	function balanceOf(address _owner) public constant returns (uint256 balance);
}

contract Controller {

	address public owner;

	modifier onlyOwner {
    	require(msg.sender == owner);
    	_;
  	}

  	function change_owner(address new_owner) onlyOwner {
    	require(new_owner != 0x0);
    	owner = new_owner;
  	}

  	function Controller() {
    	owner = msg.sender;
  	}
}

contract Contract is Controller {

	using SafeMath for uint256;

  	struct Contributor {
		uint256 balance;
	    uint256 fee_owner;
		uint256 fee_devs;
	    uint8 rounds;
	    bool whitelisted;
  	}

	struct Snapshot {
		uint256 tokens_balance;
		uint256 eth_balance;
	}

  	modifier underMaxAmount {
    	require(max_amount == 0 || this.balance <= max_amount);
    	_;
  	}

	address constant public DEVELOPER1 = 0x8C006d807EBAe91F341a4308132Fd756808e0126;
	address constant public DEVELOPER2 = 0x63F7547Ac277ea0B52A0B060Be6af8C5904953aa;
	uint256 constant public FEE_DEV = 670;

	uint256 public FEE_OWNER;
	uint256 public max_amount;
	uint256 public individual_cap;
	uint256 public gas_price_max;
	uint8 public rounds;
	bool public whitelist_enabled;

	mapping (address => Contributor) public contributors;
	Snapshot[] public snapshots;
	uint256[] public total_fees;

	uint256 public const_contract_eth_value;
	uint256 public percent_reduction;

	address public sale;
	ERC20 public token;
	bool public bought_tokens;
	bool public owner_supplied_eth;
	bool public allow_contributions = true;
	bool public allow_refunds;
  //============================

	constructor(
		uint256 _max_amount,
		bool _whitelist,
		uint256 _owner_fee_divisor
		) {
			FEE_OWNER = _owner_fee_divisor;
			max_amount = calculate_with_fees(_max_amount);
		  	whitelist_enabled = _whitelist;
		  	Contributor storage contributor = contributors[msg.sender];
		  	contributor.whitelisted = true;
			total_fees.length = 2;
  		}


	function buy_the_tokens(bytes _data) onlyOwner {
		require(!bought_tokens && sale != 0x0);
		bought_tokens = true;
		const_contract_eth_value = this.balance;
		take_fees_eth_dev();
		take_fees_eth_owner();
		const_contract_eth_value = this.balance;
		require(sale.call.gas(msg.gas).value(this.balance)(_data));
	}

	function whitelist_addys(address[] _addys, bool _state) onlyOwner {
		for (uint256 i = 0; i < _addys.length; i++) {
			Contributor storage contributor = contributors[_addys[i]];
			contributor.whitelisted = _state;
		}
	}

	function force_refund(address _addy) onlyOwner {
		refund(_addy);
	}

	function force_partial_refund(address _addy) onlyOwner {
		partial_refund(_addy);
	}

	function set_gas_price_max(uint256 _gas_price) onlyOwner {
		gas_price_max = _gas_price;
	}

	function set_sale_address(address _sale) onlyOwner {
		require(_sale != 0x0);
		sale = _sale;
	}

	function set_token_address(address _token) onlyOwner {
		require(_token != 0x0);
		token = ERC20(_token);
	}

	function set_allow_contributions(bool _boolean) onlyOwner {
		allow_contributions = _boolean;
	}

	function set_allow_refunds(bool _boolean) onlyOwner {
		allow_refunds = _boolean;
	}

	function set_tokens_received() onlyOwner {
		tokens_received();
	}

	function set_percent_reduction(uint256 _reduction) onlyOwner payable {
		require(bought_tokens && rounds == 0 && _reduction <= 100);
		percent_reduction = _reduction;
		if (msg.value > 0) {
			owner_supplied_eth = true;
		}
		const_contract_eth_value = const_contract_eth_value.sub((const_contract_eth_value.mul(_reduction)).div(100));
	}

	function set_whitelist_enabled(bool _boolean) onlyOwner {
		whitelist_enabled = _boolean;
	}

	function change_individual_cap(uint256 _cap) onlyOwner {
		individual_cap = _cap;
	}

	function change_max_amount(uint256 _amount) onlyOwner {
		//ATTENTION! The new amount should be in wei
		//Use https://etherconverter.online/
		max_amount = calculate_with_fees(_amount);
	}

	function change_fee(uint256 _fee) onlyOwner {
		FEE_OWNER = _fee;
	}

	function emergency_token_withdraw(address _address) onlyOwner {
	 	ERC20 temp_token = ERC20(_address);
		require(temp_token.transfer(msg.sender, temp_token.balanceOf(this)));
	}

	function emergency_eth_withdraw() onlyOwner {
		msg.sender.transfer(this.balance);
	}

	function withdraw(address _user) internal {
		require(bought_tokens);
		uint256 contract_token_balance = token.balanceOf(address(this));
		require(contract_token_balance != 0);
		Contributor storage contributor = contributors[_user];
		if (contributor.rounds < rounds) {
			Snapshot storage snapshot = snapshots[contributor.rounds];
            uint256 tokens_to_withdraw = contributor.balance.mul(snapshot.tokens_balance).div(snapshot.eth_balance);
			snapshot.tokens_balance = snapshot.tokens_balance.sub(tokens_to_withdraw);
			snapshot.eth_balance = snapshot.eth_balance.sub(contributor.balance);
            contributor.rounds++;
            require(token.transfer(_user, tokens_to_withdraw));
        }
	}

	function refund(address _user) internal {
		require(!bought_tokens && allow_refunds && percent_reduction == 0);
		Contributor storage contributor = contributors[_user];
		total_fees[0] -= contributor.fee_owner;
		total_fees[1] -= contributor.fee_devs;
		uint256 eth_to_withdraw = contributor.balance.add(contributor.fee_owner).add(contributor.fee_devs);
		contributor.balance = 0;
		contributor.fee_owner = 0;
		contributor.fee_devs = 0;
		_user.transfer(eth_to_withdraw);
	}

	function partial_refund(address _user) internal {
		require(bought_tokens && allow_refunds && rounds == 0 && percent_reduction > 0);
		Contributor storage contributor = contributors[_user];
		require(contributor.rounds == 0);
		uint256 eth_to_withdraw = contributor.balance.mul(percent_reduction).div(100);
		contributor.balance = contributor.balance.sub(eth_to_withdraw);
		if (owner_supplied_eth) {
			uint256 fee = contributor.fee_owner.mul(percent_reduction).div(100);
			eth_to_withdraw = eth_to_withdraw.add(fee);
		}
		_user.transfer(eth_to_withdraw);
	}

	function take_fees_eth_dev() internal {
		if (FEE_DEV != 0) {
			DEVELOPER1.transfer(total_fees[1]);
			DEVELOPER2.transfer(total_fees[1]);
		}
	}

	function take_fees_eth_owner() internal {
		if (FEE_OWNER != 0) {
			owner.transfer(total_fees[0]);
		}
	}

	function calculate_with_fees(uint256 _amount) internal returns (uint256) {
		uint256 temp = _amount;
		if (FEE_DEV != 0) {
			temp = temp.add(_amount.div(FEE_DEV/2));
		}
		if (FEE_OWNER != 0) {
			temp = temp.add(_amount.div(FEE_OWNER));
		}
		return temp;
	}

	function tokens_received() internal {
		uint256 previous_balance;
		for (uint8 i = 0; i < snapshots.length; i++) {
			previous_balance = previous_balance.add(snapshots[i].tokens_balance);
		}
		snapshots.push(Snapshot(token.balanceOf(address(this)).sub(previous_balance), const_contract_eth_value));
		rounds++;
	}


  function tokenFallback(address _from, uint _value, bytes _data) {
		if (ERC20(msg.sender) == token) {
			tokens_received();
		}
	}

	function withdraw_my_tokens() {
		for (uint8 i = contributors[msg.sender].rounds; i < rounds; i++) {
			withdraw(msg.sender);
		}
	}

	function withdraw_tokens_for(address _addy) {
		for (uint8 i = contributors[_addy].rounds; i < rounds; i++) {
			withdraw(_addy);
		}
	}

	function refund_my_ether() {
		refund(msg.sender);
	}

	function partial_refund_my_ether() {
		partial_refund(msg.sender);
	}

	function provide_eth() payable {}

	function () payable underMaxAmount {
		require(!bought_tokens && allow_contributions && (gas_price_max == 0 || tx.gasprice <= gas_price_max));
		Contributor storage contributor = contributors[msg.sender];
		if (whitelist_enabled) {
			require(contributor.whitelisted);
		}
		uint256 fee = 0;
		if (FEE_OWNER != 0) {
			fee = SafeMath.div(msg.value, FEE_OWNER);
			contributor.fee_owner += fee;
			total_fees[0] += fee;
		}
		uint256 fees = fee;
		if (FEE_DEV != 0) {
			fee = msg.value.div(FEE_DEV);
			total_fees[1] += fee;
			contributor.fee_devs += fee*2;
			fees = fees.add(fee*2);
		}
		contributor.balance = contributor.balance.add(msg.value.sub(fees));

		require(individual_cap == 0 || contributor.balance <= individual_cap);
	}
}

Contract Security Audit

Contract ABI

[{"constant":true,"inputs":[],"name":"allow_contributions","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_boolean","type":"bool"}],"name":"set_whitelist_enabled","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"individual_cap","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"withdraw_my_tokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_addy","type":"address"}],"name":"force_refund","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"max_amount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"contributors","outputs":[{"name":"balance","type":"uint256"},{"name":"fee_owner","type":"uint256"},{"name":"fee_devs","type":"uint256"},{"name":"rounds","type":"uint8"},{"name":"whitelisted","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"allow_refunds","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"new_owner","type":"address"}],"name":"change_owner","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_cap","type":"uint256"}],"name":"change_individual_cap","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_amount","type":"uint256"}],"name":"change_max_amount","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"refund_my_ether","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"}],"name":"set_token_address","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"set_tokens_received","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"FEE_OWNER","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_addy","type":"address"}],"name":"withdraw_tokens_for","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"const_contract_eth_value","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"partial_refund_my_ether","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"DEVELOPER2","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"bought_tokens","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_boolean","type":"bool"}],"name":"set_allow_contributions","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_reduction","type":"uint256"}],"name":"set_percent_reduction","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_address","type":"address"}],"name":"emergency_token_withdraw","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner_supplied_eth","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"sale","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_fee","type":"uint256"}],"name":"change_fee","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_addy","type":"address"}],"name":"force_partial_refund","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"gas_price_max","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"emergency_eth_withdraw","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"DEVELOPER1","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_addys","type":"address[]"},{"name":"_state","type":"bool"}],"name":"whitelist_addys","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_data","type":"bytes"}],"name":"buy_the_tokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"whitelist_enabled","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"provide_eth","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[],"name":"rounds","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_value","type":"uint256"},{"name":"_data","type":"bytes"}],"name":"tokenFallback","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"percent_reduction","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"FEE_DEV","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"snapshots","outputs":[{"name":"tokens_balance","type":"uint256"},{"name":"eth_balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_gas_price","type":"uint256"}],"name":"set_gas_price_max","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_boolean","type":"bool"}],"name":"set_allow_refunds","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"total_fees","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_sale","type":"address"}],"name":"set_sale_address","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"token","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_max_amount","type":"uint256"},{"name":"_whitelist","type":"bool"},{"name":"_owner_fee_divisor","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"}]

Deployed Bytecode

0x608060405260043610610225576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806303b918dc1461044e57806310d2f2e51461047d578063111485ef146104ac578063157f67e8146104d757806318af7021146104ee5780631a34fe81146105315780631f6d49421461055c578063223db315146105d9578063253c8bd41461060857806329d98a7b1461064b578063398f2648146106785780633c4293d8146106a557806342263aa2146106bc57806348103077146106ff57806349edfb94146107165780635219ffb81461074157806356813535146107845780635a8830e2146107af57806360e393c6146107c65780636360fc3f1461081d578063666375e51461084c578063678f70331461087b578063687ab3811461089b5780636954abee146108de5780636ad1fe021461090d5780636ceba55e146109645780637036f9d9146109915780637520bf60146109d45780637a87f51a146109ff57806382b2f95f14610a1657806383b47a4d14610a6d5780638611731914610adf5780638a8b7e0214610b485780638da5cb5b14610b775780638f49a26414610bce578063a2e800ad14610bd8578063c0ee0b8a14610c09578063c34dd14114610c9c578063d54839bf14610cc7578063d6565a2d14610cf2578063e70e690a14610d3a578063ebc56eec14610d67578063ef956c4114610d96578063f2bee03d14610dd7578063fc0c546a14610e1a575b600080600080600254148061025357506002543073ffffffffffffffffffffffffffffffffffffffff163111155b151561025e57600080fd5b600c60149054906101000a900460ff161580156102875750600c60169054906101000a900460ff165b80156102a25750600060045414806102a157506004543a11155b5b15156102ad57600080fd5b600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000209250600560019054906101000a900460ff1615610321578260030160019054906101000a900460ff16151561032057600080fd5b5b60009150600060015414151561037a5761033d34600154610e71565b9150818360010160008282540192505081905550816008600081548110151561036257fe5b90600052602060002001600082825401925050819055505b819050600061029e1415156103f65761039e61029e34610e7190919063ffffffff16565b915081600860018154811015156103b157fe5b90600052602060002001600082825401925050819055506002820283600201600082825401925050819055506103f36002830282610e8c90919063ffffffff16565b90505b61041f61040c8234610eaa90919063ffffffff16565b8460000154610e8c90919063ffffffff16565b83600001819055506000600354148061043e5750600354836000015411155b151561044957600080fd5b505050005b34801561045a57600080fd5b50610463610ec3565b604051808215151515815260200191505060405180910390f35b34801561048957600080fd5b506104aa600480360381019080803515159060200190929190505050610ed6565b005b3480156104b857600080fd5b506104c1610f4e565b6040518082815260200191505060405180910390f35b3480156104e357600080fd5b506104ec610f54565b005b3480156104fa57600080fd5b5061052f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610fdf565b005b34801561053d57600080fd5b50610546611046565b6040518082815260200191505060405180910390f35b34801561056857600080fd5b5061059d600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061104c565b604051808681526020018581526020018481526020018360ff1660ff168152602001821515151581526020019550505050505060405180910390f35b3480156105e557600080fd5b506105ee61109c565b604051808215151515815260200191505060405180910390f35b34801561061457600080fd5b50610649600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506110af565b005b34801561065757600080fd5b5061067660048036038101908080359060200190929190505050611173565b005b34801561068457600080fd5b506106a3600480360381019080803590602001909291905050506111d8565b005b3480156106b157600080fd5b506106ba611245565b005b3480156106c857600080fd5b506106fd600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611250565b005b34801561070b57600080fd5b50610714611315565b005b34801561072257600080fd5b5061072b61137a565b6040518082815260200191505060405180910390f35b34801561074d57600080fd5b50610782600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611380565b005b34801561079057600080fd5b5061079961140c565b6040518082815260200191505060405180910390f35b3480156107bb57600080fd5b506107c4611412565b005b3480156107d257600080fd5b506107db61141d565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561082957600080fd5b50610832611435565b604051808215151515815260200191505060405180910390f35b34801561085857600080fd5b50610879600480360381019080803515159060200190929190505050611448565b005b610899600480360381019080803590602001909291905050506114c0565b005b3480156108a757600080fd5b506108dc600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506115d2565b005b3480156108ea57600080fd5b506108f36117f4565b604051808215151515815260200191505060405180910390f35b34801561091957600080fd5b50610922611807565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561097057600080fd5b5061098f6004803603810190808035906020019092919050505061182d565b005b34801561099d57600080fd5b506109d2600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611892565b005b3480156109e057600080fd5b506109e96118f9565b6040518082815260200191505060405180910390f35b348015610a0b57600080fd5b50610a146118ff565b005b348015610a2257600080fd5b50610a2b6119ba565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610a7957600080fd5b50610add600480360381019080803590602001908201803590602001908080602002602001604051908101604052809392919081815260200183836020028082843782019150505050505091929192908035151590602001909291905050506119d2565b005b348015610aeb57600080fd5b50610b46600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050611ac5565b005b348015610b5457600080fd5b50610b5d611cb9565b604051808215151515815260200191505060405180910390f35b348015610b8357600080fd5b50610b8c611ccc565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610bd6611cf1565b005b348015610be457600080fd5b50610bed611cf3565b604051808260ff1660ff16815260200191505060405180910390f35b348015610c1557600080fd5b50610c9a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050611d06565b005b348015610ca857600080fd5b50610cb1611d6a565b6040518082815260200191505060405180910390f35b348015610cd357600080fd5b50610cdc611d70565b6040518082815260200191505060405180910390f35b348015610cfe57600080fd5b50610d1d60048036038101908080359060200190929190505050611d76565b604051808381526020018281526020019250505060405180910390f35b348015610d4657600080fd5b50610d6560048036038101908080359060200190929190505050611da9565b005b348015610d7357600080fd5b50610d94600480360381019080803515159060200190929190505050611e0e565b005b348015610da257600080fd5b50610dc160048036038101908080359060200190929190505050611e86565b6040518082815260200191505060405180910390f35b348015610de357600080fd5b50610e18600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611ea9565b005b348015610e2657600080fd5b50610e2f611f6e565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6000808284811515610e7f57fe5b0490508091505092915050565b6000808284019050838110151515610ea057fe5b8091505092915050565b6000828211151515610eb857fe5b818303905092915050565b600c60169054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610f3157600080fd5b80600560016101000a81548160ff02191690831515021790555050565b60035481565b6000600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160009054906101000a900460ff1690505b600560009054906101000a900460ff1660ff168160ff161015610fdc57610fcf33611f94565b8080600101915050610fa9565b50565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561103a57600080fd5b6110438161231d565b50565b60025481565b60066020528060005260406000206000915090508060000154908060010154908060020154908060030160009054906101000a900460ff16908060030160019054906101000a900460ff16905085565b600c60179054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561110a57600080fd5b60008173ffffffffffffffffffffffffffffffffffffffff161415151561113057600080fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156111ce57600080fd5b8060038190555050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561123357600080fd5b61123c81612498565b60028190555050565b61124e3361231d565b565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156112ab57600080fd5b60008173ffffffffffffffffffffffffffffffffffffffff16141515156112d157600080fd5b80600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561137057600080fd5b61137861251f565b565b60015481565b6000600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160009054906101000a900460ff1690505b600560009054906101000a900460ff1660ff168160ff161015611408576113fb82611f94565b80806001019150506113d5565b5050565b60095481565b61141b33612716565b565b7363f7547ac277ea0b52a0b060be6af8c5904953aa81565b600c60149054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156114a357600080fd5b80600c60166101000a81548160ff02191690831515021790555050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561151b57600080fd5b600c60149054906101000a900460ff16801561154957506000600560009054906101000a900460ff1660ff16145b8015611556575060648111155b151561156157600080fd5b80600a81905550600034111561158d576001600c60156101000a81548160ff0219169083151502179055505b6115c96115b860646115aa846009546128d190919063ffffffff16565b610e7190919063ffffffff16565b600954610eaa90919063ffffffff16565b60098190555050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561162f57600080fd5b8190508073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb338373ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b1580156116ea57600080fd5b505af11580156116fe573d6000803e3d6000fd5b505050506040513d602081101561171457600080fd5b81019080805190602001909291905050506040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1580156117aa57600080fd5b505af11580156117be573d6000803e3d6000fd5b505050506040513d60208110156117d457600080fd5b810190808051906020019092919050505015156117f057600080fd5b5050565b600c60159054906101000a900460ff1681565b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561188857600080fd5b8060018190555050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156118ed57600080fd5b6118f681612716565b50565b60045481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561195a57600080fd5b3373ffffffffffffffffffffffffffffffffffffffff166108fc3073ffffffffffffffffffffffffffffffffffffffff16319081150290604051600060405180830381858888f193505050501580156119b7573d6000803e3d6000fd5b50565b738c006d807ebae91f341a4308132fd756808e012681565b6000806000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611a3057600080fd5b600091505b8351821015611abf57600660008584815181101515611a5057fe5b9060200190602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000209050828160030160016101000a81548160ff0219169083151502179055508180600101925050611a35565b50505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611b2057600080fd5b600c60149054906101000a900460ff16158015611b7657506000600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614155b1515611b8157600080fd5b6001600c60146101000a81548160ff0219169083151502179055503073ffffffffffffffffffffffffffffffffffffffff1631600981905550611bc261290c565b611bca612a05565b3073ffffffffffffffffffffffffffffffffffffffff1631600981905550600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff165a3073ffffffffffffffffffffffffffffffffffffffff16318360405180828051906020019080838360005b83811015611c68578082015181840152602081019050611c4d565b50505050905090810190601f168015611c955780820380516001836020036101000a031916815260200191505b50915050600060405180830381858888f193505050501515611cb657600080fd5b50565b600560019054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b565b600560009054906101000a900460ff1681565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415611d6557611d6461251f565b5b505050565b600a5481565b61029e81565b600781815481101515611d8557fe5b90600052602060002090600202016000915090508060000154908060010154905082565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611e0457600080fd5b8060048190555050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611e6957600080fd5b80600c60176101000a81548160ff02191690831515021790555050565b600881815481101515611e9557fe5b906000526020600020016000915090505481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611f0457600080fd5b60008173ffffffffffffffffffffffffffffffffffffffff1614151515611f2a57600080fd5b80600b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600080600080600c60149054906101000a900460ff161515611fb557600080fd5b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b15801561207257600080fd5b505af1158015612086573d6000803e3d6000fd5b505050506040513d602081101561209c57600080fd5b81019080805190602001909291905050509350600084141515156120bf57600080fd5b600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000209250600560009054906101000a900460ff1660ff168360030160009054906101000a900460ff1660ff1610156123165760078360030160009054906101000a900460ff1660ff1681548110151561215157fe5b906000526020600020906002020191506121928260010154612184846000015486600001546128d190919063ffffffff16565b610e7190919063ffffffff16565b90506121ab818360000154610eaa90919063ffffffff16565b82600001819055506121ce83600001548360010154610eaa90919063ffffffff16565b826001018190555082600301600081819054906101000a900460ff168092919060010191906101000a81548160ff021916908360ff16021790555050600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb86836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1580156122cf57600080fd5b505af11580156122e3573d6000803e3d6000fd5b505050506040513d60208110156122f957600080fd5b8101908080519060200190929190505050151561231557600080fd5b5b5050505050565b600080600c60149054906101000a900460ff161580156123495750600c60179054906101000a900460ff165b801561235757506000600a54145b151561236257600080fd5b600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002091508160010154600860008154811015156123b857fe5b90600052602060002001600082825403925050819055508160020154600860018154811015156123e457fe5b906000526020600020016000828254039250508190555061242c826002015461241e84600101548560000154610e8c90919063ffffffff16565b610e8c90919063ffffffff16565b90506000826000018190555060008260010181905550600082600201819055508273ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015612492573d6000803e3d6000fd5b50505050565b600080829050600061029e1415156124e0576124dd6124ce600261029e8115156124be57fe5b0485610e7190919063ffffffff16565b82610e8c90919063ffffffff16565b90505b60006001541415156125165761251361250460015485610e7190919063ffffffff16565b82610e8c90919063ffffffff16565b90505b80915050919050565b600080600090505b6007805490508160ff16101561257c5761256d60078260ff1681548110151561254c57fe5b90600052602060002090600202016000015483610e8c90919063ffffffff16565b91508080600101915050612527565b6007604080519081016040528061269385600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b15801561264a57600080fd5b505af115801561265e573d6000803e3d6000fd5b505050506040513d602081101561267457600080fd5b8101908080519060200190929190505050610eaa90919063ffffffff16565b81526020016009548152509080600181540180825580915050906001820390600052602060002090600202016000909192909190915060008201518160000155602082015181600101555050506005600081819054906101000a900460ff168092919060010191906101000a81548160ff021916908360ff160217905550505050565b6000806000600c60149054906101000a900460ff1680156127435750600c60179054906101000a900460ff165b801561276157506000600560009054906101000a900460ff1660ff16145b801561276f57506000600a54115b151561277a57600080fd5b600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020925060008360030160009054906101000a900460ff1660ff161415156127de57600080fd5b61280a60646127fc600a5486600001546128d190919063ffffffff16565b610e7190919063ffffffff16565b9150612823828460000154610eaa90919063ffffffff16565b8360000181905550600c60159054906101000a900460ff16156128845761286c606461285e600a5486600101546128d190919063ffffffff16565b610e7190919063ffffffff16565b90506128818183610e8c90919063ffffffff16565b91505b8373ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f193505050501580156128ca573d6000803e3d6000fd5b5050505050565b60008060008414156128e65760009150612905565b82840290508284828115156128f757fe5b0414151561290157fe5b8091505b5092915050565b600061029e141515612a0357738c006d807ebae91f341a4308132fd756808e012673ffffffffffffffffffffffffffffffffffffffff166108fc6008600181548110151561295657fe5b90600052602060002001549081150290604051600060405180830381858888f1935050505015801561298c573d6000803e3d6000fd5b507363f7547ac277ea0b52a0b060be6af8c5904953aa73ffffffffffffffffffffffffffffffffffffffff166108fc600860018154811015156129cb57fe5b90600052602060002001549081150290604051600060405180830381858888f19350505050158015612a01573d6000803e3d6000fd5b505b565b6000600154141515612a94576000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc60086000815481101515612a5c57fe5b90600052602060002001549081150290604051600060405180830381858888f19350505050158015612a92573d6000803e3d6000fd5b505b5600a165627a7a723058202dd28adc6b3569b6050882e1d51f7695ff6d2ffb0715157770c6ec59fb8accb50029

Swarm Source

bzzr://2dd28adc6b3569b6050882e1d51f7695ff6d2ffb0715157770c6ec59fb8accb5

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.