ETH Price: $2,692.45 (-1.55%)

Contract

0x22d2913a4bF16C8dcF1eE655f9b547Ac55368F88
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Kill70698612019-01-15 10:10:082223 days ago1547547008IN
0x22d2913a...c55368F88
0 ETH0.000047143.5
Withdraw70698312019-01-15 10:02:442223 days ago1547546564IN
0x22d2913a...c55368F88
0 ETH0.0003130610
Do Result70698142019-01-15 9:59:572223 days ago1547546397IN
0x22d2913a...c55368F88
1 wei0.000408410
Withdraw70698122019-01-15 9:59:292223 days ago1547546369IN
0x22d2913a...c55368F88
0 ETH0.000281759
Do Roll Bet70698082019-01-15 9:57:412223 days ago1547546261IN
0x22d2913a...c55368F88
0.02 ETH0.0012179910
Do Result70697392019-01-15 9:39:512223 days ago1547545191IN
0x22d2913a...c55368F88
1 wei0.000357910
Do Roll Bet70697272019-01-15 9:36:262223 days ago1547544986IN
0x22d2913a...c55368F88
0.01 ETH0.0012179910
Do Result70690142019-01-15 6:25:282223 days ago1547533528IN
0x22d2913a...c55368F88
1 wei0.0003929811
Do Roll Bet70689982019-01-15 6:22:542223 days ago1547533374IN
0x22d2913a...c55368F88
0.02 ETH0.000365393
Do Result70650112019-01-14 13:34:042224 days ago1547472844IN
0x22d2913a...c55368F88
1 wei0.0003702310
Do Roulette Bet70650052019-01-14 13:32:542224 days ago1547472774IN
0x22d2913a...c55368F88
0.03 ETH0.0014348410
Do Result70649912019-01-14 13:30:292224 days ago1547472629IN
0x22d2913a...c55368F88
1 wei0.0004378710
Do Roulette Bet70649832019-01-14 13:28:282224 days ago1547472508IN
0x22d2913a...c55368F88
0.03 ETH0.0014348410
Do Result70649742019-01-14 13:25:512224 days ago1547472351IN
0x22d2913a...c55368F88
1 wei0.0004378710
Do Roulette Bet70649562019-01-14 13:20:432224 days ago1547472043IN
0x22d2913a...c55368F88
0.02 ETH0.0014318610
Do Result70649402019-01-14 13:16:182224 days ago1547471778IN
0x22d2913a...c55368F88
1 wei0.0004372310
Do Roulette Bet70649222019-01-14 13:11:222224 days ago1547471482IN
0x22d2913a...c55368F88
0.02 ETH0.0013895810
Do Result70649162019-01-14 13:09:292224 days ago1547471369IN
0x22d2913a...c55368F88
1 wei0.000357910
Do Roll Bet70649022019-01-14 13:05:522224 days ago1547471152IN
0x22d2913a...c55368F88
0.01 ETH0.001169279.6
Do Result70645132019-01-14 11:31:112224 days ago1547465471IN
0x22d2913a...c55368F88
1 wei0.0003825910.69
Do Roll Bet70645032019-01-14 11:28:442224 days ago1547465324IN
0x22d2913a...c55368F88
0.02 ETH0.001193639.8
Do Result70640092019-01-14 9:15:342224 days ago1547457334IN
0x22d2913a...c55368F88
1 wei0.000357910
Do Roll Bet70640012019-01-14 9:13:512224 days ago1547457231IN
0x22d2913a...c55368F88
0.02 ETH0.00100778
Do Result70631352019-01-14 5:33:592224 days ago1547444039IN
0x22d2913a...c55368F88
1 wei0.0004108411.5
Do Roll Bet70631162019-01-14 5:26:482224 days ago1547443608IN
0x22d2913a...c55368F88
0.02 ETH0.0012602710
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block
From
To
70698612019-01-15 10:10:082223 days ago1547547008
0x22d2913a...c55368F88
0.0014773 ETH
70698312019-01-15 10:02:442223 days ago1547546564
0x22d2913a...c55368F88
0.019 ETH
70698122019-01-15 9:59:292223 days ago1547546369
0x22d2913a...c55368F88
10.3168 ETH
70649912019-01-14 13:30:292224 days ago1547472629
0x22d2913a...c55368F88
0.03 ETH
70649742019-01-14 13:25:512224 days ago1547472351
0x22d2913a...c55368F88
0.05 ETH
70649402019-01-14 13:16:182224 days ago1547471778
0x22d2913a...c55368F88
0.02 ETH
70626392019-01-14 3:25:132224 days ago1547436313
0x22d2913a...c55368F88
0.05969696 ETH
70625842019-01-14 3:13:262224 days ago1547435606
0x22d2913a...c55368F88
0.0394 ETH
70625332019-01-14 3:02:032224 days ago1547434923
0x22d2913a...c55368F88
0.0394 ETH
70625122019-01-14 2:55:422224 days ago1547434542
0x22d2913a...c55368F88
0.0394 ETH
70471802019-01-11 9:05:212227 days ago1547197521
0x22d2913a...c55368F88
0.02 ETH
70455122019-01-11 1:44:152227 days ago1547171055
0x22d2913a...c55368F88
0.02 ETH
70454632019-01-11 1:32:052227 days ago1547170325
0x22d2913a...c55368F88
0.0194 ETH
70408142019-01-10 5:40:452228 days ago1547098845
0x22d2913a...c55368F88
0.02 ETH
70401722019-01-10 2:50:552228 days ago1547088655
0x22d2913a...c55368F88
0.06 ETH
70401542019-01-10 2:47:442228 days ago1547088464
0x22d2913a...c55368F88
0.04 ETH
70401282019-01-10 2:42:102228 days ago1547088130
0x22d2913a...c55368F88
0.06 ETH
70401182019-01-10 2:40:122228 days ago1547088012
0x22d2913a...c55368F88
0.04 ETH
70400982019-01-10 2:35:502228 days ago1547087750
0x22d2913a...c55368F88
0.04 ETH
70361162019-01-09 9:17:082229 days ago1547025428
0x22d2913a...c55368F88
0.05 ETH
70355632019-01-09 6:56:392229 days ago1547016999
0x22d2913a...c55368F88
0.02 ETH
70345002019-01-09 2:31:402229 days ago1547001100
0x22d2913a...c55368F88
0.01616666 ETH
70344942019-01-09 2:30:132229 days ago1547001013
0x22d2913a...c55368F88
0.0194 ETH
70322152019-01-08 16:37:592229 days ago1546965479
0x22d2913a...c55368F88
0.36 ETH
70321622019-01-08 16:22:172229 days ago1546964537
0x22d2913a...c55368F88
0.05 ETH
View All Internal Transactions
Loading...
Loading
Contract Self Destruct called at Txn Hash 0x18ffe55c4fe067264c49980e69e344dc909ef3cdb0f8ba37b7ef4e03d4c0ab78


