ETH Price: $1,442.55 (-9.32%)
 

Overview

ETH Balance

0.066 ETH

Eth Value

$95.21 (@ $1,442.55/ETH)

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
User Assign Elem...130452452021-08-17 21:37:451330 days ago1629236265IN
0xD41D48bE...7b78eAdCa
0.066 ETH0.0146204855
Owner Withdraw54394932018-04-14 14:16:572551 days ago1523715417IN
0xD41D48bE...7b78eAdCa
0 ETH0.000090673
User Offer Submi...53819492018-04-05 0:09:462561 days ago1522886986IN
0xD41D48bE...7b78eAdCa
0 ETH0.000251022
User Upgrade Ele...53253152018-03-26 12:57:482570 days ago1522069068IN
0xD41D48bE...7b78eAdCa
0.003 ETH0.000116822
User Offer Submi...53251712018-03-26 12:21:252570 days ago1522066885IN
0xD41D48bE...7b78eAdCa
0 ETH0.000251142
User Upgrade Ele...53250502018-03-26 11:51:002570 days ago1522065060IN
0xD41D48bE...7b78eAdCa
0.022 ETH0.000086692
User Upgrade Ele...53228862018-03-26 3:12:572570 days ago1522033977IN
0xD41D48bE...7b78eAdCa
0.022 ETH0.000086692
User Upgrade Ele...53227572018-03-26 2:43:502570 days ago1522032230IN
0xD41D48bE...7b78eAdCa
0.001 ETH0.000116832
User Upgrade Ele...53223922018-03-26 1:13:332570 days ago1522026813IN
0xD41D48bE...7b78eAdCa
0.022 ETH0.000086692
User Offer Submi...53222722018-03-26 0:47:472571 days ago1522025267IN
0xD41D48bE...7b78eAdCa
0 ETH0.000125631
User Offer Submi...53219682018-03-25 23:40:322571 days ago1522021232IN
0xD41D48bE...7b78eAdCa
0 ETH0.00012571
User Offer Submi...53219662018-03-25 23:40:102571 days ago1522021210IN
0xD41D48bE...7b78eAdCa
0 ETH0.000125631
User Offer Submi...53219632018-03-25 23:39:342571 days ago1522021174IN
0xD41D48bE...7b78eAdCa
0 ETH0.000125631
User Offer Submi...53219592018-03-25 23:38:232571 days ago1522021103IN
0xD41D48bE...7b78eAdCa
0 ETH0.000125511
User Offer Submi...53219572018-03-25 23:37:552571 days ago1522021075IN
0xD41D48bE...7b78eAdCa
0 ETH0.000125511
User Offer Submi...53219442018-03-25 23:33:302571 days ago1522020810IN
0xD41D48bE...7b78eAdCa
0 ETH0.000125511
User Offer Submi...53219402018-03-25 23:32:142571 days ago1522020734IN
0xD41D48bE...7b78eAdCa
0 ETH0.000125511
User Upgrade Ele...53219292018-03-25 23:29:142571 days ago1522020554IN
0xD41D48bE...7b78eAdCa
0.022 ETH0.000043341
User Upgrade Ele...53216392018-03-25 22:22:062571 days ago1522016526IN
0xD41D48bE...7b78eAdCa
0.022 ETH0.000086692
User Upgrade Ele...53215122018-03-25 21:49:012571 days ago1522014541IN
0xD41D48bE...7b78eAdCa
0.022 ETH0.000116692
User Upgrade Ele...53214362018-03-25 21:30:482571 days ago1522013448IN
0xD41D48bE...7b78eAdCa
0.002 ETH0.000048032
User Upgrade Ele...53214332018-03-25 21:30:092571 days ago1522013409IN
0xD41D48bE...7b78eAdCa
0.002 ETH0.000233644
User Upgrade Ele...53214302018-03-25 21:29:252571 days ago1522013365IN
0xD41D48bE...7b78eAdCa
0.001 ETH0.000233674
User Upgrade Ele...53214282018-03-25 21:29:112571 days ago1522013351IN
0xD41D48bE...7b78eAdCa
0.002 ETH0.000116822
User Upgrade Ele...53214262018-03-25 21:28:402571 days ago1522013320IN
0xD41D48bE...7b78eAdCa
0.002 ETH0.000116822
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Method Block
From
To
Transfer54394932018-04-14 14:16:572551 days ago1523715417
0xD41D48bE...7b78eAdCa
0.43903719 ETH
Transfer52710602018-03-17 11:17:032579 days ago1521285423
0xD41D48bE...7b78eAdCa
1.6559 ETH
Transfer51580452018-02-26 6:07:282598 days ago1519625248
0xD41D48bE...7b78eAdCa
0.00194 ETH
Transfer51547072018-02-25 16:25:292599 days ago1519575929
0xD41D48bE...7b78eAdCa
0.00194 ETH
Transfer51532532018-02-25 10:27:222599 days ago1519554442
0xD41D48bE...7b78eAdCa
0.00194 ETH
Transfer51532272018-02-25 10:22:222599 days ago1519554142
0xD41D48bE...7b78eAdCa
0.0097 ETH
Transfer51530892018-02-25 9:45:442599 days ago1519551944
0xD41D48bE...7b78eAdCa
0.00194 ETH
Transfer51530832018-02-25 9:44:462599 days ago1519551886
0xD41D48bE...7b78eAdCa
0.00194 ETH
Transfer51530832018-02-25 9:44:462599 days ago1519551886
0xD41D48bE...7b78eAdCa
0.00194 ETH
Transfer51530762018-02-25 9:43:532599 days ago1519551833
0xD41D48bE...7b78eAdCa
0.00097 ETH
Transfer51530752018-02-25 9:43:432599 days ago1519551823
0xD41D48bE...7b78eAdCa
0.00194 ETH
Transfer51530492018-02-25 9:37:502599 days ago1519551470
0xD41D48bE...7b78eAdCa
0.00097 ETH
Transfer51530492018-02-25 9:37:502599 days ago1519551470
0xD41D48bE...7b78eAdCa
0.00097 ETH
Transfer51530492018-02-25 9:37:502599 days ago1519551470
0xD41D48bE...7b78eAdCa
0.00097 ETH
Transfer51530482018-02-25 9:37:482599 days ago1519551468
0xD41D48bE...7b78eAdCa
0.00097 ETH
Transfer51530482018-02-25 9:37:482599 days ago1519551468
0xD41D48bE...7b78eAdCa
0.00097 ETH
Transfer51530292018-02-25 9:32:562599 days ago1519551176
0xD41D48bE...7b78eAdCa
0.00097 ETH
Transfer51529662018-02-25 9:19:002599 days ago1519550340
0xD41D48bE...7b78eAdCa
0.00097 ETH
Transfer51529632018-02-25 9:18:322599 days ago1519550312
0xD41D48bE...7b78eAdCa
0.00097 ETH
Transfer51529552018-02-25 9:17:322599 days ago1519550252
0xD41D48bE...7b78eAdCa
0.00097 ETH
Transfer51529522018-02-25 9:16:342599 days ago1519550194
0xD41D48bE...7b78eAdCa
0.00097 ETH
Transfer51529512018-02-25 9:16:282599 days ago1519550188
0xD41D48bE...7b78eAdCa
0.00097 ETH
Transfer51515332018-02-25 3:13:052599 days ago1519528385
0xD41D48bE...7b78eAdCa
0.00097 ETH
Transfer51514982018-02-25 3:07:032599 days ago1519528023
0xD41D48bE...7b78eAdCa
0.00097 ETH
Transfer51514032018-02-25 2:45:152599 days ago1519526715
0xD41D48bE...7b78eAdCa
0.00097 ETH
View All Internal Transactions
Loading...
Loading

