ETH Price: $2,635.88 (-3.76%)

Contract

0x0fE31fB2Fe9AE7e84eE9e570c3463f25EE50d31B
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer54806252018-04-21 15:06:482498 days ago1524323208IN
0x0fE31fB2...5EE50d31B
0.01 ETH0.000021421
Transfer53156752018-03-24 22:37:102526 days ago1521931030IN
0x0fE31fB2...5EE50d31B
0.01 ETH0.000021421
Transfer53142052018-03-24 16:41:242526 days ago1521909684IN
0x0fE31fB2...5EE50d31B
0.015 ETH0.000021421
Transfer53141932018-03-24 16:39:072526 days ago1521909547IN
0x0fE31fB2...5EE50d31B
0.015 ETH0.0000211
Burn Tokens52957412018-03-21 14:59:062529 days ago1521644346IN
0x0fE31fB2...5EE50d31B
0 ETH0.0002210
Burn Tokens52086272018-03-06 20:22:452544 days ago1520367765IN
0x0fE31fB2...5EE50d31B
0 ETH0.0000221
Burn Tokens52086272018-03-06 20:22:452544 days ago1520367765IN
0x0fE31fB2...5EE50d31B
0 ETH0.000057661
Send Tokens51771112018-03-01 12:12:542549 days ago1519906374IN
0x0fE31fB2...5EE50d31B
0 ETH0.0005536512
Send Tokens51771012018-03-01 12:10:522549 days ago1519906252IN
0x0fE31fB2...5EE50d31B
0 ETH0.0005467511.9
Transfer51474032018-02-24 10:41:442554 days ago1519468904IN
0x0fE31fB2...5EE50d31B
0.01 ETH0.0011125220
Transfer51331872018-02-22 0:33:572556 days ago1519259637IN
0x0fE31fB2...5EE50d31B
0.2 ETH0.0022806641
Transfer51331842018-02-22 0:32:282556 days ago1519259548IN
0x0fE31fB2...5EE50d31B
0.1 ETH0.0028956641
Transfer51125752018-02-18 12:18:222560 days ago1518956302IN
0x0fE31fB2...5EE50d31B
0.02 ETH0.003003854
Transfer51087212018-02-17 20:55:162561 days ago1518900916IN
0x0fE31fB2...5EE50d31B
0.04 ETH0.000070621
Transfer51021442018-02-16 18:30:542562 days ago1518805854IN
0x0fE31fB2...5EE50d31B
0.03 ETH0.000141252
Transfer50916242018-02-15 0:19:372563 days ago1518653977IN
0x0fE31fB2...5EE50d31B
0.02 ETH0.003531350
Transfer50908782018-02-14 21:17:092564 days ago1518643029IN
0x0fE31fB2...5EE50d31B
0.1 ETH0.000141252
Transfer50614792018-02-09 22:36:282569 days ago1518215788IN
0x0fE31fB2...5EE50d31B
0.02 ETH0.000141252
Transfer50598802018-02-09 16:02:562569 days ago1518192176IN
0x0fE31fB2...5EE50d31B
0.015 ETH0.00028254
Transfer50597602018-02-09 15:30:032569 days ago1518190203IN
0x0fE31fB2...5EE50d31B
0.01 ETH0.000070621
Transfer50561882018-02-09 1:19:512569 days ago1518139191IN
0x0fE31fB2...5EE50d31B
0.015 ETH0.0028250440
Transfer50561732018-02-09 1:16:122569 days ago1518138972IN
0x0fE31fB2...5EE50d31B
0.02326682 ETH0.0008440
Send Tokens50556952018-02-08 23:18:102569 days ago1518131890IN
0x0fE31fB2...5EE50d31B
0 ETH0.000062741
Send Tokens50554332018-02-08 22:17:082570 days ago1518128228IN
0x0fE31fB2...5EE50d31B
0 ETH0.000047611
Send Tokens50552962018-02-08 21:50:542570 days ago1518126654IN
0x0fE31fB2...5EE50d31B
0 ETH0.000062681
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block
From
To
51474032018-02-24 10:41:442554 days ago1519468904
0x0fE31fB2...5EE50d31B
0.01 ETH
51331872018-02-22 0:33:572556 days ago1519259637
0x0fE31fB2...5EE50d31B
0.2 ETH
51331842018-02-22 0:32:282556 days ago1519259548
0x0fE31fB2...5EE50d31B
0.1 ETH
51125752018-02-18 12:18:222560 days ago1518956302
0x0fE31fB2...5EE50d31B
0.02 ETH
51087212018-02-17 20:55:162561 days ago1518900916
0x0fE31fB2...5EE50d31B
0.04 ETH
51021442018-02-16 18:30:542562 days ago1518805854
0x0fE31fB2...5EE50d31B
0.03 ETH
50916242018-02-15 0:19:372563 days ago1518653977
0x0fE31fB2...5EE50d31B
0.02 ETH
50908782018-02-14 21:17:092564 days ago1518643029
0x0fE31fB2...5EE50d31B
0.1 ETH
50614792018-02-09 22:36:282569 days ago1518215788
0x0fE31fB2...5EE50d31B
0.02 ETH
50598802018-02-09 16:02:562569 days ago1518192176
0x0fE31fB2...5EE50d31B
0.015 ETH
50597602018-02-09 15:30:032569 days ago1518190203
0x0fE31fB2...5EE50d31B
0.01 ETH
50561882018-02-09 1:19:512569 days ago1518139191
0x0fE31fB2...5EE50d31B
0.015 ETH
50421802018-02-06 16:57:052572 days ago1517936225
0x0fE31fB2...5EE50d31B
0.02 ETH
50389512018-02-06 3:50:412572 days ago1517889041
0x0fE31fB2...5EE50d31B
0.03000002 ETH
50298902018-02-04 15:25:022574 days ago1517757902
0x0fE31fB2...5EE50d31B
0.01 ETH
50291752018-02-04 12:23:422574 days ago1517747022
0x0fE31fB2...5EE50d31B
0.1 ETH
50228292018-02-03 10:56:412575 days ago1517655401
0x0fE31fB2...5EE50d31B
1 ETH
50199662018-02-02 23:36:482575 days ago1517614608
0x0fE31fB2...5EE50d31B
0.02 ETH
50144942018-02-02 1:10:392576 days ago1517533839
0x0fE31fB2...5EE50d31B
0.15 ETH
50144732018-02-02 1:06:112576 days ago1517533571
0x0fE31fB2...5EE50d31B
0.01 ETH
50140752018-02-01 23:30:062576 days ago1517527806
0x0fE31fB2...5EE50d31B
0.125 ETH
50024992018-01-30 23:48:182578 days ago1517356098
0x0fE31fB2...5EE50d31B
0.01 ETH
50024292018-01-30 23:33:292578 days ago1517355209
0x0fE31fB2...5EE50d31B
0.01 ETH
50023862018-01-30 23:22:242578 days ago1517354544
0x0fE31fB2...5EE50d31B
0.02 ETH
49993832018-01-30 11:03:072579 days ago1517310187
0x0fE31fB2...5EE50d31B
0.03 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
Crowdsale