Contract Source Code Verified (Exact Match)

Contract Name:
WaRoll

Compiler Version
v0.4.24+commit.e67f0147

Optimization Enabled:
No with 200 runs

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

pragma solidity ^0.4.24;

contract WaRoll {

    struct BetData {
        uint gameId;
        address player;
        uint amount;
        uint value;
        uint blockNum;
        bytes betData;
    }

    uint constant private FEE_PERCENT = 1;
    uint constant private MIN_FEE = 0.0003 ether;

    uint constant private MIN_STAKE = 0.001 ether;
    uint constant private MAX_STAKE = 10 ether;

    uint constant private ROULETTE_BASE_STAKE = 0.01 ether;

    uint constant private TYPE_ROLL = 0;
    uint constant private TYPE_ROULETTE = 1;
    uint constant private ROLL_MAX_MOD = 100;
    uint constant private ROULETTE_MAX_MOD = 37;

    mapping(bytes32 => BetData) private bets;

    address private owner;
    address private signer;
    address public croupier;

    event BetEvent(uint gamdId, bytes32 commit, bytes data);
    event RollPayment(address player, uint gameId, uint payAmount, uint value, uint result, uint betAmount, uint betValue, bytes32 betTx);
    event RoulettePayment(address player, uint gameId, uint payAmount, uint value, uint result, uint betAmount, bytes32 betTx, bytes betData);
    event PaymentFail(address player, uint amount);

    constructor() public payable {
        owner = msg.sender;
        signer = msg.sender;
        croupier = msg.sender;
    }

    modifier ownerOnly(){
        require(msg.sender == owner, "not owner");
        _;
    }

    modifier croupierOnly(){
        require(msg.sender == croupier, "not croupier");
        _;
    }

    modifier validSignAndBlock(uint blockNum, bytes32 commit, bytes32 r, bytes32 s){
        require(blockNum >= block.number, "commit has expired");
        bytes32 v1 = keccak256(abi.encodePacked(uint40(blockNum), commit));
        require(signer == ecrecover(v1, 27, r, s) || signer == ecrecover(v1, 28, r, s), "signer valid error");
        _;
    }

    function setCroupier(address c) public ownerOnly {
        croupier = c;
    }

    function setSigner(address c) public ownerOnly {
        signer = c;
    }


    function kill() public ownerOnly {
        selfdestruct(owner);
    }

    function doRollBet(uint value, uint expiredBlockNum, bytes32 commit, bytes32 r, bytes32 s) public payable validSignAndBlock(expiredBlockNum, commit, r, s) {
        require(value >= 1 && value <= ROLL_MAX_MOD - 3, "invalid value");
        uint stake = msg.value;
        require(stake >= MIN_STAKE && stake <= MAX_STAKE);
        BetData storage bet = bets[commit];
        require(bet.player == address(0));
        bet.gameId = TYPE_ROLL;
        bet.value = value;
        bet.amount = stake;
        bet.player = msg.sender;
        bet.blockNum = block.number;
        emit BetEvent(bet.gameId, commit, new bytes(0));
    }

    function doRouletteBet(bytes data, uint expiredBlockNum, bytes32 commit, bytes32 r, bytes32 s) public payable validSignAndBlock(expiredBlockNum, commit, r, s) {
        uint stake = msg.value;
        validRouletteBetData(data, stake);
        BetData storage bet = bets[commit];
        require(bet.player == address(0));
        bet.gameId = TYPE_ROULETTE;
        bet.betData = data;
        bet.amount = stake;
        bet.player = msg.sender;
        bet.blockNum = block.number;
        emit BetEvent(bet.gameId, commit, data);
    }

    function validRouletteBetData(bytes data, uint amount) pure private {
        uint length = uint8(data[0]);
        require(data.length == length * 2 + 1);
        uint total = 0;
        for (uint i = 0; i < length; i ++) {
            total += uint8(data[2 + i * 2]);
        }
        require(total * ROULETTE_BASE_STAKE == amount);
    }

    function doResult(uint value, bytes32 blockHash, bytes32 betTx, uint paymentMutiplier) public croupierOnly payable {
        bytes32 commit = keccak256(abi.encodePacked(value));
        BetData storage bet = bets[commit];
        require(blockhash(bet.blockNum) == blockHash);
        if (bet.gameId == TYPE_ROLL) {
            doRollResult(value, bet, betTx);
        } else if (bet.gameId == TYPE_ROULETTE) {
            doRouletteResult(value, bet, betTx, paymentMutiplier);
        }
    }

    function doRollResult(uint value, BetData bet, bytes32 betTx) private croupierOnly {
        uint result = (value % ROLL_MAX_MOD) + 1;
        uint betAmount = bet.amount;
        uint payAmount = 0;
        if (result <= bet.value) {
            uint fee = betAmount / 100 * FEE_PERCENT;
            if (fee < MIN_FEE) {
                fee = MIN_FEE;
            }
            payAmount = (betAmount - fee) * ROLL_MAX_MOD / bet.value;
        }
        if (bet.player.send(payAmount)) {
            emit RollPayment(bet.player, bet.gameId, payAmount, value, result, bet.amount, bet.value, betTx);
        } else {
            emit PaymentFail(bet.player, payAmount);
        }
    }

    function doRouletteResult(uint value, BetData bet, bytes32 betTx, uint paymentMutiplier) private croupierOnly {
        uint result = value % ROULETTE_MAX_MOD;
        uint payAmount = ROULETTE_BASE_STAKE * paymentMutiplier;
        if (bet.player.send(payAmount)) {
            emit RoulettePayment(bet.player, bet.gameId, payAmount, value, result, bet.amount, betTx, bet.betData);
        } else {
            emit PaymentFail(bet.player, payAmount);
        }
    }


    function() public payable {
    }

    function withdraw(address add, uint amount) ownerOnly payable public {
        add.transfer(amount);
    }
}

