Sponsored Link:   COVESTING - EU-based digital asset exchange. Aggregated liquidity. Algorithmic & Copy-trading features. 24/7 support. Get access!
Contract Overview
Balance: 0.486379435294196023 Ether
Ether Value: $230.76 (@ $474.44/ETH)
Transactions: 749 txns
Token Contract: CryptoConquest (RegionsTo...)
 Latest 25 txns from a total Of 749 transactions (+1 PendingTxn)
View All

TxHash Age From To Value [TxFee]
0x79f854270e96ac86a90663f2e434a18d2a298bc9a158e966187202c69249fc6a(pending)0xde415ef3a7bd08baa6af85adfb7d46fff602d2b4  IN  0xf441b73b0a196aa67d32aee230aab5e54eef47650 Ether(pending)
0xf725e64eca6fc85fdd0550a8ce12ec881439ab66628e1171aed8638b16581ca810 days 16 hrs ago0xe2eeaacfc6a5488aacfb2131108ae7b59026fe4b  IN   0xf441b73b0a196aa67d32aee230aab5e54eef47650 Ether0.000347223
0xc982eb21554ae85ca10ac30cc15d9fd58b7e9048208dc3052796e6802c12b78a70 days 5 hrs ago0x527efc00ce72a50ef4a54c78896939ef5f83b811  IN   0xf441b73b0a196aa67d32aee230aab5e54eef47650.025 Ether0.000064629
0x4f254abbcc6395e077362b3f2d1838b771a494a237386d9754e745a746eec64270 days 5 hrs ago0x527efc00ce72a50ef4a54c78896939ef5f83b811  IN   0xf441b73b0a196aa67d32aee230aab5e54eef47650.02127659574468 Ether0.000049629
0x7f5deab1bdc1b506a6181b83fec3a8003a8be4179ecf3ef218917d05b494c48d70 days 7 hrs ago0xc95fe67a830149883915ff44f9139c80086f5ef0  IN   0xf441b73b0a196aa67d32aee230aab5e54eef47650.025 Ether0.000064629
0x10e715b17293d075cc70a51da5d9304d3ba57dc9d46d34d750d95133cc97c2b670 days 7 hrs ago0xc95fe67a830149883915ff44f9139c80086f5ef0  IN   0xf441b73b0a196aa67d32aee230aab5e54eef47650.025 Ether0.000064629
0xf3beda90d4437f7f8d28af605c9f686054a7370ed995aa7679c4b9c00b30124770 days 7 hrs ago0xc95fe67a830149883915ff44f9139c80086f5ef0  IN   0xf441b73b0a196aa67d32aee230aab5e54eef47650.025 Ether0.000064629
0x2d71470589e4ce1889ef79f62d7186781c539fa50096d21301d2e31b49057e9270 days 9 hrs ago0x9c78a2224b763ee6bb652de945e70d22561e8afd  IN   0xf441b73b0a196aa67d32aee230aab5e54eef47650.025 Ether0.000064629
0x6ead40a06dd12e19d0f1a58c71e4a2f88f1878aee00962dcfb8b77f0d42cae2270 days 13 hrs ago0x482513dbbde829b1ee89d0b48cf6d615bad80a5f  IN   0xf441b73b0a196aa67d32aee230aab5e54eef47650.01 Ether0.000079629
0x24791b26e63cb63fed1cef593f03c781f8e1e542b13d4316cab5e0be47024cfe70 days 13 hrs ago0xe2eeaacfc6a5488aacfb2131108ae7b59026fe4b  IN   0xf441b73b0a196aa67d32aee230aab5e54eef47650 Ether0.000215428
0xb2bf652a627279791376c3309e46fc225fc5723a9eac6268e6f2642069a0073c70 days 14 hrs ago0xe2eeaacfc6a5488aacfb2131108ae7b59026fe4b  IN   0xf441b73b0a196aa67d32aee230aab5e54eef47650 Ether0.00021466
0xc29f8b2d20583d376588fd41afc1906253467131fbd4b2f065bd8efdcf581fd070 days 14 hrs ago0xe2eeaacfc6a5488aacfb2131108ae7b59026fe4b  IN   0xf441b73b0a196aa67d32aee230aab5e54eef47650 Ether0.000215556
0xcb82771f6be88aa5502d1073e3d62d6745ed2a52c4583f931783cc90ff4b97f770 days 14 hrs ago0xe2eeaacfc6a5488aacfb2131108ae7b59026fe4b  IN   0xf441b73b0a196aa67d32aee230aab5e54eef47650 Ether0.000215556
0xcd74b65380d04734b1acb0d8a5b688376f6fd7128607823a3c494821caa4b69370 days 14 hrs ago0xe2eeaacfc6a5488aacfb2131108ae7b59026fe4b  IN   0xf441b73b0a196aa67d32aee230aab5e54eef47650 Ether0.00021466
0x718e6223a70d66801873e4371408d411cc4afd1eefea3739667890e4d704155470 days 14 hrs ago0xe2eeaacfc6a5488aacfb2131108ae7b59026fe4b  IN   0xf441b73b0a196aa67d32aee230aab5e54eef47650 Ether0.000215044
0xf73881ae4dc1f4261b3b585e7c9abf79b7bf00a0c50288c1159a7c0f8cc7aa1170 days 19 hrs ago0x06a8ce0923dbdabefd7dc523a64cd861610b6f62  IN   0xf441b73b0a196aa67d32aee230aab5e54eef47650.043602431684941 Ether0.000258516
0xabbeed725fb0f1423ad7c967c697243ebadfa52b6227e19364b532bf6050822370 days 19 hrs ago0x06a8ce0923dbdabefd7dc523a64cd861610b6f62  IN   0xf441b73b0a196aa67d32aee230aab5e54eef47650.043602431684941 Ether0.000064629
0x87894feec8f15ae37294cf8dcab8b7ea39657f82c485fb5f0addd3ff50acb1af70 days 19 hrs ago0x06a8ce0923dbdabefd7dc523a64cd861610b6f62  IN   0xf441b73b0a196aa67d32aee230aab5e54eef47650.043602431684941 Ether0.000049629
0x80fc6867d7189a14e9ae71b2121966aa55d609346865224c66113eda347a941e70 days 19 hrs ago0x06a8ce0923dbdabefd7dc523a64cd861610b6f62  IN   0xf441b73b0a196aa67d32aee230aab5e54eef47650.020493142891922 Ether0.000129258
0x8bd9391f761f000abe29e478a2c91b85972c4d5bf3e5ced4bf666e34517a6a6f70 days 19 hrs ago0x06a8ce0923dbdabefd7dc523a64cd861610b6f62  IN   0xf441b73b0a196aa67d32aee230aab5e54eef47650.020493142891922 Ether0.000129258
0x0d8fa7f24a71532abe9e7710d0f054f7e78e78dcc494897fc489d068cef0fcbf70 days 19 hrs ago0x22a9304e395f0657cfec6d5e7a95c24702eed158  IN   0xf441b73b0a196aa67d32aee230aab5e54eef47650.020493142891922 Ether0.000099258
0xf0af6e9d10c41a62c57205e4b1e675f9c0851fd6909881b9addaff75c3f6d6a370 days 19 hrs ago0x22a9304e395f0657cfec6d5e7a95c24702eed158  IN   0xf441b73b0a196aa67d32aee230aab5e54eef47650.009631777159203 Ether0.000045846
0x849c3da3e258fba172ed52da09072e57ce205d6b576e3f918e445e3472e8067070 days 19 hrs ago0xad565956ae5bd43117f6b0a650ec18c621ff8e0d  IN   0xf441b73b0a196aa67d32aee230aab5e54eef47650.009631777159203 Ether0.000875919
0x81137e252456fa673d86d25b024875f7a30dcee8be8423fff51d95892b796c7070 days 19 hrs ago0xad565956ae5bd43117f6b0a650ec18c621ff8e0d  IN   0xf441b73b0a196aa67d32aee230aab5e54eef47650.009631777159203 Ether0.000252153
0x0373c3f3deafca19608e4b70b33d57a7657766af7b9e087a987f5a4d67a7cf6c70 days 19 hrs ago0x22a9304e395f0657cfec6d5e7a95c24702eed158  IN   0xf441b73b0a196aa67d32aee230aab5e54eef47650.009631777159203 Ether0.000129258
[ Download CSV Export  ] 
 Internal Transactions as a result of Contract Execution
 Latest 25 Internal Txns, Click here to View More View All
