Contract 0x678e840C640F619E17848045D23072844224dD37 5

 

Contract Overview

Cratos: CRTS Token
Balance:
0 Ether

EtherValue:
$0.00

Token:
 
Txn Hash
Method
Block
From
To
Value
0x3b3c4eb9d18f16dd88f01383577c1b022c361cdaa9f0e94780706b4c54fd0ca8Transfer153511012022-08-16 7:45:2512 hrs 11 mins agoBittrex IN  Cratos: CRTS Token0 Ether0.‍0011143830
0x0fccfbd5f233a59253dc342f670b06b85237a5d1da754b7b14155d678e834f57Transfer153511012022-08-16 7:45:2512 hrs 11 mins agoBittrex IN  Cratos: CRTS Token0 Ether0.‍0011143830
0xec05f53362b2a522142aad2161fef438d8ebc9864ee14e58dbdc5d71dd176655Transfer153511012022-08-16 7:45:2512 hrs 11 mins agoBittrex IN  Cratos: CRTS Token0 Ether0.‍0011143830
0xd4b0d762039737c1b528dacce0e0082a633e12c6cb1534a72591f1bc1dfb4d5cTransfer153510932022-08-16 7:43:2712 hrs 13 mins agoBittrex IN  Cratos: CRTS Token0 Ether0.‍0011143830
0x2db1507db89efcfaf72417e0d78c42fc810f3b660e0248a0fb99c232d6241ca2Transfer153510932022-08-16 7:43:2712 hrs 13 mins agoBittrex IN  Cratos: CRTS Token0 Ether0.‍0011143830
0x0688538b531402f7dffb6b278b5d9ff300ca986b902696cc09d762eda0381a6bTransfer153510932022-08-16 7:43:2712 hrs 13 mins agoBittrex IN  Cratos: CRTS Token0 Ether0.‍0011143830
0x5d1b78e04a0c0e25cb18dc8c67fa2160c2da332fb1dec96dca3ef84ad4d2baf5Transfer153510932022-08-16 7:43:2712 hrs 13 mins agoBittrex IN  Cratos: CRTS Token0 Ether0.‍0011143830
0xcb9e861139f118719f5cdb621304cc0c274536c1729d46af6e66c353042cce3fTransfer153510802022-08-16 7:41:2212 hrs 15 mins agoBittrex IN  Cratos: CRTS Token0 Ether0.‍0011143830
0xac0fc9e78e11d831f11ad8bbee9da9abd6dcf67b29262c7414ae6cd886e9942aTransfer153510802022-08-16 7:41:2212 hrs 15 mins agoBittrex IN  Cratos: CRTS Token0 Ether0.‍0011143830
0x600b928977f1aa8ced54f5132a200f6859582fc1fcad361dc0be216248e2821fTransfer153510702022-08-16 7:39:2212 hrs 17 mins agoBittrex IN  Cratos: CRTS Token0 Ether0.‍0011143830
0x1ff0bf7b7ce7eddc98fd9c73b56faa0a30e4416a6d0ffa3c7ca9cb10d0da6f64Transfer153510702022-08-16 7:39:2212 hrs 17 mins agoBittrex IN  Cratos: CRTS Token0 Ether0.‍0011143830
0xbcfbf26ec3fa232c96ed8c4a93e615f3174560c36b2c013c7581845badf107caTransfer153510702022-08-16 7:39:2212 hrs 17 mins agoBittrex IN  Cratos: CRTS Token0 Ether0.‍0011143830
0x84c2572c21d88e8dfbe98dc6b297e20c39f4ed2244d9eebac1452d7b2f5db0e9Transfer153510612022-08-16 7:36:5312 hrs 20 mins agoBittrex IN  Cratos: CRTS Token0 Ether0.‍0011143830
0xf4bcbd49d2effd9fa97ff73265c940bcf8457969549416e5043a293a890d63acTransfer153510612022-08-16 7:36:5312 hrs 20 mins agoBittrex IN  Cratos: CRTS Token0 Ether0.‍0011143830
0x1a41edd7f25de7e83d0f5afe51480a477ae1b23f2072f181e53a31f6f6e75418Transfer153510612022-08-16 7:36:5312 hrs 20 mins agoBittrex IN  Cratos: CRTS Token0 Ether0.‍0011143830
0x2a2a3127109fedb864ad9132e999f99d7162bf25b697d762761b335c71ce68fbTransfer153510552022-08-16 7:35:1412 hrs 21 mins agoBittrex IN  Cratos: CRTS Token0 Ether0.‍0011143830
0x8b9211076a0925ee7ea1d224d69ed48e41f20828919f6c670cd7a854d78fea36Transfer153510552022-08-16 7:35:1412 hrs 21 mins agoBittrex IN  Cratos: CRTS Token0 Ether0.‍0011143830
0xa4f7b59b0de3c700c8d1b9750caa9a13ba0a7f6c8fb0f23181244bc9e02090e7Transfer153510552022-08-16 7:35:1412 hrs 21 mins agoBittrex IN  Cratos: CRTS Token0 Ether0.‍0011143830
0x57b342cdc2a897d27ef479798f315dbb6f9d1e1bdbbaee512ed523132b3dbfa1Transfer153510552022-08-16 7:35:1412 hrs 21 mins agoBittrex IN  Cratos: CRTS Token0 Ether0.‍0011143830
0xbdbb9e79e863200d8d05e9ebedc3e290d118fbea712ec6e0fd5e3679c9280be0Transfer153510442022-08-16 7:33:2012 hrs 23 mins agoBittrex IN  Cratos: CRTS Token0 Ether0.‍0011140230
0xce6f91a18518c4e78e181739dba756af956101b16879ad7a68cacf311c3015d1Transfer153510442022-08-16 7:33:2012 hrs 23 mins agoBittrex IN  Cratos: CRTS Token0 Ether0.‍0011143830
0x1a33b08ff2882bd1240e286ffffe2ac977270a3d3b9127d37aa79aef8d22cd51Transfer153510442022-08-16 7:33:2012 hrs 23 mins agoBittrex IN  Cratos: CRTS Token0 Ether0.‍0011143830
0x7115dff8c79da335a007f48b792494b1682ba371926a8aac3bbd2c7b4f204e1dTransfer153510442022-08-16 7:33:2012 hrs 23 mins agoBittrex IN  Cratos: CRTS Token0 Ether0.‍0011143830
0x63fb44bbc214ffb30e69fbe2200ecff33b26479d58f68afc83feb5410dade735Transfer153510362022-08-16 7:31:2012 hrs 25 mins agoBittrex IN  Cratos: CRTS Token0 Ether0.‍0011143830
0x8c6d567f775fdd373a7c68ce9aa9e23f729926a46fe3758da297a62e5e680b6aTransfer153510362022-08-16 7:31:2012 hrs 25 mins agoBittrex IN  Cratos: CRTS Token0 Ether0.‍0011143830
[ Download CSV Export 

OVERVIEW

CRATOS is an ERC-20 utility token designed to facilitate citizen participation in the CRATOS app, a real-time live vote platform.

View more zero value Internal Transactions in Advanced View mode
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
Cratos_Token

Compiler Version
v0.4.24+commit.e67f0147

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, None license
/**
 *Submitted for verification at Etherscan.io on 2021-06-24
*/

pragma solidity ^0.4.24;

library SafeMath {
    
/**
 * @dev Multiplies two unsigned integers, reverts on overflow.
 */
 
function mul(uint256 _a, uint256 _b) internal pure returns (uint256) {

if (_a == 0) {
return 0;
}

uint256 c = _a * _b;
require(c / _a == _b);
return c;
}

/**
 * @dev Integer division of two unsigned integers truncating the quotient, reverts on division by zero.
 */
 
function div(uint256 _a, uint256 _b) internal pure returns (uint256) {
// Solidity only automatically asserts when dividing by 0
require(_b > 0);
uint256 c = _a / _b;
 // assert(a == b * c + a % b); // There is no case in which this doesn't hold
return c;

}

/**
 * @dev Subtracts two unsigned integers, reverts on overflow (i.e. if subtrahend is greater than minuend).
 */
     
function sub(uint256 _a, uint256 _b) internal pure returns (uint256) {

require(_b <= _a);
return _a - _b;
}

/**
 * @dev Adds two unsigned integers, reverts on overflow.
 */
 
function add(uint256 _a, uint256 _b) internal pure returns (uint256) {

uint256 c = _a + _b;
require(c >= _a);
return c;

}

/**
  * @dev Divides two unsigned integers and returns the remainder (unsigned integer modulo),
  * reverts when dividing by zero.
   */
function mod(uint256 a, uint256 b) internal pure returns (uint256) {
    require(b != 0);
    return a % b;
}
}

/*
 * Ownable
 *
 * Base contract with an owner.
 * Provides onlyOwner modifier, which prevents function from running if it is called by anyone other than the owner.
*/

contract Ownable {
address public owner;
address public newOwner;
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);


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

// allows execution by the owner only

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

modifier onlyNewOwner() {
require(msg.sender != address(0));
require(msg.sender == newOwner);
_;
}

/**
    @dev allows transferring the contract ownership
    the new owner still needs to accept the transfer
    can only be called by the contract owner
    @param _newOwner    new contract owner
*/

function transferOwnership(address _newOwner) public onlyOwner {
require(_newOwner != address(0));
newOwner = _newOwner;
}

/**
    @dev used by a new owner to accept an ownership transfer
*/

function acceptOwnership() public onlyNewOwner {
emit OwnershipTransferred(owner, newOwner);
owner = newOwner;
}
}

