ETH Price: $3,407.99 (-6.68%)

Contract

0xA7CA36F7273D4d38fc2aEC5A454C497F86728a7A
 
Transaction Hash
Method
Block
From
To
Approve190134652024-01-15 16:26:23339 days ago1705335983IN
0xA7CA36F7...F86728a7A
0 ETH0.0006212525.78230878
Withdraw186341272023-11-23 11:26:59392 days ago1700738819IN
0xA7CA36F7...F86728a7A
0 ETH0.001106235.83418344
Withdraw153491542022-08-16 0:21:53857 days ago1660609313IN
0xA7CA36F7...F86728a7A
0 ETH0.0006777817.60561444
Transfer153491492022-08-16 0:20:42857 days ago1660609242IN
0xA7CA36F7...F86728a7A
0 ETH0.0005633214.66460319
Transfer153491422022-08-16 0:18:30857 days ago1660609110IN
0xA7CA36F7...F86728a7A
0 ETH0.0011930214.66460319
Transfer153491352022-08-16 0:17:11857 days ago1660609031IN
0xA7CA36F7...F86728a7A
0 ETH0.0006228612.42007607
Fund153491102022-08-16 0:11:44857 days ago1660608704IN
0xA7CA36F7...F86728a7A
0.000001 ETH0.0009415314.75429215
Fund153491032022-08-16 0:09:54857 days ago1660608594IN
0xA7CA36F7...F86728a7A
0.000001 ETH0.0012703615.14407658
Transfer148554572022-05-27 17:35:53937 days ago1653672953IN
0xA7CA36F7...F86728a7A
0 ETH0.0006194525
Withdraw148137732022-05-20 22:51:13944 days ago1653087073IN
0xA7CA36F7...F86728a7A
0 ETH0.0007761525
Withdraw148137512022-05-20 22:45:47944 days ago1653086747IN
0xA7CA36F7...F86728a7A
0 ETH0.0005363717.25680803
Transfer148137462022-05-20 22:44:39944 days ago1653086679IN
0xA7CA36F7...F86728a7A
0 ETH0.0015634225
Withdraw Old148137002022-05-20 22:36:44944 days ago1653086204IN
0xA7CA36F7...F86728a7A
0 ETH0.0006856821.90391569
Withdraw148136792022-05-20 22:32:34944 days ago1653085954IN
0xA7CA36F7...F86728a7A
0 ETH0.0007752525
Transfer148136542022-05-20 22:25:41944 days ago1653085541IN
0xA7CA36F7...F86728a7A
0 ETH0.0015616225
Withdraw148136472022-05-20 22:23:47944 days ago1653085427IN
0xA7CA36F7...F86728a7A
0 ETH0.0006075719.59288219
Withdraw148136192022-05-20 22:17:02944 days ago1653085022IN
0xA7CA36F7...F86728a7A
0 ETH0.0005598418.04674005
Withdraw148136022022-05-20 22:13:31944 days ago1653084811IN
0xA7CA36F7...F86728a7A
0 ETH0.000866220
Transfer148135422022-05-20 21:58:26944 days ago1653083906IN
0xA7CA36F7...F86728a7A
0 ETH0.001250520
Transfer From148135162022-05-20 21:52:59944 days ago1653083579IN
0xA7CA36F7...F86728a7A
0 ETH0.0022949525
Approve148133542022-05-20 21:18:29944 days ago1653081509IN
0xA7CA36F7...F86728a7A
0 ETH0.00115625
Fund148133442022-05-20 21:15:59944 days ago1653081359IN
0xA7CA36F7...F86728a7A
0.0001 ETH0.0021437225
Get Me Out Of He...131135622021-08-28 11:20:551209 days ago1630149655IN
0xA7CA36F7...F86728a7A
0 ETH0.0015315853.73996161
Get Me Out Of He...127890982021-07-08 21:18:121260 days ago1625779092IN
0xA7CA36F7...F86728a7A
0 ETH0.0007933619.8
Withdraw Old127890972021-07-08 21:18:061260 days ago1625779086IN
0xA7CA36F7...F86728a7A
0 ETH0.0006198119.8
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block
From
To
153491542022-08-16 0:21:53857 days ago1660609313
0xA7CA36F7...F86728a7A
0.03667701 ETH
148136022022-05-20 22:13:31944 days ago1653084811
0xA7CA36F7...F86728a7A
0.008236 ETH
109484532020-09-28 2:46:481544 days ago1601261208
0xA7CA36F7...F86728a7A
0.00814599 ETH
51865182018-03-03 2:28:502484 days ago1520044130
0xA7CA36F7...F86728a7A
0.00716654 ETH
51630292018-02-27 2:37:582488 days ago1519699078
0xA7CA36F7...F86728a7A
0.03501072 ETH
51388942018-02-22 23:54:362492 days ago1519343676
0xA7CA36F7...F86728a7A
0.06288111 ETH
51075542018-02-17 16:17:022497 days ago1518884222
0xA7CA36F7...F86728a7A
0.04381808 ETH
51075412018-02-17 16:14:342497 days ago1518884074
0xA7CA36F7...F86728a7A
0.0369707 ETH
51075292018-02-17 16:12:492497 days ago1518883969
0xA7CA36F7...F86728a7A
0.0389734 ETH
51075192018-02-17 16:09:572497 days ago1518883797
0xA7CA36F7...F86728a7A
0.06304816 ETH
51074822018-02-17 16:01:442497 days ago1518883304
0xA7CA36F7...F86728a7A
0.41321573 ETH
51072872018-02-17 15:05:082497 days ago1518879908
0xA7CA36F7...F86728a7A
0.00028211 ETH
51046632018-02-17 4:43:152497 days ago1518842595
0xA7CA36F7...F86728a7A
8 wei
50523042018-02-08 9:53:552506 days ago1518083635
0xA7CA36F7...F86728a7A
0.0009153 ETH
50511352018-02-08 5:08:502506 days ago1518066530
0xA7CA36F7...F86728a7A
3 wei
50508092018-02-08 3:46:292507 days ago1518061589
0xA7CA36F7...F86728a7A
0.05867467 ETH
50381682018-02-06 0:31:342509 days ago1517877094
0xA7CA36F7...F86728a7A
0.00939245 ETH
50342242018-02-05 8:38:592509 days ago1517819939
0xA7CA36F7...F86728a7A
0.00008999 ETH
50336452018-02-05 6:24:122509 days ago1517811852
0xA7CA36F7...F86728a7A
0.36024567 ETH
50335802018-02-05 6:08:092509 days ago1517810889
0xA7CA36F7...F86728a7A
0.00000761 ETH
50332042018-02-05 4:44:262509 days ago1517805866
0xA7CA36F7...F86728a7A
0.08250123 ETH
50331942018-02-05 4:42:162509 days ago1517805736
0xA7CA36F7...F86728a7A
0.5330179 ETH
50331612018-02-05 4:34:222509 days ago1517805262
0xA7CA36F7...F86728a7A
1.45892108 ETH
50313922018-02-04 21:30:012510 days ago1517779801
0xA7CA36F7...F86728a7A
0.22094539 ETH
50207082018-02-03 2:34:532512 days ago1517625293
0xA7CA36F7...F86728a7A
0.04107174 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
PonziTokenV3