ParentTxHash Block Age From To Value
0xc982eb21554ae85ca10ac30cc15d9fd58b7e9048208dc3052796e6802c12b78a543257470 days 5 hrs ago0xf441b73b0a196aa67d32aee230aab5e54eef47650x9c78a2224b763ee6bb652de945e70d22561e8afd0.0235 Ether
0x4f254abbcc6395e077362b3f2d1838b771a494a237386d9754e745a746eec642543257370 days 5 hrs ago0xf441b73b0a196aa67d32aee230aab5e54eef47650x482513dbbde829b1ee89d0b48cf6d615bad80a5f0.019999999999999999 Ether
0x7f5deab1bdc1b506a6181b83fec3a8003a8be4179ecf3ef218917d05b494c48d543212570 days 7 hrs ago0xf441b73b0a196aa67d32aee230aab5e54eef47650x527efc00ce72a50ef4a54c78896939ef5f83b8110.0235 Ether
0x10e715b17293d075cc70a51da5d9304d3ba57dc9d46d34d750d95133cc97c2b6543204870 days 7 hrs ago0xf441b73b0a196aa67d32aee230aab5e54eef47650x527efc00ce72a50ef4a54c78896939ef5f83b8110.0235 Ether
0xf3beda90d4437f7f8d28af605c9f686054a7370ed995aa7679c4b9c00b301247543203570 days 7 hrs ago0xf441b73b0a196aa67d32aee230aab5e54eef47650x06a8ce0923dbdabefd7dc523a64cd861610b6f620.0235 Ether
0x2d71470589e4ce1889ef79f62d7186781c539fa50096d21301d2e31b49057e92543145370 days 9 hrs ago0xf441b73b0a196aa67d32aee230aab5e54eef47650x06a8ce0923dbdabefd7dc523a64cd861610b6f620.0235 Ether
0x6ead40a06dd12e19d0f1a58c71e4a2f88f1878aee00962dcfb8b77f0d42cae22543065870 days 13 hrs ago0xf441b73b0a196aa67d32aee230aab5e54eef47650xf0333b94f895eb5aab3822da376f9cbcfce8a19c0.0094 Ether
0xf73881ae4dc1f4261b3b585e7c9abf79b7bf00a0c50288c1159a7c0f8cc7aa11542911270 days 19 hrs ago0xf441b73b0a196aa67d32aee230aab5e54eef47650x22a9304e395f0657cfec6d5e7a95c24702eed1580.040986285783845283 Ether
0xabbeed725fb0f1423ad7c967c697243ebadfa52b6227e19364b532bf60508223542907770 days 19 hrs ago0xf441b73b0a196aa67d32aee230aab5e54eef47650x527efc00ce72a50ef4a54c78896939ef5f83b8110.040986285783845283 Ether
0x87894feec8f15ae37294cf8dcab8b7ea39657f82c485fb5f0addd3ff50acb1af542907570 days 19 hrs ago0xf441b73b0a196aa67d32aee230aab5e54eef47650xba6ff894b09bd4063045bf6e2deb8f7a466c6a220.040986285783845283 Ether
0x80fc6867d7189a14e9ae71b2121966aa55d609346865224c66113eda347a941e542905370 days 19 hrs ago0xf441b73b0a196aa67d32aee230aab5e54eef47650x22a9304e395f0657cfec6d5e7a95c24702eed1580.019263554318407283 Ether
0x8bd9391f761f000abe29e478a2c91b85972c4d5bf3e5ced4bf666e34517a6a6f542905370 days 19 hrs ago0xf441b73b0a196aa67d32aee230aab5e54eef47650x22a9304e395f0657cfec6d5e7a95c24702eed1580.019263554318407283 Ether
0x0d8fa7f24a71532abe9e7710d0f054f7e78e78dcc494897fc489d068cef0fcbf542902070 days 19 hrs ago0xf441b73b0a196aa67d32aee230aab5e54eef47650xad565956ae5bd43117f6b0a650ec18c621ff8e0d0.019263554318407283 Ether
0x849c3da3e258fba172ed52da09072e57ce205d6b576e3f918e445e3472e80670542901370 days 19 hrs ago0xf441b73b0a196aa67d32aee230aab5e54eef47650xf0333b94f895eb5aab3822da376f9cbcfce8a19c0.009053870529651423 Ether
0x0373c3f3deafca19608e4b70b33d57a7657766af7b9e087a987f5a4d67a7cf6c542900970 days 19 hrs ago0xf441b73b0a196aa67d32aee230aab5e54eef47650xf0333b94f895eb5aab3822da376f9cbcfce8a19c0.009053870529651423 Ether
0x9c5bd5ba8ceebebb22ddb8c76442f72c80ce137626bfbbf1802937b95cd0fc88542900970 days 19 hrs ago0xf441b73b0a196aa67d32aee230aab5e54eef47650xf0333b94f895eb5aab3822da376f9cbcfce8a19c0.009053870529651423 Ether
0x266a26a38e99311d4e414c48e51105234eaf27d0ecbe7102350c36274b60d659542900470 days 19 hrs ago0xf441b73b0a196aa67d32aee230aab5e54eef47650x22a9304e395f0657cfec6d5e7a95c24702eed1580.004255319148936169 Ether
0x40c6934dce301ace157352b6751bf741101f0af4b07fd939e125fb09f04211d0542900270 days 19 hrs ago0xf441b73b0a196aa67d32aee230aab5e54eef47650x22a9304e395f0657cfec6d5e7a95c24702eed1580.004255319148936169 Ether
0x0a1462fe6d3eeb2083056e3e39f418a5a8ee141cdb6f1875f90bac800955c942542900270 days 19 hrs ago0xf441b73b0a196aa67d32aee230aab5e54eef47650x22a9304e395f0657cfec6d5e7a95c24702eed1580.004255319148936169 Ether
0xf537b57911cc66ebedf83c4ffdc14907e3a87be70d27ec0cefa7a6fb1770f193542899770 days 19 hrs ago0xf441b73b0a196aa67d32aee230aab5e54eef47650xf0333b94f895eb5aab3822da376f9cbcfce8a19c0.001999999999999999 Ether
0x67e8474130fc9b217681f2f2dd4ef6f7ce65da466d1412c401158ecb82424cf3542899470 days 19 hrs ago0xf441b73b0a196aa67d32aee230aab5e54eef47650xf0333b94f895eb5aab3822da376f9cbcfce8a19c0.001999999999999999 Ether
0x6c02fc6118547d1511ecf66ab30b1feb98e61ce1d767289318e2db73dacbbec2542899070 days 19 hrs ago0xf441b73b0a196aa67d32aee230aab5e54eef47650xf0333b94f895eb5aab3822da376f9cbcfce8a19c0.001999999999999999 Ether
0x540459d0013543cfaf8ef5b72107598600d4f25d8c10ad9147acbac33631d1d0542752771 days 1 hr ago0xf441b73b0a196aa67d32aee230aab5e54eef47650x22a9304e395f0657cfec6d5e7a95c24702eed1580.040986285783845283 Ether
0x861a347cd62caf79058ec0eabd31c14ada254047d090f99516495c3290d3fca0542752671 days 1 hr ago0xf441b73b0a196aa67d32aee230aab5e54eef47650x22a9304e395f0657cfec6d5e7a95c24702eed1580.040986285783845283 Ether
0x01946531109a766ec14c8f94c3c5ef9342bcc812a889fbc209cb51b1a2dda106542752471 days 1 hr ago0xf441b73b0a196aa67d32aee230aab5e54eef47650x22a9304e395f0657cfec6d5e7a95c24702eed1580.040986285783845283 Ether
[ Download CSV Export  ] 
Contract Source Code Verified (Exact match)
Contract Name: RegionsToken
Compiler Version: v0.4.20+commit.3155dd80
Optimization Enabled: No
Runs (Optimiser):  200



  Contract Source Code   Find Similiar Contracts

