ETH Price: $2,674.40 (+1.41%)

Contract

0xE8ef703C0de875D5c6c882c71FF03D18598290B3
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer56034382018-05-12 23:46:292294 days ago1526168789IN
0xE8ef703C...8598290B3
0.130998 ETH0.000101432
Withdraw Eth55892822018-05-10 12:26:132296 days ago1525955173IN
0xE8ef703C...8598290B3
0 ETH0.000186916
Transfer55840792018-05-09 14:39:192297 days ago1525876759IN
0xE8ef703C...8598290B3
0.4 ETH0.0062998541
Transfer55840342018-05-09 14:29:432297 days ago1525876183IN
0xE8ef703C...8598290B3
1.58000279 ETH0.000414385
Transfer55840142018-05-09 14:25:472297 days ago1525875947IN
0xE8ef703C...8598290B3
2.9 ETH0.0064535142
Transfer55840002018-05-09 14:21:492297 days ago1525875709IN
0xE8ef703C...8598290B3
1 ETH0.003073120
Transfer55839732018-05-09 14:13:482297 days ago1525875228IN
0xE8ef703C...8598290B3
0.1 ETH0.0046096530
Transfer55839682018-05-09 14:12:442297 days ago1525875164IN
0xE8ef703C...8598290B3
0.57878543 ETH0.0062998541
Transfer55839662018-05-09 14:11:582297 days ago1525875118IN
0xE8ef703C...8598290B3
7 ETH0.000921936
Transfer55839602018-05-09 14:10:532297 days ago1525875053IN
0xE8ef703C...8598290B3
7 ETH0.000366
Transfer55839502018-05-09 14:07:592297 days ago1525874879IN
0xE8ef703C...8598290B3
7 ETH0.00086121
Transfer55839392018-05-09 14:05:512297 days ago1525874751IN
0xE8ef703C...8598290B3
0.59064643 ETH0.00086141
Transfer55839342018-05-09 14:04:392297 days ago1525874679IN
0xE8ef703C...8598290B3
0.3 ETH0.00096
Transfer55839092018-05-09 13:59:292297 days ago1525874369IN
0xE8ef703C...8598290B3
5 ETH0.0098339264
Transfer55838912018-05-09 13:55:462297 days ago1525874146IN
0xE8ef703C...8598290B3
0.3 ETH0.0006255
Transfer55838772018-05-09 13:51:472297 days ago1525873907IN
0xE8ef703C...8598290B3
7 ETH0.0001266
Transfer55838652018-05-09 13:48:382297 days ago1525873718IN
0xE8ef703C...8598290B3
0.3 ETH0.0001266
Transfer55838592018-05-09 13:47:342297 days ago1525873654IN
0xE8ef703C...8598290B3
7 ETH0.0001266
Transfer55836952018-05-09 13:09:452297 days ago1525871385IN
0xE8ef703C...8598290B3
27.8 ETH0.0056848541
Transfer55836042018-05-09 12:44:272297 days ago1525869867IN
0xE8ef703C...8598290B3
0.1099649 ETH0.000414385
Transfer55834262018-05-09 12:00:122297 days ago1525867212IN
0xE8ef703C...8598290B3
1 ETH0.000614624
Transfer55834052018-05-09 11:54:412297 days ago1525866881IN
0xE8ef703C...8598290B3
0.55 ETH0.0033979541
Transfer55833012018-05-09 11:31:012297 days ago1525865461IN
0xE8ef703C...8598290B3
0.09423513 ETH0.00086141
Transfer55832962018-05-09 11:29:262297 days ago1525865366IN
0xE8ef703C...8598290B3
1.3753008 ETH0.0024863130
Transfer55831522018-05-09 10:56:102297 days ago1525863370IN
0xE8ef703C...8598290B3
0.881 ETH0.0050554961
View all transactions

Latest 3 internal transactions

Advanced mode:
Parent Transaction Hash Block From To
56034382018-05-12 23:46:292294 days ago1526168789
0xE8ef703C...8598290B3
0.130998 ETH
55892822018-05-10 12:26:132296 days ago1525955173
0xE8ef703C...8598290B3
400.65914532 ETH
54916732018-04-23 12:17:242313 days ago1524485844
0xE8ef703C...8598290B3
543.33970515 ETH
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
EligmaCrowdsaleContract

Compiler Version
v0.4.21+commit.dfe3193c

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2018-04-17
*/

pragma solidity ^0.4.21;

