Sponsored Link:   Ambrosus Main-Net Launching: Stake AMB in Masternodes and get regular rewards for maintaining network integrity.
Contract Overview
Balance: 0 Ether
Ether Value: $0
Transactions: 1421 txns
Token Contract: CryptoStamps (CS)
Misc
Address Watch: Add To Watch List
Contract Creator: 0xdf937b071199dafdb3b96b09533e286809b803aaat txn 0x6c17646a3ff1cb337444710763b66b187c89aefea10946db5383c0fdbf435973
Token Balances:
 Latest 25 txns from a total Of 1421 transactions

TxHash Age From To Value [TxFee]
0x7811a19816b42c7c1f5d588a3ec751d3a024daa790fb4c0946f5e35ffbf4023085 days 2 hrs ago0xdf937b071199dafdb3b96b09533e286809b803aa  IN   0xa181b8c9f6b43b8252c6c9826cf5feba362b542e0 Ether0.000062362
0xac5d39c6fa4af257426f27989f46fada3f47ada561d2cab9c4e340b147e906f9118 days 9 hrs ago0xcc0fdbd73b0ae916276d20540dc6f41c312b8428  IN   0xa181b8c9f6b43b8252c6c9826cf5feba362b542e0.01163829787234 Ether0.000203858
0x7ecc02e95f4711104ee0616a0200ae4c7b6c2e4c525d0fb5703714ef132e2ae5121 days 4 hrs ago0xa7703dd6599f9c107d7b6c4396be54fc4fe54f52  IN   0xa181b8c9f6b43b8252c6c9826cf5feba362b542e0 Ether0.0000497784
0x48c778df30c31b229398720147852f406c7aaf65b000463942e180f98e578ba9122 days 6 hrs ago0xfcb59556bdc2007ec0e27bad33a8f7be38a9043d  IN   0xa181b8c9f6b43b8252c6c9826cf5feba362b542e0.219012158424709 Ether0.000173858
0x321dbac8c85bea2fb44f7273df547d17194d6b64a2dde63ea76c78a9c00534eb122 days 6 hrs ago0x1abd70ab0e355f7ab77bc5848a691e42c19cfc11  IN   0xa181b8c9f6b43b8252c6c9826cf5feba362b542e0.473855656222785 Ether0.000173858
0x28b33323ecac3250bcb68e9769531553d8eaec6b5c8eb3ee370c93d8a389dbcb123 days 5 hrs ago0xca0f6445d0f4522186a3c25cd79c7cddac283431  IN   0xa181b8c9f6b43b8252c6c9826cf5feba362b542e0.103465714459613 Ether0.000086929
0xb264dab6621a1f1598f776056ce7d442f6ae13ca9a9f52e61c25912a9a48fc3f123 days 5 hrs ago0x9c40c33264393f116a4f6a456427af3ec4b202d0  IN   0xa181b8c9f6b43b8252c6c9826cf5feba362b542e0.049158885796018 Ether0.000173858
0xef3bde80dac760793244fde4ed7f7003c30ffd1b1bf0f84c4cb1078ccff1ffab123 days 5 hrs ago0x7bdd03729e4017562340ff92afd7abd806af86c6  IN   0xa181b8c9f6b43b8252c6c9826cf5feba362b542e0.219012158424709 Ether0.000173858
0x4f6e291e2fc286f63ed0d98c8580464180ffe67cae7de575d54c3f27d50d6ee6123 days 5 hrs ago0x134c5eba2060fb330d198f06b889acf1a434708b  IN   0xa181b8c9f6b43b8252c6c9826cf5feba362b542e0.219012158424709 Ether0.000071929
0x962c4493a33ef94172b74200afd745583a78f3241d4347e08a1a1951ac2e8ebe123 days 5 hrs ago0xbaf858afacb610af6714fea32c9bb85ae5b4bb69  IN   0xa181b8c9f6b43b8252c6c9826cf5feba362b542e0.473855656222785 Ether0.000173858
0xa488070ba0961906da867d4956c585aae617856278258e2007a8be0adfae3b3a123 days 6 hrs ago0xfa71b3183ee00bf2734c6ca01747315f6c12592b  IN   0xa181b8c9f6b43b8252c6c9826cf5feba362b542e0.996926928133585 Ether0.000086929
0x53704cdc0d9460eb16c115985b7ae938e2eeef9cc66e067b2d14fa03c88422de123 days 6 hrs ago0x5315a64729449ac7d53bf20686e721ed1a06abcf  IN   0xa181b8c9f6b43b8252c6c9826cf5feba362b542e0.219012158424709 Ether0.000203858
0xf45253c9fbd3780e0abaf3e8426900b2dea284ff9bb02b48681ff785cb56baa0123 days 7 hrs ago0xe00942bf8b2b2b0ee89c94e8674ec2d006cab89e  IN   0xa181b8c9f6b43b8252c6c9826cf5feba362b542e0.103465714459613 Ether0.000173858
0x7b2440322de4dc04a6b6b9332b92b38415926f509c0bf4f7516621a32e759a9a123 days 7 hrs ago0x01c42ae4a47e301131fc1ba43213b29d005c7ebc  IN   0xa181b8c9f6b43b8252c6c9826cf5feba362b542e0.473855656222785 Ether0.000173858
0x0f3b47f152f8d6170cad913a6235bdc63a62ba2ad761ce288541e0036d1aa0c3123 days 7 hrs ago0xdeb6395d1e020fbac661e2b638f88d8642e31036  IN   0xa181b8c9f6b43b8252c6c9826cf5feba362b542e0.049158885796018 Ether0.000173858
0xf879eb5f9b29a197f1f8c6205f2b68829df32df0b883bf98e7b7ed22dafe3dad123 days 7 hrs ago0xc07a75d83b49aec0153bac880040546e3b4bd8b5  IN   0xa181b8c9f6b43b8252c6c9826cf5feba362b542e0.103465714459613 Ether0.000173858
0x740ba0f610621785dc826df7ee2f1ae96c25625b0c15d9450c13a6f3ed57a312123 days 7 hrs ago0x7a229042c107f5776f665f85c0140e16943c3154  IN   0xa181b8c9f6b43b8252c6c9826cf5feba362b542e0.987926928133585 Ether0.000173858
0xf7be3b5e6b283286ba4b55f7b39cddc347b67cf70dbc18008a1db84a6de52838123 days 8 hrs ago0x691d0a53a5b660bcd7b37b4dbe4e4406aae7fcbd  IN   0xa181b8c9f6b43b8252c6c9826cf5feba362b542e0.464855656222785 Ether0.000086929
0x405969ede7591e9fdcb41b5ae3acee2693dc42d8c868b356ea2253361772f840123 days 9 hrs ago0x232289536e47a97dbab4816d77dc37c8677905df  IN   0xa181b8c9f6b43b8252c6c9826cf5feba362b542e0.987926928133585 Ether0.000173858
0xa9768ab56985c6d7bec65f54aeac796c631721065e80bb8f7ed0fb8c161166ad123 days 9 hrs ago0xb5b6c3ae60a54804c442f4055da40b3c437b4fc1  IN   0xa181b8c9f6b43b8252c6c9826cf5feba362b542e0.219012158424709 Ether0.000143858
0x867ab4e0c6f804935a5467fdd88d826a0bc2f468958979c26b4bd42c6de0ff77123 days 17 hrs ago0x44de60dfdd09c95a370206fd291d86237c06c435  IN   0xa181b8c9f6b43b8252c6c9826cf5feba362b542e0.023634676324128 Ether0.000174534
0x07d472b38b51bfad032643d6cf2ccb8adcb516df5617e94ac9348e6e007f9f0d123 days 17 hrs ago0x44de60dfdd09c95a370206fd291d86237c06c435  IN   0xa181b8c9f6b43b8252c6c9826cf5feba362b542e0.01163829787234 Ether0.00058178
0x14139149283eb93e80dfb9d5fb3e35c6df89d27ae5d8b325de0af925d1c45b9e123 days 17 hrs ago0x44de60dfdd09c95a370206fd291d86237c06c435  IN   0xa181b8c9f6b43b8252c6c9826cf5feba362b542e0.01163829787234 Ether0.000116356
0x7bb4c49f4c34145f373e00cf727905a526886a7d5c20911380b447e67704b841123 days 17 hrs ago0x44de60dfdd09c95a370206fd291d86237c06c435  IN   0xa181b8c9f6b43b8252c6c9826cf5feba362b542e0.005999999999999 Ether0.000116356
0xa0326711ad8afb1ab7a466800462f68c03591e142cf7e6498c0851769bcf38b3123 days 17 hrs ago0x44de60dfdd09c95a370206fd291d86237c06c435  IN   0xa181b8c9f6b43b8252c6c9826cf5feba362b542e0.005999999999999 Ether0.000116356
[ 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
0x7811a19816b42c7c1f5d588a3ec751d3a024daa790fb4c0946f5e35ffbf40230550960085 days 2 hrs ago0xa181b8c9f6b43b8252c6c9826cf5feba362b542e0xdf937b071199dafdb3b96b09533e286809b803aa17.114582689353554438 Ether
0xac5d39c6fa4af257426f27989f46fada3f47ada561d2cab9c4e340b147e906f95311867118 days 9 hrs ago0xa181b8c9f6b43b8252c6c9826cf5feba362b542e0xcc0fdbd73b0ae916276d20540dc6f41c312b84280.000999999999999999 Ether
0xac5d39c6fa4af257426f27989f46fada3f47ada561d2cab9c4e340b147e906f95311867118 days 9 hrs ago0xa181b8c9f6b43b8252c6c9826cf5feba362b542e0x02e05008c9a035e527c419e7f134e18cc2330a1a0.009999999999999999 Ether
0x48c778df30c31b229398720147852f406c7aaf65b000463942e180f98e578ba95288675122 days 6 hrs ago0xa181b8c9f6b43b8252c6c9826cf5feba362b542e0xfcb59556bdc2007ec0e27bad33a8f7be38a9043d0.000999999999999998 Ether
0x48c778df30c31b229398720147852f406c7aaf65b000463942e180f98e578ba95288675122 days 6 hrs ago0xa181b8c9f6b43b8252c6c9826cf5feba362b542e0xc07a75d83b49aec0153bac880040546e3b4bd8b50.204931428919226461 Ether
0x321dbac8c85bea2fb44f7273df547d17194d6b64a2dde63ea76c78a9c00534eb5288608122 days 6 hrs ago0xa181b8c9f6b43b8252c6c9826cf5feba362b542e0x1abd70ab0e355f7ab77bc5848a691e42c19cfc110.00999999999999999 Ether
0x321dbac8c85bea2fb44f7273df547d17194d6b64a2dde63ea76c78a9c00534eb5288608122 days 6 hrs ago0xa181b8c9f6b43b8252c6c9826cf5feba362b542e0x134c5eba2060fb330d198f06b889acf1a434708b0.436024316849418003 Ether
0x28b33323ecac3250bcb68e9769531553d8eaec6b5c8eb3ee370c93d8a389dbcb5283003123 days 5 hrs ago0xa181b8c9f6b43b8252c6c9826cf5feba362b542e0xca0f6445d0f4522186a3c25cd79c7cddac2834310.001000000000000009 Ether
0x28b33323ecac3250bcb68e9769531553d8eaec6b5c8eb3ee370c93d8a389dbcb5283003123 days 5 hrs ago0xa181b8c9f6b43b8252c6c9826cf5feba362b542e0x9c40c33264393f116a4f6a456427af3ec4b202d00.096317771592036437 Ether
0xb264dab6621a1f1598f776056ce7d442f6ae13ca9a9f52e61c25912a9a48fc3f5282969123 days 5 hrs ago0xa181b8c9f6b43b8252c6c9826cf5feba362b542e0x9c40c33264393f116a4f6a456427af3ec4b202d00.000999999999999997 Ether
0xb264dab6621a1f1598f776056ce7d442f6ae13ca9a9f52e61c25912a9a48fc3f5282969123 days 5 hrs ago0xa181b8c9f6b43b8252c6c9826cf5feba362b542e0x3bbab9494c32253f0b41c7358de1cd1672bf03190.045269352648257125 Ether
0xef3bde80dac760793244fde4ed7f7003c30ffd1b1bf0f84c4cb1078ccff1ffab5282963123 days 5 hrs ago0xa181b8c9f6b43b8252c6c9826cf5feba362b542e0x7bdd03729e4017562340ff92afd7abd806af86c60.000999999999999998 Ether
0xef3bde80dac760793244fde4ed7f7003c30ffd1b1bf0f84c4cb1078ccff1ffab5282963123 days 5 hrs ago0xa181b8c9f6b43b8252c6c9826cf5feba362b542e0xff9fa2d10c3167df8f35eb0a5132c4fe08431a810.204931428919226461 Ether
0x4f6e291e2fc286f63ed0d98c8580464180ffe67cae7de575d54c3f27d50d6ee65282852123 days 5 hrs ago0xa181b8c9f6b43b8252c6c9826cf5feba362b542e0x134c5eba2060fb330d198f06b889acf1a434708b0.000999999999999998 Ether
0x4f6e291e2fc286f63ed0d98c8580464180ffe67cae7de575d54c3f27d50d6ee65282852123 days 5 hrs ago0xa181b8c9f6b43b8252c6c9826cf5feba362b542e0x7bdd03729e4017562340ff92afd7abd806af86c60.204931428919226461 Ether
0x962c4493a33ef94172b74200afd745583a78f3241d4347e08a1a1951ac2e8ebe5282828123 days 5 hrs ago0xa181b8c9f6b43b8252c6c9826cf5feba362b542e0xbaf858afacb610af6714fea32c9bb85ae5b4bb690.00999999999999999 Ether
0x962c4493a33ef94172b74200afd745583a78f3241d4347e08a1a1951ac2e8ebe5282828123 days 5 hrs ago0xa181b8c9f6b43b8252c6c9826cf5feba362b542e0xfcb59556bdc2007ec0e27bad33a8f7be38a9043d0.436024316849418003 Ether
0xa488070ba0961906da867d4956c585aae617856278258e2007a8be0adfae3b3a5282775123 days 6 hrs ago0xa181b8c9f6b43b8252c6c9826cf5feba362b542e0xfa71b3183ee00bf2734c6ca01747315f6c12592b0.00999999999999996 Ether
0xa488070ba0961906da867d4956c585aae617856278258e2007a8be0adfae3b3a5282775123 days 6 hrs ago0xa181b8c9f6b43b8252c6c9826cf5feba362b542e0x7c9ba834c764d43ec25894a7f2bb3eedb5cdcbc80.927711312445570219 Ether
0x53704cdc0d9460eb16c115985b7ae938e2eeef9cc66e067b2d14fa03c88422de5282706123 days 6 hrs ago0xa181b8c9f6b43b8252c6c9826cf5feba362b542e0x5315a64729449ac7d53bf20686e721ed1a06abcf0.000999999999999998 Ether
0x53704cdc0d9460eb16c115985b7ae938e2eeef9cc66e067b2d14fa03c88422de5282706123 days 6 hrs ago0xa181b8c9f6b43b8252c6c9826cf5feba362b542e0xe00942bf8b2b2b0ee89c94e8674ec2d006cab89e0.204931428919226461 Ether
0xf45253c9fbd3780e0abaf3e8426900b2dea284ff9bb02b48681ff785cb56baa05282457123 days 7 hrs ago0xa181b8c9f6b43b8252c6c9826cf5feba362b542e0xe00942bf8b2b2b0ee89c94e8674ec2d006cab89e0.001000000000000009 Ether
0xf45253c9fbd3780e0abaf3e8426900b2dea284ff9bb02b48681ff785cb56baa05282457123 days 7 hrs ago0xa181b8c9f6b43b8252c6c9826cf5feba362b542e0xdeb6395d1e020fbac661e2b638f88d8642e310360.096317771592036437 Ether
0x7b2440322de4dc04a6b6b9332b92b38415926f509c0bf4f7516621a32e759a9a5282457123 days 7 hrs ago0xa181b8c9f6b43b8252c6c9826cf5feba362b542e0x01c42ae4a47e301131fc1ba43213b29d005c7ebc0.00999999999999999 Ether
0x7b2440322de4dc04a6b6b9332b92b38415926f509c0bf4f7516621a32e759a9a5282457123 days 7 hrs ago0xa181b8c9f6b43b8252c6c9826cf5feba362b542e0x7c9ba834c764d43ec25894a7f2bb3eedb5cdcbc80.436024316849418003 Ether
[ Download CSV Export  ] 
Contract Source Code Verified (Exact match)
Contract Name: CryptoStamps
Compiler Version: v0.4.18+commit.9cf6e910
Optimization Enabled: No
Runs (Optimiser):  200



  Contract Source Code   Find Similiar Contracts

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




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);
  event Dissolved(address  owner, uint256 tokenId);
  event TransferDissolved(address indexed from, address indexed to, uint256 tokenId);
  
}