pragma solidity ^0.4.18; // solhint-disable-line



/// @title Interface for contracts conforming to ERC-721: Non-Fungible Tokens
/// @author Dieter Shirley <dete@axiomzen.co> (https://github.com/dete)
contract ERC721 {
  // Required methods
  function approve(address _to, uint256 _tokenId) public;
  function balanceOf(address _owner) public view returns (uint256 balance);
  function implementsERC721() public pure returns (bool);
  function ownerOf(uint256 _tokenId) public view returns (address addr);
  function takeOwnership(uint256 _tokenId) public;
  function totalSupply() public view returns (uint256 total);
  function transferFrom(address _from, address _to, uint256 _tokenId) public;
  function transfer(address _to, uint256 _tokenId) public;

  event Transfer(address indexed from, address indexed to, uint256 tokenId);
  event Approval(address indexed owner, address indexed approved, uint256 tokenId);

  // Optional
  // function name() public view returns (string name);
  // function symbol() public view returns (string symbol);
  // function tokenOfOwnerByIndex(address _owner, uint256 _index) external view returns (uint256 tokenId);
  // function tokenMetadata(uint256 _tokenId) public view returns (string infoUrl);
}


contract RegionsToken is ERC721 {

  /*** EVENTS ***/

  /// @dev The Birth event is fired whenever a new region comes into existence.
  event Birth(uint256 tokenId, string name, address owner);

  /// @dev The TokenSold event is fired whenever a token is sold.
  event TokenSold(uint256 tokenId, uint256 oldPrice, uint256 newPrice, address prevOwner, address winner, string name);

  /// @dev Transfer event as defined in current draft of ERC721. 
  ///  ownership is assigned, including births.
  event Transfer(address from, address to, uint256 tokenId);

  /*** CONSTANTS ***/

  /// @notice Name and symbol of the non fungible token, as defined in ERC721.
  string public constant NAME = "CryptoConquest"; // solhint-disable-line
  string public constant SYMBOL = "RegionsToken"; // solhint-disable-line

  uint256 private startingPrice = 0.001 ether;
  uint256 private constant PROMO_CREATION_LIMIT = 5000;
  uint256 private firstStepLimit =  0.053613 ether;
  uint256 private secondStepLimit = 0.564957 ether;

  /*** STORAGE ***/

  /// @dev A mapping from region IDs to the address that owns them. All regions have
  ///  some valid owner address.
  mapping (uint256 => address) public regionIndexToOwner;

  // @dev A mapping from owner address to count of tokens that address owns.
  //  Used internally inside balanceOf() to resolve ownership count.
  mapping (address => uint256) private ownershipTokenCount;

  /// @dev A mapping from RegionIDs to an address that has been approved to call
  ///  transferFrom(). Each Region can only have one approved address for transfer
  ///  at any time. A zero value means no approval is outstanding.
  mapping (uint256 => address) public regionIndexToApproved;

  // @dev A mapping from RegionIDs to the price of the token.
  mapping (uint256 => uint256) private regionIndexToPrice;

  // The addresses of the accounts (or contracts) that can execute actions within each roles.
  address public ceoAddress;
  address public cooAddress;

  uint256 public promoCreatedCount;

  /*** DATATYPES ***/
  struct Region {
    string name;
  }

  Region[] private regions;

  /*** ACCESS MODIFIERS ***/
  /// @dev Access modifier for CEO-only functionality
  modifier onlyCEO() {
    require(msg.sender == ceoAddress);
    _;
  }

  /// @dev Access modifier for COO-only functionality
  modifier onlyCOO() {
    require(msg.sender == cooAddress);
    _;
  }

  /// Access modifier for contract owner only functionality
  modifier onlyCLevel() {
    require(
      msg.sender == ceoAddress ||
      msg.sender == cooAddress
    );
    _;
  }

  /*** CONSTRUCTOR ***/
  function RegionsToken() public {
    ceoAddress = msg.sender;
    cooAddress = msg.sender;
  }

  /*** PUBLIC FUNCTIONS ***/
  /// @notice Grant another address the right to transfer token via takeOwnership() and transferFrom().
  /// @param _to The address to be granted transfer approval. Pass address(0) to
  ///  clear all approvals.
  /// @param _tokenId The ID of the Token that can be transferred if this call succeeds.
  /// @dev Required for ERC-721 compliance.
  function approve(
    address _to,
    uint256 _tokenId
  ) public {
    // Caller must own token.
    require(_owns(msg.sender, _tokenId));

    regionIndexToApproved[_tokenId] = _to;

    Approval(msg.sender, _to, _tokenId);
  }

  /// For querying balance of a particular account
  /// @param _owner The address for balance query
  /// @dev Required for ERC-721 compliance.
  function balanceOf(address _owner) public view returns (uint256 balance) {
    return ownershipTokenCount[_owner];
  }

  /// @dev Creates a new promo Region with the given name, with given _price and assignes it to an address.
  function createPromoRegion(address _owner, string _name, uint256 _price) public onlyCOO {
    require(promoCreatedCount < PROMO_CREATION_LIMIT);

    address regionOwner = _owner;
    if (regionOwner == address(0)) {
      regionOwner = cooAddress;
    }

    if (_price <= 0) {
      _price = startingPrice;
    }

    promoCreatedCount++;
    _createRegion(_name, regionOwner, _price);
  }

  /// @dev Creates a new Region with the given name.
  function createContractRegion(string _name) public onlyCOO {
    _createRegion(_name, address(this), startingPrice);
  }

  /// @notice Returns all the relevant information about a specific region.
  /// @param _tokenId The tokenId of the region of interest.
  function getRegion(uint256 _tokenId) public view returns (
    string regionName,
    uint256 sellingPrice,
    address owner
  ) {
    Region storage region = regions[_tokenId];
    regionName = region.name;
    sellingPrice = regionIndexToPrice[_tokenId];
    owner = regionIndexToOwner[_tokenId];
  }

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

  /// @dev Required for ERC-721 compliance.
  function name() public pure returns (string) {
    return NAME;
  }

  /// For querying owner of token
  /// @param _tokenId The tokenID for owner inquiry
  /// @dev Required for ERC-721 compliance.
  function ownerOf(uint256 _tokenId)
    public
    view
    returns (address owner)
  {
    owner = regionIndexToOwner[_tokenId];
    require(owner != address(0));
  }

  function payout(address _to) public onlyCLevel {
    _payout(_to);
  }

  // Allows someone to send ether and obtain the token
  function purchase(uint256 _tokenId) public payable {
    address oldOwner = regionIndexToOwner[_tokenId];
    address newOwner = msg.sender;

    uint256 sellingPrice = regionIndexToPrice[_tokenId];

    // Making sure token owner is not sending to self
    require(oldOwner != newOwner);

    // Safety check to prevent against an unexpected 0x0 default.
    require(_addressNotNull(newOwner));

    // Making sure sent amount is greater than or equal to the sellingPrice
    require(msg.value >= sellingPrice);

    uint256 payment = uint256(SafeMath.div(SafeMath.mul(sellingPrice, 94), 100));
    uint256 purchaseExcess = SafeMath.sub(msg.value, sellingPrice);

    // Update prices
    if (sellingPrice < firstStepLimit) {
      // first stage
      regionIndexToPrice[_tokenId] = SafeMath.div(SafeMath.mul(sellingPrice, 200), 94);
    } else if (sellingPrice < secondStepLimit) {
      // second stage
      regionIndexToPrice[_tokenId] = SafeMath.div(SafeMath.mul(sellingPrice, 120), 94);
    } else {
      // third stage
      regionIndexToPrice[_tokenId] = SafeMath.div(SafeMath.mul(sellingPrice, 115), 94);
    }

    _transfer(oldOwner, newOwner, _tokenId);

    // Pay previous tokenOwner if owner is not contract
    if (oldOwner != address(this)) {
      oldOwner.transfer(payment); //(1-0.06)
    }

    TokenSold(_tokenId, sellingPrice, regionIndexToPrice[_tokenId], oldOwner, newOwner, regions[_tokenId].name);

    msg.sender.transfer(purchaseExcess);
  }

  function priceOf(uint256 _tokenId) public view returns (uint256 price) {
    return regionIndexToPrice[_tokenId];
  }

  /// @dev Assigns a new address to act as the CEO. Only available to the current CEO.
  /// @param _newCEO The address of the new CEO
  function setCEO(address _newCEO) public onlyCEO {
    require(_newCEO != address(0));

    ceoAddress = _newCEO;
  }

  /// @dev Assigns a new address to act as the COO. Only available to the current COO.
  /// @param _newCOO The address of the new COO
  function setCOO(address _newCOO) public onlyCEO {
    require(_newCOO != address(0));

    cooAddress = _newCOO;
  }

  /// @dev Required for ERC-721 compliance.
  function symbol() public pure returns (string) {
    return SYMBOL;
  }

  /// @notice Allow pre-approved user to take ownership of a token
  /// @param _tokenId The ID of the Token that can be transferred if this call succeeds.
  /// @dev Required for ERC-721 compliance.
  function takeOwnership(uint256 _tokenId) public {
    address newOwner = msg.sender;
    address oldOwner = regionIndexToOwner[_tokenId];

    // Safety check to prevent against an unexpected 0x0 default.
    require(_addressNotNull(newOwner));

    // Making sure transfer is approved
    require(_approved(newOwner, _tokenId));

    _transfer(oldOwner, newOwner, _tokenId);
  }

  /// @param _owner The owner whose tokens we are interested in.
  /// @dev This method MUST NEVER be called by smart contract code. First, it's fairly
  ///  expensive (it walks the entire Regions array looking for regions belonging to owner),
  ///  but it also returns a dynamic array, which is only supported for web3 calls, and
  ///  not contract-to-contract calls.
  function tokensOfOwner(address _owner) public view returns(uint256[] ownerTokens) {
    uint256 tokenCount = balanceOf(_owner);
    if (tokenCount == 0) {
        // Return an empty array
      return new uint256[](0);
    } else {
      uint256[] memory result = new uint256[](tokenCount);
      uint256 totalRegions = totalSupply();
      uint256 resultIndex = 0;

      uint256 regionId;
      for (regionId = 0; regionId <= totalRegions; regionId++) {
        if (regionIndexToOwner[regionId] == _owner) {
          result[resultIndex] = regionId;
          resultIndex++;
        }
      }
      return result;
    }
  }

  /// For querying totalSupply of token
  /// @dev Required for ERC-721 compliance.
  function totalSupply() public view returns (uint256 total) {
    return regions.length;
  }

  /// Owner initates the transfer of the token to another account
  /// @param _to The address for the token to be transferred to.
  /// @param _tokenId The ID of the Token that can be transferred if this call succeeds.
  /// @dev Required for ERC-721 compliance.
  function transfer(
    address _to,
    uint256 _tokenId
  ) public {
    require(_owns(msg.sender, _tokenId));
    require(_addressNotNull(_to));

    _transfer(msg.sender, _to, _tokenId);
  }

  /// Third-party initiates transfer of token from address _from to address _to
  /// @param _from The address for the token to be transferred from.
  /// @param _to The address for the token to be transferred to.
  /// @param _tokenId The ID of the Token that can be transferred if this call succeeds.
  /// @dev Required for ERC-721 compliance.
  function transferFrom(
    address _from,
    address _to,
    uint256 _tokenId
  ) public {
    require(_owns(_from, _tokenId));
    require(_approved(_to, _tokenId));
    require(_addressNotNull(_to));

    _transfer(_from, _to, _tokenId);
  }

  /*** PRIVATE FUNCTIONS ***/
  /// Safety check on _to address to prevent against an unexpected 0x0 default.
  function _addressNotNull(address _to) private pure returns (bool) {
    return _to != address(0);
  }

  /// For checking approval of transfer for address _to
  function _approved(address _to, uint256 _tokenId) private view returns (bool) {
    return regionIndexToApproved[_tokenId] == _to;
  }

  /// For creating Region
  function _createRegion(string _name, address _owner, uint256 _price) private {
    Region memory _region = Region({
      name: _name
    });
    uint256 newRegionId = regions.push(_region) - 1;

    // It's probably never going to happen, 4 billion tokens are A LOT, but
    // let's just be 100% sure we never let this happen.
    require(newRegionId == uint256(uint32(newRegionId)));

    Birth(newRegionId, _name, _owner);

    regionIndexToPrice[newRegionId] = _price;

    // This will assign ownership, and also emit the Transfer event as
    // per ERC721 draft
    _transfer(address(0), _owner, newRegionId);
  }

  /// Check for token ownership
  function _owns(address claimant, uint256 _tokenId) private view returns (bool) {
    return claimant == regionIndexToOwner[_tokenId];
  }

  /// For paying out balance on contract
  function _payout(address _to) private {
    if (_to == address(0)) {
      ceoAddress.transfer(this.balance);
    } else {
      _to.transfer(this.balance);
    }
  }

  /// @dev Assigns ownership of a specific Region to an address.
  function _transfer(address _from, address _to, uint256 _tokenId) private {
    // Since the number of regions is capped to 2^32 we can't overflow this
    ownershipTokenCount[_to]++;
    //transfer ownership
    regionIndexToOwner[_tokenId] = _to;

    // When creating new regions _from is 0x0, but we can't account that address.
    if (_from != address(0)) {
      ownershipTokenCount[_from]--;
      // clear any previously approved ownership exchange
      delete regionIndexToApproved[_tokenId];
    }

    // Emit the transfer event.
    Transfer(_from, _to, _tokenId);
  }
}
library SafeMath {

  /**
  * @dev Multiplies two numbers, throws on overflow.
  */
  function mul(uint256 a, uint256 b) internal pure returns (uint256) {
    if (a == 0) {
      return 0;
    }
    uint256 c = a * b;
    assert(c / a == b);
    return c;
  }

  /**
  * @dev Integer division of two numbers, truncating the quotient.
  */
  function div(uint256 a, uint256 b) internal pure returns (uint256) {
    // assert(b > 0); // Solidity automatically throws when dividing by 0
    uint256 c = a / b;
    // assert(a == b * c + a % b); // There is no case in which this doesn't hold
    return c;
  }

  /**
  * @dev Substracts two numbers, throws on overflow (i.e. if subtrahend is greater than minuend).
  */
  function sub(uint256 a, uint256 b) internal pure returns (uint256) {
    assert(b <= a);
    return a - b;
  }

  /**
  * @dev Adds two numbers, throws on overflow.
  */
  function add(uint256 a, uint256 b) internal pure returns (uint256) {
    uint256 c = a + b;
    assert(c >= a);
    return c;
  }
}

    Contract ABI  