contract Owned {
    address public owner;
    address public newOwner;

    function Owned() public {
        owner = msg.sender;
    }

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

    function transferOwnership(address _newOwner) public onlyOwner {
        require(_newOwner != owner);
        newOwner = _newOwner;
    }

    function acceptOwnership() public {
        require(msg.sender == newOwner);
        emit OwnerUpdate(owner, newOwner);
        owner = newOwner;
        newOwner = 0x0;
    }

    event OwnerUpdate(address _prevOwner, address _newOwner);
}

contract ReentrancyHandlingContract{

    bool locked;

    modifier noReentrancy() {
        require(!locked);
        locked = true;
        _;
        locked = false;
    }
}

contract KycContractInterface {
    function isAddressVerified(address _address) public view returns (bool);
}

contract MintingContractInterface {

    address public crowdsaleContractAddress;
    address public tokenContractAddress;
    uint public tokenTotalSupply;

    event MintMade(address _to, uint _ethAmount, uint _tokensMinted, string _message);

    function doPresaleMinting(address _destination, uint _tokensAmount) public;
    function doCrowdsaleMinting(address _destination, uint _tokensAmount) public;
    function doTeamMinting(address _destination) public;
    function setTokenContractAddress(address _newAddress) public;
    function setCrowdsaleContractAddress(address _newAddress) public;
    function killContract() public;
}

contract ERC20TokenInterface {
    function totalSupply() public constant returns (uint256 _totalSupply);
    function balanceOf(address _owner) public constant returns (uint256 balance);
    function transfer(address _to, uint256 _value) public returns (bool success);
    function transferFrom(address _from, address _to, uint256 _value) public returns (bool success);
    function approve(address _spender, uint256 _value) public returns (bool success);
    function allowance(address _owner, address _spender) public constant returns (uint256 remaining);

    event Transfer(address indexed _from, address indexed _to, uint256 _value);
    event Approval(address indexed _owner, address indexed _spender, uint256 _value);
}