Compiler Version
v0.4.19+commit.c4cbbb05

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2018-01-09
*/

pragma solidity ^0.4.18;

contract Ownable {
  address public owner;
  event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
  function Ownable() public {
    owner = msg.sender;
  }
  modifier onlyOwner() {
    require(msg.sender == owner);
    _;
  }
  function transferOwnership(address newOwner) public onlyOwner {
    require(newOwner != address(0));
    OwnershipTransferred(owner, newOwner);
    owner = newOwner;
  }
}
library SafeMath {
  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;
  }
  function div(uint256 a, uint256 b) internal pure returns (uint256) {
    uint256 c = a / b;
    return c;
  }
  function sub(uint256 a, uint256 b) internal pure returns (uint256) {
    assert(b <= a);
    return a - b;
  }
  function add(uint256 a, uint256 b) internal pure returns (uint256) {
    uint256 c = a + b;
    assert(c >= a);
    return c;
  }
}
contract ERC20Basic {
  uint256 public totalSupply;
  function balanceOf(address who) public view returns (uint256);
  function transfer(address to, uint256 value) public returns (bool);
  event Transfer(address indexed from, address indexed to, uint256 value);
}
contract ERC20 is ERC20Basic {
  function allowance(address owner, address spender) public view returns (uint256);
  function transferFrom(address from, address to, uint256 value) public returns (bool);
  function approve(address spender, uint256 value) public returns (bool);
  event Approval(address indexed owner, address indexed spender, uint256 value);
}
contract BasicToken is ERC20Basic {
  using SafeMath for uint256;
  mapping(address => uint256) balances;
  function transfer(address _to, uint256 _value) public returns (bool) {
    require(_to != address(0));
    require(_value <= balances[msg.sender]);
    balances[msg.sender] = balances[msg.sender].sub(_value);
    balances[_to] = balances[_to].add(_value);
    Transfer(msg.sender, _to, _value);
    return true;
  }
  function balanceOf(address _owner) public view returns (uint256 balance) {
    return balances[_owner];
  }
}
contract StandardToken is ERC20, BasicToken {
  mapping (address => mapping (address => uint256)) internal allowed;
  function transferFrom(address _from, address _to, uint256 _value) public returns (bool) {
    require(_to != address(0));
    require(_value <= balances[_from]);
    require(_value <= allowed[_from][msg.sender]);
    balances[_from] = balances[_from].sub(_value);
    balances[_to] = balances[_to].add(_value);
    allowed[_from][msg.sender] = allowed[_from][msg.sender].sub(_value);
    Transfer(_from, _to, _value);
    return true;
  }
  function approve(address _spender, uint256 _value) public returns (bool) {
    allowed[msg.sender][_spender] = _value;
    Approval(msg.sender, _spender, _value);
    return true;
  }
  function allowance(address _owner, address _spender) public view returns (uint256) {
    return allowed[_owner][_spender];
  }
  function increaseApproval(address _spender, uint _addedValue) public returns (bool) {
    allowed[msg.sender][_spender] = allowed[msg.sender][_spender].add(_addedValue);
    Approval(msg.sender, _spender, allowed[msg.sender][_spender]);
    return true;
  }
  function decreaseApproval(address _spender, uint _subtractedValue) public returns (bool) {
    uint oldValue = allowed[msg.sender][_spender];
    if (_subtractedValue > oldValue) {
      allowed[msg.sender][_spender] = 0;
    } else {
      allowed[msg.sender][_spender] = oldValue.sub(_subtractedValue);
    }
    Approval(msg.sender, _spender, allowed[msg.sender][_spender]);
    return true;
  }
}