[{"constant":true,"inputs":[],"name":"promoCreatedCount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"name","outputs":[{"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":"ceoAddress","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"}],"name":"payout","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"implementsERC721","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"total","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_name","type":"string"}],"name":"createContractRegion","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":false,"inputs":[{"name":"_newCEO","type":"address"}],"name":"setCEO","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_newCOO","type":"address"}],"name":"setCOO","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"regionIndexToOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_tokenId","type":"uint256"}],"name":"getRegion","outputs":[{"name":"regionName","type":"string"},{"name":"sellingPrice","type":"uint256"},{"name":"owner","type":"address"}],"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":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"tokensOfOwner","outputs":[{"name":"ownerTokens","type":"uint256[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"regionIndexToApproved","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"NAME","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_tokenId","type":"uint256"}],"name":"transfer","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"cooAddress","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_tokenId","type":"uint256"}],"name":"takeOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_tokenId","type":"uint256"}],"name":"priceOf","outputs":[{"name":"price","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_owner","type":"address"},{"name":"_name","type":"string"},{"name":"_price","type":"uint256"}],"name":"createPromoRegion","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_tokenId","type":"uint256"}],"name":"purchase","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[],"name":"SYMBOL","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"tokenId","type":"uint256"},{"indexed":false,"name":"name","type":"string"},{"indexed":false,"name":"owner","type":"address"}],"name":"Birth","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"tokenId","type":"uint256"},{"indexed":false,"name":"oldPrice","type":"uint256"},{"indexed":false,"name":"newPrice","type":"uint256"},{"indexed":false,"name":"prevOwner","type":"address"},{"indexed":false,"name":"winner","type":"address"},{"indexed":false,"name":"name","type":"string"}],"name":"TokenSold","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"from","type":"address"},{"indexed":false,"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"}]

  Contract Creation Code Switch To Opcodes View