contract Crowdsale is ReentrancyHandlingContract, Owned {
    
    enum state { pendingStart, crowdsale, crowdsaleEnded }
    struct ContributorData {
        uint contributionAmount;
        uint tokensIssued;
    }

    state public crowdsaleState = state.pendingStart;
    
    address public multisigAddress = 0x0;
    address public kycAddress = 0x0;
    address public mintingContractAddress = 0x0;

    uint public startPhaseLength = 720;
    uint public startPhaseMaximumcontribution = 10 * 10**18;

    uint public crowdsaleStartBlock;
    uint public crowdsaleEndedBlock;

    mapping(address => ContributorData) public contributorList;
    uint nextContributorIndex;
    mapping(uint => address) contributorIndexes;

    uint public minCap;
    uint public maxCap;
    uint public ethRaised;
    uint public tokensIssued = 0;

    event CrowdsaleStarted(uint blockNumber);
    event CrowdsaleEnded(uint blockNumber);
    event ErrorSendingETH(address to, uint amount);
    event MinCapReached(uint blockNumber);
    event MaxCapReached(uint blockNumber);

    uint nextContributorToClaim;
    mapping(address => bool) hasClaimedEthWhenFail;

    function() noReentrancy payable public {
        require(msg.value >= 100000000000000000);
        require(crowdsaleState != state.crowdsaleEnded);
        require(KycContractInterface(kycAddress).isAddressVerified(msg.sender));

        bool stateChanged = checkCrowdsaleState();

        if (crowdsaleState == state.crowdsale) {
            processTransaction(msg.sender, msg.value);
        } else {
            refundTransaction(stateChanged);
        }
    }

    function checkCrowdsaleState() internal returns (bool) {
        if (tokensIssued == maxCap && crowdsaleState != state.crowdsaleEnded) {
            crowdsaleState = state.crowdsaleEnded;
            emit CrowdsaleEnded(block.number);
            return true;
        }

        if (block.number >= crowdsaleStartBlock && block.number <= crowdsaleEndedBlock) {
            if (crowdsaleState != state.crowdsale) {
                crowdsaleState = state.crowdsale;
                emit CrowdsaleStarted(block.number);
                return true;
            }
        } else {
            if (crowdsaleState != state.crowdsaleEnded && block.number > crowdsaleEndedBlock) {
                crowdsaleState = state.crowdsaleEnded;
                emit CrowdsaleEnded(block.number);
                return true;
            }
        }
        return false;
    }

    function refundTransaction(bool _stateChanged) internal {
        if (_stateChanged) {
            msg.sender.transfer(msg.value);
        } else {
            revert();
        }
    }

    function calculateEthToToken(uint _eth, uint _blockNumber) constant public returns(uint) {
        if (tokensIssued <= 20000000 * 10**18) {
            return _eth * 8640;
        } else if(tokensIssued <= 40000000 * 10**18) {
            return _eth * 8480;
        } else if(tokensIssued <= 60000000 * 10**18) {
            return _eth * 8320;
        } else if(tokensIssued <= 80000000 * 10**18) {
            return _eth * 8160;
        } else {
            return _eth * 8000;
        }
    }

    function calculateTokenToEth(uint _token, uint _blockNumber) constant public returns(uint) {
        uint tempTokenAmount;
        if (tokensIssued <= 20000000 * 10**18) {
            tempTokenAmount = (_token * 1000) / 1008640;
        } else if(tokensIssued <= 40000000 * 10**18) {
            tempTokenAmount = (_token * 1000) / 8480;
        } else if(tokensIssued <= 60000000 * 10**18) {
            tempTokenAmount = (_token * 1000) / 8320;
        } else if(tokensIssued <= 80000000 * 10**18) {
            tempTokenAmount = (_token * 1000) / 8160;
        } else {
            tempTokenAmount = (_token * 1000) / 8000;
        }
        return tempTokenAmount / 1000;
    }

    function processTransaction(address _contributor, uint _amount) internal {
        uint contributionAmount = 0;
        uint returnAmount = 0;
        uint tokensToGive = 0;

        if (block.number < crowdsaleStartBlock + startPhaseLength) {
            if((_amount + contributorList[_contributor].contributionAmount) > startPhaseMaximumcontribution) {
                if (contributorList[_contributor].contributionAmount < startPhaseMaximumcontribution) {
                    contributionAmount = startPhaseMaximumcontribution - contributorList[_contributor].contributionAmount;
                    returnAmount = _amount - contributionAmount;
                } else {
                    revert();
                }
            } else {
                contributionAmount = _amount;
            }
        } else {
            contributionAmount = _amount;
        }
        
        tokensToGive = calculateEthToToken(contributionAmount, block.number);

        if (tokensToGive > (maxCap - tokensIssued)) {
            contributionAmount = calculateTokenToEth(maxCap - tokensIssued, block.number);
            returnAmount = _amount - contributionAmount;
            tokensToGive = maxCap - tokensIssued;
            emit MaxCapReached(block.number);
        }

        if (contributorList[_contributor].contributionAmount == 0) {
            contributorIndexes[nextContributorIndex] = _contributor;
            nextContributorIndex += 1;
        }

        contributorList[_contributor].contributionAmount += contributionAmount;
        ethRaised += contributionAmount;

        if (tokensToGive > 0) {
            MintingContractInterface(mintingContractAddress).doCrowdsaleMinting(_contributor, tokensToGive);
            contributorList[_contributor].tokensIssued += tokensToGive;
            tokensIssued += tokensToGive;
        }
        if (returnAmount != 0) {
            _contributor.transfer(returnAmount);
        } 
    }

    function salvageTokensFromContract(address _tokenAddress, address _to, uint _amount) onlyOwner public {
        ERC20TokenInterface(_tokenAddress).transfer(_to, _amount);
    }

    function withdrawEth() onlyOwner public {
        require(address(this).balance != 0);
        require(tokensIssued >= minCap);

        multisigAddress.transfer(address(this).balance);
    }

    function claimEthIfFailed() public {
        require(block.number > crowdsaleEndedBlock && tokensIssued < minCap);
        require(contributorList[msg.sender].contributionAmount > 0);
        require(!hasClaimedEthWhenFail[msg.sender]);

        uint ethContributed = contributorList[msg.sender].contributionAmount;
        hasClaimedEthWhenFail[msg.sender] = true;
        if (!msg.sender.send(ethContributed)) {
            emit ErrorSendingETH(msg.sender, ethContributed);
        }
    }

    function batchReturnEthIfFailed(uint _numberOfReturns) onlyOwner public {
        require(block.number > crowdsaleEndedBlock && tokensIssued < minCap);
        address currentParticipantAddress;
        uint contribution;
        for (uint cnt = 0; cnt < _numberOfReturns; cnt++) {
            currentParticipantAddress = contributorIndexes[nextContributorToClaim];
            if (currentParticipantAddress == 0x0) {
                return;
            }
            if (!hasClaimedEthWhenFail[currentParticipantAddress]) {
                contribution = contributorList[currentParticipantAddress].contributionAmount;
                hasClaimedEthWhenFail[currentParticipantAddress] = true;
                if (!currentParticipantAddress.send(contribution)) {
                    emit ErrorSendingETH(currentParticipantAddress, contribution);
                }
            }
            nextContributorToClaim += 1;
        }
    }

    function withdrawRemainingBalanceForManualRecovery() onlyOwner public {
        require(address(this).balance != 0);
        require(block.number > crowdsaleEndedBlock);
        require(contributorIndexes[nextContributorToClaim] == 0x0);
        multisigAddress.transfer(address(this).balance);
    }

    function setMultisigAddress(address _newAddress) onlyOwner public {
        multisigAddress = _newAddress;
    }

    function setMintingContractAddress(address _newAddress) onlyOwner public {
        mintingContractAddress = _newAddress;
    }

    function setKycAddress(address _newAddress) onlyOwner public {
        kycAddress = _newAddress;
    }

    function investorCount() constant public returns(uint) {
        return nextContributorIndex;
    }

    function setCrowdsaleStartBlock(uint _block) onlyOwner public {
        crowdsaleStartBlock = _block;
    }
}

