ETH Price: $3,329.61 (+4.03%)

Contract

0xbFd78aebcCF26cb964A7836263143b5ee8072D84
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer120591672021-03-17 23:28:401404 days ago1616023720IN
0xbFd78aeb...ee8072D84
0 ETH00
Transfer114446392020-12-13 12:17:241498 days ago1607861844IN
0xbFd78aeb...ee8072D84
0 ETH0.0008841234.40041677
Transfer112227902020-11-09 10:38:221533 days ago1604918302IN
0xbFd78aeb...ee8072D84
0 ETH0.0011565445
Transfer112227822020-11-09 10:36:501533 days ago1604918210IN
0xbFd78aeb...ee8072D84
0 ETH0.0011565445
Transfer112227712020-11-09 10:34:511533 days ago1604918091IN
0xbFd78aeb...ee8072D84
0 ETH0.0011565445
Transfer112227682020-11-09 10:34:211533 days ago1604918061IN
0xbFd78aeb...ee8072D84
0 ETH0.0011565445
Transfer105919202020-08-04 7:26:321630 days ago1596525992IN
0xbFd78aeb...ee8072D84
0 ETH0.0014392556.00000145
Approve105811832020-08-02 15:22:391631 days ago1596381759IN
0xbFd78aeb...ee8072D84
0 ETH0.0009099640
Transfer98933032020-04-18 1:00:061738 days ago1587171606IN
0xbFd78aeb...ee8072D84
0 ETH0.00002571
Transfer97532822020-03-27 11:45:311760 days ago1585309531IN
0xbFd78aeb...ee8072D84
0 ETH0.00007713
Transfer97531272020-03-27 11:12:191760 days ago1585307539IN
0xbFd78aeb...ee8072D84
0 ETH0.00002571
Transfer97050272020-03-19 23:21:301767 days ago1584660090IN
0xbFd78aeb...ee8072D84
0 ETH0.000033921.32
Transfer97050222020-03-19 23:20:501767 days ago1584660050IN
0xbFd78aeb...ee8072D84
0 ETH0.000061682.4
Transfer96863632020-03-17 2:28:291770 days ago1584412109IN
0xbFd78aeb...ee8072D84
0 ETH0.0003219712.52762544
Transfer95855932020-03-01 13:54:071785 days ago1583070847IN
0xbFd78aeb...ee8072D84
0 ETH0.000077133
Transfer95169312020-02-20 0:32:111796 days ago1582158731IN
0xbFd78aeb...ee8072D84
0 ETH0.000030841.2
Transfer93097712020-01-19 5:07:001828 days ago1579410420IN
0xbFd78aeb...ee8072D84
0 ETH0.00007713
Transfer93097432020-01-19 4:58:451828 days ago1579409925IN
0xbFd78aeb...ee8072D84
0 ETH0.00007713
Transfer93097222020-01-19 4:54:011828 days ago1579409641IN
0xbFd78aeb...ee8072D84
0 ETH0.00007713
Transfer93097082020-01-19 4:50:581828 days ago1579409458IN
0xbFd78aeb...ee8072D84
0 ETH0.00007713
Approve91844572019-12-30 5:48:341848 days ago1577684914IN
0xbFd78aeb...ee8072D84
0 ETH0.000113685
Transfer90997072019-12-13 11:08:531865 days ago1576235333IN
0xbFd78aeb...ee8072D84
0 ETH0.000154136
Transfer90849192019-12-10 20:04:461867 days ago1576008286IN
0xbFd78aeb...ee8072D84
0 ETH0.000036991.44
Transfer88800802019-11-05 21:58:561902 days ago1572991136IN
0xbFd78aeb...ee8072D84
0 ETH0.000025291
Transfer87923222019-10-22 20:09:201916 days ago1571774960IN
0xbFd78aeb...ee8072D84
0 ETH0.000050712
View all transactions

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
PeraToken

Compiler Version
v0.4.24+commit.e67f0147

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2018-08-16
*/

pragma solidity ^0.4.24;

library SafeMath {

  function mul(uint256 a, uint256 b) internal pure returns (uint256 c) {
    if (a == 0) {
      return 0;
    }

    c = a * b;
    assert(c / a == b);
    return c;
  }

  function div(uint256 a, uint256 b) internal pure returns (uint256) {
    return a / b;
  }

  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 c) {
    c = a + b;
    assert(c >= a);
    return c;
  }
}