/*
    ERC20 Token interface
*/

contract ERC20 {

function totalSupply() public view returns (uint256);
function balanceOf(address who) public view returns (uint256);
function allowance(address owner, address spender) public view returns (uint256);
function transfer(address to, uint256 value) public returns (bool);
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);
event Transfer(address indexed from, address indexed to, uint256 value);
}

interface TokenRecipient {
function receiveApproval(address _from, uint256 _value, address _token, bytes _extraData) external;
}

contract Cratos_Token is ERC20, Ownable {
using SafeMath for uint256;

string public name;
string public symbol;
uint8 public decimals;
uint256 internal initialSupply;
uint256 internal totalSupply_;
mapping(address => uint256) internal balances;
mapping(address => bool) public frozen;
mapping(address => mapping(address => uint256)) internal allowed;

event Burn(address indexed owner, uint256 value);
event Freeze(address indexed holder);
event Unfreeze(address indexed holder);

modifier notFrozen(address _holder) {
require(!frozen[_holder]);
_;
}

constructor() public {
name = "Cratos";
symbol = "CRTS";
decimals = 18;
initialSupply = 100000000000000000000000000000;
totalSupply_ = 100000000000000000000000000000;
balances[owner] = totalSupply_;
emit Transfer(address(0), owner, totalSupply_);
}

function () public payable {
revert();
}

/**
  * @dev Total number of tokens in existence
  */
   
function totalSupply() public view returns (uint256) {
return totalSupply_;
}

/**
 * @dev Transfer token for a specified addresses
 * @param _from The address to transfer from.
 * @param _to The address to transfer to.
 * @param _value The amount to be transferred.
 */ 

function _transfer(address _from, address _to, uint _value) internal {

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);
emit Transfer(_from, _to, _value);
}