contract EligmaCrowdsaleContract is Crowdsale {
  
    function EligmaCrowdsaleContract() public {

        crowdsaleStartBlock = 5456462;
        crowdsaleEndedBlock = 5584081; 

        minCap = 0 * 10**18;
        maxCap = 161054117 * 10**18;
    }
}

Contract Security Audit

Contract ABI

[{"constant":false,"inputs":[{"name":"_newAddress","type":"address"}],"name":"setMultisigAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"crowdsaleEndedBlock","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"withdrawRemainingBalanceForManualRecovery","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"maxCap","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"minCap","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"kycAddress","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_eth","type":"uint256"},{"name":"_blockNumber","type":"uint256"}],"name":"calculateEthToToken","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"multisigAddress","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newAddress","type":"address"}],"name":"setMintingContractAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"tokensIssued","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"claimEthIfFailed","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_numberOfReturns","type":"uint256"}],"name":"batchReturnEthIfFailed","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_newAddress","type":"address"}],"name":"setKycAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_token","type":"uint256"},{"name":"_blockNumber","type":"uint256"}],"name":"calculateTokenToEth","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"mintingContractAddress","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"contributorList","outputs":[{"name":"contributionAmount","type":"uint256"},{"name":"tokensIssued","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_tokenAddress","type":"address"},{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"salvageTokensFromContract","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"withdrawEth","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"startPhaseLength","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_block","type":"uint256"}],"name":"setCrowdsaleStartBlock","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"crowdsaleStartBlock","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"investorCount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"startPhaseMaximumcontribution","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"crowdsaleState","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"ethRaised","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":false,"name":"blockNumber","type":"uint256"}],"name":"CrowdsaleStarted","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"blockNumber","type":"uint256"}],"name":"CrowdsaleEnded","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"to","type":"address"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"ErrorSendingETH","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"blockNumber","type":"uint256"}],"name":"MinCapReached","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"blockNumber","type":"uint256"}],"name":"MaxCapReached","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_prevOwner","type":"address"},{"indexed":false,"name":"_newOwner","type":"address"}],"name":"OwnerUpdate","type":"event"}]

