ETH Price: $2,149.96 (-2.78%)

Contract

0xbc9B96E7Aa6AFEA664f9D5fdDa168518eE20f2Cc
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Mine Card141824002022-02-11 3:45:271120 days ago1644551127IN
0xbc9B96E7...8eE20f2Cc
0.001 ETH0.0419315960.75238476
Mine Card141823762022-02-11 3:39:371120 days ago1644550777IN
0xbc9B96E7...8eE20f2Cc
0.001 ETH0.0320362353.41874058
Mine Card141823482022-02-11 3:33:561120 days ago1644550436IN
0xbc9B96E7...8eE20f2Cc
0.001 ETH0.0351921970.82791504
Process Sell Ord...132607652021-09-20 5:32:511264 days ago1632115971IN
0xbc9B96E7...8eE20f2Cc
0.005 ETH0.0078706270.13190771
Process Sell Ord...132607122021-09-20 5:19:131264 days ago1632115153IN
0xbc9B96E7...8eE20f2Cc
0.05 ETH0.0096727892.45103437
Mine Card132390042021-09-16 20:45:511268 days ago1631825151IN
0xbc9B96E7...8eE20f2Cc
0.001 ETH0.0381449787.52902986
Mine Card132389992021-09-16 20:43:371268 days ago1631825017IN
0xbc9B96E7...8eE20f2Cc
0.001 ETH0.0546987873.86657343
Mine Card132389882021-09-16 20:42:111268 days ago1631824931IN
0xbc9B96E7...8eE20f2Cc
0.001 ETH0.0282655670.22971576
Mine Card132389732021-09-16 20:39:541268 days ago1631824794IN
0xbc9B96E7...8eE20f2Cc
0.001 ETH0.0264198275.65467323
Mine Card132373692021-09-16 14:41:571268 days ago1631803317IN
0xbc9B96E7...8eE20f2Cc
0.001 ETH0.0891056274.85854909
Mine Card132373652021-09-16 14:39:591268 days ago1631803199IN
0xbc9B96E7...8eE20f2Cc
0.001 ETH0.035938950
Mine Card132373352021-09-16 14:34:431268 days ago1631802883IN
0xbc9B96E7...8eE20f2Cc
0.001 ETH0.057672
Mine Card132373242021-09-16 14:32:201268 days ago1631802740IN
0xbc9B96E7...8eE20f2Cc
0.001 ETH0.0367514673.50293091
Process Sell Ord...132367462021-09-16 12:25:471268 days ago1631795147IN
0xbc9B96E7...8eE20f2Cc
0.004 ETH0.0052238346.54746041
Process Sell Ord...132366902021-09-16 12:14:221268 days ago1631794462IN
0xbc9B96E7...8eE20f2Cc
0.015 ETH0.0073869168.76284901
Process Sell Ord...132365372021-09-16 11:40:581268 days ago1631792458IN
0xbc9B96E7...8eE20f2Cc
0.025 ETH0.0055226249.20981433
Mine Card132364712021-09-16 11:25:381268 days ago1631791538IN
0xbc9B96E7...8eE20f2Cc
0.001 ETH0.0252519550.50391852
Mine Card132364432021-09-16 11:18:431268 days ago1631791123IN
0xbc9B96E7...8eE20f2Cc
0.001 ETH0.0305662645.41118515
Mine Card132364362021-09-16 11:17:471268 days ago1631791067IN
0xbc9B96E7...8eE20f2Cc
0.001 ETH0.0122733445.13271966
Mine Card132360412021-09-16 9:46:561268 days ago1631785616IN
0xbc9B96E7...8eE20f2Cc
0.001 ETH0.0092887660.3472073
Mine Card132360362021-09-16 9:46:061268 days ago1631785566IN
0xbc9B96E7...8eE20f2Cc
0.001 ETH0.0183958673.43981601
Process Sell Ord...132350442021-09-16 6:08:221268 days ago1631772502IN
0xbc9B96E7...8eE20f2Cc
0.02 ETH0.007121774.86607187
Process Sell Ord...132350402021-09-16 6:06:491268 days ago1631772409IN
0xbc9B96E7...8eE20f2Cc
0.01 ETH0.0065367968.71720688
Process Sell Ord...132350362021-09-16 6:05:001268 days ago1631772300IN
0xbc9B96E7...8eE20f2Cc
0.01 ETH0.0056339261.02203524
Process Sell Ord...132350192021-09-16 6:00:581268 days ago1631772058IN
0xbc9B96E7...8eE20f2Cc
0.02 ETH0.0017714857.43919894
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Method Block
From
To
-141824002022-02-11 3:45:271120 days ago1644551127
0xbc9B96E7...8eE20f2Cc
0.001 ETH
-141823762022-02-11 3:39:371120 days ago1644550777
0xbc9B96E7...8eE20f2Cc
0.001 ETH
-141823482022-02-11 3:33:561120 days ago1644550436
0xbc9B96E7...8eE20f2Cc
0.001 ETH
-132607652021-09-20 5:32:511264 days ago1632115971
0xbc9B96E7...8eE20f2Cc
0.005 ETH
-132607122021-09-20 5:19:131264 days ago1632115153
0xbc9B96E7...8eE20f2Cc
0.05 ETH
-132390042021-09-16 20:45:511268 days ago1631825151
0xbc9B96E7...8eE20f2Cc
0.001 ETH
-132389882021-09-16 20:42:111268 days ago1631824931
0xbc9B96E7...8eE20f2Cc
0.001 ETH
-132389732021-09-16 20:39:541268 days ago1631824794
0xbc9B96E7...8eE20f2Cc
0.001 ETH
-132373692021-09-16 14:41:571268 days ago1631803317
0xbc9B96E7...8eE20f2Cc
0.001 ETH
-132373652021-09-16 14:39:591268 days ago1631803199
0xbc9B96E7...8eE20f2Cc
0.001 ETH
-132367462021-09-16 12:25:471268 days ago1631795147
0xbc9B96E7...8eE20f2Cc
0.004 ETH
-132366902021-09-16 12:14:221268 days ago1631794462
0xbc9B96E7...8eE20f2Cc
0.015 ETH
-132365372021-09-16 11:40:581268 days ago1631792458
0xbc9B96E7...8eE20f2Cc
0.025 ETH
-132364432021-09-16 11:18:431268 days ago1631791123
0xbc9B96E7...8eE20f2Cc
0.001 ETH
-132360412021-09-16 9:46:561268 days ago1631785616
0xbc9B96E7...8eE20f2Cc
0.001 ETH
-132350442021-09-16 6:08:221268 days ago1631772502
0xbc9B96E7...8eE20f2Cc
0.02 ETH
-132350402021-09-16 6:06:491268 days ago1631772409
0xbc9B96E7...8eE20f2Cc
0.01 ETH
-132350362021-09-16 6:05:001268 days ago1631772300
0xbc9B96E7...8eE20f2Cc
0.01 ETH
-132350162021-09-16 5:59:571268 days ago1631771997
0xbc9B96E7...8eE20f2Cc
0.02 ETH
-132348982021-09-16 5:35:171268 days ago1631770517
0xbc9B96E7...8eE20f2Cc
0.008 ETH
-132348462021-09-16 5:23:551268 days ago1631769835
0xbc9B96E7...8eE20f2Cc
0.02 ETH
-132348322021-09-16 5:20:381268 days ago1631769638
0xbc9B96E7...8eE20f2Cc
0.02 ETH
-132347842021-09-16 5:06:521268 days ago1631768812
0xbc9B96E7...8eE20f2Cc
0.008 ETH
Transfer60997492018-08-06 17:01:592405 days ago1533574919
0xbc9B96E7...8eE20f2Cc
0.001 ETH
Transfer60906532018-08-05 4:11:182406 days ago1533442278
0xbc9B96E7...8eE20f2Cc
0.001 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
HumanityCard

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-03-16
*/