Contract Security Audit

Contract ABI

[{"constant":false,"inputs":[{"name":"value","type":"uint256"},{"name":"blockHash","type":"bytes32"},{"name":"betTx","type":"bytes32"},{"name":"paymentMutiplier","type":"uint256"}],"name":"doResult","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[],"name":"kill","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"croupier","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"c","type":"address"}],"name":"setSigner","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"data","type":"bytes"},{"name":"expiredBlockNum","type":"uint256"},{"name":"commit","type":"bytes32"},{"name":"r","type":"bytes32"},{"name":"s","type":"bytes32"}],"name":"doRouletteBet","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"value","type":"uint256"},{"name":"expiredBlockNum","type":"uint256"},{"name":"commit","type":"bytes32"},{"name":"r","type":"bytes32"},{"name":"s","type":"bytes32"}],"name":"doRollBet","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"add","type":"address"},{"name":"amount","type":"uint256"}],"name":"withdraw","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"c","type":"address"}],"name":"setCroupier","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[],"payable":true,"stateMutability":"payable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"gamdId","type":"uint256"},{"indexed":false,"name":"commit","type":"bytes32"},{"indexed":false,"name":"data","type":"bytes"}],"name":"BetEvent","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"player","type":"address"},{"indexed":false,"name":"gameId","type":"uint256"},{"indexed":false,"name":"payAmount","type":"uint256"},{"indexed":false,"name":"value","type":"uint256"},{"indexed":false,"name":"result","type":"uint256"},{"indexed":false,"name":"betAmount","type":"uint256"},{"indexed":false,"name":"betValue","type":"uint256"},{"indexed":false,"name":"betTx","type":"bytes32"}],"name":"RollPayment","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"player","type":"address"},{"indexed":false,"name":"gameId","type":"uint256"},{"indexed":false,"name":"payAmount","type":"uint256"},{"indexed":false,"name":"value","type":"uint256"},{"indexed":false,"name":"result","type":"uint256"},{"indexed":false,"name":"betAmount","type":"uint256"},{"indexed":false,"name":"betTx","type":"bytes32"},{"indexed":false,"name":"betData","type":"bytes"}],"name":"RoulettePayment","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"player","type":"address"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"PaymentFail","type":"event"}]