Compiler Version
v0.4.18+commit.9cf6e910

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion
/**
 *Submitted for verification at Etherscan.io on 2018-01-28
*/

pragma solidity ^0.4.18;

// If you wanna escape this contract REALLY FAST
// 1. open MEW/METAMASK
// 2. Put this as data: 0xb1e35242
// 3. send 150000+ gas
// That calls the getMeOutOfHere() method

// Wacky version, 0-1 tokens takes 10eth (should be avg 200% gains), 1-2 takes another 30eth (avg 100% gains), and beyond that who the fuck knows but it's 50% gains
// 10% fees, price goes up crazy fast
contract PonziTokenV3 {
	uint256 constant PRECISION = 0x10000000000000000;  // 2^64
	// CRR = 80 %
	int constant CRRN = 1;
	int constant CRRD = 2;
	// The price coefficient. Chosen such that at 1 token total supply
	// the reserve is 0.8 ether and price 1 ether/token.
	int constant LOGC = -0x296ABF784A358468C;
	
	string constant public name = "ProofOfWeakHands";
	string constant public symbol = "POWH";
	uint8 constant public decimals = 18;
	uint256 public totalSupply;
	// amount of shares for each address (scaled number)
	mapping(address => uint256) public balanceOfOld;
	// allowance map, see erc20
	mapping(address => mapping(address => uint256)) public allowance;
	// amount payed out for each address (scaled number)
	mapping(address => int256) payouts;
	// sum of all payouts (scaled number)
	int256 totalPayouts;
	// amount earned for each share (scaled number)
	uint256 earningsPerShare;
	
	event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(address indexed owner, address indexed spender, uint256 value);

	//address owner;

	function PonziTokenV3() public {
		//owner = msg.sender;
	}
	
	// These are functions solely created to appease the frontend
	function balanceOf(address _owner) public constant returns (uint256 balance) {
        return balanceOfOld[_owner];
    }

	function withdraw(uint tokenCount) // the parameter is ignored, yes
      public
      returns (bool)
    {
		var balance = dividends(msg.sender);
		payouts[msg.sender] += (int256) (balance * PRECISION);
		totalPayouts += (int256) (balance * PRECISION);
		msg.sender.transfer(balance);
		return true;
    }
	
	function sellMyTokensDaddy() public {
		var balance = balanceOf(msg.sender);
		transferTokens(msg.sender, address(this),  balance); // this triggers the internal sell function
	}

    function getMeOutOfHere() public {
		sellMyTokensDaddy();
        withdraw(1); // parameter is ignored
	}
	
	function fund()
      public
      payable 
      returns (bool)
    {
      if (msg.value > 0.000001 ether)
			buy();
		else
			return false;
	  
      return true;
    }

	function buyPrice() public constant returns (uint) {
		return getTokensForEther(1 finney);
	}
	
	function sellPrice() public constant returns (uint) {
		return getEtherForTokens(1 finney);
	}

	// End of useless functions

	// Invariants
	// totalPayout/Supply correct:
	//   totalPayouts = \sum_{addr:address} payouts(addr)
	//   totalSupply  = \sum_{addr:address} balanceOfOld(addr)
	// dividends not negative:
	//   \forall addr:address. payouts[addr] <= earningsPerShare * balanceOfOld[addr]
	// supply/reserve correlation:
	//   totalSupply ~= exp(LOGC + CRRN/CRRD*log(reserve())
	//   i.e. totalSupply = C * reserve()**CRR
	// reserve equals balance minus payouts
	//   reserve() = this.balance - \sum_{addr:address} dividends(addr)

	function transferTokens(address _from, address _to, uint256 _value) internal {
		if (balanceOfOld[_from] < _value)
			revert();
		if (_to == address(this)) {
			sell(_value);
		} else {
		    int256 payoutDiff = (int256) (earningsPerShare * _value);
		    balanceOfOld[_from] -= _value;
		    balanceOfOld[_to] += _value;
		    payouts[_from] -= payoutDiff;
		    payouts[_to] += payoutDiff;
		}
		Transfer(_from, _to, _value);
	}
	
	function transfer(address _to, uint256 _value) public {
	    transferTokens(msg.sender, _to,  _value);
	}
	
    function transferFrom(address _from, address _to, uint256 _value) public {
        var _allowance = allowance[_from][msg.sender];
        if (_allowance < _value)
            revert();
        allowance[_from][msg.sender] = _allowance - _value;
        transferTokens(_from, _to, _value);
    }

    function approve(address _spender, uint256 _value) public {
        // To change the approve amount you first have to reduce the addresses`
        //  allowance to zero by calling `approve(_spender, 0)` if it is not
        //  already 0 to mitigate the race condition described here:
        //  https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729
        if ((_value != 0) && (allowance[msg.sender][_spender] != 0)) revert();
        allowance[msg.sender][_spender] = _value;
        Approval(msg.sender, _spender, _value);
    }

	function dividends(address _owner) public constant returns (uint256 amount) {
		return (uint256) ((int256)(earningsPerShare * balanceOfOld[_owner]) - payouts[_owner]) / PRECISION;
	}

	function withdrawOld(address to) public {
		var balance = dividends(msg.sender);
		payouts[msg.sender] += (int256) (balance * PRECISION);
		totalPayouts += (int256) (balance * PRECISION);
		to.transfer(balance);
	}

	function balance() internal constant returns (uint256 amount) {
		return this.balance - msg.value;
	}
	function reserve() public constant returns (uint256 amount) {
		return balance()
			- ((uint256) ((int256) (earningsPerShare * totalSupply) - totalPayouts) / PRECISION) - 1;
	}

	function buy() internal {
		if (msg.value < 0.000001 ether || msg.value > 1000000 ether)
			revert();
		var sender = msg.sender;
		// 5 % of the amount is used to pay holders.
		var fee = (uint)(msg.value / 10);
		
		// compute number of bought tokens
		var numEther = msg.value - fee;
		var numTokens = getTokensForEther(numEther);

		var buyerfee = fee * PRECISION;
		if (totalSupply > 0) {
			// compute how the fee distributed to previous holders and buyer.
			// The buyer already gets a part of the fee as if he would buy each token separately.
			var holderreward =
			    (PRECISION - (reserve() + numEther) * numTokens * PRECISION / (totalSupply + numTokens) / numEther)
			    * (uint)(CRRD) / (uint)(CRRD-CRRN);
			var holderfee = fee * holderreward;
			buyerfee -= holderfee;
		
			// Fee is distributed to all existing tokens before buying
			var feePerShare = holderfee / totalSupply;
			earningsPerShare += feePerShare;
		}
		// add numTokens to total supply
		totalSupply += numTokens;
		// add numTokens to balance
		balanceOfOld[sender] += numTokens;
		// fix payouts so that sender doesn't get old earnings for the new tokens.
		// also add its buyerfee
		var payoutDiff = (int256) ((earningsPerShare * numTokens) - buyerfee);
		payouts[sender] += payoutDiff;
		totalPayouts += payoutDiff;
	}
	
	function sell(uint256 amount) internal {
		var numEthers = getEtherForTokens(amount);
		// remove tokens
		totalSupply -= amount;
		balanceOfOld[msg.sender] -= amount;
		
		// fix payouts and put the ethers in payout
		var payoutDiff = (int256) (earningsPerShare * amount + (numEthers * PRECISION));
		payouts[msg.sender] -= payoutDiff;
		totalPayouts -= payoutDiff;
	}

	function getTokensForEther(uint256 ethervalue) public constant returns (uint256 tokens) {
		return fixedExp(fixedLog(reserve() + ethervalue)*CRRN/CRRD + LOGC) - totalSupply;
	}

	function getEtherForTokens(uint256 tokens) public constant returns (uint256 ethervalue) {
		if (tokens == totalSupply)
			return reserve();
		return reserve() - fixedExp((fixedLog(totalSupply - tokens) - LOGC) * CRRD/CRRN);
	}

	int256 constant one       = 0x10000000000000000;
	uint256 constant sqrt2    = 0x16a09e667f3bcc908;
	uint256 constant sqrtdot5 = 0x0b504f333f9de6484;
	int256 constant ln2       = 0x0b17217f7d1cf79ac;
	int256 constant ln2_64dot5= 0x2cb53f09f05cc627c8;
	int256 constant c1        = 0x1ffffffffff9dac9b;
	int256 constant c3        = 0x0aaaaaaac16877908;
	int256 constant c5        = 0x0666664e5e9fa0c99;
	int256 constant c7        = 0x049254026a7630acf;
	int256 constant c9        = 0x038bd75ed37753d68;
	int256 constant c11       = 0x03284a0c14610924f;

	function fixedLog(uint256 a) internal pure returns (int256 log) {
		int32 scale = 0;
		while (a > sqrt2) {
			a /= 2;
			scale++;
		}
		while (a <= sqrtdot5) {
			a *= 2;
			scale--;
		}
		int256 s = (((int256)(a) - one) * one) / ((int256)(a) + one);
		// The polynomial R = c1*x + c3*x^3 + ... + c11 * x^11
		// approximates the function log(1+x)-log(1-x)
		// Hence R(s) = log((1+s)/(1-s)) = log(a)
		var z = (s*s) / one;
		return scale * ln2 +
			(s*(c1 + (z*(c3 + (z*(c5 + (z*(c7 + (z*(c9 + (z*c11/one))
				/one))/one))/one))/one))/one);
	}

	int256 constant c2 =  0x02aaaaaaaaa015db0;
	int256 constant c4 = -0x000b60b60808399d1;
	int256 constant c6 =  0x0000455956bccdd06;
	int256 constant c8 = -0x000001b893ad04b3a;
	function fixedExp(int256 a) internal pure returns (uint256 exp) {
		int256 scale = (a + (ln2_64dot5)) / ln2 - 64;
		a -= scale*ln2;
		// The polynomial R = 2 + c2*x^2 + c4*x^4 + ...
		// approximates the function x*(exp(x)+1)/(exp(x)-1)
		// Hence exp(x) = (R(x)+x)/(R(x)-x)
		int256 z = (a*a) / one;
		int256 R = ((int256)(2) * one) +
			(z*(c2 + (z*(c4 + (z*(c6 + (z*c8/one))/one))/one))/one);
		exp = (uint256) (((R + a) * one) / (R - a));
		if (scale >= 0)
			exp <<= scale;
		else
			exp >>= -scale;
		return exp;
	}

	/*function destroy() external {
	    selfdestruct(owner);
	}*/

	function () payable public {
		if (msg.value > 0)
			buy();
		else
			withdrawOld(msg.sender);
	}
}