pragma solidity ^0.4.2;

contract ERC721 {
    function isERC721() public pure returns (bool b);
    function implementsERC721() public pure returns (bool b);
    function name() public pure returns (string name);
    function symbol() public pure returns (string symbol);
    function totalSupply() public view returns (uint256 totalSupply);
    function balanceOf(address _owner) public view returns (uint256 balance);
    function ownerOf(uint256 _tokenId) public view returns (address owner);
    function approve(address _to, uint256 _tokenId) public;
    function takeOwnership(uint256 _tokenId) public;
    function transferFrom(address _from, address _to, uint256 _tokenId) public;
    function transfer(address _to, uint256 _tokenId) public;
    function tokenOfOwnerByIndex(address _owner, uint256 _index) constant returns (uint tokenId);
    function tokenMetadata(uint256 _tokenId) constant returns (string infoUrl);

    event Transfer(address indexed _from, address indexed _to, uint256 _tokenId);
    event Approval(address indexed _owner, address indexed _approved, uint256 _tokenId);
}

contract HumanityCard is ERC721 {

    ///////////////////////////////////////////////////////////////
    /// Modifiers

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

    event Mined(address indexed owner, uint16 human);

    ///////////////////////////////////////////////////////////////
    /// Structures

    struct Human {
        string name;
        uint8 max;
        uint mined;
    }

    struct Card {
        uint16 human;
        address owner;
        uint indexUser;
    }

    struct SellOrder {
        address seller;
        uint card;
        uint price;
    }

    ///////////////////////////////////////////////////////////////
    /// Constants

    string constant NAME = "HumanityCards";
    string constant SYMBOL = "HCX";

    ///////////////////////////////////////////////////////////////
    /// Attributes

    address owner;
    uint cardPrice;
    uint humanNumber;
    Human[] humanArray;
    uint cardNumber;
    uint cardMined;
    Card[] cardArray;
    mapping (address => uint256) cardCount;
    mapping (uint256 => address) approveMap;
    SellOrder[] sellOrderList;

    // Index of the card for the user
    mapping (address => mapping (uint => uint)) indexCard;

    ///////////////////////////////////////////////////////////////
    /// Constructor

    function HumanityCard() public {
        owner = msg.sender;
        cardPrice = 1 finney;
        humanNumber = 0;
        cardNumber = 0;
        cardMined = 0;
    }

    ///////////////////////////////////////////////////////////////
    /// Admin functions

    function addHuman(string name, uint8 max) public onlyOwner {
        Human memory newHuman = Human(name, max, 0);
        humanArray.push(newHuman);
        humanNumber += 1;
        cardNumber += max;
    }

    // Used only if ether price increase (decrease the price card)
    function changeCardPrice(uint newPrice) public onlyOwner {
        cardPrice = newPrice;
    }

    ///////////////////////////////////////////////////////////////
    /// Implementation ERC721

    function isERC721() public pure returns (bool b) {
        return true;
    }

    function implementsERC721() public pure returns (bool b) {
        return true;
    }

    function name() public pure returns (string _name) {
        return NAME;
    }

    function symbol() public pure returns (string _symbol) {
        return SYMBOL;
    }

    function totalSupply() public view returns (uint256 _totalSupply) {
        return cardMined;
    }

    function balanceOf(address _owner) public view returns (uint256 balance) {
        return cardCount[_owner];
    }

    function ownerOf(uint256 _tokenId) public view returns (address _owner) {
        require(_tokenId < cardMined);
        Card c = cardArray[_tokenId];
        return c.owner;
    }

    function approve(address _to, uint256 _tokenId) public {
        require(msg.sender == ownerOf(_tokenId));
        require(msg.sender != _to);
        approveMap[_tokenId] = _to;
        Approval(msg.sender, _to, _tokenId);
    }

    function transferFrom(address _from, address _to, uint256 _tokenId) public {
        require(_tokenId < cardMined);
        require(_from == ownerOf(_tokenId));
        require(_from != _to);
        require(approveMap[_tokenId] == _to);

        cardCount[_from] -= 1;

        // Change the indexCard of _from
        indexCard[_from][cardArray[_tokenId].indexUser] = indexCard[_from][cardCount[_from]];
        cardArray[indexCard[_from][cardCount[_from]]].indexUser = cardArray[_tokenId].indexUser;

        // This card is the last one for the new owner
        cardArray[_tokenId].indexUser = cardCount[_to];
        indexCard[_to][cardCount[_to]] = _tokenId;

        cardArray[_tokenId].owner = _to;
        cardCount[_to] += 1;
        Transfer(_from, _to, _tokenId);
    }

    function takeOwnership(uint256 _tokenId) public {
        require(_tokenId < cardMined);
        address oldOwner = ownerOf(_tokenId);
        address newOwner = msg.sender;
        require(newOwner != oldOwner);
        require(approveMap[_tokenId] == msg.sender);

        cardCount[oldOwner] -= 1;

        // Change the indexCard of _from
        indexCard[oldOwner][cardArray[_tokenId].indexUser] = indexCard[oldOwner][cardCount[oldOwner]];
        cardArray[indexCard[oldOwner][cardCount[oldOwner]]].indexUser = cardArray[_tokenId].indexUser;

        // This card is the last one for the new owner
        cardArray[_tokenId].indexUser = cardCount[newOwner];
        indexCard[newOwner][cardCount[newOwner]] = _tokenId;

        cardArray[_tokenId].owner = newOwner;
        cardCount[newOwner] += 1;
        Transfer(oldOwner, newOwner, _tokenId);
    }

    function transfer(address _to, uint256 _tokenId) public {
        require(_tokenId < cardMined);
        address oldOwner = msg.sender;
        address newOwner = _to;
        require(oldOwner == ownerOf(_tokenId));
        require(oldOwner != newOwner);
        require(newOwner != address(0));

        cardCount[oldOwner] -= 1;

        // Change the indexCard of _from
        indexCard[oldOwner][cardArray[_tokenId].indexUser] = indexCard[oldOwner][cardCount[oldOwner]];
        cardArray[indexCard[oldOwner][cardCount[oldOwner]]].indexUser = cardArray[_tokenId].indexUser;

        // This card is the last one for the new owner
        cardArray[_tokenId].indexUser = cardCount[newOwner];
        indexCard[newOwner][cardCount[newOwner]] = _tokenId;

        cardArray[_tokenId].owner = newOwner;
        cardCount[newOwner] += 1;
        Transfer(oldOwner, newOwner, _tokenId);
    }

    function tokenOfOwnerByIndex(address _owner, uint256 _index) constant returns (uint tokenId) {
        require(_index < cardCount[_owner]);

        return indexCard[_owner][_index];
    }

    // For this case the only metadata is the name of the human
    function tokenMetadata(uint256 _tokenId) constant returns (string infoUrl) {
        require(_tokenId < cardMined);

        uint16 humanId = cardArray[_tokenId].human;
        return humanArray[humanId].name;
    }

    ///////////////////////////////////////////////////////////////
    /// HumanityCard functions

    // Mine a new card
    function mineCard() public payable returns(bool success) {
        require(msg.value == cardPrice);
        require(cardMined < cardNumber);

        int remaining = (int)(cardNumber - cardMined);

        // Choosing the card
        int numero = int(keccak256(block.timestamp))%remaining;
        if(numero < 0) {
            numero *= -1;
        }
        uint16 chosenOne = 0;
        while (numero >= 0) {
            numero -= (int)(humanArray[chosenOne].max-humanArray[chosenOne].mined);
            if (numero >= 0) {
                chosenOne += 1;
            }
        }

        // Adding the card to the user
        address newOwner = msg.sender;
        Card memory newCard = Card(chosenOne, newOwner, cardCount[newOwner]);
        cardArray.push(newCard);

        // This card is the last one
        indexCard[newOwner][cardCount[newOwner]] = cardMined;
        cardCount[newOwner] += 1;

        // Updating cards informations
        cardMined += 1;
        humanArray[chosenOne].mined += 1;

        // Sending the fund to the owner
        if(!owner.send(cardPrice)) {
           revert();
        }

         Mined(newOwner, chosenOne);

        return true;
    }

    // Sale functions
    function createSellOrder(uint256 _tokenId, uint price) public {
        require(_tokenId < cardMined);
        require(msg.sender == ownerOf(_tokenId));

        SellOrder memory newOrder = SellOrder(msg.sender, _tokenId, price);
        sellOrderList.push(newOrder);

        cardArray[_tokenId].owner = address(0);
        cardCount[msg.sender] -= 1;

        // Change the indexCard of sender
        indexCard[msg.sender][cardArray[_tokenId].indexUser] = indexCard[msg.sender][cardCount[msg.sender]];
        cardArray[indexCard[msg.sender][cardCount[msg.sender]]].indexUser = cardArray[_tokenId].indexUser;
    }

    function processSellOrder(uint id, uint256 _tokenId) payable public {
        require(id < sellOrderList.length);

        SellOrder memory order = sellOrderList[id];
        require(order.card == _tokenId);
        require(msg.value == order.price);
        require(msg.sender != order.seller);

        // Sending fund to the seller
        if(!order.seller.send(msg.value)) {
           revert();
        }

        // Adding card to the buyer
        cardArray[_tokenId].owner = msg.sender;

        // This card is the last one for the new owner
        cardArray[_tokenId].indexUser = cardCount[msg.sender];
        indexCard[msg.sender][cardCount[msg.sender]] = _tokenId;

        cardCount[msg.sender] += 1;

        // Update list
        sellOrderList[id] = sellOrderList[sellOrderList.length-1];
        delete sellOrderList[sellOrderList.length-1];
        sellOrderList.length--;
    }

    function cancelSellOrder(uint id, uint256 _tokenId) public {
        require(id < sellOrderList.length);

        SellOrder memory order = sellOrderList[id];
        require(order.seller == msg.sender);
        require(order.card == _tokenId);

        // Give back card to seller
        cardArray[_tokenId].owner = msg.sender;

        // This card is the last one for the new owner
        cardArray[_tokenId].indexUser = cardCount[msg.sender];
        indexCard[msg.sender][cardCount[msg.sender]] = _tokenId;

        cardCount[msg.sender] += 1;

        // Update list
        sellOrderList[id] = sellOrderList[sellOrderList.length-1];
        delete sellOrderList[sellOrderList.length-1];
        sellOrderList.length--;
    }

    function getSellOrder(uint id) public view returns(address seller, uint card, uint price) {
        require(id < sellOrderList.length);

        SellOrder memory ret = sellOrderList[id];
        return(ret.seller, ret.card, ret.price);
    }

    function getNbSellOrder() public view returns(uint nb) {
        return sellOrderList.length;
    }


    // Get functions
    function getOwner() public view returns(address ret) {
        return owner;
    }

    function getCardPrice() public view returns(uint ret) {
        return cardPrice;
    }

    function getHumanNumber() public view returns(uint ret) {
        return humanNumber;
    }

    function getHumanInfo(uint i) public view returns(string name, uint8 max, uint mined) {
        require(i < humanNumber);
        Human memory h = humanArray[i];
        return (h.name, h.max, h.mined);
    }

    function getCardNumber() public view returns(uint ret) {
        return cardNumber;
    }

    function getCardInfo(uint256 _tokenId) public view returns(uint16 human, address owner) {
        require(_tokenId < cardMined);
        Card memory c = cardArray[_tokenId];
        return (c.human, c.owner);
    }
}