contract BurnableToken is StandardToken {
  event Burn(address indexed burner, uint256 value);
  function burn(uint256 _value) public {
    require(_value > 0);
    require(_value <= balances[msg.sender]);
    address burner = msg.sender;
    balances[burner] = balances[burner].sub(_value);
    totalSupply = totalSupply.sub(_value);
    Burn(burner, _value);
  }
}
contract SpaceKIMToken is BurnableToken {
  string public constant name = "Space KIM Token";
  string public constant symbol = "KIM";
  uint32 public constant decimals = 0;
  uint256 public constant INITIAL_SUPPLY = 37900000;
  function SpaceKIMToken() public {
    totalSupply = INITIAL_SUPPLY;
    balances[msg.sender] = INITIAL_SUPPLY;
  }
}

contract Crowdsale is Ownable {

  using SafeMath for uint;

  SpaceKIMToken public token = new SpaceKIMToken();

  address multisig;
  address restricted;

  uint statusPreSale = 0;

  uint rate;
  uint minAmount;

  uint saleStartDate;
  uint saleFinishDate;

  uint olympStartDate;
  uint olympEndDate;

  uint percentsTeamTokens;
  uint percentsPreSaleTokens;
  uint percentsBountySecondTokens;
  uint percentsOlympicTokens;

  uint endCrowdsaleDate;

  modifier saleIsOn() {
    uint curState = getStatus();
    require(curState != 0 && curState != 5 && curState != 3);
    _;
  }

  modifier isUnderHardCap() {
    uint _availableTokens = token.balanceOf(this);
    uint _tokens = calculateTokens(msg.value);
    uint _minTokens = holdTokensOnStage();
    require(_availableTokens.sub(_tokens) >= _minTokens);
    _;
  }

  modifier checkMinAmount() {
    require(msg.value >= minAmount);
    _;
  }
  function Crowdsale() public {
    multisig = 0x381b16397eF8fB8FFF65F6d3B6E5979C9d38fe40;
    restricted = 0x381b16397eF8fB8FFF65F6d3B6E5979C9d38fe40;
    minAmount = 0.01 * 1 ether;
    rate = 10000;

    saleStartDate = 1515974400; // 15.01.2018 00:00 GMT Main START
    saleFinishDate = 1517961600; // 07.02.2017 00:00 GMT Main END
    //Bounty first
    olympStartDate = 1518134400; // 09.02.2018 00:00 GMT Olymp START
    olympEndDate = 1519516800; // 25.02.2018 00:00 GMT Olymp END
    //Bounty second
    endCrowdsaleDate = 1519948800; // 02.03.2018 00:00 GMT Close Contract

    percentsTeamTokens = 20;
    percentsBountySecondTokens = 5;
    percentsPreSaleTokens = 30;
    percentsOlympicTokens = 15;
  }

  function calculateTokens(uint value) internal constant returns (uint) {
    uint tokens = rate.mul(value).div(1 ether);
    if(getStatus() == 1){
      tokens += tokens.div(2);
    }
    return tokens;
  }

  // 0 - stop
  // 1 - preSale
  // 2 - sale
  // 3 - Bounty First
  // 4 - Olympic games
  // 5 - Bounty Second
  function getStatus() internal constant returns (uint8) {
    if(now > endCrowdsaleDate) {
      return 0;
    } else if(now > olympEndDate && now < endCrowdsaleDate) {
      return 5;
    } else if(now > olympStartDate && now < olympEndDate) {
      return 4;
    } else if(now > saleFinishDate && now < olympStartDate) {
      return 3;
    } else if(now > saleStartDate && now < saleFinishDate) {
      return 2;
    } else if(statusPreSale == 1){
      return 1;
    } else {
      return 0;
    }
  }

  function holdTokensOnStage() public view returns (uint) {
    uint _totalSupply = token.totalSupply();
    uint _percents = 100;
    uint curState = getStatus();
    if(curState == 5) {
      _percents = percentsTeamTokens;//20
    } else if(curState == 4) {
      _percents = percentsTeamTokens.add(percentsBountySecondTokens);//20+5
    } else if(curState == 3) {
      _percents = percentsTeamTokens.add(percentsBountySecondTokens).add(percentsOlympicTokens);//20+5+15
    } else if(curState == 2) {
      _percents = percentsTeamTokens.add(percentsBountySecondTokens).add(percentsOlympicTokens);//20+5+15
    } else if(curState == 1) {
      _percents = _percents.sub(percentsPreSaleTokens);//70
    }
    return _totalSupply.mul(_percents).div(100);
  }

  function onBalance() public view returns (uint) {
    return token.balanceOf(this);
  }

  function availableTokensOnCurrentStage() public view returns (uint) {
    uint _currentHolder = token.balanceOf(this);
    uint _minTokens = holdTokensOnStage();
    return _currentHolder.sub(_minTokens);
  }

  function getStatusInfo() public view returns (string) {
    uint curState = getStatus();
    if(now > endCrowdsaleDate) {
      return "Crowdsale is over";
    } else if(curState == 5) {
      return "Now Bounty #2 token distribution is active";
    } else if(curState == 4) {
      return "Now Olympic Special (ICO #2) is active";
    } else if(curState == 3) {
      return "Now Bounty #1 token distribution is active";
    } else if(curState == 2) {
      return "Now ICO #1 is active";
    } else if(curState == 1) {
      return "Now Pre-ICO is active";
    } else {
      return "The sale of tokens is stopped";
    }
  }

  function setStatus(uint8 newStatus) public onlyOwner {
    require(newStatus == 1 || newStatus == 0);
    statusPreSale = newStatus;
  }

  function burnTokens() public onlyOwner {
    require(now > endCrowdsaleDate);
    uint _totalSupply = token.totalSupply();
    uint _teamTokens = _totalSupply.mul(percentsTeamTokens).div(100);
    token.transfer(restricted, _teamTokens);
    uint _burnTokens = token.balanceOf(this);
    token.burn(_burnTokens);
  }

  function sendTokens(address to, uint tokens) public onlyOwner {
    uint curState = getStatus();
    require(curState == 5 || curState == 3);
    uint _minTokens = holdTokensOnStage();
    require(token.balanceOf(this).sub(tokens) >=  _minTokens);
    token.transfer(to, tokens);
  }

  function createTokens() public saleIsOn isUnderHardCap checkMinAmount payable {
    uint tokens = calculateTokens(msg.value);
    multisig.transfer(msg.value);
    token.transfer(msg.sender, tokens);
  }

  function() external payable {
    createTokens();
  }
}