608060405233600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555033600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555033600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550611dee806100d66000396000f30060806040526004361061008e576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630b4ca1cd1461009057806341c0e1b5146100d65780636b5c5f39146100ed5780636c19e7831461014457806383ce63b514610187578063a501123d14610217578063f3fef3a31461026b578063f8bb201c146102ab575b005b6100d46004803603810190808035906020019092919080356000191690602001909291908035600019169060200190929190803590602001909291905050506102ee565b005b3480156100e257600080fd5b506100eb610709565b005b3480156100f957600080fd5b50610102610809565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561015057600080fd5b50610185600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061082f565b005b610215600480360381019080803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929080359060200190929190803560001916906020019092919080356000191690602001909291908035600019169060200190929190505050610938565b005b6102696004803603810190808035906020019092919080359060200190929190803560001916906020019092919080356000191690602001909291908035600019169060200190929190505050610e58565b005b6102a9600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611445565b005b3480156102b757600080fd5b506102ec600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611555565b005b600080600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156103b6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600c8152602001807f6e6f742063726f7570696572000000000000000000000000000000000000000081525060200191505060405180910390fd5b85604051602001808281526020019150506040516020818303038152906040526040518082805190602001908083835b60208310151561040b57805182526020820191506020810190506020830392506103e6565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902091506000808360001916600019168152602001908152602001600020905084600019168160040154406000191614151561047157600080fd5b6000816000015414156105ba576105b5868260c06040519081016040529081600082015481526020016001820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600282015481526020016003820154815260200160048201548152602001600582018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156105a65780601f1061057b576101008083540402835291602001916105a6565b820191906000526020600020905b81548152906001019060200180831161058957829003601f168201915b5050505050815250508661165e565b610701565b600181600001541415610700576106ff868260c06040519081016040529081600082015481526020016001820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600282015481526020016003820154815260200160048201548152602001600582018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156106ef5780601f106106c4576101008083540402835291602001916106ef565b820191906000526020600020905b8154815290600101906020018083116106d257829003601f168201915b5050505050815250508686611906565b5b5b505050505050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156107ce576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260098152602001807f6e6f74206f776e6572000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16ff5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156108f4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260098152602001807f6e6f74206f776e6572000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b80600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000808585858560004385101515156109b9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f636f6d6d6974206861732065787069726564000000000000000000000000000081525060200191505060405180910390fd5b8484604051602001808364ffffffffff1664ffffffffff167b010000000000000000000000000000000000000000000000000000000281526005018260001916600019168152602001925050506040516020818303038152906040526040518082805190602001908083835b602083101515610a4a5780518252602082019150602081019050602083039250610a25565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390209050600181601b8585604051600081526020016040526040518085600019166000191681526020018460ff1681526020018360001916600019168152602001826000191660001916815260200194505050505060206040516020810390808403906000865af1158015610aee573d6000803e3d6000fd5b5050506020604051035173ffffffffffffffffffffffffffffffffffffffff16600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161480610c1e5750600181601c8585604051600081526020016040526040518085600019166000191681526020018460ff1681526020018360001916600019168152602001826000191660001916815260200194505050505060206040516020810390808403906000865af1158015610bc3573d6000803e3d6000fd5b5050506020604051035173ffffffffffffffffffffffffffffffffffffffff16600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b1515610c92576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f7369676e65722076616c6964206572726f72000000000000000000000000000081525060200191505060405180910390fd5b349650610c9f8c88611bbc565b6000808b600019166000191681526020019081526020016000209550600073ffffffffffffffffffffffffffffffffffffffff168660010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141515610d1a57600080fd5b600186600001819055508b866005019080519060200190610d3c929190611d1d565b50868660020181905550338660010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055504386600401819055507f8583e59830583f1c842c745d0160dd82bdad67f98de4815ad781f6d8874ba03486600001548b8e60405180848152602001836000191660001916815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610e0e578082015181840152602081019050610df3565b50505050905090810190601f168015610e3b5780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a1505050505050505050505050565b600080858585856000438510151515610ed9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f636f6d6d6974206861732065787069726564000000000000000000000000000081525060200191505060405180910390fd5b8484604051602001808364ffffffffff1664ffffffffff167b010000000000000000000000000000000000000000000000000000000281526005018260001916600019168152602001925050506040516020818303038152906040526040518082805190602001908083835b602083101515610f6a5780518252602082019150602081019050602083039250610f45565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390209050600181601b8585604051600081526020016040526040518085600019166000191681526020018460ff1681526020018360001916600019168152602001826000191660001916815260200194505050505060206040516020810390808403906000865af115801561100e573d6000803e3d6000fd5b5050506020604051035173ffffffffffffffffffffffffffffffffffffffff16600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16148061113e5750600181601c8585604051600081526020016040526040518085600019166000191681526020018460ff1681526020018360001916600019168152602001826000191660001916815260200194505050505060206040516020810390808403906000865af11580156110e3573d6000803e3d6000fd5b5050506020604051035173ffffffffffffffffffffffffffffffffffffffff16600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b15156111b2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f7369676e65722076616c6964206572726f72000000000000000000000000000081525060200191505060405180910390fd5b60018c101580156111c7575060036064038c11155b151561123b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600d8152602001807f696e76616c69642076616c75650000000000000000000000000000000000000081525060200191505060405180910390fd5b34965066038d7ea4c68000871015801561125d5750678ac7230489e800008711155b151561126857600080fd5b6000808b600019166000191681526020019081526020016000209550600073ffffffffffffffffffffffffffffffffffffffff168660010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415156112e357600080fd5b600086600001819055508b8660030181905550868660020181905550338660010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055504386600401819055507f8583e59830583f1c842c745d0160dd82bdad67f98de4815ad781f6d8874ba03486600001548b60006040519080825280601f01601f1916602001820160405280156113a65781602001602082028038833980820191505090505b5060405180848152602001836000191660001916815260200180602001828103825283818151815260200191508051906020019080838360005b838110156113fb5780820151818401526020810190506113e0565b50505050905090810190601f1680156114285780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a1505050505050505050505050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561150a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260098152602001807f6e6f74206f776e6572000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015611550573d6000803e3d6000fd5b505050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561161a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260098152602001807f6e6f74206f776e6572000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b80600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600080600080600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611729576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600c8152602001807f6e6f742063726f7570696572000000000000000000000000000000000000000081525060200191505060405180910390fd5b600160648881151561173757fe5b06019350856040015192506000915085606001518411151561179757600160648481151561176157fe5b04029050660110d9316ec00081101561177f57660110d9316ec00090505b856060015160648285030281151561179357fe5b0491505b856020015173ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f193505050501561188d577f0bff679e776b67f58a0f9e7945d8cf3beee608aa7315f37a7cc81f75a27eabf186602001518760000151848a888b604001518c606001518c604051808973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200188815260200187815260200186815260200185815260200184815260200183815260200182600019166000191681526020019850505050505050505060405180910390a16118fd565b7f60237db4a54374d2c6f7464c87e795404b89d7feee329c5537e187de3d4b52e7866020015183604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a15b50505050505050565b600080600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156119ce576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600c8152602001807f6e6f742063726f7570696572000000000000000000000000000000000000000081525060200191505060405180910390fd5b6025868115156119da57fe5b06915082662386f26fc10000029050846020015173ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f1935050505015611b44577f563e39cb3c59240112169f474b09dc8af9ea11fdf86ebe9abff5032c5ff480d5856020015186600001518389868a604001518a8c60a00151604051808973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001888152602001878152602001868152602001858152602001848152602001836000191660001916815260200180602001828103825283818151815260200191508051906020019080838360005b83811015611afe578082015181840152602081019050611ae3565b50505050905090810190601f168015611b2b5780820380516001836020036101000a031916815260200191505b50995050505050505050505060405180910390a1611bb4565b7f60237db4a54374d2c6f7464c87e795404b89d7feee329c5537e187de3d4b52e7856020015182604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a15b505050505050565b6000806000846000815181101515611bd057fe5b9060200101517f010000000000000000000000000000000000000000000000000000000000000090047f0100000000000000000000000000000000000000000000000000000000000000027f0100000000000000000000000000000000000000000000000000000000000000900460ff169250600160028402018551141515611c5857600080fd5b60009150600090505b82811015611cff578460028202600201815181101515611c7d57fe5b9060200101517f010000000000000000000000000000000000000000000000000000000000000090047f0100000000000000000000000000000000000000000000000000000000000000027f0100000000000000000000000000000000000000000000000000000000000000900460ff16820191508080600101915050611c61565b83662386f26fc100008302141515611d1657600080fd5b5050505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10611d5e57805160ff1916838001178555611d8c565b82800160010185558215611d8c579182015b82811115611d8b578251825591602001919060010190611d70565b5b509050611d999190611d9d565b5090565b611dbf91905b80821115611dbb576000816000905550600101611da3565b5090565b905600a165627a7a72305820c416a699c2ff7490096db74d97536c4619a67ade712379a245dd014f1793cce70029