Contract Security Audit

Contract ABI

API
[{"constant":true,"inputs":[],"name":"getCardNumber","outputs":[{"name":"ret","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"_name","type":"string"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_tokenId","type":"uint256"}],"name":"approve","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"implementsERC721","outputs":[{"name":"b","type":"bool"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[],"name":"getNbSellOrder","outputs":[{"name":"nb","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"_totalSupply","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"i","type":"uint256"}],"name":"getHumanInfo","outputs":[{"name":"name","type":"string"},{"name":"max","type":"uint8"},{"name":"mined","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_tokenId","type":"uint256"},{"name":"price","type":"uint256"}],"name":"createSellOrder","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_tokenId","type":"uint256"}],"name":"transferFrom","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_index","type":"uint256"}],"name":"tokenOfOwnerByIndex","outputs":[{"name":"tokenId","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"newPrice","type":"uint256"}],"name":"changeCardPrice","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"id","type":"uint256"}],"name":"getSellOrder","outputs":[{"name":"seller","type":"address"},{"name":"card","type":"uint256"},{"name":"price","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_tokenId","type":"uint256"}],"name":"ownerOf","outputs":[{"name":"_owner","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_tokenId","type":"uint256"}],"name":"tokenMetadata","outputs":[{"name":"infoUrl","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getOwner","outputs":[{"name":"ret","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"_symbol","type":"string"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[{"name":"_tokenId","type":"uint256"}],"name":"getCardInfo","outputs":[{"name":"human","type":"uint16"},{"name":"owner","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"id","type":"uint256"},{"name":"_tokenId","type":"uint256"}],"name":"processSellOrder","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_tokenId","type":"uint256"}],"name":"transfer","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_tokenId","type":"uint256"}],"name":"takeOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"isERC721","outputs":[{"name":"b","type":"bool"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[],"name":"getCardPrice","outputs":[{"name":"ret","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getHumanNumber","outputs":[{"name":"ret","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"name","type":"string"},{"name":"max","type":"uint8"}],"name":"addHuman","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"id","type":"uint256"},{"name":"_tokenId","type":"uint256"}],"name":"cancelSellOrder","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"mineCard","outputs":[{"name":"success","type":"bool"}],"payable":true,"stateMutability":"payable","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"},{"indexed":false,"name":"human","type":"uint16"}],"name":"Mined","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_from","type":"address"},{"indexed":true,"name":"_to","type":"address"},{"indexed":false,"name":"_tokenId","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_owner","type":"address"},{"indexed":true,"name":"_approved","type":"address"},{"indexed":false,"name":"_tokenId","type":"uint256"}],"name":"Approval","type":"event"}]

6060604052341561000f57600080fd5b336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555066038d7ea4c6800060018190555060006002819055506000600481905550600060058190555061350d806100846000396000f30060606040526004361061015f576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806305dc27081461016457806306fdde031461018d578063095ea7b31461021b5780631051db341461025d5780631390b2471461028a57806318160ddd146102b35780631dd7cf6d146102dc5780631df681021461038c57806323b872dd146103b85780632f745c591461041957806330efac4e1461046f578063390ce0d3146104925780636352211e146105035780636914db601461056657806370a0823114610602578063893d20e81461064f57806395d89b41146106a4578063970129be14610732578063a70beb13146107a4578063a9059cbb146107c5578063b2e6ceeb14610807578063d2afa8c11461082a578063d79d63be14610857578063d8c3527314610880578063e242fbbb146108a9578063e51dfd9014610912578063ed1ece041461093e575b600080fd5b341561016f57600080fd5b610177610960565b6040518082815260200191505060405180910390f35b341561019857600080fd5b6101a061096a565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101e05780820151818401526020810190506101c5565b50505050905090810190601f16801561020d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561022657600080fd5b61025b600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919080359060200190919050506109ad565b005b341561026857600080fd5b610270610ae5565b604051808215151515815260200191505060405180910390f35b341561029557600080fd5b61029d610aee565b6040518082815260200191505060405180910390f35b34156102be57600080fd5b6102c6610afb565b6040518082815260200191505060405180910390f35b34156102e757600080fd5b6102fd6004808035906020019091905050610b05565b60405180806020018460ff1660ff168152602001838152602001828103825285818151815260200191508051906020019080838360005b8381101561034f578082015181840152602081019050610334565b50505050905090810190601f16801561037c5780820380516001836020036101000a031916815260200191505b5094505050505060405180910390f35b341561039757600080fd5b6103b66004808035906020019091908035906020019091905050610c3c565b005b34156103c357600080fd5b610417600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050610fdd565b005b341561042457600080fd5b610459600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803590602001909190505061150c565b6040518082815260200191505060405180910390f35b341561047a57600080fd5b61049060048080359060200190919050506115b4565b005b341561049d57600080fd5b6104b36004808035906020019091905050611619565b604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001838152602001828152602001935050505060405180910390f35b341561050e57600080fd5b61052460048080359060200190919050506116eb565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561057157600080fd5b610587600480803590602001909190505061174a565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156105c75780820151818401526020810190506105ac565b50505050905090810190601f1680156105f45780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561060d57600080fd5b610639600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190505061185a565b6040518082815260200191505060405180910390f35b341561065a57600080fd5b6106626118a3565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156106af57600080fd5b6106b76118cc565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156106f75780820151818401526020810190506106dc565b50505050905090810190601f1680156107245780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561073d57600080fd5b610753600480803590602001909190505061190f565b604051808361ffff1661ffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060405180910390f35b6107c360048080359060200190919080359060200190919050506119e9565b005b34156107d057600080fd5b610805600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050611e1f565b005b341561081257600080fd5b6108286004808035906020019091905050612327565b005b341561083557600080fd5b61083d612825565b604051808215151515815260200191505060405180910390f35b341561086257600080fd5b61086a61282e565b6040518082815260200191505060405180910390f35b341561088b57600080fd5b610893612838565b6040518082815260200191505060405180910390f35b34156108b457600080fd5b610910600480803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509190803560ff16906020019091905050612842565b005b341561091d57600080fd5b61093c6004808035906020019091908035906020019091905050612965565b005b610946612d44565b604051808215151515815260200191505060405180910390f35b6000600454905090565b610972613161565b6040805190810160405280600d81526020017f48756d616e697479436172647300000000000000000000000000000000000000815250905090565b6109b6816116eb565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156109ef57600080fd5b8173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151515610a2a57600080fd5b816008600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040518082815260200191505060405180910390a35050565b60006001905090565b6000600980549050905090565b6000600554905090565b610b0d613161565b600080610b18613175565b60025485101515610b2857600080fd5b600385815481101515610b3757fe5b906000526020600020906003020160606040519081016040529081600082018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610bea5780601f10610bbf57610100808354040283529160200191610bea565b820191906000526020600020905b815481529060010190602001808311610bcd57829003601f168201915b505050505081526020016001820160009054906101000a900460ff1660ff1660ff1681526020016002820154815250509050806000015181602001518260400151829250935093509350509193909250565b610c446131a0565b60055483101515610c5457600080fd5b610c5d836116eb565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610c9657600080fd5b6060604051908101604052803373ffffffffffffffffffffffffffffffffffffffff16815260200184815260200183815250905060098054806001018281610cde91906131d8565b9160005260206000209060030201600083909190915060008201518160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060208201518160010155604082015181600201555050506000600684815481101515610d6357fe5b906000526020600020906002020160000160026101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540392505081905550600a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054815260200190815260200160002054600a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600686815481101515610ee057fe5b906000526020600020906002020160010154815260200190815260200160002081905550600683815481101515610f1357fe5b9060005260206000209060020201600101546006600a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054815260200190815260200160002054815481101515610fc357fe5b906000526020600020906002020160010181905550505050565b60055481101515610fed57600080fd5b610ff6816116eb565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151561102f57600080fd5b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415151561106a57600080fd5b8173ffffffffffffffffffffffffffffffffffffffff166008600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415156110d757600080fd5b6001600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540392505081905550600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054815260200190815260200160002054600a60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600060068481548110151561120557fe5b90600052602060002090600202016001015481526020019081526020016000208190555060068181548110151561123857fe5b9060005260206000209060020201600101546006600a60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600760008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548152602001908152602001600020548154811015156112e857fe5b906000526020600020906002020160010181905550600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205460068281548110151561134c57fe5b90600052602060002090600202016001018190555080600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548152602001908152602001600020819055508160068281548110151561140557fe5b906000526020600020906002020160000160026101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3505050565b6000600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548210151561155b57600080fd5b600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002054905092915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561160f57600080fd5b8060018190555050565b60008060006116266131a0565b6009805490508510151561163957600080fd5b60098581548110151561164857fe5b9060005260206000209060030201606060405190810160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600182015481526020016002820154815250509050806000015181602001518260400151935093509350509193909250565b600080600554831015156116fe57600080fd5b60068381548110151561170d57fe5b906000526020600020906002020190508060000160029054906101000a900473ffffffffffffffffffffffffffffffffffffffff16915050919050565b611752613161565b60006005548310151561176457600080fd5b60068381548110151561177357fe5b906000526020600020906002020160000160009054906101000a900461ffff16905060038161ffff168154811015156117a857fe5b90600052602060002090600302016000018054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561184d5780601f106118225761010080835404028352916020019161184d565b820191906000526020600020905b81548152906001019060200180831161183057829003601f168201915b5050505050915050919050565b6000600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6118d4613161565b6040805190810160405280600381526020017f4843580000000000000000000000000000000000000000000000000000000000815250905090565b60008061191a61320a565b6005548410151561192a57600080fd5b60068481548110151561193957fe5b9060005260206000209060020201606060405190810160405290816000820160009054906101000a900461ffff1661ffff1661ffff1681526020016000820160029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016001820154815250509050806000015181602001519250925050915091565b6119f16131a0565b60098054905083101515611a0457600080fd5b600983815481101515611a1357fe5b9060005260206000209060030201606060405190810160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600182015481526020016002820154815250509050818160200151141515611aab57600080fd5b806040015134141515611abd57600080fd5b806000015173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151515611afc57600080fd5b806000015173ffffffffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888f193505050501515611b4057600080fd5b33600683815481101515611b5057fe5b906000526020600020906002020160000160026101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054600683815481101515611bee57fe5b90600052602060002090600202016001018190555081600a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548152602001908152602001600020819055506001600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055506009600160098054905003815481101515611cfc57fe5b9060005260206000209060030201600984815481101515611d1957fe5b90600052602060002090600302016000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060018201548160010155600282015481600201559050506009600160098054905003815481101515611dbc57fe5b9060005260206000209060030201600080820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556001820160009055600282016000905550506009805480919060019003611e199190613246565b50505050565b60008060055483101515611e3257600080fd5b339150839050611e41836116eb565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141515611e7a57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614151515611eb557600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515611ef157600080fd5b6001600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540392505081905550600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054815260200190815260200160002054600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600060068681548110151561201f57fe5b90600052602060002090600202016001015481526020019081526020016000208190555060068381548110151561205257fe5b9060005260206000209060020201600101546006600a60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205481526020019081526020016000205481548110151561210257fe5b906000526020600020906002020160010181905550600760008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205460068481548110151561216657fe5b90600052602060002090600202016001018190555082600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548152602001908152602001600020819055508060068481548110151561221f57fe5b906000526020600020906002020160000160026101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a350505050565b6000806005548310151561233a57600080fd5b612343836116eb565b91503390508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561238357600080fd5b3373ffffffffffffffffffffffffffffffffffffffff166008600085815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415156123f057600080fd5b6001600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540392505081905550600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054815260200190815260200160002054600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600060068681548110151561251e57fe5b90600052602060002090600202016001015481526020019081526020016000208190555060068381548110151561255157fe5b9060005260206000209060020201600101546006600a60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205481526020019081526020016000205481548110151561260157fe5b906000526020600020906002020160010181905550600760008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205460068481548110151561266557fe5b90600052602060002090600202016001018190555082600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548152602001908152602001600020819055508060068481548110151561271e57fe5b906000526020600020906002020160000160026101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a3505050565b60006001905090565b6000600154905090565b6000600254905090565b61284a613175565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156128a557600080fd5b6060604051908101604052808481526020018360ff16815260200160008152509050600380548060010182816128db9190613278565b91600052602060002090600302016000839091909150600082015181600001908051906020019061290d9291906132aa565b5060208201518160010160006101000a81548160ff021916908360ff1602179055506040820151816002015550505060016002600082825401925050819055508160ff16600460008282540192505081905550505050565b61296d6131a0565b6009805490508310151561298057600080fd5b60098381548110151561298f57fe5b9060005260206000209060030201606060405190810160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016001820154815260200160028201548152505090503373ffffffffffffffffffffffffffffffffffffffff16816000015173ffffffffffffffffffffffffffffffffffffffff16141515612a5357600080fd5b818160200151141515612a6557600080fd5b33600683815481101515612a7557fe5b906000526020600020906002020160000160026101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054600683815481101515612b1357fe5b90600052602060002090600202016001018190555081600a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548152602001908152602001600020819055506001600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055506009600160098054905003815481101515612c2157fe5b9060005260206000209060030201600984815481101515612c3e57fe5b90600052602060002090600302016000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060018201548160010155600282015481600201559050506009600160098054905003815481101515612ce157fe5b9060005260206000209060030201600080820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556001820160009055600282016000905550506009805480919060019003612d3e9190613246565b50505050565b6000806000806000612d5461320a565b60015434141515612d6457600080fd5b600454600554101515612d7657600080fd5b600554600454039450844260405180828152602001915050604051809103902060019004811515612da357fe5b0793506000841215612dd5577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff840293505b600092505b600084121515612e595760038361ffff16815481101515612df757fe5b90600052602060002090600302016002015460038461ffff16815481101515612e1c57fe5b906000526020600020906003020160010160009054906101000a900460ff1660ff160384039350600084121515612e54576001830192505b612dda565b3391506060604051908101604052808461ffff1681526020018373ffffffffffffffffffffffffffffffffffffffff168152602001600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054815250905060068054806001018281612ee7919061332a565b9160005260206000209060020201600083909190915060008201518160000160006101000a81548161ffff021916908361ffff16021790555060208201518160000160026101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060408201518160010155505050600554600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548152602001908152602001600020819055506001600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055506001600560008282540192505081905550600160038461ffff1681548110151561307e57fe5b9060005260206000209060030201600201600082825401925050819055506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc6001549081150290604051600060405180830381858888f1935050505015156130ff57600080fd5b8173ffffffffffffffffffffffffffffffffffffffff167f7c1f9d0ff99ce7cdfc538e6a57e0da25cad20c3b30440894e5205eebe3d1f89484604051808261ffff1661ffff16815260200191505060405180910390a260019550505050505090565b602060405190810160405280600081525090565b60606040519081016040528061318961335c565b8152602001600060ff168152602001600081525090565b606060405190810160405280600073ffffffffffffffffffffffffffffffffffffffff16815260200160008152602001600081525090565b815481835581811511613205576003028160030283600052602060002091820191016132049190613370565b5b505050565b606060405190810160405280600061ffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600081525090565b815481835581811511613273576003028160030283600052602060002091820191016132729190613370565b5b505050565b8154818355818115116132a5576003028160030283600052602060002091820191016132a491906133c6565b5b505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106132eb57805160ff1916838001178555613319565b82800160010185558215613319579182015b828111156133185782518255916020019190600101906132fd565b5b5090506133269190613411565b5090565b815481835581811511613357576002028160020283600052602060002091820191016133569190613436565b5b505050565b602060405190810160405280600081525090565b6133c391905b808211156133bf57600080820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556001820160009055600282016000905550600301613376565b5090565b90565b61340e91905b8082111561340a57600080820160006133e59190613499565b6001820160006101000a81549060ff02191690556002820160009055506003016133cc565b5090565b90565b61343391905b8082111561342f576000816000905550600101613417565b5090565b90565b61349691905b8082111561349257600080820160006101000a81549061ffff02191690556000820160026101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905560018201600090555060020161343c565b5090565b90565b50805460018160011615610100020316600290046000825580601f106134bf57506134de565b601f0160209004906000526020600020908101906134dd9190613411565b5b505600a165627a7a7230582089cff650b2bb9596cc313d6ecedab44f6cabe6815415461f44cde1209b7469580029

Deployed Bytecode

0x60606040526004361061015f576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806305dc27081461016457806306fdde031461018d578063095ea7b31461021b5780631051db341461025d5780631390b2471461028a57806318160ddd146102b35780631dd7cf6d146102dc5780631df681021461038c57806323b872dd146103b85780632f745c591461041957806330efac4e1461046f578063390ce0d3146104925780636352211e146105035780636914db601461056657806370a0823114610602578063893d20e81461064f57806395d89b41146106a4578063970129be14610732578063a70beb13146107a4578063a9059cbb146107c5578063b2e6ceeb14610807578063d2afa8c11461082a578063d79d63be14610857578063d8c3527314610880578063e242fbbb146108a9578063e51dfd9014610912578063ed1ece041461093e575b600080fd5b341561016f57600080fd5b610177610960565b6040518082815260200191505060405180910390f35b341561019857600080fd5b6101a061096a565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101e05780820151818401526020810190506101c5565b50505050905090810190601f16801561020d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561022657600080fd5b61025b600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919080359060200190919050506109ad565b005b341561026857600080fd5b610270610ae5565b604051808215151515815260200191505060405180910390f35b341561029557600080fd5b61029d610aee565b6040518082815260200191505060405180910390f35b34156102be57600080fd5b6102c6610afb565b6040518082815260200191505060405180910390f35b34156102e757600080fd5b6102fd6004808035906020019091905050610b05565b60405180806020018460ff1660ff168152602001838152602001828103825285818151815260200191508051906020019080838360005b8381101561034f578082015181840152602081019050610334565b50505050905090810190601f16801561037c5780820380516001836020036101000a031916815260200191505b5094505050505060405180910390f35b341561039757600080fd5b6103b66004808035906020019091908035906020019091905050610c3c565b005b34156103c357600080fd5b610417600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050610fdd565b005b341561042457600080fd5b610459600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803590602001909190505061150c565b6040518082815260200191505060405180910390f35b341561047a57600080fd5b61049060048080359060200190919050506115b4565b005b341561049d57600080fd5b6104b36004808035906020019091905050611619565b604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001838152602001828152602001935050505060405180910390f35b341561050e57600080fd5b61052460048080359060200190919050506116eb565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561057157600080fd5b610587600480803590602001909190505061174a565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156105c75780820151818401526020810190506105ac565b50505050905090810190601f1680156105f45780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561060d57600080fd5b610639600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190505061185a565b6040518082815260200191505060405180910390f35b341561065a57600080fd5b6106626118a3565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156106af57600080fd5b6106b76118cc565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156106f75780820151818401526020810190506106dc565b50505050905090810190601f1680156107245780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561073d57600080fd5b610753600480803590602001909190505061190f565b604051808361ffff1661ffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060405180910390f35b6107c360048080359060200190919080359060200190919050506119e9565b005b34156107d057600080fd5b610805600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050611e1f565b005b341561081257600080fd5b6108286004808035906020019091905050612327565b005b341561083557600080fd5b61083d612825565b604051808215151515815260200191505060405180910390f35b341561086257600080fd5b61086a61282e565b6040518082815260200191505060405180910390f35b341561088b57600080fd5b610893612838565b6040518082815260200191505060405180910390f35b34156108b457600080fd5b610910600480803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509190803560ff16906020019091905050612842565b005b341561091d57600080fd5b61093c6004808035906020019091908035906020019091905050612965565b005b610946612d44565b604051808215151515815260200191505060405180910390f35b6000600454905090565b610972613161565b6040805190810160405280600d81526020017f48756d616e697479436172647300000000000000000000000000000000000000815250905090565b6109b6816116eb565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156109ef57600080fd5b8173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151515610a2a57600080fd5b816008600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040518082815260200191505060405180910390a35050565b60006001905090565b6000600980549050905090565b6000600554905090565b610b0d613161565b600080610b18613175565b60025485101515610b2857600080fd5b600385815481101515610b3757fe5b906000526020600020906003020160606040519081016040529081600082018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610bea5780601f10610bbf57610100808354040283529160200191610bea565b820191906000526020600020905b815481529060010190602001808311610bcd57829003601f168201915b505050505081526020016001820160009054906101000a900460ff1660ff1660ff1681526020016002820154815250509050806000015181602001518260400151829250935093509350509193909250565b610c446131a0565b60055483101515610c5457600080fd5b610c5d836116eb565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610c9657600080fd5b6060604051908101604052803373ffffffffffffffffffffffffffffffffffffffff16815260200184815260200183815250905060098054806001018281610cde91906131d8565b9160005260206000209060030201600083909190915060008201518160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060208201518160010155604082015181600201555050506000600684815481101515610d6357fe5b906000526020600020906002020160000160026101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540392505081905550600a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054815260200190815260200160002054600a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600686815481101515610ee057fe5b906000526020600020906002020160010154815260200190815260200160002081905550600683815481101515610f1357fe5b9060005260206000209060020201600101546006600a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054815260200190815260200160002054815481101515610fc357fe5b906000526020600020906002020160010181905550505050565b60055481101515610fed57600080fd5b610ff6816116eb565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151561102f57600080fd5b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415151561106a57600080fd5b8173ffffffffffffffffffffffffffffffffffffffff166008600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415156110d757600080fd5b6001600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540392505081905550600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054815260200190815260200160002054600a60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600060068481548110151561120557fe5b90600052602060002090600202016001015481526020019081526020016000208190555060068181548110151561123857fe5b9060005260206000209060020201600101546006600a60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600760008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548152602001908152602001600020548154811015156112e857fe5b906000526020600020906002020160010181905550600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205460068281548110151561134c57fe5b90600052602060002090600202016001018190555080600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548152602001908152602001600020819055508160068281548110151561140557fe5b906000526020600020906002020160000160026101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3505050565b6000600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548210151561155b57600080fd5b600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002054905092915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561160f57600080fd5b8060018190555050565b60008060006116266131a0565b6009805490508510151561163957600080fd5b60098581548110151561164857fe5b9060005260206000209060030201606060405190810160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600182015481526020016002820154815250509050806000015181602001518260400151935093509350509193909250565b600080600554831015156116fe57600080fd5b60068381548110151561170d57fe5b906000526020600020906002020190508060000160029054906101000a900473ffffffffffffffffffffffffffffffffffffffff16915050919050565b611752613161565b60006005548310151561176457600080fd5b60068381548110151561177357fe5b906000526020600020906002020160000160009054906101000a900461ffff16905060038161ffff168154811015156117a857fe5b90600052602060002090600302016000018054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561184d5780601f106118225761010080835404028352916020019161184d565b820191906000526020600020905b81548152906001019060200180831161183057829003601f168201915b5050505050915050919050565b6000600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6118d4613161565b6040805190810160405280600381526020017f4843580000000000000000000000000000000000000000000000000000000000815250905090565b60008061191a61320a565b6005548410151561192a57600080fd5b60068481548110151561193957fe5b9060005260206000209060020201606060405190810160405290816000820160009054906101000a900461ffff1661ffff1661ffff1681526020016000820160029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016001820154815250509050806000015181602001519250925050915091565b6119f16131a0565b60098054905083101515611a0457600080fd5b600983815481101515611a1357fe5b9060005260206000209060030201606060405190810160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600182015481526020016002820154815250509050818160200151141515611aab57600080fd5b806040015134141515611abd57600080fd5b806000015173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151515611afc57600080fd5b806000015173ffffffffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888f193505050501515611b4057600080fd5b33600683815481101515611b5057fe5b906000526020600020906002020160000160026101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054600683815481101515611bee57fe5b90600052602060002090600202016001018190555081600a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548152602001908152602001600020819055506001600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055506009600160098054905003815481101515611cfc57fe5b9060005260206000209060030201600984815481101515611d1957fe5b90600052602060002090600302016000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060018201548160010155600282015481600201559050506009600160098054905003815481101515611dbc57fe5b9060005260206000209060030201600080820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556001820160009055600282016000905550506009805480919060019003611e199190613246565b50505050565b60008060055483101515611e3257600080fd5b339150839050611e41836116eb565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141515611e7a57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614151515611eb557600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515611ef157600080fd5b6001600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540392505081905550600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054815260200190815260200160002054600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600060068681548110151561201f57fe5b90600052602060002090600202016001015481526020019081526020016000208190555060068381548110151561205257fe5b9060005260206000209060020201600101546006600a60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205481526020019081526020016000205481548110151561210257fe5b906000526020600020906002020160010181905550600760008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205460068481548110151561216657fe5b90600052602060002090600202016001018190555082600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548152602001908152602001600020819055508060068481548110151561221f57fe5b906000526020600020906002020160000160026101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a350505050565b6000806005548310151561233a57600080fd5b612343836116eb565b91503390508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561238357600080fd5b3373ffffffffffffffffffffffffffffffffffffffff166008600085815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415156123f057600080fd5b6001600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540392505081905550600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054815260200190815260200160002054600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600060068681548110151561251e57fe5b90600052602060002090600202016001015481526020019081526020016000208190555060068381548110151561255157fe5b9060005260206000209060020201600101546006600a60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205481526020019081526020016000205481548110151561260157fe5b906000526020600020906002020160010181905550600760008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205460068481548110151561266557fe5b90600052602060002090600202016001018190555082600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548152602001908152602001600020819055508060068481548110151561271e57fe5b906000526020600020906002020160000160026101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a3505050565b60006001905090565b6000600154905090565b6000600254905090565b61284a613175565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156128a557600080fd5b6060604051908101604052808481526020018360ff16815260200160008152509050600380548060010182816128db9190613278565b91600052602060002090600302016000839091909150600082015181600001908051906020019061290d9291906132aa565b5060208201518160010160006101000a81548160ff021916908360ff1602179055506040820151816002015550505060016002600082825401925050819055508160ff16600460008282540192505081905550505050565b61296d6131a0565b6009805490508310151561298057600080fd5b60098381548110151561298f57fe5b9060005260206000209060030201606060405190810160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016001820154815260200160028201548152505090503373ffffffffffffffffffffffffffffffffffffffff16816000015173ffffffffffffffffffffffffffffffffffffffff16141515612a5357600080fd5b818160200151141515612a6557600080fd5b33600683815481101515612a7557fe5b906000526020600020906002020160000160026101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054600683815481101515612b1357fe5b90600052602060002090600202016001018190555081600a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548152602001908152602001600020819055506001600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055506009600160098054905003815481101515612c2157fe5b9060005260206000209060030201600984815481101515612c3e57fe5b90600052602060002090600302016000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060018201548160010155600282015481600201559050506009600160098054905003815481101515612ce157fe5b9060005260206000209060030201600080820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556001820160009055600282016000905550506009805480919060019003612d3e9190613246565b50505050565b6000806000806000612d5461320a565b60015434141515612d6457600080fd5b600454600554101515612d7657600080fd5b600554600454039450844260405180828152602001915050604051809103902060019004811515612da357fe5b0793506000841215612dd5577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff840293505b600092505b600084121515612e595760038361ffff16815481101515612df757fe5b90600052602060002090600302016002015460038461ffff16815481101515612e1c57fe5b906000526020600020906003020160010160009054906101000a900460ff1660ff160384039350600084121515612e54576001830192505b612dda565b3391506060604051908101604052808461ffff1681526020018373ffffffffffffffffffffffffffffffffffffffff168152602001600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054815250905060068054806001018281612ee7919061332a565b9160005260206000209060020201600083909190915060008201518160000160006101000a81548161ffff021916908361ffff16021790555060208201518160000160026101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060408201518160010155505050600554600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548152602001908152602001600020819055506001600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055506001600560008282540192505081905550600160038461ffff1681548110151561307e57fe5b9060005260206000209060030201600201600082825401925050819055506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc6001549081150290604051600060405180830381858888f1935050505015156130ff57600080fd5b8173ffffffffffffffffffffffffffffffffffffffff167f7c1f9d0ff99ce7cdfc538e6a57e0da25cad20c3b30440894e5205eebe3d1f89484604051808261ffff1661ffff16815260200191505060405180910390a260019550505050505090565b602060405190810160405280600081525090565b60606040519081016040528061318961335c565b8152602001600060ff168152602001600081525090565b606060405190810160405280600073ffffffffffffffffffffffffffffffffffffffff16815260200160008152602001600081525090565b815481835581811511613205576003028160030283600052602060002091820191016132049190613370565b5b505050565b606060405190810160405280600061ffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600081525090565b815481835581811511613273576003028160030283600052602060002091820191016132729190613370565b5b505050565b8154818355818115116132a5576003028160030283600052602060002091820191016132a491906133c6565b5b505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106132eb57805160ff1916838001178555613319565b82800160010185558215613319579182015b828111156133185782518255916020019190600101906132fd565b5b5090506133269190613411565b5090565b815481835581811511613357576002028160020283600052602060002091820191016133569190613436565b5b505050565b602060405190810160405280600081525090565b6133c391905b808211156133bf57600080820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556001820160009055600282016000905550600301613376565b5090565b90565b61340e91905b8082111561340a57600080820160006133e59190613499565b6001820160006101000a81549060ff02191690556002820160009055506003016133cc565b5090565b90565b61343391905b8082111561342f576000816000905550600101613417565b5090565b90565b61349691905b8082111561349257600080820160006101000a81549061ffff02191690556000820160026101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905560018201600090555060020161343c565b5090565b90565b50805460018160011615610100020316600290046000825580601f106134bf57506134de565b601f0160209004906000526020600020908101906134dd9190613411565b5b505600a165627a7a7230582089cff650b2bb9596cc313d6ecedab44f6cabe6815415461f44cde1209b7469580029

Swarm Source

bzzr://89cff650b2bb9596cc313d6ecedab44f6cabe6815415461f44cde1209b746958

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.