60606040526000600160146101000a81548160ff0219169083600281111561002357fe5b02179055506000600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506102d0600555678ac7230489e800006006556000600f55341561011057600080fd5b33600060016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506253424e600781905550625534d16008819055506000600c819055506a8538892d4d094ab7740000600d81905550611ffd8061018e6000396000f300606060405260043610610175576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063055405341461034357806320d191811461037c5780632165e1aa146103a557806323548b8b146103ba5780633fa615b0146103e357806349b85a161461040c5780634b1cab4e146104615780635462870d146104a1578063746584b4146104f657806379ba50971461052f5780637c48bbda146105445780637d6651b91461056d5780637f860330146105825780637ffe8be1146105a557806380948ddd146105de578063824563f61461061e5780638da5cb5b1461067357806392acb4d6146106c8578063a0929cda1461071c578063a0ef91df1461077d578063aee7052e14610792578063c426fbb6146107bb578063cdd3574a146107de578063d4ee1d9014610807578063d7e64c001461085c578063e4503da414610885578063e7bb5233146108ae578063f2fde38b146108e5578063fddf0fc01461091e575b60008060009054906101000a900460ff1615151561019257600080fd5b60016000806101000a81548160ff02191690831515021790555067016345785d8a000034101515156101c357600080fd5b6002808111156101cf57fe5b600160149054906101000a900460ff1660028111156101ea57fe5b141515156101f757600080fd5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663da9dd8bf336040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b15156102b357600080fd5b5af115156102c057600080fd5b5050506040518051905015156102d557600080fd5b6102dd610947565b9050600160028111156102ec57fe5b600160149054906101000a900460ff16600281111561030757fe5b141561031c576103173334610b42565b610326565b61032581610f77565b5b60008060006101000a81548160ff02191690831515021790555050005b341561034e57600080fd5b61037a600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610fca565b005b341561038757600080fd5b61038f611067565b6040518082815260200191505060405180910390f35b34156103b057600080fd5b6103b861106d565b005b34156103c557600080fd5b6103cd6111d2565b6040518082815260200191505060405180910390f35b34156103ee57600080fd5b6103f66111d8565b6040518082815260200191505060405180910390f35b341561041757600080fd5b61041f6111de565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561046c57600080fd5b61048b6004808035906020019091908035906020019091905050611204565b6040518082815260200191505060405180910390f35b34156104ac57600080fd5b6104b461129c565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561050157600080fd5b61052d600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506112c2565b005b341561053a57600080fd5b61054261135f565b005b341561054f57600080fd5b61055761153d565b6040518082815260200191505060405180910390f35b341561057857600080fd5b610580611543565b005b341561058d57600080fd5b6105a36004808035906020019091905050611755565b005b34156105b057600080fd5b6105dc600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506119f7565b005b34156105e957600080fd5b6106086004808035906020019091908035906020019091905050611a94565b6040518082815260200191505060405180910390f35b341561062957600080fd5b610631611b83565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561067e57600080fd5b610686611ba9565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156106d357600080fd5b6106ff600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611bcf565b604051808381526020018281526020019250505060405180910390f35b341561072757600080fd5b61077b600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050611bf3565b005b341561078857600080fd5b610790611d0b565b005b341561079d57600080fd5b6107a5611e19565b6040518082815260200191505060405180910390f35b34156107c657600080fd5b6107dc6004808035906020019091905050611e1f565b005b34156107e957600080fd5b6107f1611e82565b6040518082815260200191505060405180910390f35b341561081257600080fd5b61081a611e88565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561086757600080fd5b61086f611eae565b6040518082815260200191505060405180910390f35b341561089057600080fd5b610898611eb8565b6040518082815260200191505060405180910390f35b34156108b957600080fd5b6108c1611ebe565b604051808260028111156108d157fe5b60ff16815260200191505060405180910390f35b34156108f057600080fd5b61091c600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611ed1565b005b341561092957600080fd5b610931611fcb565b6040518082815260200191505060405180910390f35b6000600d54600f54148015610981575060028081111561096357fe5b600160149054906101000a900460ff16600281111561097e57fe5b14155b156109ea576002600160146101000a81548160ff021916908360028111156109a557fe5b02179055507f9145a7fd7de2aa5b50a289cf5dd2e2d100aa067911e49855b88f94b5a196f04b436040518082815260200191505060405180910390a160019050610b3f565b60075443101580156109fe57506008544311155b15610a9a5760016002811115610a1057fe5b600160149054906101000a900460ff166002811115610a2b57fe5b141515610a955760018060146101000a81548160ff02191690836002811115610a5057fe5b02179055507f712173de1d50109191e0d0671c67415bf3d44508558069796106054c5600d501436040518082815260200191505060405180910390a160019050610b3f565b610b3a565b600280811115610aa657fe5b600160149054906101000a900460ff166002811115610ac157fe5b14158015610ad0575060085443115b15610b39576002600160146101000a81548160ff02191690836002811115610af457fe5b02179055507f9145a7fd7de2aa5b50a289cf5dd2e2d100aa067911e49855b88f94b5a196f04b436040518082815260200191505060405180910390a160019050610b3f565b5b600090505b90565b6000806000809250600091506000905060055460075401431015610c6057600654600960008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015485011115610c5757600654600960008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001541015610c4d57600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001546006540392508284039150610c52565b600080fd5b610c5b565b8392505b610c64565b8392505b610c6e8343611204565b9050600f54600d5403811115610cd657610c8e600f54600d540343611a94565b92508284039150600f54600d540390507f38caa2c61728c18eb71cbd06d1915e4164ffe51c69a09b68d78be1f125a5dea7436040518082815260200191505060405180910390a15b6000600960008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001541415610d875784600b6000600a54815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001600a600082825401925050819055505b82600960008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000016000828254019250508190555082600e600082825401925050819055506000811115610f2557600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166389f47b6486836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050600060405180830381600087803b1515610eb457600080fd5b5af11515610ec157600080fd5b50505080600960008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001016000828254019250508190555080600f600082825401925050819055505b600082141515610f70578473ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f193505050501515610f6f57600080fd5b5b5050505050565b8015610fc2573373ffffffffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888f193505050501515610fbd57600080fd5b610fc7565b600080fd5b50565b600060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561102357fe5b80600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60085481565b600060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156110c657fe5b60003073ffffffffffffffffffffffffffffffffffffffff1631141515156110ed57600080fd5b600854431115156110fd57600080fd5b6000600b6000601054815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614151561115757600080fd5b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc3073ffffffffffffffffffffffffffffffffffffffff16319081150290604051600060405180830381858888f1935050505015156111d057600080fd5b565b600d5481565b600c5481565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60006a108b2a2c28029094000000600f54111515611228576121c083029050611296565b6a2116545850052128000000600f5411151561124a5761212083029050611296565b6a31a17e847807b1bc000000600f5411151561126c5761208083029050611296565b6a422ca8b0a00a4250000000600f5411151561128e57611fe083029050611296565b611f40830290505b92915050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561131b57fe5b80600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156113bb57600080fd5b7f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a600060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060405180910390a1600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600060016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b600f5481565b6000600854431180156115595750600c54600f54105b151561156457600080fd5b6000600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001541115156115b557600080fd5b601160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615151561160e57600080fd5b600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015490506001601160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055503373ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f193505050501515611752577fdb623bd5ad9b688a8d252706b5f3b2849545e7c47f1a9be77f95b198445a67d33382604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a15b50565b60008060008060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156117b257fe5b600854431180156117c65750600c54600f54105b15156117d157600080fd5b600090505b838110156119f057600b6000601054815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16925060008373ffffffffffffffffffffffffffffffffffffffff16141561183a576119f1565b601160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615156119d257600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015491506001601160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508273ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f1935050505015156119d1577fdb623bd5ad9b688a8d252706b5f3b2849545e7c47f1a9be77f95b198445a67d38383604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a15b5b600160106000828254019250508190555080806001019150506117d6565b5b50505050565b600060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611a5057fe5b80600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000806a108b2a2c28029094000000600f54111515611ac757620f64006103e88502811515611abf57fe5b049050611b6c565b6a2116545850052128000000600f54111515611af6576121206103e88502811515611aee57fe5b049050611b6b565b6a31a17e847807b1bc000000600f54111515611b25576120806103e88502811515611b1d57fe5b049050611b6a565b6a422ca8b0a00a4250000000600f54111515611b5457611fe06103e88502811515611b4c57fe5b049050611b69565b611f406103e88502811515611b6557fe5b0490505b5b5b5b6103e881811515611b7957fe5b0491505092915050565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60096020528060005260406000206000915090508060000154908060010154905082565b600060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611c4c57fe5b8273ffffffffffffffffffffffffffffffffffffffff1663a9059cbb83836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1515611cee57600080fd5b5af11515611cfb57600080fd5b5050506040518051905050505050565b600060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611d6457fe5b60003073ffffffffffffffffffffffffffffffffffffffff163114151515611d8b57600080fd5b600c54600f5410151515611d9e57600080fd5b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc3073ffffffffffffffffffffffffffffffffffffffff16319081150290604051600060405180830381858888f193505050501515611e1757600080fd5b565b60055481565b600060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611e7857fe5b8060078190555050565b60075481565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600a54905090565b60065481565b600160149054906101000a900460ff1681565b600060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611f2a57fe5b600060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515611f8757600080fd5b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600e54815600a165627a7a72305820df6e1e9e6260dee68ae200c11d66d2c2106d71e55c9ef01d082f82a80c3e999f0029