Contract Security Audit

Contract ABI

[{"constant":false,"inputs":[{"name":"to","type":"address"},{"name":"tokens","type":"uint256"}],"name":"sendTokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"burnTokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"newStatus","type":"uint8"}],"name":"setStatus","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"availableTokensOnCurrentStage","outputs":[{"name":"","type":"uint256"}],"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":"createTokens","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[],"name":"onBalance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"holdTokensOnStage","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getStatusInfo","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"token","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"}]

606060405261000c6101cf565b604051809103906000f080151561002257600080fd5b600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600455341561007257600080fd5b336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555073381b16397ef8fb8fff65f6d3b6e5979c9d38fe40600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555073381b16397ef8fb8fff65f6d3b6e5979c9d38fe40600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550662386f26fc10000600681905550612710600581905550635a5bef00600781905550635a7a4180600881905550635a7ce480600981905550635a91fc80600a81905550635a989400600f819055506014600b819055506005600d81905550601e600c81905550600f600e819055506101df565b6040516114188061186c83390190565b61167e806101ee6000396000f3006060604052600436106100af576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806305ab421d146100b957806308003f78146100fb5780632e49d78b1461011057806373e538fc146101365780638da5cb5b1461015f578063b4427263146101b4578063bfdc35f2146101be578063e2356efd146101e7578063e91c3a3e14610210578063f2fde38b1461029e578063fc0c546a146102d7575b6100b761032c565b005b34156100c457600080fd5b6100f9600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919080359060200190919050506105f1565b005b341561010657600080fd5b61010e61086f565b005b341561011b57600080fd5b610134600480803560ff16906020019091905050610c4a565b005b341561014157600080fd5b610149610cd2565b6040518082815260200191505060405180910390f35b341561016a57600080fd5b610172610ddd565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6101bc61032c565b005b34156101c957600080fd5b6101d1610e02565b6040518082815260200191505060405180910390f35b34156101f257600080fd5b6101fa610ee9565b6040518082815260200191505060405180910390f35b341561021b57600080fd5b6102236110ae565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610263578082015181840152602081019050610248565b50505050905090810190601f1680156102905780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156102a957600080fd5b6102d5600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190505061131c565b005b34156102e257600080fd5b6102ea611471565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b600080610337611497565b60ff1690506000811415801561034e575060058114155b801561035b575060038114155b151561036657600080fd5b6000806000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b151561043057600080fd5b6102c65a03f1151561044157600080fd5b50505060405180519050925061045634611548565b9150610460610ee9565b90508061047683856115b190919063ffffffff16565b1015151561048357600080fd5b600654341015151561049457600080fd5b61049d34611548565b9450600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888f19350505050151561050157600080fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33876000604051602001526040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b15156105ce57600080fd5b6102c65a03f115156105df57600080fd5b50505060405180519050505050505050565b6000806000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561064f57600080fd5b610657611497565b60ff169150600582148061066b5750600382145b151561067657600080fd5b61067e610ee9565b90508061077384600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b151561074a57600080fd5b6102c65a03f1151561075b57600080fd5b505050604051805190506115b190919063ffffffff16565b1015151561078057600080fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb85856000604051602001526040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b151561084d57600080fd5b6102c65a03f1151561085e57600080fd5b505050604051805190505050505050565b60008060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156108cf57600080fd5b600f54421115156108df57600080fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166318160ddd6000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b151561096d57600080fd5b6102c65a03f1151561097e57600080fd5b5050506040518051905092506109b260646109a4600b54866115ca90919063ffffffff16565b61160590919063ffffffff16565b9150600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846000604051602001526040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1515610aa357600080fd5b6102c65a03f11515610ab457600080fd5b5050506040518051905050600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b1515610b8457600080fd5b6102c65a03f11515610b9557600080fd5b505050604051805190509050600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166342966c68826040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050600060405180830381600087803b1515610c3157600080fd5b6102c65a03f11515610c4257600080fd5b505050505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610ca557600080fd5b60018160ff161480610cba575060008160ff16145b1515610cc557600080fd5b8060ff1660048190555050565b6000806000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b1515610d9c57600080fd5b6102c65a03f11515610dad57600080fd5b505050604051805190509150610dc1610ee9565b9050610dd681836115b190919063ffffffff16565b9250505090565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b1515610ec957600080fd5b6102c65a03f11515610eda57600080fd5b50505060405180519050905090565b600080600080600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166318160ddd6000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1515610f7d57600080fd5b6102c65a03f11515610f8e57600080fd5b50505060405180519050925060649150610fa6611497565b60ff1690506005811415610fbe57600b549150611080565b6004811415610fe557610fde600d54600b5461162090919063ffffffff16565b915061107f565b600381141561102057611019600e5461100b600d54600b5461162090919063ffffffff16565b61162090919063ffffffff16565b915061107e565b600281141561105b57611054600e54611046600d54600b5461162090919063ffffffff16565b61162090919063ffffffff16565b915061107d565b600181141561107c57611079600c54836115b190919063ffffffff16565b91505b5b5b5b5b6110a6606461109884866115ca90919063ffffffff16565b61160590919063ffffffff16565b935050505090565b6110b661163e565b60006110c0611497565b60ff169050600f5442111561110c576040805190810160405280601181526020017f43726f776473616c65206973206f7665720000000000000000000000000000008152509150611318565b600581141561117957606060405190810160405280602a81526020017f4e6f7720426f756e747920233220746f6b656e20646973747269627574696f6e81526020017f20697320616374697665000000000000000000000000000000000000000000008152509150611318565b60048114156111e657606060405190810160405280602681526020017f4e6f77204f6c796d706963205370656369616c202849434f202332292069732081526020017f61637469766500000000000000000000000000000000000000000000000000008152509150611318565b600381141561125357606060405190810160405280602a81526020017f4e6f7720426f756e747920233120746f6b656e20646973747269627574696f6e81526020017f20697320616374697665000000000000000000000000000000000000000000008152509150611318565b6002811415611299576040805190810160405280601481526020017f4e6f772049434f202331206973206163746976650000000000000000000000008152509150611318565b60018114156112df576040805190810160405280601581526020017f4e6f77205072652d49434f2069732061637469766500000000000000000000008152509150611318565b6040805190810160405280601d81526020017f5468652073616c65206f6620746f6b656e732069732073746f7070656400000081525091505b5090565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561137757600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156113b357600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600f544211156114ac5760009050611545565b600a54421180156114be5750600f5442105b156114cc5760059050611545565b600954421180156114de5750600a5442105b156114ec5760049050611545565b600854421180156114fe575060095442105b1561150c5760039050611545565b6007544211801561151e575060085442105b1561152c5760029050611545565b600160045414156115405760019050611545565b600090505b90565b60008061157a670de0b6b3a764000061156c856005546115ca90919063ffffffff16565b61160590919063ffffffff16565b90506001611586611497565b60ff1614156115a8576115a360028261160590919063ffffffff16565b810190505b80915050919050565b60008282111515156115bf57fe5b818303905092915050565b60008060008414156115df57600091506115fe565b82840290508284828115156115f057fe5b041415156115fa57fe5b8091505b5092915050565b600080828481151561161357fe5b0490508091505092915050565b600080828401905083811015151561163457fe5b8091505092915050565b6020604051908101604052806000815250905600a165627a7a72305820019961c330c32fc50ffb24b54e7e2b6e9e3b77c0660fd9647d1dfe81ca5ff88800296060604052341561000f57600080fd5b6302424ee06000819055506302424ee0600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506113a7806100716000396000f3006060604052600436106100c5576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306fdde03146100ca578063095ea7b31461015857806318160ddd146101b257806323b872dd146101db5780632ff2e9dc14610254578063313ce5671461027d57806342966c68146102b257806366188463146102d557806370a082311461032f57806395d89b411461037c578063a9059cbb1461040a578063d73dd62314610464578063dd62ed3e146104be575b600080fd5b34156100d557600080fd5b6100dd61052a565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561011d578082015181840152602081019050610102565b50505050905090810190601f16801561014a5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561016357600080fd5b610198600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050610563565b604051808215151515815260200191505060405180910390f35b34156101bd57600080fd5b6101c5610655565b6040518082815260200191505060405180910390f35b34156101e657600080fd5b61023a600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803590602001909190505061065b565b604051808215151515815260200191505060405180910390f35b341561025f57600080fd5b610267610a1a565b6040518082815260200191505060405180910390f35b341561028857600080fd5b610290610a22565b604051808263ffffffff1663ffffffff16815260200191505060405180910390f35b34156102bd57600080fd5b6102d36004808035906020019091905050610a27565b005b34156102e057600080fd5b610315600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050610b8a565b604051808215151515815260200191505060405180910390f35b341561033a57600080fd5b610366600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610e1b565b6040518082815260200191505060405180910390f35b341561038757600080fd5b61038f610e64565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156103cf5780820151818401526020810190506103b4565b50505050905090810190601f1680156103fc5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561041557600080fd5b61044a600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050610e9d565b604051808215151515815260200191505060405180910390f35b341561046f57600080fd5b6104a4600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919080359060200190919050506110c1565b604051808215151515815260200191505060405180910390f35b34156104c957600080fd5b610514600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506112bd565b6040518082815260200191505060405180910390f35b6040805190810160405280600f81526020017f5370616365204b494d20546f6b656e000000000000000000000000000000000081525081565b600081600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b60005481565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415151561069857600080fd5b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482111515156106e657600080fd5b600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054821115151561077157600080fd5b6107c382600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461134490919063ffffffff16565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061085882600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461135d90919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061092a82600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461134490919063ffffffff16565b600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190509392505050565b6302424ee081565b600081565b60008082111515610a3757600080fd5b600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548211151515610a8557600080fd5b339050610ada82600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461134490919063ffffffff16565b600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610b328260005461134490919063ffffffff16565b6000819055508073ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5836040518082815260200191505060405180910390a25050565b600080600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905080831115610c9b576000600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610d2f565b610cae838261134490919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b8373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a3600191505092915050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6040805190810160405280600381526020017f4b494d000000000000000000000000000000000000000000000000000000000081525081565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515610eda57600080fd5b600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548211151515610f2857600080fd5b610f7a82600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461134490919063ffffffff16565b600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061100f82600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461135d90919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b600061115282600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461135d90919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a36001905092915050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600082821115151561135257fe5b818303905092915050565b600080828401905083811015151561137157fe5b80915050929150505600a165627a7a7230582087b487cc2e141f215d1e9dfa7008fadbfc0fc0463f99df22ef50b35462e9a53f0029