contract CryptoStamps is ERC721 {

  
  /*** EVENTS ***/

  
  /// @dev The Birth event is fired whenever a new stamp is created.
  event stampBirth(uint256 tokenId,  address owner);

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

  /// @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 = "CryptoStamps"; // 
  string public constant SYMBOL = "CS"; // 
  
  // @dev firstStepLimit for the change in rate of price increase
  uint256 private firstStepLimit =  1.28 ether;
  


  
  
  /*** STORAGE ***/



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

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

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

  // @dev A mapping from stamp IDs to the price of the token.
  mapping (uint256 => uint256) private stampIndexToPrice;
  
  
  
  //@dev A mapping from stamp IDs to the number of transactions that the stamp has gone through. 
  mapping(uint256 => uint256) public stampIndextotransactions;
  
  //@dev To calculate the total ethers transacted in the game.
  uint256 public totaletherstransacted;

  //@dev To calculate the total transactions in the game.
  uint256 public totaltransactions;
  
  //@dev To calculate the total stamps created.
  uint256 public stampCreatedCount;
  
  
  

 /*** STORAGE FOR DISSOLVED ***/
 
 
 //@dev A mapping from stamp IDs to their dissolved status.
  //Initially all values are set to false by default
  mapping (uint256 => bool) public stampIndextodissolved;
 
 
 //@dev A mapping from dissolved stamp IDs to their approval status.
  //Initially all values are set to false by default
 mapping (uint256 => address) public dissolvedIndexToApproved;
 
  
  
  
  /*** DATATYPES ***/
  
  struct Stamp {
    uint256 birthtime;
  }
  
  

  Stamp[] private stamps;

 
 
 
 
  
  
  
  /*** ACCESS MODIFIERS ***/
  
  /// @dev Access modifier for CEO-only functionality
  
  
  // The addresses of the accounts (or contracts) that can execute actions within each roles.
  address public ceoAddress;
  address public cooAddress;
  bool private paused;
  
  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
    );
    _;
  }

  
  /// @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;
  }
  
  
  
  /*** CONSTRUCTOR ***/
  function CryptoStamps() public {
    ceoAddress = msg.sender;
    cooAddress = msg.sender;
    paused = false;
  }

  
  
  
  
  /*** PUBLIC FUNCTIONS ***/
  /// @notice Grant another address the right to transfer stamp via takeOwnership() and transferFrom().
  
  ///  clear all approvals.
  
  /// @dev Required for ERC-721 compliance.
  
  
  //@dev to pause and unpause the contract in emergency situations
  function pausecontract() public onlyCLevel
  {
      paused = true;
  }
  
  
  
  function unpausecontract() public onlyCEO
  {
      paused = false;
      
  }
  
  
  
  function approve(
    address _to,
    uint256 _tokenId
  ) public {
    // Caller must own token.
    require(paused == false);
    require(_owns(msg.sender, _tokenId));

    stampIndexToApproved[_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 To create a stamp.
  function createStamp(address _owner,  uint256 _price) public onlyCOO {
    
    require(paused == false);
    address stampOwner = _owner;
    if (stampOwner == address(0)) {
      stampOwner = cooAddress;
    }

    require(_price >= 0);

    stampCreatedCount++;
    _createStamp( stampOwner, _price);
  }

  
 
  //@dev To get stamp information
  
  function getStamp(uint256 _tokenId) public view returns (
    uint256 birthtimestamp,
    uint256 sellingPrice,
    address owner
  ) {
    Stamp storage stamp = stamps[_tokenId];
    birthtimestamp = stamp.birthtime;
    sellingPrice = stampIndexToPrice[_tokenId];
    owner = stampIndexToOwner[_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 stamp
  /// @param _tokenId The tokenID for owner inquiry
  /// @dev Required for ERC-721 compliance.
  
  
  
  function ownerOf(uint256 _tokenId)
    public
    view
    returns (address owner)
  {
    owner = stampIndexToOwner[_tokenId];
    require(owner != address(0));
  }

  
  
  //@dev To payout to an address
  
  function payout(address _to) public onlyCLevel {
    _payout(_to);
  }
  
  
  
  
  
  
  //@ To set the cut received by smart contract
  uint256 private cut;
  
  
  
  
  function setcut(uint256 cutowner) onlyCEO public returns(uint256)
  { 
      cut = cutowner;
      return(cut);
      
  }

  
  
  
  
  // Allows someone to send ether and obtain the token
  
  function purchase(uint256 _tokenId) public payable {
    address oldOwner = stampIndexToOwner[_tokenId];
    address newOwner = msg.sender;
    require(stampIndextodissolved[_tokenId] == false);
    require(paused == false);
    uint256 sellingPrice = stampIndexToPrice[_tokenId];
    totaletherstransacted = totaletherstransacted + sellingPrice;

    // 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, cut), 100));
    uint256 purchaseExcess = SafeMath.sub(msg.value, sellingPrice);

    // Update prices
    if (sellingPrice < firstStepLimit) {
      // first stage
      stampIndexToPrice[_tokenId] = SafeMath.div(SafeMath.mul(sellingPrice, 200), cut);
    } 
    else {
      
      stampIndexToPrice[_tokenId] = SafeMath.div(SafeMath.mul(sellingPrice, 125), cut);
    }

    _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, stampIndexToPrice[_tokenId], oldOwner, newOwner);

    msg.sender.transfer(purchaseExcess);
  }

  
  
  
  //@dev To get price of a stamp
  function priceOf(uint256 _tokenId) public view returns (uint256 price) {
    return stampIndexToPrice[_tokenId];
  }

  
  
  //@dev To get the next price of a stamp
  function nextpriceOf(uint256 _tokenId) public view returns (uint256 price) {
    uint256 currentsellingPrice = stampIndexToPrice[_tokenId];
    
    if (currentsellingPrice < firstStepLimit) {
      // first stage
      return SafeMath.div(SafeMath.mul(currentsellingPrice, 200), cut);
    } 
    else {
      
      return SafeMath.div(SafeMath.mul(currentsellingPrice, 125), cut);
    }
    
  }

  
  
  
  
  
  /// @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 = stampIndexToOwner[_tokenId];
    require(paused == false);
    // 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 of the stamp
  /// @dev This method MUST NEVER be called by smart contract code. First, it's fairly
  ///  expensive (it walks the entire Stamps array looking for stamps 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 totalStamps = totalSupply();
      uint256 resultIndex = 0;

      uint256 stampId;
      for (stampId = 0; stampId <= totalStamps; stampId++) {
        if (stampIndexToOwner[stampId] == _owner) {
          result[resultIndex] = stampId;
          resultIndex++;
        }
      }
      return result;
    }
  }

  
  
  /// For querying totalSupply of token
  /// @dev Required for ERC-721 compliance.
  
  
  
  function totalSupply() public view returns (uint256 total) {
    return stamps.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));
    require(paused == false);

    _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);
  }
  
  
  //@dev To set the number in which the stamp gets dissolved into.
  uint256 private num;
  
  
  
  function setnumber(uint256 number) onlyCEO public returns(uint256)
  {
      num = number;
      return num;
  }
  
  
  //@dev To set the price at which dissolution starts.
   uint256 private priceatdissolution;
  
  
  
  function setdissolveprice(uint256 number) onlyCEO public returns(uint256)
  {
      priceatdissolution = number;
      return priceatdissolution;
  }
  
  
  //@ To set the address to which dissolved stamp is sent.
  address private addressatdissolution;
  
  
  
  function setdissolveaddress(address dissolveaddress) onlyCEO public returns(address)
  {
      addressatdissolution = dissolveaddress;
      return addressatdissolution;
  }
  
  
  //@dev for emergency purposes
  function controlstampdissolution(bool control,uint256 _tokenId) onlyCEO public
  {
      stampIndextodissolved[_tokenId] = control;
      
  }
  
  
  //@dev Dissolve function which mines new stamps.
  function dissolve(uint256 _tokenId) public
  {   require(paused == false);
      require(stampIndexToOwner[_tokenId] == msg.sender);
      require(priceOf(_tokenId)>= priceatdissolution );
      require(stampIndextodissolved[_tokenId] == false);
      address reciever = stampIndexToOwner[_tokenId];
      
      uint256 price = priceOf(_tokenId);
      uint256 newprice = SafeMath.div(price,num);
      
      approve(addressatdissolution, _tokenId);
      transfer(addressatdissolution,_tokenId);
      stampIndextodissolved[_tokenId] = true;
      
      uint256 i;
      for(i = 0; i<num; i++)
      {
      _createStamp( reciever, newprice);
          
      }
      Dissolved(msg.sender,_tokenId);
    
  }
  
 //@dev The contract which is used to interact with dissolved stamps.
 address private dissolvedcontract; 
 
 
 
 
 /*** PUBLIC FUNCTIONS FOR DISSOLVED STAMPS ***/
 
 
 function setdissolvedcontract(address dissolvedaddress) onlyCEO public returns(address)
 {
     
     dissolvedcontract = dissolvedaddress;
     return dissolvedcontract;
 }
 
 //@dev To transfer dissolved stamp. Requires the contract assigned for dissolution management to send message.
 function transferdissolvedFrom(
    address _from,
    address _to,
    uint256 _tokenId
  ) public {
    require(_owns(_from, _tokenId));
    require(_addressNotNull(_to));
    require(msg.sender == dissolvedcontract);

    _transferdissolved(_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 stampIndexToApproved[_tokenId] == _to;
  }

  
  /// For creating Stamp
  
  
  function _createStamp(address _owner, uint256 _price) private {
    Stamp memory _stamp = Stamp({
      birthtime: now
    });
    uint256 newStampId = stamps.push(_stamp) - 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(newStampId == uint256(uint32(newStampId)));

    stampBirth(newStampId, _owner);

    stampIndexToPrice[newStampId] = _price;

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

  
  
  /// Check for token ownership
  
  
  
  function _owns(address claimant, uint256 _tokenId) private view returns (bool) {
    return claimant == stampIndexToOwner[_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 Stamp to an address.
  
  
  
  function _transfer(address _from, address _to, uint256 _tokenId) private {
   
    require(paused == false);
    ownershipTokenCount[_to]++;
    stampIndextotransactions[_tokenId] = stampIndextotransactions[_tokenId] + 1;
    totaltransactions++;
    //transfer ownership
    stampIndexToOwner[_tokenId] = _to;
    

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

    // Emit the transfer event.
    Transfer(_from, _to, _tokenId);
  }
  
  
  
/*** PRIVATE FUNCTIONS FOR DISSOLVED STAMPS***/  
  
  
  
  //@ To transfer a dissolved stamp.
  function _transferdissolved(address _from, address _to, uint256 _tokenId) private {
    
    require(stampIndextodissolved[_tokenId] == true);
    require(paused == false);
    ownershipTokenCount[_to]++;
    stampIndextotransactions[_tokenId] = stampIndextotransactions[_tokenId] + 1;
    //transfer ownership
    stampIndexToOwner[_tokenId] = _to;
    totaltransactions++;
    

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

    // Emit the transfer event.
    TransferDissolved(_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":"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":"","type":"uint256"}],"name":"stampIndextodissolved","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_tokenId","type":"uint256"}],"name":"transferdissolvedFrom","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"total","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"stampIndexToOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","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":false,"inputs":[],"name":"unpausecontract","outputs":[],"payable":false,"stateMutability":"nonpayable","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":"_tokenId","type":"uint256"}],"name":"nextpriceOf","outputs":[{"name":"price","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"dissolvedIndexToApproved","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"cutowner","type":"uint256"}],"name":"setcut","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","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":"","type":"uint256"}],"name":"stampIndexToApproved","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":false,"inputs":[{"name":"control","type":"bool"},{"name":"_tokenId","type":"uint256"}],"name":"controlstampdissolution","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"NAME","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"number","type":"uint256"}],"name":"setnumber","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","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":"stampCreatedCount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"pausecontract","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":"dissolvedaddress","type":"address"}],"name":"setdissolvedcontract","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_tokenId","type":"uint256"}],"name":"takeOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_tokenId","type":"uint256"}],"name":"priceOf","outputs":[{"name":"price","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_tokenId","type":"uint256"}],"name":"getStamp","outputs":[{"name":"birthtimestamp","type":"uint256"},{"name":"sellingPrice","type":"uint256"},{"name":"owner","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"dissolveaddress","type":"address"}],"name":"setdissolveaddress","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"stampIndextotransactions","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totaltransactions","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"number","type":"uint256"}],"name":"setdissolveprice","outputs":[{"name":"","type":"uint256"}],"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"},{"constant":false,"inputs":[{"name":"_tokenId","type":"uint256"}],"name":"dissolve","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totaletherstransacted","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_owner","type":"address"},{"name":"_price","type":"uint256"}],"name":"createStamp","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"tokenId","type":"uint256"},{"indexed":false,"name":"owner","type":"address"}],"name":"stampBirth","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"}],"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"},{"anonymous":false,"inputs":[{"indexed":false,"name":"owner","type":"address"},{"indexed":false,"name":"tokenId","type":"uint256"}],"name":"Dissolved","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"tokenId","type":"uint256"}],"name":"TransferDissolved","type":"event"}]

  Contract Creation Code Switch To Opcodes View
60606040526711c37937e0800000600055341561001b57600080fd5b33600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555033600d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600d60146101000a81548160ff021916908315150217905550612c64806100c76000396000f3006060604052600436106101f9576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306fdde03146101fe578063095ea7b31461028c5780630a0f8168146102ce5780630b7e9c44146103235780631051db341461035c5780631259c00d1461038957806316da1d50146103c457806318160ddd146104255780631a365f2b1461044e57806323b872dd146104b157806327d7874c146105125780632ba73c151461054b5780634ec8a8ff146105845780636352211e1461059957806370a08231146105fc578063766d2c3b146106495780637cead212146106805780637e15e9ef146106e35780638462151c1461071a57806389d6d69d146107a857806395d89b411461080b5780639fc3e53a14610899578063a3f4df7e146108c7578063a632a2e514610955578063a9059cbb1461098c578063ac3fc432146109ce578063af6337fd146109f7578063b047fb5014610a0c578063b08510a314610a61578063b2e6ceeb14610ada578063b9186d7d14610afd578063d2064e2f14610b34578063d61a452414610ba5578063dde107c214610c1e578063e9bc959814610c55578063ea317f6d14610c7e578063efef39a114610cb5578063f76f8d7814610ccd578063f90b2bfe14610d5b578063fd04a90214610d7e578063ff1e28a414610da7575b600080fd5b341561020957600080fd5b610211610de9565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610251578082015181840152602081019050610236565b50505050905090810190601f16801561027e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561029757600080fd5b6102cc600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050610e2c565b005b34156102d957600080fd5b6102e1610f1e565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561032e57600080fd5b61035a600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610f44565b005b341561036757600080fd5b61036f611004565b604051808215151515815260200191505060405180910390f35b341561039457600080fd5b6103aa600480803590602001909190505061100d565b604051808215151515815260200191505060405180910390f35b34156103cf57600080fd5b610423600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803590602001909190505061102d565b005b341561043057600080fd5b6104386110c2565b6040518082815260200191505060405180910390f35b341561045957600080fd5b61046f60048080359060200190919050506110cf565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156104bc57600080fd5b610510600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050611102565b005b341561051d57600080fd5b610549600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611150565b005b341561055657600080fd5b610582600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190505061122c565b005b341561058f57600080fd5b610597611308565b005b34156105a457600080fd5b6105ba6004808035906020019091905050611381565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561060757600080fd5b610633600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506113fa565b6040518082815260200191505060405180910390f35b341561065457600080fd5b61066a6004808035906020019091905050611443565b6040518082815260200191505060405180910390f35b341561068b57600080fd5b6106a160048080359060200190919050506114a2565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156106ee57600080fd5b61070460048080359060200190919050506114d5565b6040518082815260200191505060405180910390f35b341561072557600080fd5b610751600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611544565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b83811015610794578082015181840152602081019050610779565b505050509050019250505060405180910390f35b34156107b357600080fd5b6107c9600480803590602001909190505061167b565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561081657600080fd5b61081e6116ae565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561085e578082015181840152602081019050610843565b50505050905090810190601f16801561088b5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156108a457600080fd5b6108c5600480803515159060200190919080359060200190919050506116f1565b005b34156108d257600080fd5b6108da61177c565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561091a5780820151818401526020810190506108ff565b50505050905090810190601f1680156109475780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561096057600080fd5b61097660048080359060200190919050506117b5565b6040518082815260200191505060405180910390f35b341561099757600080fd5b6109cc600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050611824565b005b34156109d957600080fd5b6109e161187e565b6040518082815260200191505060405180910390f35b3415610a0257600080fd5b610a0a611884565b005b3415610a1757600080fd5b610a1f611955565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3415610a6c57600080fd5b610a98600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190505061197b565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3415610ae557600080fd5b610afb6004808035906020019091905050611a44565b005b3415610b0857600080fd5b610b1e6004808035906020019091905050611adb565b6040518082815260200191505060405180910390f35b3415610b3f57600080fd5b610b556004808035906020019091905050611af8565b604051808481526020018381526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001935050505060405180910390f35b3415610bb057600080fd5b610bdc600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611b75565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3415610c2957600080fd5b610c3f6004808035906020019091905050611c3e565b6040518082815260200191505060405180910390f35b3415610c6057600080fd5b610c68611c56565b6040518082815260200191505060405180910390f35b3415610c8957600080fd5b610c9f6004808035906020019091905050611c5c565b6040518082815260200191505060405180910390f35b610ccb6004808035906020019091905050611ccb565b005b3415610cd857600080fd5b610ce0611ff9565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610d20578082015181840152602081019050610d05565b50505050905090810190601f168015610d4d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3415610d6657600080fd5b610d7c6004808035906020019091905050612032565b005b3415610d8957600080fd5b610d9161227e565b6040518082815260200191505060405180910390f35b3415610db257600080fd5b610de7600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050612284565b005b610df1612ba9565b6040805190810160405280600c81526020017f43727970746f5374616d70730000000000000000000000000000000000000000815250905090565b60001515600d60149054906101000a900460ff161515141515610e4e57600080fd5b610e583382612393565b1515610e6357600080fd5b816003600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040518082815260200191505060405180910390a35050565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480610fed5750600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b1515610ff857600080fd5b611001816123ff565b50565b60006001905090565b60096020528060005260406000206000915054906101000a900460ff1681565b6110378382612393565b151561104257600080fd5b61104b8261250d565b151561105657600080fd5b601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156110b257600080fd5b6110bd838383612546565b505050565b6000600b80549050905090565b60016020528060005260406000206000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b61110c8382612393565b151561111757600080fd5b611121828261276d565b151561112c57600080fd5b6111358261250d565b151561114057600080fd5b61114b8383836127d9565b505050565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156111ac57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156111e857600080fd5b80600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561128857600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156112c457600080fd5b80600d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561136457600080fd5b6000600d60146101000a81548160ff021916908315150217905550565b60006001600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156113f557600080fd5b919050565b6000600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600080600460008481526020019081526020016000205490506000548110156114835761147c6114748260c8612a3d565b600e54612a78565b915061149c565b61149961149182607d612a3d565b600e54612a78565b91505b50919050565b600a6020528060005260406000206000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561153357600080fd5b81600e81905550600e549050919050565b61154c612bbd565b6000611556612bbd565b6000806000611564876113fa565b9450600085141561159657600060405180591061157e5750595b90808252806020026020018201604052509550611671565b846040518059106115a45750595b908082528060200260200182016040525093506115bf6110c2565b925060009150600090505b828111151561166d578673ffffffffffffffffffffffffffffffffffffffff166001600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156116605780848381518110151561164957fe5b906020019060200201818152505081806001019250505b80806001019150506115ca565b8395505b5050505050919050565b60036020528060005260406000206000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6116b6612ba9565b6040805190810160405280600281526020017f4353000000000000000000000000000000000000000000000000000000000000815250905090565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561174d57600080fd5b816009600083815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b6040805190810160405280600c81526020017f43727970746f5374616d7073000000000000000000000000000000000000000081525081565b6000600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561181357600080fd5b81600f81905550600f549050919050565b61182e3382612393565b151561183957600080fd5b6118428261250d565b151561184d57600080fd5b60001515600d60149054906101000a900460ff16151514151561186f57600080fd5b61187a3383836127d9565b5050565b60085481565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16148061192d5750600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b151561193857600080fd5b6001600d60146101000a81548160ff021916908315150217905550565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156119d957600080fd5b81601260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b6000803391506001600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905060001515600d60149054906101000a900460ff161515141515611aa257600080fd5b611aab8261250d565b1515611ab657600080fd5b611ac0828461276d565b1515611acb57600080fd5b611ad68183856127d9565b505050565b600060046000838152602001908152602001600020549050919050565b600080600080600b85815481101515611b0d57fe5b9060005260206000209001905080600001549350600460008681526020019081526020016000205492506001600086815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169150509193909250565b6000600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611bd357600080fd5b81601160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b60056020528060005260406000206000915090505481565b60075481565b6000600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611cba57600080fd5b816010819055506010549050919050565b60008060008060006001600087815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169450339350600015156009600088815260200190815260200160002060009054906101000a900460ff161515141515611d3f57600080fd5b60001515600d60149054906101000a900460ff161515141515611d6157600080fd5b6004600087815260200190815260200160002054925082600654016006819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614151515611dbd57600080fd5b611dc68461250d565b1515611dd157600080fd5b823410151515611de057600080fd5b611df6611def84600e54612a3d565b6064612a78565b9150611e023484612a93565b9050600054831015611e4057611e24611e1c8460c8612a3d565b600e54612a78565b6004600088815260200190815260200160002081905550611e6e565b611e56611e4e84607d612a3d565b600e54612a78565b60046000888152602001908152602001600020819055505b611e798585886127d9565b3073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16141515611eef578473ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f193505050501515611eee57600080fd5b5b7f366e81d6675b75f581d1b7b428bc717efb1fa8b4bb542c1d26e15a1bc770baad8684600460008a8152602001908152602001600020548888604051808681526020018581526020018481526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019550505050505060405180910390a13373ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f193505050501515611ff157600080fd5b505050505050565b6040805190810160405280600281526020017f435300000000000000000000000000000000000000000000000000000000000081525081565b60008060008060001515600d60149054906101000a900460ff16151514151561205a57600080fd5b3373ffffffffffffffffffffffffffffffffffffffff166001600087815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415156120c757600080fd5b6010546120d386611adb565b101515156120e057600080fd5b600015156009600087815260200190815260200160002060009054906101000a900460ff16151514151561211357600080fd5b6001600086815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16935061215285611adb565b925061216083600f54612a78565b915061218e601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1686610e2c565b6121ba601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1686611824565b60016009600087815260200190815260200160002060006101000a81548160ff021916908315150217905550600090505b600f5481101561220c576121ff8483612aac565b80806001019150506121eb565b7f129a1a37d679d74a7f8d9195e2631d0d7b8d2b66378e886c62e3fff8bbc5fb5c3386604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a15050505050565b60065481565b6000600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156122e257600080fd5b60001515600d60149054906101000a900460ff16151514151561230457600080fd5b829050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561236257600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690505b6000821015151561237257600080fd5b60086000815480929190600101919050555061238e8183612aac565b505050565b60006001600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614905092915050565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156124b257600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc3073ffffffffffffffffffffffffffffffffffffffff16319081150290604051600060405180830381858888f1935050505015156124ad57600080fd5b61250a565b8073ffffffffffffffffffffffffffffffffffffffff166108fc3073ffffffffffffffffffffffffffffffffffffffff16319081150290604051600060405180830381858888f19350505050151561250957600080fd5b5b50565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614159050919050565b600115156009600083815260200190815260200160002060009054906101000a900460ff16151514151561257957600080fd5b60001515600d60149054906101000a900460ff16151514151561259b57600080fd5b600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000815480929190600101919050555060016005600083815260200190815260200160002054016005600083815260200190815260200160002081905550816001600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600760008154809291906001019190505550600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151561270357600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008154809291906001900391905055505b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f279616fe922aaba6d9d399511c5ab3220a22455d2b3a970dcc395981e97d97c0836040518082815260200191505060405180910390a3505050565b60008273ffffffffffffffffffffffffffffffffffffffff166003600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614905092915050565b60001515600d60149054906101000a900460ff1615151415156127fb57600080fd5b600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000815480929190600101919050555060016005600083815260200190815260200160002054016005600083815260200190815260200160002081905550600760008154809291906001019190505550816001600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151561299957600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008154809291906001900391905055506003600082815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690555b7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef838383604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001828152602001935050505060405180910390a1505050565b6000806000841415612a525760009150612a71565b8284029050828482811515612a6357fe5b04141515612a6d57fe5b8091505b5092915050565b6000808284811515612a8657fe5b0490508091505092915050565b6000828211151515612aa157fe5b818303905092915050565b612ab4612bd1565b60006020604051908101604052804281525091506001600b8054806001018281612ade9190612be5565b916000526020600020900160008590919091506000820151816000015550500390508063ffffffff1681141515612b1457600080fd5b7fd3e00f4b0273236b47634ed9ddd3096ae6bb94d572d60c6ee8f7ddbb1493184e8185604051808381526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060405180910390a1826004600083815260200190815260200160002081905550612ba3600085836127d9565b50505050565b602060405190810160405280600081525090565b602060405190810160405280600081525090565b602060405190810160405280600081525090565b815481835581811511612c0c57818360005260206000209182019101612c0b9190612c11565b5b505050565b612c3591905b80821115612c315760008082016000905550600101612c17565b5090565b905600a165627a7a7230582019899bfb17e185c389368261f2da51f8b3e2582333ecce2bf0a6e5862baa8a3c0029

   Swarm Source:
bzzr://19899bfb17e185c389368261f2da51f8b3e2582333ecce2bf0a6e5862baa8a3c

 

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.