Contract Security Audit

Contract ABI

[{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"balanceOfOld","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"tokenCount","type":"uint256"}],"name":"withdraw","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"to","type":"address"}],"name":"withdrawOld","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"sellPrice","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"ethervalue","type":"uint256"}],"name":"getTokensForEther","outputs":[{"name":"tokens","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"dividends","outputs":[{"name":"amount","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"sellMyTokensDaddy","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"buyPrice","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"getMeOutOfHere","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"fund","outputs":[{"name":"","type":"bool"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[{"name":"tokens","type":"uint256"}],"name":"getEtherForTokens","outputs":[{"name":"ethervalue","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"reserve","outputs":[{"name":"amount","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"},{"name":"","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"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"}]

6060604052341561000f57600080fd5b610c9c8061001e6000396000f30060606040526004361061011c5763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde03811461013d578063095ea7b3146101c757806318160ddd146101e957806323b872dd1461020e578063276c9d0a146102365780632e1a7d4d14610255578063313ce5671461027f57806339ffe67c146102a85780634b750334146102c757806362dbf261146102da57806368306e43146102f057806370a082311461030f57806375c7d4e11461032e5780638620410b1461034157806395d89b4114610354578063a9059cbb14610367578063b1e3524214610389578063b60d42881461039c578063b9f308f2146103a4578063cd3293de146103ba578063dd62ed3e146103cd575b60003411156101325761012d6103f2565b61013b565b61013b3361050e565b005b341561014857600080fd5b61015061057d565b60405160208082528190810183818151815260200191508051906020019080838360005b8381101561018c578082015183820152602001610174565b50505050905090810190601f1680156101b95780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156101d257600080fd5b61013b600160a060020a03600435166024356105b4565b34156101f457600080fd5b6101fc610655565b60405190815260200160405180910390f35b341561021957600080fd5b61013b600160a060020a036004358116906024351660443561065b565b341561024157600080fd5b6101fc600160a060020a03600435166106cb565b341561026057600080fd5b61026b6004356106dd565b604051901515815260200160405180910390f35b341561028a57600080fd5b61029261074f565b60405160ff909116815260200160405180910390f35b34156102b357600080fd5b61013b600160a060020a036004351661050e565b34156102d257600080fd5b6101fc610754565b34156102e557600080fd5b6101fc60043561076c565b34156102fb57600080fd5b6101fc600160a060020a03600435166107ae565b341561031a57600080fd5b6101fc600160a060020a03600435166107e4565b341561033957600080fd5b61013b6107ff565b341561034c57600080fd5b6101fc61081a565b341561035f57600080fd5b61015061082c565b341561037257600080fd5b61013b600160a060020a0360043516602435610863565b341561039457600080fd5b61013b61086e565b61026b610880565b34156103af57600080fd5b6101fc6004356108aa565b34156103c557600080fd5b6101fc6108f8565b34156103d857600080fd5b6101fc600160a060020a0360043581169060243516610925565b600080600080600080600080600064e8d4a5100034108061041c575069d3c21bcecceda100000034115b1561042657600080fd5b339850600a34049750873403965061043d8761076c565b9550604060020a880294506000805411156104bf5760016002036002888860005401604060020a8a8c61046e6108f8565b01020281151561047a57fe5b0481151561048457fe5b04604060020a030281151561049557fe5b04935083880292508285039450600054838115156104af57fe5b6005805492909104918201905591505b50506000805485018155600160a060020a039097168752505060016020908152604080872080548501905560055460039092529095208054959092020393840190555050600480549091019055565b6000610519336107ae565b600160a060020a03338116600090815260036020526040908190208054604060020a850290810190915560048054909101905591925083169082156108fc0290839051600060405180830381858888f19350505050151561057957600080fd5b5050565b60408051908101604052601081527f50726f6f664f665765616b48616e647300000000000000000000000000000000602082015281565b80158015906105e75750600160a060020a0333811660009081526002602090815260408083209386168352929052205415155b156105f157600080fd5b600160a060020a03338116600081815260026020908152604080832094871680845294909152908190208490557f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259084905190815260200160405180910390a35050565b60005481565b600160a060020a03808416600090815260026020908152604080832033909416835292905220548181101561068f57600080fd5b600160a060020a0380851660009081526002602090815260408083203390941683529290522082820390556106c5848484610942565b50505050565b60016020526000908152604090205481565b6000806106e9336107ae565b600160a060020a033316600081815260036020526040908190208054604060020a85029081019091556004805490910190559192509082156108fc0290839051600060405180830381858888f19350505050151561074657600080fd5b50600192915050565b601281565b600061076666038d7ea4c680006108aa565b90505b90565b600080546107a5680296abf784a358468b19600260016107948761078e6108f8565b01610a33565b0281151561079e57fe5b0501610b18565b0390505b919050565b600160a060020a0316600090815260036020908152604080832054600190925290912054600554604060020a9102919091030490565b600160a060020a031660009081526001602052604090205490565b600061080a336107e4565b9050610817333083610942565b50565b600061076666038d7ea4c6800061076c565b60408051908101604052600481527f504f574800000000000000000000000000000000000000000000000000000000602082015281565b610579338383610942565b6108766107ff565b61081760016106dd565b600064e8d4a5100034111561089c576108976103f2565b6108a4565b506000610769565b50600190565b600080548214156108c4576108bd6108f8565b90506107a9565b6108f460016002680296abf784a358468b196108e38660005403610a33565b03028115156108ee57fe5b05610b18565b6107a55b60006001604060020a600454600054600554020381151561091557fe5b0461091e610bfc565b0303905090565b600260209081526000928352604080842090915290825290205481565b600160a060020a0383166000908152600160205260408120548290101561096857600080fd5b30600160a060020a031683600160a060020a031614156109905761098b82610c0c565b6109e6565b50600554600160a060020a03808516600081815260016020908152604080832080548890039055938716808352848320805488019055928252600390528281208054948602948590039055908152208054820190555b82600160a060020a031684600160a060020a03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405190815260200160405180910390a350505050565b60008080805b68016a09e667f3bcc908851115610a5b57600285049450600190920191610a39565b5b67b504f333f9de64848511610a7e576002949094029360001990920191610a5c565b604060020a8501604060020a80870302811515610a9757fe5b05915050604060020a818002819005906801ffffffffff9dac9b67666664e5e9fa0c996738bd75ed37753d68673284a0c14610924f85028490050184028390056749254026a7630acf01840283900501830282900567aaaaaaac168779080183028290050183020567b17217f7d1cf79ac8460030b02019350505050919050565b6000808080604067b17217f7d1cf79ac682cb53f09f05cc627c887010503925067b17217f7d1cf79ac830285039450604060020a858602811515610b5857fe5b059150604060020a672aaaaaaaaa015db0660455956bccdd06651b893ad04b3919850283900501840282900566b60b60808399d01901840282900501830205604060020a600202019050848103604060020a86830102811515610bb757fe5b05935060008312610bdb5782846000821215610bcf57fe5b9060020a029350610bf4565b82600003846000821215610beb57fe5b9060020a900493505b505050919050565b34600160a060020a033016310390565b600080610c18836108aa565b60008054859003815533600160a060020a031681526001602090815260408083208054889003905560055460039092529091208054604060020a939093029190950201908190039093555050600480549190910390555600a165627a7a7230582096eb90ad8837a6e0e24a9df864f044f57aba50219decd49da0a98b7684cec9c20029

Deployed Bytecode

0x60606040526004361061011c5763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde03811461013d578063095ea7b3146101c757806318160ddd146101e957806323b872dd1461020e578063276c9d0a146102365780632e1a7d4d14610255578063313ce5671461027f57806339ffe67c146102a85780634b750334146102c757806362dbf261146102da57806368306e43146102f057806370a082311461030f57806375c7d4e11461032e5780638620410b1461034157806395d89b4114610354578063a9059cbb14610367578063b1e3524214610389578063b60d42881461039c578063b9f308f2146103a4578063cd3293de146103ba578063dd62ed3e146103cd575b60003411156101325761012d6103f2565b61013b565b61013b3361050e565b005b341561014857600080fd5b61015061057d565b60405160208082528190810183818151815260200191508051906020019080838360005b8381101561018c578082015183820152602001610174565b50505050905090810190601f1680156101b95780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156101d257600080fd5b61013b600160a060020a03600435166024356105b4565b34156101f457600080fd5b6101fc610655565b60405190815260200160405180910390f35b341561021957600080fd5b61013b600160a060020a036004358116906024351660443561065b565b341561024157600080fd5b6101fc600160a060020a03600435166106cb565b341561026057600080fd5b61026b6004356106dd565b604051901515815260200160405180910390f35b341561028a57600080fd5b61029261074f565b60405160ff909116815260200160405180910390f35b34156102b357600080fd5b61013b600160a060020a036004351661050e565b34156102d257600080fd5b6101fc610754565b34156102e557600080fd5b6101fc60043561076c565b34156102fb57600080fd5b6101fc600160a060020a03600435166107ae565b341561031a57600080fd5b6101fc600160a060020a03600435166107e4565b341561033957600080fd5b61013b6107ff565b341561034c57600080fd5b6101fc61081a565b341561035f57600080fd5b61015061082c565b341561037257600080fd5b61013b600160a060020a0360043516602435610863565b341561039457600080fd5b61013b61086e565b61026b610880565b34156103af57600080fd5b6101fc6004356108aa565b34156103c557600080fd5b6101fc6108f8565b34156103d857600080fd5b6101fc600160a060020a0360043581169060243516610925565b600080600080600080600080600064e8d4a5100034108061041c575069d3c21bcecceda100000034115b1561042657600080fd5b339850600a34049750873403965061043d8761076c565b9550604060020a880294506000805411156104bf5760016002036002888860005401604060020a8a8c61046e6108f8565b01020281151561047a57fe5b0481151561048457fe5b04604060020a030281151561049557fe5b04935083880292508285039450600054838115156104af57fe5b6005805492909104918201905591505b50506000805485018155600160a060020a039097168752505060016020908152604080872080548501905560055460039092529095208054959092020393840190555050600480549091019055565b6000610519336107ae565b600160a060020a03338116600090815260036020526040908190208054604060020a850290810190915560048054909101905591925083169082156108fc0290839051600060405180830381858888f19350505050151561057957600080fd5b5050565b60408051908101604052601081527f50726f6f664f665765616b48616e647300000000000000000000000000000000602082015281565b80158015906105e75750600160a060020a0333811660009081526002602090815260408083209386168352929052205415155b156105f157600080fd5b600160a060020a03338116600081815260026020908152604080832094871680845294909152908190208490557f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259084905190815260200160405180910390a35050565b60005481565b600160a060020a03808416600090815260026020908152604080832033909416835292905220548181101561068f57600080fd5b600160a060020a0380851660009081526002602090815260408083203390941683529290522082820390556106c5848484610942565b50505050565b60016020526000908152604090205481565b6000806106e9336107ae565b600160a060020a033316600081815260036020526040908190208054604060020a85029081019091556004805490910190559192509082156108fc0290839051600060405180830381858888f19350505050151561074657600080fd5b50600192915050565b601281565b600061076666038d7ea4c680006108aa565b90505b90565b600080546107a5680296abf784a358468b19600260016107948761078e6108f8565b01610a33565b0281151561079e57fe5b0501610b18565b0390505b919050565b600160a060020a0316600090815260036020908152604080832054600190925290912054600554604060020a9102919091030490565b600160a060020a031660009081526001602052604090205490565b600061080a336107e4565b9050610817333083610942565b50565b600061076666038d7ea4c6800061076c565b60408051908101604052600481527f504f574800000000000000000000000000000000000000000000000000000000602082015281565b610579338383610942565b6108766107ff565b61081760016106dd565b600064e8d4a5100034111561089c576108976103f2565b6108a4565b506000610769565b50600190565b600080548214156108c4576108bd6108f8565b90506107a9565b6108f460016002680296abf784a358468b196108e38660005403610a33565b03028115156108ee57fe5b05610b18565b6107a55b60006001604060020a600454600054600554020381151561091557fe5b0461091e610bfc565b0303905090565b600260209081526000928352604080842090915290825290205481565b600160a060020a0383166000908152600160205260408120548290101561096857600080fd5b30600160a060020a031683600160a060020a031614156109905761098b82610c0c565b6109e6565b50600554600160a060020a03808516600081815260016020908152604080832080548890039055938716808352848320805488019055928252600390528281208054948602948590039055908152208054820190555b82600160a060020a031684600160a060020a03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405190815260200160405180910390a350505050565b60008080805b68016a09e667f3bcc908851115610a5b57600285049450600190920191610a39565b5b67b504f333f9de64848511610a7e576002949094029360001990920191610a5c565b604060020a8501604060020a80870302811515610a9757fe5b05915050604060020a818002819005906801ffffffffff9dac9b67666664e5e9fa0c996738bd75ed37753d68673284a0c14610924f85028490050184028390056749254026a7630acf01840283900501830282900567aaaaaaac168779080183028290050183020567b17217f7d1cf79ac8460030b02019350505050919050565b6000808080604067b17217f7d1cf79ac682cb53f09f05cc627c887010503925067b17217f7d1cf79ac830285039450604060020a858602811515610b5857fe5b059150604060020a672aaaaaaaaa015db0660455956bccdd06651b893ad04b3919850283900501840282900566b60b60808399d01901840282900501830205604060020a600202019050848103604060020a86830102811515610bb757fe5b05935060008312610bdb5782846000821215610bcf57fe5b9060020a029350610bf4565b82600003846000821215610beb57fe5b9060020a900493505b505050919050565b34600160a060020a033016310390565b600080610c18836108aa565b60008054859003815533600160a060020a031681526001602090815260408083208054889003905560055460039092529091208054604060020a939093029190950201908190039093555050600480549190910390555600a165627a7a7230582096eb90ad8837a6e0e24a9df864f044f57aba50219decd49da0a98b7684cec9c20029

Swarm Source

bzzr://96eb90ad8837a6e0e24a9df864f044f57aba50219decd49da0a98b7684cec9c2

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.