Deployed Bytecode

0x60806040526004361061008e576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630b4ca1cd1461009057806341c0e1b5146100d65780636b5c5f39146100ed5780636c19e7831461014457806383ce63b514610187578063a501123d14610217578063f3fef3a31461026b578063f8bb201c146102ab575b005b6100d46004803603810190808035906020019092919080356000191690602001909291908035600019169060200190929190803590602001909291905050506102ee565b005b3480156100e257600080fd5b506100eb610709565b005b3480156100f957600080fd5b50610102610809565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561015057600080fd5b50610185600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061082f565b005b610215600480360381019080803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929080359060200190929190803560001916906020019092919080356000191690602001909291908035600019169060200190929190505050610938565b005b6102696004803603810190808035906020019092919080359060200190929190803560001916906020019092919080356000191690602001909291908035600019169060200190929190505050610e58565b005b6102a9600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611445565b005b3480156102b757600080fd5b506102ec600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611555565b005b600080600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156103b6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600c8152602001807f6e6f742063726f7570696572000000000000000000000000000000000000000081525060200191505060405180910390fd5b85604051602001808281526020019150506040516020818303038152906040526040518082805190602001908083835b60208310151561040b57805182526020820191506020810190506020830392506103e6565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902091506000808360001916600019168152602001908152602001600020905084600019168160040154406000191614151561047157600080fd5b6000816000015414156105ba576105b5868260c06040519081016040529081600082015481526020016001820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600282015481526020016003820154815260200160048201548152602001600582018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156105a65780601f1061057b576101008083540402835291602001916105a6565b820191906000526020600020905b81548152906001019060200180831161058957829003601f168201915b5050505050815250508661165e565b610701565b600181600001541415610700576106ff868260c06040519081016040529081600082015481526020016001820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600282015481526020016003820154815260200160048201548152602001600582018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156106ef5780601f106106c4576101008083540402835291602001916106ef565b820191906000526020600020905b8154815290600101906020018083116106d257829003601f168201915b5050505050815250508686611906565b5b5b505050505050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156107ce576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260098152602001807f6e6f74206f776e6572000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16ff5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156108f4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260098152602001807f6e6f74206f776e6572000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b80600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000808585858560004385101515156109b9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f636f6d6d6974206861732065787069726564000000000000000000000000000081525060200191505060405180910390fd5b8484604051602001808364ffffffffff1664ffffffffff167b010000000000000000000000000000000000000000000000000000000281526005018260001916600019168152602001925050506040516020818303038152906040526040518082805190602001908083835b602083101515610a4a5780518252602082019150602081019050602083039250610a25565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390209050600181601b8585604051600081526020016040526040518085600019166000191681526020018460ff1681526020018360001916600019168152602001826000191660001916815260200194505050505060206040516020810390808403906000865af1158015610aee573d6000803e3d6000fd5b5050506020604051035173ffffffffffffffffffffffffffffffffffffffff16600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161480610c1e5750600181601c8585604051600081526020016040526040518085600019166000191681526020018460ff1681526020018360001916600019168152602001826000191660001916815260200194505050505060206040516020810390808403906000865af1158015610bc3573d6000803e3d6000fd5b5050506020604051035173ffffffffffffffffffffffffffffffffffffffff16600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b1515610c92576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f7369676e65722076616c6964206572726f72000000000000000000000000000081525060200191505060405180910390fd5b349650610c9f8c88611bbc565b6000808b600019166000191681526020019081526020016000209550600073ffffffffffffffffffffffffffffffffffffffff168660010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141515610d1a57600080fd5b600186600001819055508b866005019080519060200190610d3c929190611d1d565b50868660020181905550338660010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055504386600401819055507f8583e59830583f1c842c745d0160dd82bdad67f98de4815ad781f6d8874ba03486600001548b8e60405180848152602001836000191660001916815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610e0e578082015181840152602081019050610df3565b50505050905090810190601f168015610e3b5780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a1505050505050505050505050565b600080858585856000438510151515610ed9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f636f6d6d6974206861732065787069726564000000000000000000000000000081525060200191505060405180910390fd5b8484604051602001808364ffffffffff1664ffffffffff167b010000000000000000000000000000000000000000000000000000000281526005018260001916600019168152602001925050506040516020818303038152906040526040518082805190602001908083835b602083101515610f6a5780518252602082019150602081019050602083039250610f45565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390209050600181601b8585604051600081526020016040526040518085600019166000191681526020018460ff1681526020018360001916600019168152602001826000191660001916815260200194505050505060206040516020810390808403906000865af115801561100e573d6000803e3d6000fd5b5050506020604051035173ffffffffffffffffffffffffffffffffffffffff16600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16148061113e5750600181601c8585604051600081526020016040526040518085600019166000191681526020018460ff1681526020018360001916600019168152602001826000191660001916815260200194505050505060206040516020810390808403906000865af11580156110e3573d6000803e3d6000fd5b5050506020604051035173ffffffffffffffffffffffffffffffffffffffff16600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b15156111b2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f7369676e65722076616c6964206572726f72000000000000000000000000000081525060200191505060405180910390fd5b60018c101580156111c7575060036064038c11155b151561123b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600d8152602001807f696e76616c69642076616c75650000000000000000000000000000000000000081525060200191505060405180910390fd5b34965066038d7ea4c68000871015801561125d5750678ac7230489e800008711155b151561126857600080fd5b6000808b600019166000191681526020019081526020016000209550600073ffffffffffffffffffffffffffffffffffffffff168660010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415156112e357600080fd5b600086600001819055508b8660030181905550868660020181905550338660010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055504386600401819055507f8583e59830583f1c842c745d0160dd82bdad67f98de4815ad781f6d8874ba03486600001548b60006040519080825280601f01601f1916602001820160405280156113a65781602001602082028038833980820191505090505b5060405180848152602001836000191660001916815260200180602001828103825283818151815260200191508051906020019080838360005b838110156113fb5780820151818401526020810190506113e0565b50505050905090810190601f1680156114285780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a1505050505050505050505050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561150a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260098152602001807f6e6f74206f776e6572000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015611550573d6000803e3d6000fd5b505050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561161a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260098152602001807f6e6f74206f776e6572000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b80600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600080600080600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611729576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600c8152602001807f6e6f742063726f7570696572000000000000000000000000000000000000000081525060200191505060405180910390fd5b600160648881151561173757fe5b06019350856040015192506000915085606001518411151561179757600160648481151561176157fe5b04029050660110d9316ec00081101561177f57660110d9316ec00090505b856060015160648285030281151561179357fe5b0491505b856020015173ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f193505050501561188d577f0bff679e776b67f58a0f9e7945d8cf3beee608aa7315f37a7cc81f75a27eabf186602001518760000151848a888b604001518c606001518c604051808973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200188815260200187815260200186815260200185815260200184815260200183815260200182600019166000191681526020019850505050505050505060405180910390a16118fd565b7f60237db4a54374d2c6f7464c87e795404b89d7feee329c5537e187de3d4b52e7866020015183604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a15b50505050505050565b600080600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156119ce576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600c8152602001807f6e6f742063726f7570696572000000000000000000000000000000000000000081525060200191505060405180910390fd5b6025868115156119da57fe5b06915082662386f26fc10000029050846020015173ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f1935050505015611b44577f563e39cb3c59240112169f474b09dc8af9ea11fdf86ebe9abff5032c5ff480d5856020015186600001518389868a604001518a8c60a00151604051808973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001888152602001878152602001868152602001858152602001848152602001836000191660001916815260200180602001828103825283818151815260200191508051906020019080838360005b83811015611afe578082015181840152602081019050611ae3565b50505050905090810190601f168015611b2b5780820380516001836020036101000a031916815260200191505b50995050505050505050505060405180910390a1611bb4565b7f60237db4a54374d2c6f7464c87e795404b89d7feee329c5537e187de3d4b52e7856020015182604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a15b505050505050565b6000806000846000815181101515611bd057fe5b9060200101517f010000000000000000000000000000000000000000000000000000000000000090047f0100000000000000000000000000000000000000000000000000000000000000027f0100000000000000000000000000000000000000000000000000000000000000900460ff169250600160028402018551141515611c5857600080fd5b60009150600090505b82811015611cff578460028202600201815181101515611c7d57fe5b9060200101517f010000000000000000000000000000000000000000000000000000000000000090047f0100000000000000000000000000000000000000000000000000000000000000027f0100000000000000000000000000000000000000000000000000000000000000900460ff16820191508080600101915050611c61565b83662386f26fc100008302141515611d1657600080fd5b5050505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10611d5e57805160ff1916838001178555611d8c565b82800160010185558215611d8c579182015b82811115611d8b578251825591602001919060010190611d70565b5b509050611d999190611d9d565b5090565b611dbf91905b80821115611dbb576000816000905550600101611da3565b5090565b905600a165627a7a72305820c416a699c2ff7490096db74d97536c4619a67ade712379a245dd014f1793cce70029

Swarm Source

bzzr://c416a699c2ff7490096db74d97536c4619a67ade712379a245dd014f1793cce7

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.