Similar Match Source Code
This contract matches the deployed Bytecode of the Source Code for Contract 0x3726Cc0c...8687F385b
The constructor portion of the code might be different and could alter the actual behaviour of the contract

Contract Name:
Crypland

Compiler Version
v0.4.19+commit.c4cbbb05

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion
/**
 *Submitted for verification at Etherscan.io on 2018-02-16
*/

pragma solidity ^0.4.19;

contract Crypland {

  struct Element {uint worth; uint level; uint cooldown;}
  struct Offer {uint startPrice; uint endPrice; uint startBlock; uint endBlock; bool isOffer;}

  bool public paused;
  address public owner;

  Element[][25][4] public elements;
  mapping (uint => mapping (uint => mapping (uint => address))) public addresses;
  mapping (uint => mapping (uint => mapping (uint => Offer))) public offers;

  event ElementBought(uint indexed group, uint indexed asset, uint indexed unit, address user, uint price, uint level, uint worth);
  event ElementUpgraded(uint indexed group, uint indexed asset, uint indexed unit, address user, uint price, uint level, uint worth);
  event ElementTransferred(uint indexed group, uint indexed asset, uint indexed unit, address user, uint price, uint level, uint worth);

  event UserUpgraded(address indexed user, uint group, uint asset, uint unit, uint price);
  event UserSold(address indexed user, uint group, uint asset, uint unit, uint price);
  event UserBought(address indexed user, uint group, uint asset, uint unit, uint price);

  function Crypland() public {
    owner = msg.sender;
    paused = false;
  }

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

  modifier whenNotPaused() {
    require(!paused);
    _;
  }

  modifier whenPaused() {
    require(paused);
    _;
  }

  modifier whenElementHolder(uint group, uint asset, uint unit) {
    require(group >= 0 && group < 4);
    require(asset >= 0 && asset < 25);
    require(unit >= 0 && unit < elements[group][asset].length);
    require(addresses[group][asset][unit] == msg.sender);
    _;
  }

  modifier whenNotElementHolder(uint group, uint asset, uint unit) {
    require(group >= 0 && group < 4);
    require(asset >= 0 && asset < 25);
    require(unit >= 0 && unit < elements[group][asset].length);
    require(addresses[group][asset][unit] != msg.sender);
    _;
  }

  function ownerPause() external whenOwner whenNotPaused {
    paused = true;
  }

  function ownerUnpause() external whenOwner whenPaused {
    paused = false;
  }

  function ownerWithdraw(uint amount) external whenOwner {
    owner.transfer(amount);
  }

  function ownerDestroy() external whenOwner {
    selfdestruct(owner);
  }

  function publicGetAsset(uint group, uint asset) view public returns (uint, uint, uint, uint, uint) {
    return (
      calcAssetWorthIndex(asset),
      calcAssetBuyPrice(asset),
      calcAssetUpgradePrice(asset),
      calcAssetMax(asset),
      calcAssetAssigned(group, asset)
    );
  }

  function publicGetElement(uint group, uint asset, uint unit) view public returns (address, uint, uint, uint, uint, bool) {
    return (
      addresses[group][asset][unit],
      elements[group][asset][unit].level,
      calcElementWorth(group, asset, unit),
      calcElementCooldown(group, asset, unit),
      calcElementCurrentPrice(group, asset, unit),
      offers[group][asset][unit].isOffer
    );
  }

  function publicGetElementOffer(uint group, uint asset, uint unit) view public returns (uint, uint, uint, uint, uint) {
    return (
      offers[group][asset][unit].startPrice,
      offers[group][asset][unit].endPrice,
      offers[group][asset][unit].startBlock,
      offers[group][asset][unit].endBlock,
      block.number
    );
  }

  function userAssignElement(uint group, uint asset, address ref) public payable whenNotPaused {
    uint price = calcAssetBuyPrice(asset);

    require(group >= 0 && group < 4);
    require(asset >= 0 && asset < 23);
    require(calcAssetAssigned(group, asset) < calcAssetMax(asset));
    require(msg.value >= price);

    if (ref == address(0) || ref == msg.sender) {
      ref = owner;
    }

    uint paidWorth = uint(block.blockhash(block.number - asset)) % 100 + 1;
    Element memory paidElement = Element(paidWorth, 1, 0);
    uint paidUnit = elements[group][asset].push(paidElement) - 1;
    addresses[group][asset][paidUnit] = msg.sender;

    uint freeWorth = uint(block.blockhash(block.number - paidWorth)) % 100 + 1;
    Element memory freeElement = Element(freeWorth, 1, 0);
    uint freeUnit = elements[group][23].push(freeElement) - 1;
    addresses[group][23][freeUnit] = msg.sender;

    uint refWorth = uint(block.blockhash(block.number - freeWorth)) % 100 + 1;
    Element memory refElement = Element(refWorth, 1, 0);
    uint refUnit = elements[group][24].push(refElement) - 1;
    addresses[group][24][refUnit] = ref;

    ElementBought(group, asset, paidUnit, msg.sender, price, 1, paidWorth);
    ElementBought(group, 23, freeUnit, msg.sender, 0, 1, freeWorth);
    ElementBought(group, 24, refUnit, ref, 0, 1, refWorth);
    UserBought(msg.sender, group, asset, paidUnit, price);
    UserBought(msg.sender, group, 23, freeUnit, 0);
    UserBought(ref, group, 24, refUnit, 0);
  }

  function userUpgradeElement(uint group, uint asset, uint unit) public payable whenNotPaused whenElementHolder(group, asset, unit) {
    uint price = calcAssetUpgradePrice(asset);

    require(elements[group][asset][unit].cooldown < block.number);
    require(msg.value >= price);

    elements[group][asset][unit].level = elements[group][asset][unit].level + 1;
    elements[group][asset][unit].cooldown = block.number + ((elements[group][asset][unit].level - 1) * 120);
    
    ElementUpgraded(group, asset, unit, msg.sender, price, elements[group][asset][unit].level, calcElementWorth(group, asset, unit));
    UserUpgraded(msg.sender, group, asset, unit, price);
  }

  function userOfferSubmitElement(uint group, uint asset, uint unit, uint startPrice, uint endPrice, uint duration) public whenNotPaused whenElementHolder(group, asset, unit) {
    require(!offers[group][asset][unit].isOffer); 
    require(startPrice > 0 && endPrice > 0 && duration > 0 && startPrice >= endPrice);

    offers[group][asset][unit].isOffer = true;
    offers[group][asset][unit].startPrice = startPrice;
    offers[group][asset][unit].endPrice = endPrice;
    offers[group][asset][unit].startBlock = block.number;
    offers[group][asset][unit].endBlock = block.number + duration;
  }

  function userOfferCancelElement(uint group, uint asset, uint unit) public whenNotPaused whenElementHolder(group, asset, unit) {
    require(offers[group][asset][unit].isOffer);
    offers[group][asset][unit].isOffer = false;
    offers[group][asset][unit].startPrice = 0;
    offers[group][asset][unit].endPrice = 0;
    offers[group][asset][unit].startBlock = 0;
    offers[group][asset][unit].endBlock = 0;
  }

  function userOfferAcceptElement(uint group, uint asset, uint unit) public payable whenNotPaused whenNotElementHolder(group, asset, unit) {
    uint price = calcElementCurrentPrice(group, asset, unit);

    require(offers[group][asset][unit].isOffer);
    require(msg.value >= price);

    address seller = addresses[group][asset][unit];

    addresses[group][asset][unit] = msg.sender;
    offers[group][asset][unit].isOffer = false;

    seller.transfer(price * 97 / 100);
    msg.sender.transfer(msg.value - price);

    ElementTransferred(group, asset, unit, msg.sender, price, elements[group][asset][unit].level, calcElementWorth(group, asset, unit));
    UserBought(msg.sender, group, asset, unit, price);
    UserSold(seller, group, asset, unit, price);
  }

  function calcAssetWorthIndex(uint asset) pure internal returns (uint) {
    return asset < 23 ? (24 - asset) : 1;
  }

  function calcAssetBuyPrice(uint asset) pure internal returns (uint) {
    return asset < 23 ? ((24 - asset) * (25 - asset) * 10**15 / 2) : 0;
  }

  function calcAssetUpgradePrice(uint asset) pure internal returns (uint) {
    return calcAssetWorthIndex(asset) * 10**15;
  }

  function calcAssetMax(uint asset) pure internal returns (uint) {
    return asset < 23 ? ((asset + 1) * (asset + 2) / 2) : 2300;
  }

  function calcAssetAssigned(uint group, uint asset) view internal returns (uint) {
    return elements[group][asset].length;
  }

  function calcElementWorth(uint group, uint asset, uint unit) view internal returns (uint) {
    return elements[group][asset][unit].worth + ((elements[group][asset][unit].level - 1) * calcAssetWorthIndex(asset));
  }

  function calcElementCooldown(uint group, uint asset, uint unit) view internal returns (uint) {
    return elements[group][asset][unit].cooldown > block.number ? elements[group][asset][unit].cooldown - block.number : 0;
  }

  function calcElementCurrentPrice(uint group, uint asset, uint unit) view internal returns (uint) {
    uint price = 0;
    if (offers[group][asset][unit].isOffer) {
      if (block.number >= offers[group][asset][unit].endBlock) {
        price = offers[group][asset][unit].endPrice;
      } else if (block.number <= offers[group][asset][unit].startBlock) {
        price = offers[group][asset][unit].startPrice;
      } else if (offers[group][asset][unit].endPrice == offers[group][asset][unit].startPrice) {
        price = offers[group][asset][unit].endPrice;
      } else {
        uint currentBlockChange = block.number - offers[group][asset][unit].startBlock;
        uint totalBlockChange = offers[group][asset][unit].endBlock - offers[group][asset][unit].startBlock;
        uint totalPriceChange = offers[group][asset][unit].startPrice - offers[group][asset][unit].endPrice;
        uint currentPriceChange = currentBlockChange * totalPriceChange / totalBlockChange;
        price = offers[group][asset][unit].startPrice - currentPriceChange;
      }
    }

    return price;
  }
}