/**
 * @dev Transfer token for a specified address
 * @param _to The address to transfer to.
 * @param _value The amount to be transferred.
 */
     
 
function transfer(address _to, uint256 _value) public notFrozen(msg.sender) 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);
emit Transfer(msg.sender, _to, _value);
return true;
}

/**
 * @dev Gets the balance of the specified address.
 * @param _holder The address to query the balance of.
 * @return An uint256 representing the amount owned by the passed address.
 */
 
function balanceOf(address _holder) public view returns (uint256 balance) {
return balances[_holder];
}

/**
 * @dev Transfer tokens from one address to another.
 * Note that while this function emits an Approval event, this is not required as per the specification,
 * and other compliant implementations may not emit the event.
 * @param _from address The address which you want to send tokens from
 * @param _to address The address which you want to transfer to
 * @param _value uint256 the amount of tokens to be transferred
 */
     
function transferFrom(address _from, address _to, uint256 _value) public notFrozen(_from) returns (bool) {

require(_to != address(0));
require(_value <= balances[_from]);
require(_value <= allowed[_from][msg.sender]);
_transfer(_from, _to, _value);
return true;
}

/**
 * @dev Approve the passed address to _spender the specified amount of tokens on behalf of msg.sender.
 * Beware that changing an allowance with this method brings the risk that someone may use both the old
 * and the new allowance by unfortunate transaction ordering. One possible solution to mitigate this
 * race condition is to first reduce the spender's allowance to 0 and set the desired value afterwards:
 * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729
 * @param _spender The address which will spend the funds.
 * @param _value The amount of tokens to be spent.
 */ 