contract Ownable {
  address public owner;

  event OwnershipRenounced(address indexed previousOwner);
  event OwnershipTransferred(
    address indexed previousOwner,
    address indexed newOwner
  );


  constructor() public {
    owner = msg.sender;
  }

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

  function renounceOwnership() public onlyOwner {
    emit OwnershipRenounced(owner);
    owner = address(0);
  }

  function transferOwnership(address _newOwner) public onlyOwner {
    _transferOwnership(_newOwner);
  }

  function _transferOwnership(address _newOwner) internal {
    require(_newOwner != address(0));
    emit OwnershipTransferred(owner, _newOwner);
    owner = _newOwner;
  }
}

contract Pausable is Ownable {
  event Pause();
  event Unpause();

  bool public paused = false;

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

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

  function pause() onlyOwner whenNotPaused public {
    paused = true;
    emit Pause();
  }

  function unpause() onlyOwner whenPaused public {
    paused = false;
    emit Unpause();
  }
}

contract ERC20Basic {
  function totalSupply() public view returns (uint256);
  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;

  uint256 totalSupply_;

  function totalSupply() public view returns (uint256) {
    return totalSupply_;
  }

  function transfer(address _to, uint256 _value) public returns (bool) {
    require(_value <= balances[msg.sender]);
    require(_to != address(0));

    balances[msg.sender] = balances[msg.sender].sub(_value);
    balances[_to] = balances[_to].add(_value);
    emit Transfer(msg.sender, _to, _value);
    return true;
  }

  function balanceOf(address _owner) public view returns (uint256) {
    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(_value <= balances[_from]);
    require(_value <= allowed[_from][msg.sender]);
    require(_to != address(0));

    balances[_from] = balances[_from].sub(_value);
    balances[_to] = balances[_to].add(_value);
    allowed[_from][msg.sender] = allowed[_from][msg.sender].sub(_value);
    emit Transfer(_from, _to, _value);
    return true;
  }

  function approve(address _spender, uint256 _value) public returns (bool) {
    allowed[msg.sender][_spender] = _value;
    emit 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,
    uint256 _addedValue
  )
    public
    returns (bool)
  {
    allowed[msg.sender][_spender] = (
      allowed[msg.sender][_spender].add(_addedValue));
    emit Approval(msg.sender, _spender, allowed[msg.sender][_spender]);
    return true;
  }

  function decreaseApproval(
    address _spender,
    uint256 _subtractedValue
  )
    public
    returns (bool)
  {
    uint256 oldValue = allowed[msg.sender][_spender];
    if (_subtractedValue >= oldValue) {
      allowed[msg.sender][_spender] = 0;
    } else {
      allowed[msg.sender][_spender] = oldValue.sub(_subtractedValue);
    }
    emit Approval(msg.sender, _spender, allowed[msg.sender][_spender]);
    return true;
  }

}

contract PausableToken is StandardToken, Pausable {

  function transfer(
    address _to,
    uint256 _value
  )
    public
    whenNotPaused
    returns (bool)
  {
    return super.transfer(_to, _value);
  }

  function transferFrom(
    address _from,
    address _to,
    uint256 _value
  )
    public
    whenNotPaused
    returns (bool)
  {
    return super.transferFrom(_from, _to, _value);
  }

  function approve(
    address _spender,
    uint256 _value
  )
    public
    whenNotPaused
    returns (bool)
  {
    return super.approve(_spender, _value);
  }

  function increaseApproval(
    address _spender,
    uint _addedValue
  )
    public
    whenNotPaused
    returns (bool success)
  {
    return super.increaseApproval(_spender, _addedValue);
  }

  function decreaseApproval(
    address _spender,
    uint _subtractedValue
  )
    public
    whenNotPaused
    returns (bool success)
  {
    return super.decreaseApproval(_spender, _subtractedValue);
  }
}