Contract Security Audit

Contract ABI

API
[{"constant":false,"inputs":[],"name":"ownerUnpause","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"ownerDestroy","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"group","type":"uint256"},{"name":"asset","type":"uint256"}],"name":"publicGetAsset","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"},{"name":"","type":"uint256"},{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"name":"elements","outputs":[{"name":"worth","type":"uint256"},{"name":"level","type":"uint256"},{"name":"cooldown","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"amount","type":"uint256"}],"name":"ownerWithdraw","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"paused","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"group","type":"uint256"},{"name":"asset","type":"uint256"},{"name":"unit","type":"uint256"},{"name":"startPrice","type":"uint256"},{"name":"endPrice","type":"uint256"},{"name":"duration","type":"uint256"}],"name":"userOfferSubmitElement","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"group","type":"uint256"},{"name":"asset","type":"uint256"},{"name":"unit","type":"uint256"}],"name":"userOfferAcceptElement","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"group","type":"uint256"},{"name":"asset","type":"uint256"},{"name":"unit","type":"uint256"}],"name":"userUpgradeElement","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"name":"offers","outputs":[{"name":"startPrice","type":"uint256"},{"name":"endPrice","type":"uint256"},{"name":"startBlock","type":"uint256"},{"name":"endBlock","type":"uint256"},{"name":"isOffer","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"ownerPause","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"name":"addresses","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"group","type":"uint256"},{"name":"asset","type":"uint256"},{"name":"unit","type":"uint256"}],"name":"userOfferCancelElement","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"group","type":"uint256"},{"name":"asset","type":"uint256"},{"name":"unit","type":"uint256"}],"name":"publicGetElement","outputs":[{"name":"","type":"address"},{"name":"","type":"uint256"},{"name":"","type":"uint256"},{"name":"","type":"uint256"},{"name":"","type":"uint256"},{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"group","type":"uint256"},{"name":"asset","type":"uint256"},{"name":"ref","type":"address"}],"name":"userAssignElement","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[{"name":"group","type":"uint256"},{"name":"asset","type":"uint256"},{"name":"unit","type":"uint256"}],"name":"publicGetElementOffer","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"},{"name":"","type":"uint256"},{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"group","type":"uint256"},{"indexed":true,"name":"asset","type":"uint256"},{"indexed":true,"name":"unit","type":"uint256"},{"indexed":false,"name":"user","type":"address"},{"indexed":false,"name":"price","type":"uint256"},{"indexed":false,"name":"level","type":"uint256"},{"indexed":false,"name":"worth","type":"uint256"}],"name":"ElementBought","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"group","type":"uint256"},{"indexed":true,"name":"asset","type":"uint256"},{"indexed":true,"name":"unit","type":"uint256"},{"indexed":false,"name":"user","type":"address"},{"indexed":false,"name":"price","type":"uint256"},{"indexed":false,"name":"level","type":"uint256"},{"indexed":false,"name":"worth","type":"uint256"}],"name":"ElementUpgraded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"group","type":"uint256"},{"indexed":true,"name":"asset","type":"uint256"},{"indexed":true,"name":"unit","type":"uint256"},{"indexed":false,"name":"user","type":"address"},{"indexed":false,"name":"price","type":"uint256"},{"indexed":false,"name":"level","type":"uint256"},{"indexed":false,"name":"worth","type":"uint256"}],"name":"ElementTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"user","type":"address"},{"indexed":false,"name":"group","type":"uint256"},{"indexed":false,"name":"asset","type":"uint256"},{"indexed":false,"name":"unit","type":"uint256"},{"indexed":false,"name":"price","type":"uint256"}],"name":"UserUpgraded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"user","type":"address"},{"indexed":false,"name":"group","type":"uint256"},{"indexed":false,"name":"asset","type":"uint256"},{"indexed":false,"name":"unit","type":"uint256"},{"indexed":false,"name":"price","type":"uint256"}],"name":"UserSold","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"user","type":"address"},{"indexed":false,"name":"group","type":"uint256"},{"indexed":false,"name":"asset","type":"uint256"},{"indexed":false,"name":"unit","type":"uint256"},{"indexed":false,"name":"price","type":"uint256"}],"name":"UserBought","type":"event"}]