function approve(address _spender, uint256 _value) public returns (bool) {
allowed[msg.sender][_spender] = _value;
emit Approval(msg.sender, _spender, _value);
return true;
}

/**
 * @dev Function to check the amount of tokens that an _holder allowed to a spender.
 * @param _holder address The address which owns the funds.
 * @param _spender address The address which will spend the funds.
 * @return A uint256 specifying the amount of tokens still available for the spender.
*/
     
function allowance(address _holder, address _spender) public view returns (uint256) {
return allowed[_holder][_spender];

}

/**
  * Freeze Account.
 */

function freezeAccount(address _holder) public onlyOwner returns (bool) {

require(!frozen[_holder]);
frozen[_holder] = true;
emit Freeze(_holder);
return true;
}

/**
  * Unfreeze Account.
 */
 
function unfreezeAccount(address _holder) public onlyOwner returns (bool) {

require(frozen[_holder]);
frozen[_holder] = false;
emit Unfreeze(_holder);
return true;
}

/**
  * Token Burn.
 */

function burn(uint256 _value) public onlyOwner returns (bool) {
    
require(_value <= balances[msg.sender]);
address burner = msg.sender;
balances[burner] = balances[burner].sub(_value);
totalSupply_ = totalSupply_.sub(_value);
emit Burn(burner, _value);

return true;
}

/** 
 * @dev Internal function to determine if an address is a contract
 * @param addr The address being queried
 * @return True if `_addr` is a contract
*/
 
function isContract(address addr) internal view returns (bool) {
    
uint size;
assembly{size := extcodesize(addr)}
return size > 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":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_value","type":"uint256"}],"name":"burn","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_holder","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_holder","type":"address"}],"name":"unfreezeAccount","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"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":"frozen","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_holder","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_holder","type":"address"}],"name":"freezeAccount","outputs":[{"name":"","type":"bool"}],"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"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Burn","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"holder","type":"address"}],"name":"Freeze","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"holder","type":"address"}],"name":"Unfreeze","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","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":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Transfer","type":"event"}]

