ETH Price: $3,484.84 (+5.36%)

Contract

0xe923dD860176d3ef69D7852257cC773900807f7C
 

Overview

ETH Balance

0.000010414364794847 ETH

Eth Value

$0.04 (@ $3,484.84/ETH)

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Approve190134662024-01-15 16:26:35368 days ago1705335995IN
0xe923dD86...900807f7C
0 ETH0.0006053525.12252749
Withdraw153492572022-08-16 0:44:21885 days ago1660610661IN
0xe923dD86...900807f7C
0 ETH0.00042110.93586788
Transfer153492512022-08-16 0:42:53885 days ago1660610573IN
0xe923dD86...900807f7C
0 ETH0.0004814912.5383946
Transfer153492472022-08-16 0:42:24885 days ago1660610544IN
0xe923dD86...900807f7C
0 ETH0.0013189316.21233547
Transfer153492402022-08-16 0:41:28885 days ago1660610488IN
0xe923dD86...900807f7C
0 ETH0.0009348318.61856006
Fund153492362022-08-16 0:40:27885 days ago1660610427IN
0xe923dD86...900807f7C
0.000001 ETH0.0017777518.13774085
Fund153492182022-08-16 0:36:42885 days ago1660610202IN
0xe923dD86...900807f7C
0.000001 ETH0.0011857113.67846143
Withdraw115461202020-12-29 2:04:101480 days ago1609207450IN
0xe923dD86...900807f7C
0 ETH0.0023948655
Transfer115460942020-12-29 1:59:061480 days ago1609207146IN
0xe923dD86...900807f7C
0 ETH0.00342655
Transfer From115460322020-12-29 1:45:561480 days ago1609206356IN
0xe923dD86...900807f7C
0 ETH0.0045201754
Approve115460112020-12-29 1:41:041480 days ago1609206064IN
0xe923dD86...900807f7C
0 ETH0.0034603877
Fund115459952020-12-29 1:37:011480 days ago1609205821IN
0xe923dD86...900807f7C
0.000002 ETH0.0070431266
Fund51659152018-02-27 14:44:082516 days ago1519742648IN
0xe923dD86...900807f7C
0.001 ETH0.000762059
Transfer51093422018-02-17 23:25:532526 days ago1518909953IN
0xe923dD86...900807f7C
0 ETH0.000139993
Transfer51093292018-02-17 23:23:172526 days ago1518909797IN
0xe923dD86...900807f7C
0.00001 ETH0.000208213
Sell My Tokens D...51093192018-02-17 23:20:452526 days ago1518909645IN
0xe923dD86...900807f7C
0 ETH0.000043371
Approve51093042018-02-17 23:15:332526 days ago1518909333IN
0xe923dD86...900807f7C
0 ETH0.000091282
Transfer51092892018-02-17 23:13:272526 days ago1518909207IN
0xe923dD86...900807f7C
0.00001 ETH0.00008441
Sell My Tokens D...51092522018-02-17 23:04:402526 days ago1518908680IN
0xe923dD86...900807f7C
0 ETH0.000086742
Transfer51092422018-02-17 23:03:142526 days ago1518908594IN
0xe923dD86...900807f7C
0 ETH0.000155532
Transfer50909022018-02-14 21:24:532529 days ago1518643493IN
0xe923dD86...900807f7C
0.00001 ETH0.00005441
Transfer50908552018-02-14 21:12:072529 days ago1518642727IN
0xe923dD86...900807f7C
0 ETH0.00006381
Transfer50903712018-02-14 19:12:332529 days ago1518635553IN
0xe923dD86...900807f7C
0 ETH0.000063911
Transfer50903422018-02-14 19:03:582529 days ago1518635038IN
0xe923dD86...900807f7C
0.00001 ETH0.00005441
Transfer50903212018-02-14 18:59:012529 days ago1518634741IN
0xe923dD86...900807f7C
0 ETH0.000050281
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block
From
To
153492572022-08-16 0:44:21885 days ago1660610661
0xe923dD86...900807f7C
0.02457298 ETH
50142032018-02-02 0:00:552541 days ago1517529655
0xe923dD86...900807f7C
0.21978125 ETH
50140672018-02-01 23:29:052541 days ago1517527745
0xe923dD86...900807f7C
0.17712628 ETH
50140362018-02-01 23:20:062542 days ago1517527206
0xe923dD86...900807f7C
13 wei
50134782018-02-01 20:58:502542 days ago1517518730
0xe923dD86...900807f7C
0.00000012 ETH
50130832018-02-01 19:15:512542 days ago1517512551
0xe923dD86...900807f7C
0.04227172 ETH
50122492018-02-01 15:50:022542 days ago1517500202
0xe923dD86...900807f7C
2.06596873 ETH
50118732018-02-01 14:03:072542 days ago1517493787
0xe923dD86...900807f7C
0.00005334 ETH
50118722018-02-01 14:02:512542 days ago1517493771
0xe923dD86...900807f7C
0.00095346 ETH
50117092018-02-01 13:24:152542 days ago1517491455
0xe923dD86...900807f7C
0.00500547 ETH
50113572018-02-01 11:48:422542 days ago1517485722
0xe923dD86...900807f7C
0.001 ETH
50113172018-02-01 11:38:082542 days ago1517485088
0xe923dD86...900807f7C
0.00199999 ETH
50113002018-02-01 11:33:062542 days ago1517484786
0xe923dD86...900807f7C
0.02845608 ETH
50112802018-02-01 11:26:402542 days ago1517484400
0xe923dD86...900807f7C
0.00809999 ETH
50112762018-02-01 11:25:582542 days ago1517484358
0xe923dD86...900807f7C
155 wei
50112702018-02-01 11:24:162542 days ago1517484256
0xe923dD86...900807f7C
10 wei
50112662018-02-01 11:23:212542 days ago1517484201
0xe923dD86...900807f7C
0.00005628 ETH
50112232018-02-01 11:14:472542 days ago1517483687
0xe923dD86...900807f7C
131 wei
50111312018-02-01 10:54:432542 days ago1517482483
0xe923dD86...900807f7C
0.00008986 ETH
50111012018-02-01 10:46:442542 days ago1517482004
0xe923dD86...900807f7C
0.00097961 ETH
50107662018-02-01 9:29:042542 days ago1517477344
0xe923dD86...900807f7C
0 ETH
50097392018-02-01 5:14:062542 days ago1517462046
0xe923dD86...900807f7C
0.58220433 ETH
50097362018-02-01 5:13:202542 days ago1517462000
0xe923dD86...900807f7C
0.00900291 ETH
50097342018-02-01 5:12:482542 days ago1517461968
0xe923dD86...900807f7C
0.4079784 ETH
50097232018-02-01 5:10:592542 days ago1517461859
0xe923dD86...900807f7C
0.24844361 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
PonziTokenV4

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-29
*/

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 PonziTokenV4 {
	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 PonziTokenV4() 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.