606060405266038d7ea4c6800060005566be78bd4c57d0006001556707d72165f25ed000600255341561003157600080fd5b33600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555033600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506120a4806100c26000396000f300606060405260043610610154576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806305e455461461015957806306fdde0314610182578063095ea7b3146102105780630a0f8168146102525780630b7e9c44146102a75780631051db34146102e057806318160ddd1461030d578063235947971461033657806323b872dd1461039357806327d7874c146103f45780632ba73c151461042d57806336a8ac241461046657806340ba0e94146104c95780636352211e1461059f57806370a08231146106025780638462151c1461064f57806395d89b41146106dd5780639c04b1dd1461076b578063a3f4df7e146107ce578063a9059cbb1461085c578063b047fb501461089e578063b2e6ceeb146108f3578063b9186d7d14610916578063e258aa021461094d578063efef39a1146109d2578063f76f8d78146109ea575b600080fd5b341561016457600080fd5b61016c610a78565b6040518082815260200191505060405180910390f35b341561018d57600080fd5b610195610a7e565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101d55780820151818401526020810190506101ba565b50505050905090810190601f1680156102025780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561021b57600080fd5b610250600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050610ac1565b005b341561025d57600080fd5b610265610b91565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156102b257600080fd5b6102de600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610bb7565b005b34156102eb57600080fd5b6102f3610c77565b604051808215151515815260200191505060405180910390f35b341561031857600080fd5b610320610c80565b6040518082815260200191505060405180910390f35b341561034157600080fd5b610391600480803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091905050610c8d565b005b341561039e57600080fd5b6103f2600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050610cf9565b005b34156103ff57600080fd5b61042b600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610d47565b005b341561043857600080fd5b610464600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610e23565b005b341561047157600080fd5b6104876004808035906020019091905050610eff565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156104d457600080fd5b6104ea6004808035906020019091905050610f32565b60405180806020018481526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001828103825285818151815260200191508051906020019080838360005b83811015610562578082015181840152602081019050610547565b50505050905090810190601f16801561058f5780820380516001836020036101000a031916815260200191505b5094505050505060405180910390f35b34156105aa57600080fd5b6105c0600480803590602001909190505061104e565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561060d57600080fd5b610639600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506110c7565b6040518082815260200191505060405180910390f35b341561065a57600080fd5b610686600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611110565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b838110156106c95780820151818401526020810190506106ae565b505050509050019250505060405180910390f35b34156106e857600080fd5b6106f0611247565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610730578082015181840152602081019050610715565b50505050905090810190601f16801561075d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561077657600080fd5b61078c600480803590602001909190505061128a565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156107d957600080fd5b6107e16112bd565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610821578082015181840152602081019050610806565b50505050905090810190601f16801561084e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561086757600080fd5b61089c600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919080359060200190919050506112f6565b005b34156108a957600080fd5b6108b161132e565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156108fe57600080fd5b6109146004808035906020019091905050611354565b005b341561092157600080fd5b61093760048080359060200190919050506113c9565b6040518082815260200191505060405180910390f35b341561095857600080fd5b6109d0600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919080359060200190919050506113e6565b005b6109e860048080359060200190919050506114e7565b005b34156109f557600080fd5b6109fd611893565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610a3d578082015181840152602081019050610a22565b50505050905090810190601f168015610a6a5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b60095481565b610a86611eda565b6040805190810160405280600e81526020017f43727970746f436f6e7175657374000000000000000000000000000000000000815250905090565b610acb33826118cc565b1515610ad657600080fd5b816005600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040518082815260200191505060405180910390a35050565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480610c605750600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b1515610c6b57600080fd5b610c7481611938565b50565b60006001905090565b6000600a80549050905090565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610ce957600080fd5b610cf68130600054611a46565b50565b610d0383826118cc565b1515610d0e57600080fd5b610d188282611bc4565b1515610d2357600080fd5b610d2c82611c30565b1515610d3757600080fd5b610d42838383611c69565b505050565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610da357600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610ddf57600080fd5b80600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610e7f57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610ebb57600080fd5b80600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60036020528060005260406000206000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b610f3a611eda565b6000806000600a85815481101515610f4e57fe5b90600052602060002090019050806000018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610ff35780601f10610fc857610100808354040283529160200191610ff3565b820191906000526020600020905b815481529060010190602001808311610fd657829003601f168201915b50505050509350600660008681526020019081526020016000205492506003600086815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169150509193909250565b60006003600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156110c257600080fd5b919050565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b611118611eee565b6000611122611eee565b6000806000611130876110c7565b9450600085141561116257600060405180591061114a5750595b9080825280602002602001820160405250955061123d565b846040518059106111705750595b9080825280602002602001820160405250935061118b610c80565b925060009150600090505b8281111515611239578673ffffffffffffffffffffffffffffffffffffffff166003600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141561122c5780848381518110151561121557fe5b906020019060200201818152505081806001019250505b8080600101915050611196565b8395505b5050505050919050565b61124f611eda565b6040805190810160405280600c81526020017f526567696f6e73546f6b656e0000000000000000000000000000000000000000815250905090565b60056020528060005260406000206000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6040805190810160405280600e81526020017f43727970746f436f6e717565737400000000000000000000000000000000000081525081565b61130033826118cc565b151561130b57600080fd5b61131482611c30565b151561131f57600080fd5b61132a338383611c69565b5050565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000803391506003600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905061139982611c30565b15156113a457600080fd5b6113ae8284611bc4565b15156113b957600080fd5b6113c4818385611c69565b505050565b600060066000838152602001908152602001600020549050919050565b6000600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561144457600080fd5b61138860095410151561145657600080fd5b839050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156114b457600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690505b6000821115156114c45760005491505b6009600081548092919060010191905055506114e1838284611a46565b50505050565b60008060008060006003600087815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169450339350600660008781526020019081526020016000205492508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161415151561157957600080fd5b61158284611c30565b151561158d57600080fd5b82341015151561159c57600080fd5b6115b16115aa84605e611e6b565b6064611ea6565b91506115bd3484611ec1565b90506001548310156115fa576115de6115d78460c8611e6b565b605e611ea6565b6006600088815260200190815260200160002081905550611663565b60025483101561163557611619611612846078611e6b565b605e611ea6565b6006600088815260200190815260200160002081905550611662565b61164a611643846073611e6b565b605e611ea6565b60066000888152602001908152602001600020819055505b5b61166e858588611c69565b3073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161415156116e4578473ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f1935050505015156116e357600080fd5b5b7e8201e7bcbf010c2c07de59d6e97cb7e3cf67a46125c49cbc89b9d2cde1f48f8684600660008a8152602001908152602001600020548888600a8c81548110151561172b57fe5b9060005260206000209001600001604051808781526020018681526020018581526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001806020018281038252838181546001816001161561010002031660029004815260200191508054600181600116156101000203166002900480156118385780601f1061180d57610100808354040283529160200191611838565b820191906000526020600020905b81548152906001019060200180831161181b57829003601f168201915b505097505050505050505060405180910390a13373ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050151561188b57600080fd5b505050505050565b6040805190810160405280600c81526020017f526567696f6e73546f6b656e000000000000000000000000000000000000000081525081565b60006003600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614905092915050565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156119eb57600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc3073ffffffffffffffffffffffffffffffffffffffff16319081150290604051600060405180830381858888f1935050505015156119e657600080fd5b611a43565b8073ffffffffffffffffffffffffffffffffffffffff166108fc3073ffffffffffffffffffffffffffffffffffffffff16319081150290604051600060405180830381858888f193505050501515611a4257600080fd5b5b50565b611a4e611f02565b60006020604051908101604052808681525091506001600a8054806001018281611a789190611f1c565b916000526020600020900160008590919091506000820151816000019080519060200190611aa7929190611f48565b5050500390508063ffffffff1681141515611ac157600080fd5b7fb3b0cf861f168bcdb275c69da97b2543631552ba562628aa3c7317d4a6089ef281868660405180848152602001806020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001828103825284818151815260200191508051906020019080838360005b83811015611b5d578082015181840152602081019050611b42565b50505050905090810190601f168015611b8a5780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a1826006600083815260200190815260200160002081905550611bbd60008583611c69565b5050505050565b60008273ffffffffffffffffffffffffffffffffffffffff166005600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614905092915050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614159050919050565b600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008154809291906001019190505550816003600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141515611dc757600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008154809291906001900391905055506005600082815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690555b7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef838383604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001828152602001935050505060405180910390a1505050565b6000806000841415611e805760009150611e9f565b8284029050828482811515611e9157fe5b04141515611e9b57fe5b8091505b5092915050565b6000808284811515611eb457fe5b0490508091505092915050565b6000828211151515611ecf57fe5b818303905092915050565b602060405190810160405280600081525090565b602060405190810160405280600081525090565b602060405190810160405280611f16611fc8565b81525090565b815481835581811511611f4357818360005260206000209182019101611f429190611fdc565b5b505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10611f8957805160ff1916838001178555611fb7565b82800160010185558215611fb7579182015b82811115611fb6578251825591602001919060010190611f9b565b5b509050611fc4919061200b565b5090565b602060405190810160405280600081525090565b61200891905b808211156120045760008082016000611ffb9190612030565b50600101611fe2565b5090565b90565b61202d91905b80821115612029576000816000905550600101612011565b5090565b90565b50805460018160011615610100020316600290046000825580601f106120565750612075565b601f016020900490600052602060002090810190612074919061200b565b5b505600a165627a7a7230582023abc0e7a7cbeb28677bfd1165a4950515dac5c1b96d402b0414340b4ed179c60029

   Swarm Source:
bzzr://23abc0e7a7cbeb28677bfd1165a4950515dac5c1b96d402b0414340b4ed179c6

 

View All
Block Age txn Difficulty GasUsed Reward
View All
Block Age UncleNumber Difficulty GasUsed Reward
Make sure to use the "downvote" button for any spammy posts, and the "upvote" for interesting conversations.