Sponsored:   Temco - Join the Largest VC Backed ICO on the Bitcoin Network! TEMCO KYC Whitelist Starts Now!!
Contract Overview
Balance: 0 Ether
Ether Value: $0
Transactions: 754 txns
Token Tracker: CryptoConquest (RegionsTo...)
Misc:
Address Watch: Add To Watch List
Contract Creator: 0xe2eeaacfc6a5488aacfb2131108ae7b59026fe4bat txn 0x8be91cd662176aa76a42d9f47c6c3f4c20774756599bae25a071ca067f469bd3
Token Balance:
 Latest 25 transactions from a total of 754 transactions
(+1 PendingTxn)

TxHash Age From To Value [TxFee]
0x79f854270e96ac86a90663f2e434a18d2a298bc9a158e966187202c69249fc6a(pending)0xde415ef3a7bd08baa6af85adfb7d46fff602d2b4  IN  0xf441b73b0a196aa67d32aee230aab5e54eef47650 Ether(Pending)
0x98795014b57ddb4c8bf66c3d0d242c13348d2efd3ffc8f35b0fa96b531b0fe3961 days 22 hrs ago0xe2eeaacfc6a5488aacfb2131108ae7b59026fe4b  IN   0xf441b73b0a196aa67d32aee230aab5e54eef47650 Ether0.000093609
0x693f696d409db0f1ff0a527ace3ebd3a192e4f9ab505f3b2ddf672c801e8083c114 days 14 hrs ago0x9b3319caa84a3dba6be70df1eb7af3ca413f8eb1  IN   0xf441b73b0a196aa67d32aee230aab5e54eef47650.009631777159203 Ether0.000064629
0xf4cbd060de4deb9198f9f87bde6e6a1ff8e00b2a77ebe5d1013b4d6b4b7309af115 days 9 hrs ago0x75ff069210f19f1d348dff0607b9cc3fd8f31141  IN   0xf441b73b0a196aa67d32aee230aab5e54eef47650.004526935264825 Ether0.000064629
0xfcc2c1b3504083a997779c4eabcdf656088391e75ffdaaa4d235a44305080d94128 days 47 mins ago0x739f7f9fbc3bc845c47078086485e133936555fc  IN   0xf441b73b0a196aa67d32aee230aab5e54eef47650.002127659574468 Ether0.000258516
0x8229bb197f5fcb66241e2e64d2df6c6f4d1db5ad33ab3841d3dee75c10fc6130128 days 15 hrs ago0x75ff069210f19f1d348dff0607b9cc3fd8f31141  IN   0xf441b73b0a196aa67d32aee230aab5e54eef47650.001 Ether0.000119973
0xf725e64eca6fc85fdd0550a8ce12ec881439ab66628e1171aed8638b16581ca8183 days 8 hrs ago0xe2eeaacfc6a5488aacfb2131108ae7b59026fe4b  IN   0xf441b73b0a196aa67d32aee230aab5e54eef47650 Ether0.000347223
0xc982eb21554ae85ca10ac30cc15d9fd58b7e9048208dc3052796e6802c12b78a242 days 21 hrs ago0x527efc00ce72a50ef4a54c78896939ef5f83b811  IN   0xf441b73b0a196aa67d32aee230aab5e54eef47650.025 Ether0.000064629
0x4f254abbcc6395e077362b3f2d1838b771a494a237386d9754e745a746eec642242 days 21 hrs ago0x527efc00ce72a50ef4a54c78896939ef5f83b811  IN   0xf441b73b0a196aa67d32aee230aab5e54eef47650.02127659574468 Ether0.000049629
0x7f5deab1bdc1b506a6181b83fec3a8003a8be4179ecf3ef218917d05b494c48d242 days 23 hrs ago0xc95fe67a830149883915ff44f9139c80086f5ef0  IN   0xf441b73b0a196aa67d32aee230aab5e54eef47650.025 Ether0.000064629
0x10e715b17293d075cc70a51da5d9304d3ba57dc9d46d34d750d95133cc97c2b6242 days 23 hrs ago0xc95fe67a830149883915ff44f9139c80086f5ef0  IN   0xf441b73b0a196aa67d32aee230aab5e54eef47650.025 Ether0.000064629
0xf3beda90d4437f7f8d28af605c9f686054a7370ed995aa7679c4b9c00b301247242 days 23 hrs ago0xc95fe67a830149883915ff44f9139c80086f5ef0  IN   0xf441b73b0a196aa67d32aee230aab5e54eef47650.025 Ether0.000064629
0x2d71470589e4ce1889ef79f62d7186781c539fa50096d21301d2e31b49057e92243 days 2 hrs ago0x9c78a2224b763ee6bb652de945e70d22561e8afd  IN   0xf441b73b0a196aa67d32aee230aab5e54eef47650.025 Ether0.000064629
0x6ead40a06dd12e19d0f1a58c71e4a2f88f1878aee00962dcfb8b77f0d42cae22243 days 5 hrs ago0x482513dbbde829b1ee89d0b48cf6d615bad80a5f  IN   0xf441b73b0a196aa67d32aee230aab5e54eef47650.01 Ether0.000079629
0x24791b26e63cb63fed1cef593f03c781f8e1e542b13d4316cab5e0be47024cfe243 days 5 hrs ago0xe2eeaacfc6a5488aacfb2131108ae7b59026fe4b  IN   0xf441b73b0a196aa67d32aee230aab5e54eef47650 Ether0.000215428
0xb2bf652a627279791376c3309e46fc225fc5723a9eac6268e6f2642069a0073c243 days 6 hrs ago0xe2eeaacfc6a5488aacfb2131108ae7b59026fe4b  IN   0xf441b73b0a196aa67d32aee230aab5e54eef47650 Ether0.00021466
0xc29f8b2d20583d376588fd41afc1906253467131fbd4b2f065bd8efdcf581fd0243 days 6 hrs ago0xe2eeaacfc6a5488aacfb2131108ae7b59026fe4b  IN   0xf441b73b0a196aa67d32aee230aab5e54eef47650 Ether0.000215556
0xcb82771f6be88aa5502d1073e3d62d6745ed2a52c4583f931783cc90ff4b97f7243 days 6 hrs ago0xe2eeaacfc6a5488aacfb2131108ae7b59026fe4b  IN   0xf441b73b0a196aa67d32aee230aab5e54eef47650 Ether0.000215556
0xcd74b65380d04734b1acb0d8a5b688376f6fd7128607823a3c494821caa4b693243 days 6 hrs ago0xe2eeaacfc6a5488aacfb2131108ae7b59026fe4b  IN   0xf441b73b0a196aa67d32aee230aab5e54eef47650 Ether0.00021466
0x718e6223a70d66801873e4371408d411cc4afd1eefea3739667890e4d7041554243 days 6 hrs ago0xe2eeaacfc6a5488aacfb2131108ae7b59026fe4b  IN   0xf441b73b0a196aa67d32aee230aab5e54eef47650 Ether0.000215044
0xf73881ae4dc1f4261b3b585e7c9abf79b7bf00a0c50288c1159a7c0f8cc7aa11243 days 11 hrs ago0x06a8ce0923dbdabefd7dc523a64cd861610b6f62  IN   0xf441b73b0a196aa67d32aee230aab5e54eef47650.043602431684941 Ether0.000258516
0xabbeed725fb0f1423ad7c967c697243ebadfa52b6227e19364b532bf60508223243 days 11 hrs ago0x06a8ce0923dbdabefd7dc523a64cd861610b6f62  IN   0xf441b73b0a196aa67d32aee230aab5e54eef47650.043602431684941 Ether0.000064629
0x87894feec8f15ae37294cf8dcab8b7ea39657f82c485fb5f0addd3ff50acb1af243 days 11 hrs ago0x06a8ce0923dbdabefd7dc523a64cd861610b6f62  IN   0xf441b73b0a196aa67d32aee230aab5e54eef47650.043602431684941 Ether0.000049629
0x80fc6867d7189a14e9ae71b2121966aa55d609346865224c66113eda347a941e243 days 11 hrs ago0x06a8ce0923dbdabefd7dc523a64cd861610b6f62  IN   0xf441b73b0a196aa67d32aee230aab5e54eef47650.020493142891922 Ether0.000129258
0x8bd9391f761f000abe29e478a2c91b85972c4d5bf3e5ced4bf666e34517a6a6f243 days 11 hrs ago0x06a8ce0923dbdabefd7dc523a64cd861610b6f62  IN   0xf441b73b0a196aa67d32aee230aab5e54eef47650.020493142891922 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
0x98795014b57ddb4c8bf66c3d0d242c13348d2efd3ffc8f35b0fa96b531b0fe39649420761 days 22 hrs ago0xf441b73b0a196aa67d32aee230aab5e54eef47650xe2eeaacfc6a5488aacfb2131108ae7b59026fe4b0.488356617614105871 Ether
0x693f696d409db0f1ff0a527ace3ebd3a192e4f9ab505f3b2ddf672c801e8083c6176489114 days 14 hrs ago0xf441b73b0a196aa67d32aee230aab5e54eef47650x75ff069210f19f1d348dff0607b9cc3fd8f311410.009053870529651423 Ether
0xf4cbd060de4deb9198f9f87bde6e6a1ff8e00b2a77ebe5d1013b4d6b4b7309af6172050115 days 9 hrs ago0xf441b73b0a196aa67d32aee230aab5e54eef47650x739f7f9fbc3bc845c47078086485e133936555fc0.004255319148936169 Ether
0xfcc2c1b3504083a997779c4eabcdf656088391e75ffdaaa4d235a44305080d946097219128 days 47 mins ago0xf441b73b0a196aa67d32aee230aab5e54eef47650x75ff069210f19f1d348dff0607b9cc3fd8f311410.001999999999999999 Ether
0xc982eb21554ae85ca10ac30cc15d9fd58b7e9048208dc3052796e6802c12b78a5432574242 days 21 hrs ago0xf441b73b0a196aa67d32aee230aab5e54eef47650x9c78a2224b763ee6bb652de945e70d22561e8afd0.0235 Ether
0x4f254abbcc6395e077362b3f2d1838b771a494a237386d9754e745a746eec6425432573242 days 21 hrs ago0xf441b73b0a196aa67d32aee230aab5e54eef47650x482513dbbde829b1ee89d0b48cf6d615bad80a5f0.019999999999999999 Ether
0x7f5deab1bdc1b506a6181b83fec3a8003a8be4179ecf3ef218917d05b494c48d5432125242 days 23 hrs ago0xf441b73b0a196aa67d32aee230aab5e54eef47650x527efc00ce72a50ef4a54c78896939ef5f83b8110.0235 Ether
0x10e715b17293d075cc70a51da5d9304d3ba57dc9d46d34d750d95133cc97c2b65432048242 days 23 hrs ago0xf441b73b0a196aa67d32aee230aab5e54eef47650x527efc00ce72a50ef4a54c78896939ef5f83b8110.0235 Ether
0xf3beda90d4437f7f8d28af605c9f686054a7370ed995aa7679c4b9c00b3012475432035242 days 23 hrs ago0xf441b73b0a196aa67d32aee230aab5e54eef47650x06a8ce0923dbdabefd7dc523a64cd861610b6f620.0235 Ether
0x2d71470589e4ce1889ef79f62d7186781c539fa50096d21301d2e31b49057e925431453243 days 2 hrs ago0xf441b73b0a196aa67d32aee230aab5e54eef47650x06a8ce0923dbdabefd7dc523a64cd861610b6f620.0235 Ether
0x6ead40a06dd12e19d0f1a58c71e4a2f88f1878aee00962dcfb8b77f0d42cae225430658243 days 5 hrs ago0xf441b73b0a196aa67d32aee230aab5e54eef47650xf0333b94f895eb5aab3822da376f9cbcfce8a19c0.0094 Ether
0xf73881ae4dc1f4261b3b585e7c9abf79b7bf00a0c50288c1159a7c0f8cc7aa115429112243 days 11 hrs ago0xf441b73b0a196aa67d32aee230aab5e54eef47650x22a9304e395f0657cfec6d5e7a95c24702eed1580.040986285783845283 Ether
0xabbeed725fb0f1423ad7c967c697243ebadfa52b6227e19364b532bf605082235429077243 days 11 hrs ago0xf441b73b0a196aa67d32aee230aab5e54eef47650x527efc00ce72a50ef4a54c78896939ef5f83b8110.040986285783845283 Ether
0x87894feec8f15ae37294cf8dcab8b7ea39657f82c485fb5f0addd3ff50acb1af5429075243 days 11 hrs ago0xf441b73b0a196aa67d32aee230aab5e54eef47650xba6ff894b09bd4063045bf6e2deb8f7a466c6a220.040986285783845283 Ether
0x80fc6867d7189a14e9ae71b2121966aa55d609346865224c66113eda347a941e5429053243 days 11 hrs ago0xf441b73b0a196aa67d32aee230aab5e54eef47650x22a9304e395f0657cfec6d5e7a95c24702eed1580.019263554318407283 Ether
0x8bd9391f761f000abe29e478a2c91b85972c4d5bf3e5ced4bf666e34517a6a6f5429053243 days 11 hrs ago0xf441b73b0a196aa67d32aee230aab5e54eef47650x22a9304e395f0657cfec6d5e7a95c24702eed1580.019263554318407283 Ether
0x0d8fa7f24a71532abe9e7710d0f054f7e78e78dcc494897fc489d068cef0fcbf5429020243 days 11 hrs ago0xf441b73b0a196aa67d32aee230aab5e54eef47650xad565956ae5bd43117f6b0a650ec18c621ff8e0d0.019263554318407283 Ether
0x849c3da3e258fba172ed52da09072e57ce205d6b576e3f918e445e3472e806705429013243 days 11 hrs ago0xf441b73b0a196aa67d32aee230aab5e54eef47650xf0333b94f895eb5aab3822da376f9cbcfce8a19c0.009053870529651423 Ether
0x0373c3f3deafca19608e4b70b33d57a7657766af7b9e087a987f5a4d67a7cf6c5429009243 days 11 hrs ago0xf441b73b0a196aa67d32aee230aab5e54eef47650xf0333b94f895eb5aab3822da376f9cbcfce8a19c0.009053870529651423 Ether
0x9c5bd5ba8ceebebb22ddb8c76442f72c80ce137626bfbbf1802937b95cd0fc885429009243 days 11 hrs ago0xf441b73b0a196aa67d32aee230aab5e54eef47650xf0333b94f895eb5aab3822da376f9cbcfce8a19c0.009053870529651423 Ether
0x266a26a38e99311d4e414c48e51105234eaf27d0ecbe7102350c36274b60d6595429004243 days 12 hrs ago0xf441b73b0a196aa67d32aee230aab5e54eef47650x22a9304e395f0657cfec6d5e7a95c24702eed1580.004255319148936169 Ether
0x40c6934dce301ace157352b6751bf741101f0af4b07fd939e125fb09f04211d05429002243 days 12 hrs ago0xf441b73b0a196aa67d32aee230aab5e54eef47650x22a9304e395f0657cfec6d5e7a95c24702eed1580.004255319148936169 Ether
0x0a1462fe6d3eeb2083056e3e39f418a5a8ee141cdb6f1875f90bac800955c9425429002243 days 12 hrs ago0xf441b73b0a196aa67d32aee230aab5e54eef47650x22a9304e395f0657cfec6d5e7a95c24702eed1580.004255319148936169 Ether
0xf537b57911cc66ebedf83c4ffdc14907e3a87be70d27ec0cefa7a6fb1770f1935428997243 days 12 hrs ago0xf441b73b0a196aa67d32aee230aab5e54eef47650xf0333b94f895eb5aab3822da376f9cbcfce8a19c0.001999999999999999 Ether
0x67e8474130fc9b217681f2f2dd4ef6f7ce65da466d1412c401158ecb82424cf35428994243 days 12 hrs ago0xf441b73b0a196aa67d32aee230aab5e54eef47650xf0333b94f895eb5aab3822da376f9cbcfce8a19c0.001999999999999999 Ether
[ Download CSV Export  ] 
Warning: The Compiled Contract might be susceptible to ExpExponentCleanup (medium/high-severity), EventStructWrongData (very low-severity), NestedArrayFunctionCallDecoder (medium-severity) SolidityCompiler Bugs.

Contract Source Code Verified (Exact Match)
Contract Name: RegionsToken
Compiler Text: 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 <[email protected]> (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 transaction Difficulty GasUsed Reward
View All
Block Age UncleNumber Difficulty GasUsed Reward
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.