60806040523480156200001157600080fd5b50336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506040805190810160405280600681526020017f437261746f73000000000000000000000000000000000000000000000000000081525060029080519060200190620000e19291906200026a565b506040805190810160405280600481526020017f4352545300000000000000000000000000000000000000000000000000000000815250600390805190602001906200012f9291906200026a565b506012600460006101000a81548160ff021916908360ff1602179055506c01431e0fae6d7217caa00000006005819055506c01431e0fae6d7217caa0000000600681905550600654600760008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6006546040518082815260200191505060405180910390a362000319565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620002ad57805160ff1916838001178555620002de565b82800160010185558215620002de579182015b82811115620002dd578251825591602001919060010190620002c0565b5b509050620002ed9190620002f1565b5090565b6200031691905b8082111562000312576000816000905550600101620002f8565b5090565b90565b61197a80620003296000396000f3006080604052600436106100f1576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306fdde03146100f6578063095ea7b31461018657806318160ddd146101eb57806323b872dd14610216578063313ce5671461029b57806342966c68146102cc57806370a0823114610311578063788649ea1461036857806379ba5097146103c35780638da5cb5b146103da57806395d89b4114610431578063a9059cbb146104c1578063d051665014610526578063d4ee1d9014610581578063dd62ed3e146105d8578063f26c159f1461064f578063f2fde38b146106aa575b600080fd5b34801561010257600080fd5b5061010b6106ed565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561014b578082015181840152602081019050610130565b50505050905090810190601f1680156101785780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561019257600080fd5b506101d1600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061078b565b604051808215151515815260200191505060405180910390f35b3480156101f757600080fd5b5061020061087d565b6040518082815260200191505060405180910390f35b34801561022257600080fd5b50610281600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610887565b604051808215151515815260200191505060405180910390f35b3480156102a757600080fd5b506102b0610a0f565b604051808260ff1660ff16815260200191505060405180910390f35b3480156102d857600080fd5b506102f760048036038101908080359060200190929190505050610a22565b604051808215151515815260200191505060405180910390f35b34801561031d57600080fd5b50610352600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610bd9565b6040518082815260200191505060405180910390f35b34801561037457600080fd5b506103a9600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610c22565b604051808215151515815260200191505060405180910390f35b3480156103cf57600080fd5b506103d8610d7b565b005b3480156103e657600080fd5b506103ef610f14565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561043d57600080fd5b50610446610f39565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561048657808201518184015260208101905061046b565b50505050905090810190601f1680156104b35780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156104cd57600080fd5b5061050c600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610fd7565b604051808215151515815260200191505060405180910390f35b34801561053257600080fd5b50610567600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611257565b604051808215151515815260200191505060405180910390f35b34801561058d57600080fd5b50610596611277565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156105e457600080fd5b50610639600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061129d565b6040518082815260200191505060405180910390f35b34801561065b57600080fd5b50610690600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611324565b604051808215151515815260200191505060405180910390f35b3480156106b657600080fd5b506106eb600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061147e565b005b60028054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156107835780601f1061075857610100808354040283529160200191610783565b820191906000526020600020905b81548152906001019060200180831161076657829003601f168201915b505050505081565b600081600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b6000600654905090565b600083600860008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515156108e357600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415151561091f57600080fd5b600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054831115151561096d57600080fd5b600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483111515156109f857600080fd5b610a03858585611559565b60019150509392505050565b600460009054906101000a900460ff1681565b6000806000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610a8057600080fd5b600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548311151515610ace57600080fd5b339050610b2383600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461191190919063ffffffff16565b600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610b7b8360065461191190919063ffffffff16565b6006819055508073ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5846040518082815260200191505060405180910390a26001915050919050565b6000600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610c7f57600080fd5b600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515610cd757600080fd5b6000600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167fca5069937e68fd197927055037f59d7c90bf75ac104e6e375539ef480c3ad6ee60405160405180910390a260019050919050565b600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151515610db757600080fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610e1357600080fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60038054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610fcf5780601f10610fa457610100808354040283529160200191610fcf565b820191906000526020600020905b815481529060010190602001808311610fb257829003601f168201915b505050505081565b600033600860008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615151561103357600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415151561106f57600080fd5b600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483111515156110bd57600080fd5b61110f83600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461191190919063ffffffff16565b600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506111a483600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461192d90919063ffffffff16565b600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a3600191505092915050565b60086020528060005260406000206000915054906101000a900460ff1681565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561138157600080fd5b600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515156113da57600080fd5b6001600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167faf85b60d26151edd11443b704d424da6c43d0468f2235ebae3d1904dbc32304960405160405180910390a260019050919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156114d957600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561151557600080fd5b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415151561159557600080fd5b600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205481111515156115e357600080fd5b600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054811115151561166e57600080fd5b6116c081600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461191190919063ffffffff16565b600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061175581600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461192d90919063ffffffff16565b600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061182781600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461191190919063ffffffff16565b600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3505050565b600082821115151561192257600080fd5b818303905092915050565b600080828401905083811015151561194457600080fd5b80915050929150505600a165627a7a723058200cbfc05f8219ba44e0bf45a8982fa05114cb40d3034ebe2b3225e8597f38b9170029

Deployed ByteCode Sourcemap