contract PeraToken is PausableToken {

  string public constant name = "PERA";
  string public constant symbol = "PERA";
  uint8 public constant decimals = 8;
  uint256 public constant INITIAL_SUPPLY = 92853735500000000;

  mapping (address => bool) public frozenAccount;

  event FrozenFunds(address target, bool frozen);

  event Transfer(
        address indexed _from,
        address indexed _to,
        uint256 _value
    );

  event Approval(
        address indexed _owner,
        address indexed _spender,
        uint256 _value
    );

  constructor() public {
    totalSupply_ = INITIAL_SUPPLY;
    balances[msg.sender] = INITIAL_SUPPLY;
    emit Transfer(address(0), msg.sender, INITIAL_SUPPLY);
  }

  //implemented the functionality, which checks whether a transfer goes to a contract
  function transfer(address _to, uint256 _value) public returns (bool)
  {
    require(!isContract(_to));
    require(!frozenAccount[msg.sender]);                     // Check if sender is frozen
    require(!frozenAccount[_to]);                       // Check if recipient is frozen
    return super.transfer(_to, _value);
  }

  //this function specifies the possibility of a complete data set transfer
  //the web3_batch_function explains how you use this function
  function batchTransfer(address[] _tos, uint256[] _amount) onlyOwner public whenNotPaused returns (bool success) {
    require(_tos.length == _amount.length);
    uint256 i;
    uint256 sum = 0;

    for(i = 0; i < _amount.length; i++){
        sum = sum.add(_amount[i]);
        require(_tos[i] != address(0));
    }

    require(balances[msg.sender] >= sum);

    for(i = 0; i < _tos.length; i++){
        transfer(_tos[i], _amount[i]);
    }

    return true;
  }

  //false and true as arguments for freeze
  function freezeAccount(address target, bool freeze) onlyOwner public {
        frozenAccount[target] = freeze;
        emit FrozenFunds(target, freeze);
    }

  //as mentioned in the erc223 standard you need a function that checks whether an receiving wallet address is a contract
  function isContract(address _addr) internal view returns(bool is_contract){
        uint length;
        assembly {
            //retrieve the code length/size on target address
            length := extcodesize(_addr)
        }
      return (length>0);
  }
}

Contract Security Audit

Contract ABI