Deployed Bytecode

0x606060405260043610610175576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063055405341461034357806320d191811461037c5780632165e1aa146103a557806323548b8b146103ba5780633fa615b0146103e357806349b85a161461040c5780634b1cab4e146104615780635462870d146104a1578063746584b4146104f657806379ba50971461052f5780637c48bbda146105445780637d6651b91461056d5780637f860330146105825780637ffe8be1146105a557806380948ddd146105de578063824563f61461061e5780638da5cb5b1461067357806392acb4d6146106c8578063a0929cda1461071c578063a0ef91df1461077d578063aee7052e14610792578063c426fbb6146107bb578063cdd3574a146107de578063d4ee1d9014610807578063d7e64c001461085c578063e4503da414610885578063e7bb5233146108ae578063f2fde38b146108e5578063fddf0fc01461091e575b60008060009054906101000a900460ff1615151561019257600080fd5b60016000806101000a81548160ff02191690831515021790555067016345785d8a000034101515156101c357600080fd5b6002808111156101cf57fe5b600160149054906101000a900460ff1660028111156101ea57fe5b141515156101f757600080fd5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663da9dd8bf336040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b15156102b357600080fd5b5af115156102c057600080fd5b5050506040518051905015156102d557600080fd5b6102dd610947565b9050600160028111156102ec57fe5b600160149054906101000a900460ff16600281111561030757fe5b141561031c576103173334610b42565b610326565b61032581610f77565b5b60008060006101000a81548160ff02191690831515021790555050005b341561034e57600080fd5b61037a600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610fca565b005b341561038757600080fd5b61038f611067565b6040518082815260200191505060405180910390f35b34156103b057600080fd5b6103b861106d565b005b34156103c557600080fd5b6103cd6111d2565b6040518082815260200191505060405180910390f35b34156103ee57600080fd5b6103f66111d8565b6040518082815260200191505060405180910390f35b341561041757600080fd5b61041f6111de565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561046c57600080fd5b61048b6004808035906020019091908035906020019091905050611204565b6040518082815260200191505060405180910390f35b34156104ac57600080fd5b6104b461129c565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561050157600080fd5b61052d600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506112c2565b005b341561053a57600080fd5b61054261135f565b005b341561054f57600080fd5b61055761153d565b6040518082815260200191505060405180910390f35b341561057857600080fd5b610580611543565b005b341561058d57600080fd5b6105a36004808035906020019091905050611755565b005b34156105b057600080fd5b6105dc600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506119f7565b005b34156105e957600080fd5b6106086004808035906020019091908035906020019091905050611a94565b6040518082815260200191505060405180910390f35b341561062957600080fd5b610631611b83565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561067e57600080fd5b610686611ba9565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156106d357600080fd5b6106ff600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611bcf565b604051808381526020018281526020019250505060405180910390f35b341561072757600080fd5b61077b600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050611bf3565b005b341561078857600080fd5b610790611d0b565b005b341561079d57600080fd5b6107a5611e19565b6040518082815260200191505060405180910390f35b34156107c657600080fd5b6107dc6004808035906020019091905050611e1f565b005b34156107e957600080fd5b6107f1611e82565b6040518082815260200191505060405180910390f35b341561081257600080fd5b61081a611e88565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561086757600080fd5b61086f611eae565b6040518082815260200191505060405180910390f35b341561089057600080fd5b610898611eb8565b6040518082815260200191505060405180910390f35b34156108b957600080fd5b6108c1611ebe565b604051808260028111156108d157fe5b60ff16815260200191505060405180910390f35b34156108f057600080fd5b61091c600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611ed1565b005b341561092957600080fd5b610931611fcb565b6040518082815260200191505060405180910390f35b6000600d54600f54148015610981575060028081111561096357fe5b600160149054906101000a900460ff16600281111561097e57fe5b14155b156109ea576002600160146101000a81548160ff021916908360028111156109a557fe5b02179055507f9145a7fd7de2aa5b50a289cf5dd2e2d100aa067911e49855b88f94b5a196f04b436040518082815260200191505060405180910390a160019050610b3f565b60075443101580156109fe57506008544311155b15610a9a5760016002811115610a1057fe5b600160149054906101000a900460ff166002811115610a2b57fe5b141515610a955760018060146101000a81548160ff02191690836002811115610a5057fe5b02179055507f712173de1d50109191e0d0671c67415bf3d44508558069796106054c5600d501436040518082815260200191505060405180910390a160019050610b3f565b610b3a565b600280811115610aa657fe5b600160149054906101000a900460ff166002811115610ac157fe5b14158015610ad0575060085443115b15610b39576002600160146101000a81548160ff02191690836002811115610af457fe5b02179055507f9145a7fd7de2aa5b50a289cf5dd2e2d100aa067911e49855b88f94b5a196f04b436040518082815260200191505060405180910390a160019050610b3f565b5b600090505b90565b6000806000809250600091506000905060055460075401431015610c6057600654600960008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015485011115610c5757600654600960008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001541015610c4d57600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001546006540392508284039150610c52565b600080fd5b610c5b565b8392505b610c64565b8392505b610c6e8343611204565b9050600f54600d5403811115610cd657610c8e600f54600d540343611a94565b92508284039150600f54600d540390507f38caa2c61728c18eb71cbd06d1915e4164ffe51c69a09b68d78be1f125a5dea7436040518082815260200191505060405180910390a15b6000600960008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001541415610d875784600b6000600a54815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001600a600082825401925050819055505b82600960008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000016000828254019250508190555082600e600082825401925050819055506000811115610f2557600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166389f47b6486836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050600060405180830381600087803b1515610eb457600080fd5b5af11515610ec157600080fd5b50505080600960008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001016000828254019250508190555080600f600082825401925050819055505b600082141515610f70578473ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f193505050501515610f6f57600080fd5b5b5050505050565b8015610fc2573373ffffffffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888f193505050501515610fbd57600080fd5b610fc7565b600080fd5b50565b600060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561102357fe5b80600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60085481565b600060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156110c657fe5b60003073ffffffffffffffffffffffffffffffffffffffff1631141515156110ed57600080fd5b600854431115156110fd57600080fd5b6000600b6000601054815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614151561115757600080fd5b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc3073ffffffffffffffffffffffffffffffffffffffff16319081150290604051600060405180830381858888f1935050505015156111d057600080fd5b565b600d5481565b600c5481565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60006a108b2a2c28029094000000600f54111515611228576121c083029050611296565b6a2116545850052128000000600f5411151561124a5761212083029050611296565b6a31a17e847807b1bc000000600f5411151561126c5761208083029050611296565b6a422ca8b0a00a4250000000600f5411151561128e57611fe083029050611296565b611f40830290505b92915050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561131b57fe5b80600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156113bb57600080fd5b7f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a600060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060405180910390a1600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600060016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b600f5481565b6000600854431180156115595750600c54600f54105b151561156457600080fd5b6000600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001541115156115b557600080fd5b601160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615151561160e57600080fd5b600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015490506001601160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055503373ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f193505050501515611752577fdb623bd5ad9b688a8d252706b5f3b2849545e7c47f1a9be77f95b198445a67d33382604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a15b50565b60008060008060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156117b257fe5b600854431180156117c65750600c54600f54105b15156117d157600080fd5b600090505b838110156119f057600b6000601054815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16925060008373ffffffffffffffffffffffffffffffffffffffff16141561183a576119f1565b601160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615156119d257600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015491506001601160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508273ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f1935050505015156119d1577fdb623bd5ad9b688a8d252706b5f3b2849545e7c47f1a9be77f95b198445a67d38383604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a15b5b600160106000828254019250508190555080806001019150506117d6565b5b50505050565b600060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611a5057fe5b80600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000806a108b2a2c28029094000000600f54111515611ac757620f64006103e88502811515611abf57fe5b049050611b6c565b6a2116545850052128000000600f54111515611af6576121206103e88502811515611aee57fe5b049050611b6b565b6a31a17e847807b1bc000000600f54111515611b25576120806103e88502811515611b1d57fe5b049050611b6a565b6a422ca8b0a00a4250000000600f54111515611b5457611fe06103e88502811515611b4c57fe5b049050611b69565b611f406103e88502811515611b6557fe5b0490505b5b5b5b6103e881811515611b7957fe5b0491505092915050565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60096020528060005260406000206000915090508060000154908060010154905082565b600060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611c4c57fe5b8273ffffffffffffffffffffffffffffffffffffffff1663a9059cbb83836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1515611cee57600080fd5b5af11515611cfb57600080fd5b5050506040518051905050505050565b600060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611d6457fe5b60003073ffffffffffffffffffffffffffffffffffffffff163114151515611d8b57600080fd5b600c54600f5410151515611d9e57600080fd5b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc3073ffffffffffffffffffffffffffffffffffffffff16319081150290604051600060405180830381858888f193505050501515611e1757600080fd5b565b60055481565b600060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611e7857fe5b8060078190555050565b60075481565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600a54905090565b60065481565b600160149054906101000a900460ff1681565b600060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611f2a57fe5b600060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515611f8757600080fd5b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600e54815600a165627a7a72305820df6e1e9e6260dee68ae200c11d66d2c2106d71e55c9ef01d082f82a80c3e999f0029

Swarm Source

bzzr://df6e1e9e6260dee68ae200c11d66d2c2106d71e55c9ef01d082f82a80c3e999f

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.