Deployed Bytecode

0x6060604052600436106100af576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806305ab421d146100b957806308003f78146100fb5780632e49d78b1461011057806373e538fc146101365780638da5cb5b1461015f578063b4427263146101b4578063bfdc35f2146101be578063e2356efd146101e7578063e91c3a3e14610210578063f2fde38b1461029e578063fc0c546a146102d7575b6100b761032c565b005b34156100c457600080fd5b6100f9600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919080359060200190919050506105f1565b005b341561010657600080fd5b61010e61086f565b005b341561011b57600080fd5b610134600480803560ff16906020019091905050610c4a565b005b341561014157600080fd5b610149610cd2565b6040518082815260200191505060405180910390f35b341561016a57600080fd5b610172610ddd565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6101bc61032c565b005b34156101c957600080fd5b6101d1610e02565b6040518082815260200191505060405180910390f35b34156101f257600080fd5b6101fa610ee9565b6040518082815260200191505060405180910390f35b341561021b57600080fd5b6102236110ae565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610263578082015181840152602081019050610248565b50505050905090810190601f1680156102905780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156102a957600080fd5b6102d5600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190505061131c565b005b34156102e257600080fd5b6102ea611471565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b600080610337611497565b60ff1690506000811415801561034e575060058114155b801561035b575060038114155b151561036657600080fd5b6000806000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b151561043057600080fd5b6102c65a03f1151561044157600080fd5b50505060405180519050925061045634611548565b9150610460610ee9565b90508061047683856115b190919063ffffffff16565b1015151561048357600080fd5b600654341015151561049457600080fd5b61049d34611548565b9450600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888f19350505050151561050157600080fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33876000604051602001526040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b15156105ce57600080fd5b6102c65a03f115156105df57600080fd5b50505060405180519050505050505050565b6000806000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561064f57600080fd5b610657611497565b60ff169150600582148061066b5750600382145b151561067657600080fd5b61067e610ee9565b90508061077384600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b151561074a57600080fd5b6102c65a03f1151561075b57600080fd5b505050604051805190506115b190919063ffffffff16565b1015151561078057600080fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb85856000604051602001526040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b151561084d57600080fd5b6102c65a03f1151561085e57600080fd5b505050604051805190505050505050565b60008060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156108cf57600080fd5b600f54421115156108df57600080fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166318160ddd6000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b151561096d57600080fd5b6102c65a03f1151561097e57600080fd5b5050506040518051905092506109b260646109a4600b54866115ca90919063ffffffff16565b61160590919063ffffffff16565b9150600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846000604051602001526040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1515610aa357600080fd5b6102c65a03f11515610ab457600080fd5b5050506040518051905050600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b1515610b8457600080fd5b6102c65a03f11515610b9557600080fd5b505050604051805190509050600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166342966c68826040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050600060405180830381600087803b1515610c3157600080fd5b6102c65a03f11515610c4257600080fd5b505050505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610ca557600080fd5b60018160ff161480610cba575060008160ff16145b1515610cc557600080fd5b8060ff1660048190555050565b6000806000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b1515610d9c57600080fd5b6102c65a03f11515610dad57600080fd5b505050604051805190509150610dc1610ee9565b9050610dd681836115b190919063ffffffff16565b9250505090565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b1515610ec957600080fd5b6102c65a03f11515610eda57600080fd5b50505060405180519050905090565b600080600080600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166318160ddd6000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1515610f7d57600080fd5b6102c65a03f11515610f8e57600080fd5b50505060405180519050925060649150610fa6611497565b60ff1690506005811415610fbe57600b549150611080565b6004811415610fe557610fde600d54600b5461162090919063ffffffff16565b915061107f565b600381141561102057611019600e5461100b600d54600b5461162090919063ffffffff16565b61162090919063ffffffff16565b915061107e565b600281141561105b57611054600e54611046600d54600b5461162090919063ffffffff16565b61162090919063ffffffff16565b915061107d565b600181141561107c57611079600c54836115b190919063ffffffff16565b91505b5b5b5b5b6110a6606461109884866115ca90919063ffffffff16565b61160590919063ffffffff16565b935050505090565b6110b661163e565b60006110c0611497565b60ff169050600f5442111561110c576040805190810160405280601181526020017f43726f776473616c65206973206f7665720000000000000000000000000000008152509150611318565b600581141561117957606060405190810160405280602a81526020017f4e6f7720426f756e747920233220746f6b656e20646973747269627574696f6e81526020017f20697320616374697665000000000000000000000000000000000000000000008152509150611318565b60048114156111e657606060405190810160405280602681526020017f4e6f77204f6c796d706963205370656369616c202849434f202332292069732081526020017f61637469766500000000000000000000000000000000000000000000000000008152509150611318565b600381141561125357606060405190810160405280602a81526020017f4e6f7720426f756e747920233120746f6b656e20646973747269627574696f6e81526020017f20697320616374697665000000000000000000000000000000000000000000008152509150611318565b6002811415611299576040805190810160405280601481526020017f4e6f772049434f202331206973206163746976650000000000000000000000008152509150611318565b60018114156112df576040805190810160405280601581526020017f4e6f77205072652d49434f2069732061637469766500000000000000000000008152509150611318565b6040805190810160405280601d81526020017f5468652073616c65206f6620746f6b656e732069732073746f7070656400000081525091505b5090565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561137757600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156113b357600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600f544211156114ac5760009050611545565b600a54421180156114be5750600f5442105b156114cc5760059050611545565b600954421180156114de5750600a5442105b156114ec5760049050611545565b600854421180156114fe575060095442105b1561150c5760039050611545565b6007544211801561151e575060085442105b1561152c5760029050611545565b600160045414156115405760019050611545565b600090505b90565b60008061157a670de0b6b3a764000061156c856005546115ca90919063ffffffff16565b61160590919063ffffffff16565b90506001611586611497565b60ff1614156115a8576115a360028261160590919063ffffffff16565b810190505b80915050919050565b60008282111515156115bf57fe5b818303905092915050565b60008060008414156115df57600091506115fe565b82840290508284828115156115f057fe5b041415156115fa57fe5b8091505b5092915050565b600080828481151561161357fe5b0490508091505092915050565b600080828401905083811015151561163457fe5b8091505092915050565b6020604051908101604052806000815250905600a165627a7a72305820019961c330c32fc50ffb24b54e7e2b6e9e3b77c0660fd9647d1dfe81ca5ff8880029

Swarm Source

bzzr://87b487cc2e141f215d1e9dfa7008fadbfc0fc0463f99df22ef50b35462e9a53f

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.