[{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"INITIAL_SUPPLY","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"unpause","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":"_spender","type":"address"},{"name":"_subtractedValue","type":"uint256"}],"name":"decreaseApproval","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"renounceOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"pause","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_tos","type":"address[]"},{"name":"_amount","type":"uint256[]"}],"name":"batchTransfer","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"frozenAccount","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_addedValue","type":"uint256"}],"name":"increaseApproval","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"target","type":"address"},{"name":"freeze","type":"bool"}],"name":"freezeAccount","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"target","type":"address"},{"indexed":false,"name":"frozen","type":"bool"}],"name":"FrozenFunds","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_from","type":"address"},{"indexed":true,"name":"_to","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_owner","type":"address"},{"indexed":true,"name":"_spender","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[],"name":"Pause","type":"event"},{"anonymous":false,"inputs":[],"name":"Unpause","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"}],"name":"OwnershipRenounced","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"}]

60806040526003805460a060020a60ff021916905534801561002057600080fd5b5060038054600160a060020a03191633908117909155670149e1fb008bab00600181905560008281526020818152604080832084905580519384525191927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef929081900390910190a3610ee5806100986000396000f30060806040526004361061011c5763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde038114610121578063095ea7b3146101ab57806318160ddd146101e357806323b872dd1461020a5780632ff2e9dc14610234578063313ce567146102495780633f4ba83a146102745780635c975abb1461028b57806366188463146102a057806370a08231146102c4578063715018a6146102e55780638456cb59146102fa57806388d695b21461030f5780638da5cb5b1461039d57806395d89b4114610121578063a9059cbb146103ce578063b414d4b6146103f2578063d73dd62314610413578063dd62ed3e14610437578063e724529c1461045e578063f2fde38b14610484575b600080fd5b34801561012d57600080fd5b506101366104a5565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610170578181015183820152602001610158565b50505050905090810190601f16801561019d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156101b757600080fd5b506101cf600160a060020a03600435166024356104dc565b604080519115158252519081900360200190f35b3480156101ef57600080fd5b506101f8610507565b60408051918252519081900360200190f35b34801561021657600080fd5b506101cf600160a060020a036004358116906024351660443561050d565b34801561024057600080fd5b506101f861053a565b34801561025557600080fd5b5061025e610546565b6040805160ff9092168252519081900360200190f35b34801561028057600080fd5b5061028961054b565b005b34801561029757600080fd5b506101cf6105c3565b3480156102ac57600080fd5b506101cf600160a060020a03600435166024356105d3565b3480156102d057600080fd5b506101f8600160a060020a03600435166105f7565b3480156102f157600080fd5b50610289610612565b34801561030657600080fd5b50610289610680565b34801561031b57600080fd5b50604080516020600480358082013583810280860185019096528085526101cf95369593946024949385019291829185019084908082843750506040805187358901803560208181028481018201909552818452989b9a9989019892975090820195509350839250850190849080828437509497506106fd9650505050505050565b3480156103a957600080fd5b506103b2610835565b60408051600160a060020a039092168252519081900360200190f35b3480156103da57600080fd5b506101cf600160a060020a0360043516602435610844565b3480156103fe57600080fd5b506101cf600160a060020a03600435166108a6565b34801561041f57600080fd5b506101cf600160a060020a03600435166024356108bb565b34801561044357600080fd5b506101f8600160a060020a03600435811690602435166108df565b34801561046a57600080fd5b50610289600160a060020a0360043516602435151561090a565b34801561049057600080fd5b50610289600160a060020a0360043516610985565b60408051808201909152600481527f5045524100000000000000000000000000000000000000000000000000000000602082015281565b60035460009060a060020a900460ff16156104f657600080fd5b61050083836109a8565b9392505050565b60015490565b60035460009060a060020a900460ff161561052757600080fd5b610532848484610a0e565b949350505050565b670149e1fb008bab0081565b600881565b600354600160a060020a0316331461056257600080fd5b60035460a060020a900460ff16151561057a57600080fd5b6003805474ff0000000000000000000000000000000000000000191690556040517f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b3390600090a1565b60035460a060020a900460ff1681565b60035460009060a060020a900460ff16156105ed57600080fd5b6105008383610b83565b600160a060020a031660009081526020819052604090205490565b600354600160a060020a0316331461062957600080fd5b600354604051600160a060020a03909116907ff8df31144d9c2f0f6b59d69b8b98abd5459d07f2742c4df920b25aae33c6482090600090a26003805473ffffffffffffffffffffffffffffffffffffffff19169055565b600354600160a060020a0316331461069757600080fd5b60035460a060020a900460ff16156106ae57600080fd5b6003805474ff0000000000000000000000000000000000000000191660a060020a1790556040517f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff62590600090a1565b60035460009081908190600160a060020a0316331461071b57600080fd5b60035460a060020a900460ff161561073257600080fd5b835185511461074057600080fd5b5060009050805b83518210156107bc57610778848381518110151561076157fe5b60209081029091010151829063ffffffff610c7216565b90506000600160a060020a0316858381518110151561079357fe5b60209081029091010151600160a060020a031614156107b157600080fd5b600190910190610747565b336000908152602081905260409020548111156107d857600080fd5b600091505b845182101561082a5761081e85838151811015156107f757fe5b90602001906020020151858481518110151561080f57fe5b90602001906020020151610844565b506001909101906107dd565b506001949350505050565b600354600160a060020a031681565b600061084f83610c85565b1561085957600080fd5b3360009081526004602052604090205460ff161561087657600080fd5b600160a060020a03831660009081526004602052604090205460ff161561089c57600080fd5b6105008383610c8d565b60046020526000908152604090205460ff1681565b60035460009060a060020a900460ff16156108d557600080fd5b6105008383610cb1565b600160a060020a03918216600090815260026020908152604080832093909416825291909152205490565b600354600160a060020a0316331461092157600080fd5b600160a060020a038216600081815260046020908152604091829020805460ff191685151590811790915582519384529083015280517f48335238b4855f35377ed80f164e8c6f3c366e54ac00b96a6402d4a9814a03a59281900390910190a15050565b600354600160a060020a0316331461099c57600080fd5b6109a581610d4a565b50565b336000818152600260209081526040808320600160a060020a038716808552908352818420869055815186815291519394909390927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925928290030190a350600192915050565b600160a060020a038316600090815260208190526040812054821115610a3357600080fd5b600160a060020a0384166000908152600260209081526040808320338452909152902054821115610a6357600080fd5b600160a060020a0383161515610a7857600080fd5b600160a060020a038416600090815260208190526040902054610aa1908363ffffffff610dc816565b600160a060020a038086166000908152602081905260408082209390935590851681522054610ad6908363ffffffff610c7216565b600160a060020a03808516600090815260208181526040808320949094559187168152600282528281203382529091522054610b18908363ffffffff610dc816565b600160a060020a03808616600081815260026020908152604080832033845282529182902094909455805186815290519287169391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef929181900390910190a35060019392505050565b336000908152600260209081526040808320600160a060020a0386168452909152812054808310610bd757336000908152600260209081526040808320600160a060020a0388168452909152812055610c0c565b610be7818463ffffffff610dc816565b336000908152600260209081526040808320600160a060020a03891684529091529020555b336000818152600260209081526040808320600160a060020a0389168085529083529281902054815190815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a35060019392505050565b81810182811015610c7f57fe5b92915050565b6000903b1190565b60035460009060a060020a900460ff1615610ca757600080fd5b6105008383610dda565b336000908152600260209081526040808320600160a060020a0386168452909152812054610ce5908363ffffffff610c7216565b336000818152600260209081526040808320600160a060020a0389168085529083529281902085905580519485525191937f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929081900390910190a350600192915050565b600160a060020a0381161515610d5f57600080fd5b600354604051600160a060020a038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a36003805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600082821115610dd457fe5b50900390565b33600090815260208190526040812054821115610df657600080fd5b600160a060020a0383161515610e0b57600080fd5b33600090815260208190526040902054610e2b908363ffffffff610dc816565b3360009081526020819052604080822092909255600160a060020a03851681522054610e5d908363ffffffff610c7216565b600160a060020a038416600081815260208181526040918290209390935580518581529051919233927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a3506001929150505600a165627a7a7230582021e5d496eb08def300c7627e51e188a8107437f57c63f8b6ba4e128dc057e3a20029

Deployed Bytecode

0x60806040526004361061011c5763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde038114610121578063095ea7b3146101ab57806318160ddd146101e357806323b872dd1461020a5780632ff2e9dc14610234578063313ce567146102495780633f4ba83a146102745780635c975abb1461028b57806366188463146102a057806370a08231146102c4578063715018a6146102e55780638456cb59146102fa57806388d695b21461030f5780638da5cb5b1461039d57806395d89b4114610121578063a9059cbb146103ce578063b414d4b6146103f2578063d73dd62314610413578063dd62ed3e14610437578063e724529c1461045e578063f2fde38b14610484575b600080fd5b34801561012d57600080fd5b506101366104a5565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610170578181015183820152602001610158565b50505050905090810190601f16801561019d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156101b757600080fd5b506101cf600160a060020a03600435166024356104dc565b604080519115158252519081900360200190f35b3480156101ef57600080fd5b506101f8610507565b60408051918252519081900360200190f35b34801561021657600080fd5b506101cf600160a060020a036004358116906024351660443561050d565b34801561024057600080fd5b506101f861053a565b34801561025557600080fd5b5061025e610546565b6040805160ff9092168252519081900360200190f35b34801561028057600080fd5b5061028961054b565b005b34801561029757600080fd5b506101cf6105c3565b3480156102ac57600080fd5b506101cf600160a060020a03600435166024356105d3565b3480156102d057600080fd5b506101f8600160a060020a03600435166105f7565b3480156102f157600080fd5b50610289610612565b34801561030657600080fd5b50610289610680565b34801561031b57600080fd5b50604080516020600480358082013583810280860185019096528085526101cf95369593946024949385019291829185019084908082843750506040805187358901803560208181028481018201909552818452989b9a9989019892975090820195509350839250850190849080828437509497506106fd9650505050505050565b3480156103a957600080fd5b506103b2610835565b60408051600160a060020a039092168252519081900360200190f35b3480156103da57600080fd5b506101cf600160a060020a0360043516602435610844565b3480156103fe57600080fd5b506101cf600160a060020a03600435166108a6565b34801561041f57600080fd5b506101cf600160a060020a03600435166024356108bb565b34801561044357600080fd5b506101f8600160a060020a03600435811690602435166108df565b34801561046a57600080fd5b50610289600160a060020a0360043516602435151561090a565b34801561049057600080fd5b50610289600160a060020a0360043516610985565b60408051808201909152600481527f5045524100000000000000000000000000000000000000000000000000000000602082015281565b60035460009060a060020a900460ff16156104f657600080fd5b61050083836109a8565b9392505050565b60015490565b60035460009060a060020a900460ff161561052757600080fd5b610532848484610a0e565b949350505050565b670149e1fb008bab0081565b600881565b600354600160a060020a0316331461056257600080fd5b60035460a060020a900460ff16151561057a57600080fd5b6003805474ff0000000000000000000000000000000000000000191690556040517f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b3390600090a1565b60035460a060020a900460ff1681565b60035460009060a060020a900460ff16156105ed57600080fd5b6105008383610b83565b600160a060020a031660009081526020819052604090205490565b600354600160a060020a0316331461062957600080fd5b600354604051600160a060020a03909116907ff8df31144d9c2f0f6b59d69b8b98abd5459d07f2742c4df920b25aae33c6482090600090a26003805473ffffffffffffffffffffffffffffffffffffffff19169055565b600354600160a060020a0316331461069757600080fd5b60035460a060020a900460ff16156106ae57600080fd5b6003805474ff0000000000000000000000000000000000000000191660a060020a1790556040517f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff62590600090a1565b60035460009081908190600160a060020a0316331461071b57600080fd5b60035460a060020a900460ff161561073257600080fd5b835185511461074057600080fd5b5060009050805b83518210156107bc57610778848381518110151561076157fe5b60209081029091010151829063ffffffff610c7216565b90506000600160a060020a0316858381518110151561079357fe5b60209081029091010151600160a060020a031614156107b157600080fd5b600190910190610747565b336000908152602081905260409020548111156107d857600080fd5b600091505b845182101561082a5761081e85838151811015156107f757fe5b90602001906020020151858481518110151561080f57fe5b90602001906020020151610844565b506001909101906107dd565b506001949350505050565b600354600160a060020a031681565b600061084f83610c85565b1561085957600080fd5b3360009081526004602052604090205460ff161561087657600080fd5b600160a060020a03831660009081526004602052604090205460ff161561089c57600080fd5b6105008383610c8d565b60046020526000908152604090205460ff1681565b60035460009060a060020a900460ff16156108d557600080fd5b6105008383610cb1565b600160a060020a03918216600090815260026020908152604080832093909416825291909152205490565b600354600160a060020a0316331461092157600080fd5b600160a060020a038216600081815260046020908152604091829020805460ff191685151590811790915582519384529083015280517f48335238b4855f35377ed80f164e8c6f3c366e54ac00b96a6402d4a9814a03a59281900390910190a15050565b600354600160a060020a0316331461099c57600080fd5b6109a581610d4a565b50565b336000818152600260209081526040808320600160a060020a038716808552908352818420869055815186815291519394909390927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925928290030190a350600192915050565b600160a060020a038316600090815260208190526040812054821115610a3357600080fd5b600160a060020a0384166000908152600260209081526040808320338452909152902054821115610a6357600080fd5b600160a060020a0383161515610a7857600080fd5b600160a060020a038416600090815260208190526040902054610aa1908363ffffffff610dc816565b600160a060020a038086166000908152602081905260408082209390935590851681522054610ad6908363ffffffff610c7216565b600160a060020a03808516600090815260208181526040808320949094559187168152600282528281203382529091522054610b18908363ffffffff610dc816565b600160a060020a03808616600081815260026020908152604080832033845282529182902094909455805186815290519287169391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef929181900390910190a35060019392505050565b336000908152600260209081526040808320600160a060020a0386168452909152812054808310610bd757336000908152600260209081526040808320600160a060020a0388168452909152812055610c0c565b610be7818463ffffffff610dc816565b336000908152600260209081526040808320600160a060020a03891684529091529020555b336000818152600260209081526040808320600160a060020a0389168085529083529281902054815190815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a35060019392505050565b81810182811015610c7f57fe5b92915050565b6000903b1190565b60035460009060a060020a900460ff1615610ca757600080fd5b6105008383610dda565b336000908152600260209081526040808320600160a060020a0386168452909152812054610ce5908363ffffffff610c7216565b336000818152600260209081526040808320600160a060020a0389168085529083529281902085905580519485525191937f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929081900390910190a350600192915050565b600160a060020a0381161515610d5f57600080fd5b600354604051600160a060020a038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a36003805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600082821115610dd457fe5b50900390565b33600090815260208190526040812054821115610df657600080fd5b600160a060020a0383161515610e0b57600080fd5b33600090815260208190526040902054610e2b908363ffffffff610dc816565b3360009081526020819052604080822092909255600160a060020a03851681522054610e5d908363ffffffff610c7216565b600160a060020a038416600081815260208181526040918290209390935580518581529051919233927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a3506001929150505600a165627a7a7230582021e5d496eb08def300c7627e51e188a8107437f57c63f8b6ba4e128dc057e3a20029

Swarm Source

bzzr://21e5d496eb08def300c7627e51e188a8107437f57c63f8b6ba4e128dc057e3a2

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  ]

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.