3325:5408:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4189:8;;;3399:18;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3399:18:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;3399:18:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7065:178;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7065:178:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4267:79;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4267:79:0;;;;;;;;;;;;;;;;;;;;;;;6179:271;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6179:271:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3443:21;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3443:21:0;;;;;;;;;;;;;;;;;;;;;;;;;;;8141:280;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8141:280:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5627:105;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5627:105:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7936:172;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7936:172:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2422:115;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2422:115:0;;;;;;1588:20;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1588:20:0;;;;;;;;;;;;;;;;;;;;;;;;;;;3420;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3420:20:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;3420:20:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5101:325;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5101:325:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3580:38;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3580:38:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1611:23;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1611:23:0;;;;;;;;;;;;;;;;;;;;;;;;;;;7565:126;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7565:126:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7728:168;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7728:168:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2220:125;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2220:125:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;3399:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;7065:178::-;7132:4;7173:6;7141:7;:19;7149:10;7141:19;;;;;;;;;;;;;;;:29;7161:8;7141:29;;;;;;;;;;;;;;;:38;;;;7208:8;7187:38;;7196:10;7187:38;;;7218:6;7187:38;;;;;;;;;;;;;;;;;;7235:4;7228:11;;7065:178;;;;:::o;4267:79::-;4311:7;4330:12;;4323:19;;4267:79;:::o;6179:271::-;6278:4;6262:5;3871:6;:15;3878:7;3871:15;;;;;;;;;;;;;;;;;;;;;;;;;3870:16;3862:25;;;;;;;;6312:1;6297:17;;:3;:17;;;;6289:26;;;;;;;;6336:8;:15;6345:5;6336:15;;;;;;;;;;;;;;;;6326:6;:25;;6318:34;;;;;;;;6373:7;:14;6381:5;6373:14;;;;;;;;;;;;;;;:26;6388:10;6373:26;;;;;;;;;;;;;;;;6363:6;:36;;6355:45;;;;;;;;6403:29;6413:5;6420:3;6425:6;6403:9;:29::i;:::-;6442:4;6435:11;;6179:271;;;;;;:::o;3443:21::-;;;;;;;;;;;;;:::o;8141:280::-;8197:4;8254:14;1888:5;;;;;;;;;;;1874:19;;:10;:19;;;1866:28;;;;;;;;8230:8;:20;8239:10;8230:20;;;;;;;;;;;;;;;;8220:6;:30;;8212:39;;;;;;;;8271:10;8254:27;;8303:28;8324:6;8303:8;:16;8312:6;8303:16;;;;;;;;;;;;;;;;:20;;:28;;;;:::i;:::-;8284:8;:16;8293:6;8284:16;;;;;;;;;;;;;;;:47;;;;8349:24;8366:6;8349:12;;:16;;:24;;;;:::i;:::-;8334:12;:39;;;;8386:6;8381:20;;;8394:6;8381:20;;;;;;;;;;;;;;;;;;8413:4;8406:11;;8141:280;;;;:::o;5627:105::-;5684:15;5711:8;:17;5720:7;5711:17;;;;;;;;;;;;;;;;5704:24;;5627:105;;;:::o;7936:172::-;8004:4;1888:5;;;;;;;;;;;1874:19;;:10;:19;;;1866:28;;;;;;;;8023:6;:15;8030:7;8023:15;;;;;;;;;;;;;;;;;;;;;;;;;8015:24;;;;;;;;8060:5;8042:6;:15;8049:7;8042:15;;;;;;;;;;;;;;;;:23;;;;;;;;;;;;;;;;;;8082:7;8073:17;;;;;;;;;;;;8100:4;8093:11;;7936:172;;;:::o;2422:115::-;1963:1;1941:24;;:10;:24;;;;1933:33;;;;;;;;1991:8;;;;;;;;;;;1977:22;;:10;:22;;;1969:31;;;;;;;;2505:8;;;;;;;;;;;2477:37;;2498:5;;;;;;;;;;;2477:37;;;;;;;;;;;;2525:8;;;;;;;;;;;2517:5;;:16;;;;;;;;;;;;;;;;;;2422:115::o;1588:20::-;;;;;;;;;;;;;:::o;3420:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;5101:325::-;5186:4;5165:10;3871:6;:15;3878:7;3871:15;;;;;;;;;;;;;;;;;;;;;;;;;3870:16;3862:25;;;;;;;;5220:1;5205:17;;:3;:17;;;;5197:26;;;;;;;;5244:8;:20;5253:10;5244:20;;;;;;;;;;;;;;;;5234:6;:30;;5226:39;;;;;;;;5291:32;5316:6;5291:8;:20;5300:10;5291:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;5268:8;:20;5277:10;5268:20;;;;;;;;;;;;;;;:55;;;;5342:25;5360:6;5342:8;:13;5351:3;5342:13;;;;;;;;;;;;;;;;:17;;:25;;;;:::i;:::-;5326:8;:13;5335:3;5326:13;;;;;;;;;;;;;;;:41;;;;5396:3;5375:33;;5384:10;5375:33;;;5401:6;5375:33;;;;;;;;;;;;;;;;;;5418:4;5411:11;;5101:325;;;;;:::o;3580:38::-;;;;;;;;;;;;;;;;;;;;;;:::o;1611:23::-;;;;;;;;;;;;;:::o;7565:126::-;7640:7;7659;:16;7667:7;7659:16;;;;;;;;;;;;;;;:26;7676:8;7659:26;;;;;;;;;;;;;;;;7652:33;;7565:126;;;;:::o;7728:168::-;7794:4;1888:5;;;;;;;;;;;1874:19;;:10;:19;;;1866:28;;;;;;;;7814:6;:15;7821:7;7814:15;;;;;;;;;;;;;;;;;;;;;;;;;7813:16;7805:25;;;;;;;;7851:4;7833:6;:15;7840:7;7833:15;;;;;;;;;;;;;;;;:22;;;;;;;;;;;;;;;;;;7870:7;7863:15;;;;;;;;;;;;7888:4;7881:11;;7728:168;;;:::o;2220:125::-;1888:5;;;;;;;;;;;1874:19;;:10;:19;;;1866:28;;;;;;;;2315:1;2294:23;;:9;:23;;;;2286:32;;;;;;;;2332:9;2321:8;;:20;;;;;;;;;;;;;;;;;;2220:125;:::o;4551:387::-;4648:1;4633:17;;:3;:17;;;;4625:26;;;;;;;;4672:8;:15;4681:5;4672:15;;;;;;;;;;;;;;;;4662:6;:25;;4654:34;;;;;;;;4709:7;:14;4717:5;4709:14;;;;;;;;;;;;;;;:26;4724:10;4709:26;;;;;;;;;;;;;;;;4699:6;:36;;4691:45;;;;;;;;4757:27;4777:6;4757:8;:15;4766:5;4757:15;;;;;;;;;;;;;;;;:19;;:27;;;;:::i;:::-;4739:8;:15;4748:5;4739:15;;;;;;;;;;;;;;;:45;;;;4803:25;4821:6;4803:8;:13;4812:3;4803:13;;;;;;;;;;;;;;;;:17;;:25;;;;:::i;:::-;4787:8;:13;4796:3;4787:13;;;;;;;;;;;;;;;:41;;;;4860:38;4891:6;4860:7;:14;4868:5;4860:14;;;;;;;;;;;;;;;:26;4875:10;4860:26;;;;;;;;;;;;;;;;:30;;:38;;;;:::i;:::-;4831:7;:14;4839:5;4831:14;;;;;;;;;;;;;;;:26;4846:10;4831:26;;;;;;;;;;;;;;;:67;;;;4922:3;4906:28;;4915:5;4906:28;;;4927:6;4906:28;;;;;;;;;;;;;;;;;;4551:387;;;:::o;811:112::-;871:7;899:2;893;:8;;885:17;;;;;;;;917:2;912;:7;905:14;;811:112;;;;:::o;998:129::-;1058:7;1072:9;1089:2;1084;:7;1072:19;;1107:2;1102:1;:7;;1094:16;;;;;;;;1120:1;1113:8;;998:129;;;;;:::o

Swarm Source

bzzr://0cbfc05f8219ba44e0bf45a8982fa05114cb40d3034ebe2b3225e8597f38b917
Block Transaction Difficulty Gas Used Reward
Block Uncle Number Difficulty Gas Used Reward
Loading
Loading
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.

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.