Deployed Bytecode

0x6060604052600436106100f05763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630f861ca381146100f55780632957da231461010a5780632e86cb131461011d5780632eca51e21461016857806333f707d1146101a85780635c975abb146101be578063742d9fa3146101e557806378644a4a1461020a5780637ae818011461021b5780638714b0281461022c5780638da5cb5b14610279578063967f1cc6146102a85780639bcf8ca2146102bb578063b3c4ee17146102d7578063bfe86bbe146102f3578063cc305ae614610352578063e5ee8dae1461036c575b600080fd5b341561010057600080fd5b610108610388565b005b341561011557600080fd5b6101086103c5565b341561012857600080fd5b6101366004356024356103f8565b604051808681526020018581526020018481526020018381526020018281526020019550505050505060405180910390f35b341561017357600080fd5b610184600435602435604435610441565b60405180848152602001838152602001828152602001935050505060405180910390f35b34156101b357600080fd5b610108600435610494565b34156101c957600080fd5b6101d16104ef565b604051901515815260200160405180910390f35b34156101f057600080fd5b61010860043560243560443560643560843560a4356104f8565b610108600435602435604435610671565b6101086004356024356044356109af565b341561023757600080fd5b610248600435602435604435610ce7565b60405194855260208501939093526040808501929092526060840152901515608083015260a0909101905180910390f35b341561028457600080fd5b61028c610d2a565b604051600160a060020a03909116815260200160405180910390f35b34156102b357600080fd5b610108610d3e565b34156102c657600080fd5b61028c600435602435604435610d7d565b34156102e257600080fd5b610108600435602435604435610da9565b34156102fe57600080fd5b61030f600435602435604435610ee1565b604051600160a060020a03909616865260208601949094526040808601939093526060850191909152608084015290151560a083015260c0909101905180910390f35b610108600435602435600160a060020a0360443516610fd2565b341561037757600080fd5b610136600435602435604435611567565b60005433600160a060020a0390811661010090920416146103a857600080fd5b60005460ff1615156103b957600080fd5b6000805460ff19169055565b60005433600160a060020a0390811661010090920416146103e557600080fd5b6000546101009004600160a060020a0316ff5b6000806000806000610409866115a3565b610412876115bf565b61041b886115ee565b61042489611608565b61042e8b8b611629565b939b929a50909850965090945092505050565b6001836004811061044e57fe5b601902018260198110151561045f57fe5b0180548290811061046c57fe5b6000918252602090912060039091020180546001820154600290920154909450909250905083565b60005433600160a060020a0390811661010090920416146104b457600080fd5b6000546101009004600160a060020a03166108fc82150282604051600060405180830381858888f1935050505015156104ec57600080fd5b50565b60005460ff1681565b60005460ff161561050857600080fd5b8585856000831015801561051c5750600483105b151561052757600080fd5b600082101580156105385750601982105b151561054357600080fd5b6000811015801561057257506001836004811061055c57fe5b601902018260198110151561056d57fe5b015481105b151561057d57600080fd5b6000838152606560209081526040808320858452825280832084845290915290205433600160a060020a039081169116146105b757600080fd5b60008981526066602090815260408083208b845282528083208a845290915290206004015460ff16156105e957600080fd5b6000861180156105f95750600085115b80156106055750600084115b80156106115750848610155b151561061c57600080fd5b5050506000958652606660209081526040808820968852958152858720948752939093529290932060048101805460ff1916600190811790915593815592830191909155436002830181905501600390910155565b60008054819060ff161561068457600080fd5b848484600083101580156106985750600483105b15156106a357600080fd5b600082101580156106b45750601982105b15156106bf57600080fd5b600081101580156106ee5750600183600481106106d857fe5b60190201826019811015156106e957fe5b015481105b15156106f957600080fd5b6000838152606560209081526040808320858452825280832084845290915290205433600160a060020a039081169116141561073457600080fd5b61073f888888611652565b60008981526066602090815260408083208b845282528083208a845290915290206004015490955060ff16151561077557600080fd5b348590101561078357600080fd5b60008881526065602090815260408083208a845282528083208984528252808320805433600160a060020a0390811673ffffffffffffffffffffffffffffffffffffffff198316179092558c8552606684528285208c865284528285208b86529093529220600401805460ff19169055169350836108fc606460618802049081150290604051600060405180830381858888f19350505050151561082657600080fd5b33600160a060020a03166108fc8634039081150290604051600060405180830381858888f19350505050151561085b57600080fd5b8587897f6a85e252bffc4a556713aa5cb29a0aabc50691318a65d2c92c351c357702b50433896001846004811061088e57fe5b601902018d60198110151561089f57fe5b0180548d9081106108ac57fe5b9060005260206000209060030201600101546108c98f8f8f611817565b6040518085600160a060020a0316600160a060020a0316815260200184815260200183815260200182815260200194505050505060405180910390a433600160a060020a03166000805160206119c1833981519152898989896040518085815260200184815260200183815260200182815260200194505050505060405180910390a283600160a060020a03167fe7f1c4686ba7fb97990650d29db3cc9e34617d52a534f278be81ef50ebaab0a2898989896040518085815260200184815260200183815260200182815260200194505050505060405180910390a25050505050505050565b6000805460ff16156109c057600080fd5b838383600083101580156109d45750600483105b15156109df57600080fd5b600082101580156109f05750601982105b15156109fb57600080fd5b60008110158015610a2a575060018360048110610a1457fe5b6019020182601981101515610a2557fe5b015481105b1515610a3557600080fd5b6000838152606560209081526040808320858452825280832084845290915290205433600160a060020a03908116911614610a6f57600080fd5b610a78866115ee565b93504360018860048110610a8857fe5b6019020187601981101515610a9957fe5b01805487908110610aa657fe5b906000526020600020906003020160020154101515610ac457600080fd5b3484901015610ad257600080fd5b60018760048110610adf57fe5b6019020186601981101515610af057fe5b01805486908110610afd57fe5b906000526020600020906003020160010154600101600188600481101515610b2157fe5b6019020187601981101515610b3257fe5b01805487908110610b3f57fe5b90600052602060002090600302016001018190555060018088600481101515610b6457fe5b6019020187601981101515610b7557fe5b01805487908110610b8257fe5b906000526020600020906003020160010154036078024301600188600481101515610ba957fe5b6019020187601981101515610bba57fe5b01805487908110610bc757fe5b60009182526020909120600260039092020101558486887f46deb2794deb4b2d58bac1d38642c429fa811ea8ded802df89ec7c3728e74bdc338860018460048110610c0e57fe5b601902018c601981101515610c1f57fe5b0180548c908110610c2c57fe5b906000526020600020906003020160010154610c498e8e8e611817565b6040518085600160a060020a0316600160a060020a0316815260200184815260200183815260200182815260200194505050505060405180910390a433600160a060020a03167fe5604559f39235655cacc870ba95dd4fcb4a9f6ae3dd4b07a9f3931f0d77344e888888886040518085815260200184815260200183815260200182815260200194505050505060405180910390a250505050505050565b6066602090815260009384526040808520825292845282842090528252902080546001820154600283015460038401546004909401549293919290919060ff1685565b6000546101009004600160a060020a031681565b60005433600160a060020a039081166101009092041614610d5e57600080fd5b60005460ff1615610d6e57600080fd5b6000805460ff19166001179055565b6065602090815260009384526040808520825292845282842090528252902054600160a060020a031681565b60005460ff1615610db957600080fd5b82828260008310158015610dcd5750600483105b1515610dd857600080fd5b60008210158015610de95750601982105b1515610df457600080fd5b60008110158015610e23575060018360048110610e0d57fe5b6019020182601981101515610e1e57fe5b015481105b1515610e2e57600080fd5b6000838152606560209081526040808320858452825280832084845290915290205433600160a060020a03908116911614610e6857600080fd5b6000868152606660209081526040808320888452825280832087845290915290206004015460ff161515610e9b57600080fd5b505050600092835260666020908152604080852093855292815282842091845252812060048101805460ff19169055818155600181018290556002810182905560030155565b6000838152606560209081526040808320858452825280832084845290915281205481908190819081908190600160a060020a031660018a60048110610f2357fe5b6019020189601981101515610f3457fe5b01805489908110610f4157fe5b906000526020600020906003020160010154610f5e8b8b8b611817565b610f698c8c8c6118ab565b610f748d8d8d611652565b606660008f815260200190815260200160002060008e815260200190815260200160002060008d815260200190815260200160002060040160009054906101000a900460ff1695509550955095509550955093975093979195509350565b600080610fdd61193f565b600080610fe861193f565b600080610ff361193f565b6000805460ff161561100457600080fd5b61100d8c6115bf565b995060008d10158015611020575060048d105b151561102b57600080fd5b60008c1015801561103c575060178c105b151561104757600080fd5b6110508c611608565b61105a8e8e611629565b1061106457600080fd5b348a90101561107257600080fd5b600160a060020a038b161580611099575033600160a060020a03168b600160a060020a0316145b156110b2576000546101009004600160a060020a03169a505b6064438d9003400660010198506060604051908101604052808a815260200160018152602001600081525097506001808e6004811015156110ef57fe5b601902018d60198110151561110057fe5b018054600181016111118382611961565b600092835260209092208b9160030201815181556020820151816001015560408201518160020155505003965033606560008f815260200190815260200160002060008e8152602001908152602001600020600089815260200190815260200160002060006101000a815481600160a060020a030219169083600160a060020a03160217905550606489430340600190048115156111ab57fe5b06600101955060606040519081016040528087815260200160018152602001600081525094506001808e6004811015156111e157fe5b601902016017018054600181016111f88382611961565b6000928352602090922088916003020181518155602082015181600101556040820151600291909101555060008f81526065602090815260408083206017845282528083209490930380835293905220805473ffffffffffffffffffffffffffffffffffffffff191633600160a060020a031617905593506064438790034006600101925060606040519081016040528084815260200160018152602001600081525091506001808e6004811015156112ad57fe5b601902016018018054600181016112c48382611961565b6000928352602090922085916003020181518155602082015181600101556040820151816002015550500390508a606560008f8152602001908152602001600020600060188152602001908152602001600020600083815260200190815260200160002060006101000a815481600160a060020a030219169083600160a060020a03160217905550868c8e7f3c6bf5821b17026de41d5a07d58d88690d3b7425cf128aa724b6927f068d96f5338e60018f6040518085600160a060020a0316600160a060020a0316815260200184815260200183815260200182815260200194505050505060405180910390a48360178e7f3c6bf5821b17026de41d5a07d58d88690d3b7425cf128aa724b6927f068d96f533600060018c6040518085600160a060020a0316600160a060020a0316815260200184815260200183815260200182815260200194505050505060405180910390a48060188e7f3c6bf5821b17026de41d5a07d58d88690d3b7425cf128aa724b6927f068d96f58e60006001896040518085600160a060020a0316600160a060020a0316815260200184815260200183815260200182815260200194505050505060405180910390a433600160a060020a03166000805160206119c18339815191528e8e8a8e6040518085815260200184815260200183815260200182815260200194505050505060405180910390a233600160a060020a03166000805160206119c18339815191528e60178760006040518085815260200184815260200183815260200182815260200194505050505060405180910390a28a600160a060020a03166000805160206119c18339815191528e60188460006040518085815260200184815260200183815260200182815260200194505050505060405180910390a250505050505050505050505050565b60009283526066602090815260408085209385529281528284209184525290208054600182015460028301546003909301549193909291904390565b6000601782106115b45760016115b9565b816018035b92915050565b6000601782106115d05760006115b9565b600266038d7ea4c680006018849003601985900302025b0492915050565b60006115f9826115a3565b66038d7ea4c680000292915050565b60006017821061161a576108fc6115b9565b600260018301838201026115e7565b60006001836004811061163857fe5b601902018260198110151561164957fe5b01549392505050565b600083815260666020908152604080832085845282528083208484529091528120600401548190819081908190819060ff161561180a5760008981526066602090815260408083208b845282528083208a845290915290206003015443106116e05760008981526066602090815260408083208b845282528083208a8452909152902060010154945061180a565b60008981526066602090815260408083208b845282528083208a845290915290206002015443116117345760008981526066602090815260408083208b845282528083208a8452909152902054945061180a565b60008981526066602090815260408083208b845282528083208a845290915290208054600190910154141561178f5760008981526066602090815260408083208b845282528083208a8452909152902060010154945061180a565b60008981526066602090815260408083208b845282528083208a8452909152902060028101546003820154600183015492544383900397509190039450039150828285028115156117dc57fe5b60008b81526066602090815260408083208d845282528083208c845290915290205491900490819003955090505b5092979650505050505050565b6000611822836115a3565b600180866004811061183057fe5b601902018560198110151561184157fe5b0180548590811061184e57fe5b906000526020600020906003020160010154030260018560048110151561187157fe5b601902018460198110151561188257fe5b0180548490811061188f57fe5b9060005260206000209060030201600001540190509392505050565b600043600185600481106118bb57fe5b60190201846019811015156118cc57fe5b018054849081106118d957fe5b906000526020600020906003020160020154116118f7576000611937565b436001856004811061190557fe5b601902018460198110151561191657fe5b0180548490811061192357fe5b906000526020600020906003020160020154035b949350505050565b6060604051908101604052806000815260200160008152602001600081525090565b81548183558181151161198d5760030281600302836000526020600020918201910161198d9190611992565b505050565b6119bd91905b808211156119b9576000808255600182018190556002820155600301611998565b5090565b905600a9746acf5be5f9ac6f1b83c9b93c93bee44e1a15a8a22375b09a91fd5840eddca165627a7a72305820b1c60f6868962b5c1fb22e9cd62fa68ad74882ed89d9045fac5436980de087080029

Swarm Source

bzzr://b1c60f6868962b5c1fb22e9cd62fa68ad74882ed89d9045fac5436980de08708

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.