ETH Price: $3,400.13 (+1.97%)

Token

BlockCAT (CAT)
 

Overview

Max Total Supply

9,200,151.38980767339651393 CAT

Holders

4,397 (0.00%)

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
202.5 CAT

Value
$0.00
0xe8cb6b154b09880e937ae6ddf96ad50970711475
Loading...
Loading
Loading...
Loading
Loading...
Loading

OVERVIEW

BlockCAT lets anyone create, manage, and deploy smart contracts on the Ethereum blockchain with just a few clicks. No programming required.

# Exchange Pair Price  24H Volume % Volume

Contract Source Code Verified (Exact Match)

Contract Name:
CATToken

Compiler Version
v0.4.11+commit.68ef5810

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2017-07-14
*/

pragma solidity^0.4.11;

/**
 * Math operations with safety checks
 */
library SafeMath {
  function mul(uint a, uint b) internal returns (uint) {
    uint c = a * b;
    assert(a == 0 || c / a == b);
    return c;
  }

  function div(uint a, uint b) internal returns (uint) {
    // assert(b > 0); // Solidity automatically throws when dividing by 0
    uint c = a / b;
    // assert(a == b * c + a % b); // There is no case in which this doesn't hold
    return c;
  }

  function sub(uint a, uint b) internal returns (uint) {
    assert(b <= a);
    return a - b;
  }

  function add(uint a, uint b) internal returns (uint) {
    uint c = a + b;
    assert(c >= a);
    return c;
  }

  function max64(uint64 a, uint64 b) internal constant returns (uint64) {
    return a >= b ? a : b;
  }

  function min64(uint64 a, uint64 b) internal constant returns (uint64) {
    return a < b ? a : b;
  }

  function max256(uint256 a, uint256 b) internal constant returns (uint256) {
    return a >= b ? a : b;
  }

  function min256(uint256 a, uint256 b) internal constant returns (uint256) {
    return a < b ? a : b;
  }

  function assert(bool assertion) internal {
    if (!assertion) {
      throw;
    }
  }
}

/**
 * @title ERC20Basic
 * @dev Simpler version of ERC20 interface
 * @dev see https://github.com/ethereum/EIPs/issues/20
 */
contract ERC20Basic {
  uint public totalSupply;
  function balanceOf(address who) constant returns (uint);
  function transfer(address to, uint value);
  event Transfer(address indexed from, address indexed to, uint value);
}

/**
 * @title ERC20 interface
 * @dev see https://github.com/ethereum/EIPs/issues/20
 */
contract ERC20 is ERC20Basic {
  function allowance(address owner, address spender) constant returns (uint);
  function transferFrom(address from, address to, uint value);
  function approve(address spender, uint value);
  event Approval(address indexed owner, address indexed spender, uint value);
}

/**
 * @title Basic token
 * @dev Basic version of StandardToken, with no allowances. 
 */
contract BasicToken is ERC20Basic {
  using SafeMath for uint;

  mapping(address => uint) balances;

  /**
   * @dev Fix for the ERC20 short address attack.
   */
  modifier onlyPayloadSize(uint size) {
     if(msg.data.length < size + 4) {
       throw;
     }
     _;
  }

  /**
  * @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, uint _value) onlyPayloadSize(2 * 32) {
    balances[msg.sender] = balances[msg.sender].sub(_value);
    balances[_to] = balances[_to].add(_value);
    Transfer(msg.sender, _to, _value);
  }

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

}


/**
 * @title Standard ERC20 token
 *
 * @dev Implemantation of the basic standart token.
 * @dev https://github.com/ethereum/EIPs/issues/20
 * @dev Based on code by FirstBlood: https://github.com/Firstbloodio/token/blob/master/smart_contract/FirstBloodToken.sol
 */
contract StandardToken is BasicToken, ERC20 {

  mapping (address => mapping (address => uint)) allowed;


  /**
   * @dev Transfer tokens from one address to another
   * @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 uint the amout of tokens to be transfered
   */
  function transferFrom(address _from, address _to, uint _value) onlyPayloadSize(3 * 32) {
    var _allowance = allowed[_from][msg.sender];

    // Check is not needed because sub(_allowance, _value) will already throw if this condition is not met
    // if (_value > _allowance) throw;

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

  /**
   * @dev Aprove the passed address to spend the specified amount of tokens on beahlf of msg.sender.
   * @param _spender The address which will spend the funds.
   * @param _value The amount of tokens to be spent.
   */
  function approve(address _spender, uint _value) {

    // To change the approve amount you first have to reduce the addresses`
    //  allowance to zero by calling `approve(_spender, 0)` if it is not
    //  already 0 to mitigate the race condition described here:
    //  https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729
    if ((_value != 0) && (allowed[msg.sender][_spender] != 0)) throw;

    allowed[msg.sender][_spender] = _value;
    Approval(msg.sender, _spender, _value);
  }

  /**
   * @dev Function to check the amount of tokens than an owner allowed to a spender.
   * @param _owner address The address which owns the funds.
   * @param _spender address The address which will spend the funds.
   * @return A uint specifing the amount of tokens still avaible for the spender.
   */
  function allowance(address _owner, address _spender) constant returns (uint remaining) {
    return allowed[_owner][_spender];
  }

}


contract CATToken is StandardToken {
	using SafeMath for uint256;
	
	// keccak256 hash of hidden cap
	string public constant HIDDEN_CAP = "0xd22f19d54193ff5e08e7ba88c8e52ec1b9fc8d4e0cf177e1be8a764fa5b375fa";
	
	// Events
	event CreatedCAT(address indexed _creator, uint256 _amountOfCAT);
	event CATRefundedForWei(address indexed _refunder, uint256 _amountOfWei);
	
	// Token data
	string public constant name = "BlockCAT Token";
	string public constant symbol = "CAT";
	uint256 public constant decimals = 18;  // Since our decimals equals the number of wei per ether, we needn't multiply sent values when converting between CAT and ETH.
	string public version = "1.0";
	
	// Addresses and contracts
	address public executor;
	address public devETHDestination;
	address public devCATDestination;
	address public reserveCATDestination;
	
	// Sale data
	bool public saleHasEnded;
	bool public minCapReached;
	bool public allowRefund;
	mapping (address => uint256) public ETHContributed;
	uint256 public totalETHRaised;
	uint256 public saleStartBlock;
	uint256 public saleEndBlock;
	uint256 public saleFirstEarlyBirdEndBlock;
	uint256 public saleSecondEarlyBirdEndBlock;
	uint256 public constant DEV_PORTION = 20;  // In percentage
	uint256 public constant RESERVE_PORTION = 1;  // In percentage
	uint256 public constant ADDITIONAL_PORTION = DEV_PORTION + RESERVE_PORTION;
	uint256 public constant SECURITY_ETHER_CAP = 1000000 ether;
	uint256 public constant CAT_PER_ETH_BASE_RATE = 300;  // 300 CAT = 1 ETH during normal part of token sale
	uint256 public constant CAT_PER_ETH_FIRST_EARLY_BIRD_RATE = 330;
	uint256 public constant CAT_PER_ETH_SECOND_EARLY_BIRD_RATE = 315;
	
	function CATToken(
		address _devETHDestination,
		address _devCATDestination,
		address _reserveCATDestination,
		uint256 _saleStartBlock,
		uint256 _saleEndBlock
	) {
		// Reject on invalid ETH destination address or CAT destination address
		if (_devETHDestination == address(0x0)) throw;
		if (_devCATDestination == address(0x0)) throw;
		if (_reserveCATDestination == address(0x0)) throw;
		// Reject if sale ends before the current block
		if (_saleEndBlock <= block.number) throw;
		// Reject if the sale end time is less than the sale start time
		if (_saleEndBlock <= _saleStartBlock) throw;

		executor = msg.sender;
		saleHasEnded = false;
		minCapReached = false;
		allowRefund = false;
		devETHDestination = _devETHDestination;
		devCATDestination = _devCATDestination;
		reserveCATDestination = _reserveCATDestination;
		totalETHRaised = 0;
		saleStartBlock = _saleStartBlock;
		saleEndBlock = _saleEndBlock;
		saleFirstEarlyBirdEndBlock = saleStartBlock + 6171;  // Equivalent to 24 hours later, assuming 14 second blocks
		saleSecondEarlyBirdEndBlock = saleFirstEarlyBirdEndBlock + 12342;  // Equivalent to 48 hours later after first early bird, assuming 14 second blocks

		totalSupply = 0;
	}
	
	function createTokens() payable external {
		// If sale is not active, do not create CAT
		if (saleHasEnded) throw;
		if (block.number < saleStartBlock) throw;
		if (block.number > saleEndBlock) throw;
		// Check if the balance is greater than the security cap
		uint256 newEtherBalance = totalETHRaised.add(msg.value);
		if (newEtherBalance > SECURITY_ETHER_CAP) throw; 
		// Do not do anything if the amount of ether sent is 0
		if (0 == msg.value) throw;
		
		// Calculate the CAT to ETH rate for the current time period of the sale
		uint256 curTokenRate = CAT_PER_ETH_BASE_RATE;
		if (block.number < saleFirstEarlyBirdEndBlock) {
			curTokenRate = CAT_PER_ETH_FIRST_EARLY_BIRD_RATE;
		}
		else if (block.number < saleSecondEarlyBirdEndBlock) {
			curTokenRate = CAT_PER_ETH_SECOND_EARLY_BIRD_RATE;
		}
		
		// Calculate the amount of CAT being purchased
		uint256 amountOfCAT = msg.value.mul(curTokenRate);
		
		// Ensure that the transaction is safe
		uint256 totalSupplySafe = totalSupply.add(amountOfCAT);
		uint256 balanceSafe = balances[msg.sender].add(amountOfCAT);
		uint256 contributedSafe = ETHContributed[msg.sender].add(msg.value);

		// Update individual and total balances
		totalSupply = totalSupplySafe;
		balances[msg.sender] = balanceSafe;

		totalETHRaised = newEtherBalance;
		ETHContributed[msg.sender] = contributedSafe;

		CreatedCAT(msg.sender, amountOfCAT);
	}
	
	function endSale() {
		// Do not end an already ended sale
		if (saleHasEnded) throw;
		// Can't end a sale that hasn't hit its minimum cap
		if (!minCapReached) throw;
		// Only allow the owner to end the sale
		if (msg.sender != executor) throw;
		
		saleHasEnded = true;

		// Calculate and create developer and reserve portion of CAT
		uint256 additionalCAT = (totalSupply.mul(ADDITIONAL_PORTION)).div(100 - ADDITIONAL_PORTION);
		uint256 totalSupplySafe = totalSupply.add(additionalCAT);

		uint256 reserveShare = (additionalCAT.mul(RESERVE_PORTION)).div(ADDITIONAL_PORTION);
		uint256 devShare = additionalCAT.sub(reserveShare);

		totalSupply = totalSupplySafe;
		balances[devCATDestination] = devShare;
		balances[reserveCATDestination] = reserveShare;
		
		CreatedCAT(devCATDestination, devShare);
		CreatedCAT(reserveCATDestination, reserveShare);

		if (this.balance > 0) {
			if (!devETHDestination.call.value(this.balance)()) throw;
		}
	}

	// Allows BlockCAT to withdraw funds
	function withdrawFunds() {
		// Disallow withdraw if the minimum hasn't been reached
		if (!minCapReached) throw;
		if (0 == this.balance) throw;

		if (!devETHDestination.call.value(this.balance)()) throw;
	}
	
	// Signals that the sale has reached its minimum funding goal
	function triggerMinCap() {
		if (msg.sender != executor) throw;

		minCapReached = true;
	}

	// Opens refunding.
	function triggerRefund() {
		// No refunds if the sale was successful
		if (saleHasEnded) throw;
		// No refunds if minimum cap is hit
		if (minCapReached) throw;
		// No refunds if the sale is still progressing
		if (block.number < saleEndBlock) throw;
		if (msg.sender != executor) throw;

		allowRefund = true;
	}

	function refund() external {
		// No refunds until it is approved
		if (!allowRefund) throw;
		// Nothing to refund
		if (0 == ETHContributed[msg.sender]) throw;

		// Do the refund.
		uint256 etherAmount = ETHContributed[msg.sender];
		ETHContributed[msg.sender] = 0;

		CATRefundedForWei(msg.sender, etherAmount);
		if (!msg.sender.send(etherAmount)) throw;
	}

	function changeDeveloperETHDestinationAddress(address _newAddress) {
		if (msg.sender != executor) throw;
		devETHDestination = _newAddress;
	}
	
	function changeDeveloperCATDestinationAddress(address _newAddress) {
		if (msg.sender != executor) throw;
		devCATDestination = _newAddress;
	}
	
	function changeReserveCATDestinationAddress(address _newAddress) {
		if (msg.sender != executor) throw;
		reserveCATDestination = _newAddress;
	}
	
	function transfer(address _to, uint _value) {
		// Cannot transfer unless the minimum cap is hit
		if (!minCapReached) throw;
		
		super.transfer(_to, _value);
	}
	
	function transferFrom(address _from, address _to, uint _value) {
		// Cannot transfer unless the minimum cap is hit
		if (!minCapReached) throw;
		
		super.transferFrom(_from, _to, _value);
	}
}

Contract Security Audit

Contract ABI

[{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"HIDDEN_CAP","outputs":[{"name":"","type":"string"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"DEV_PORTION","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"RESERVE_PORTION","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"saleStartBlock","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"withdrawFunds","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"triggerRefund","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"totalETHRaised","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"endSale","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_newAddress","type":"address"}],"name":"changeDeveloperCATDestinationAddress","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"reserveCATDestination","outputs":[{"name":"","type":"address"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"saleEndBlock","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"devETHDestination","outputs":[{"name":"","type":"address"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"CAT_PER_ETH_FIRST_EARLY_BIRD_RATE","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"version","outputs":[{"name":"","type":"string"}],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"refund","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"devCATDestination","outputs":[{"name":"","type":"address"}],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"saleHasEnded","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"ADDITIONAL_PORTION","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"CAT_PER_ETH_SECOND_EARLY_BIRD_RATE","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"minCapReached","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"saleFirstEarlyBirdEndBlock","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"saleSecondEarlyBirdEndBlock","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"CAT_PER_ETH_BASE_RATE","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_newAddress","type":"address"}],"name":"changeReserveCATDestinationAddress","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"createTokens","outputs":[],"payable":true,"type":"function"},{"constant":false,"inputs":[{"name":"_newAddress","type":"address"}],"name":"changeDeveloperETHDestinationAddress","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"triggerMinCap","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"executor","outputs":[{"name":"","type":"address"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"SECURITY_ETHER_CAP","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"remaining","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"ETHContributed","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"allowRefund","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"inputs":[{"name":"_devETHDestination","type":"address"},{"name":"_devCATDestination","type":"address"},{"name":"_reserveCATDestination","type":"address"},{"name":"_saleStartBlock","type":"uint256"},{"name":"_saleEndBlock","type":"uint256"}],"payable":false,"type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_creator","type":"address"},{"indexed":false,"name":"_amountOfCAT","type":"uint256"}],"name":"CreatedCAT","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_refunder","type":"address"},{"indexed":false,"name":"_amountOfWei","type":"uint256"}],"name":"CATRefundedForWei","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"}]

60a0604052600360608190527f312e30000000000000000000000000000000000000000000000000000000000060809081526200003e91908162000158565b5034156200004857fe5b60405160a080620017f683398101604090815281516020830151918301516060840151608090940151919390915b600160a060020a03851615156200008d5760006000fd5b600160a060020a0384161515620000a45760006000fd5b600160a060020a0383161515620000bb5760006000fd5b438111620000c95760006000fd5b818111620000d75760006000fd5b60048054600160a060020a03338116600160a060020a03199283161790925560078054600580548a861690851617905560068054898616941693909317909255918516600160b860020a031990911617905560006009819055600a839055600b82905561181b8301600c556148518301600d5580555b505050505062000202565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200019b57805160ff1916838001178555620001cb565b82800160010185558215620001cb579182015b82811115620001cb578251825591602001919060010190620001ae565b5b50620001da929150620001de565b5090565b620001ff91905b80821115620001da5760008155600101620001e5565b5090565b90565b6115e480620002126000396000f300606060405236156101eb5763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde0381146101ed578063095ea7b31461027d57806313582b6e1461029e578063148386171461032e57806315ff8f3c1461035057806318160ddd14610372578063200272751461039457806323b872dd146103b657806324600fc3146103dd578063263d4878146103ef57806328f5c7b314610401578063313ce56714610423578063380d831b146104455780633aa718d5146104575780633d73c2de146104755780633f99a12b146104a15780634461550b146104c35780634b9eb771146104ef57806354fd4d5014610511578063590e1ae3146105a1578063687f8427146105b357806370a08231146105df578063733e193c1461060d578063802f5bae146106315780638b0451d9146106535780638b9add74146106755780638d2d2563146106995780638fc95403146106bb57806395d89b41146106dd578063a12412f01461076d578063a9059cbb1461078f578063b0112ef2146107b0578063b4427263146107ce578063b5ef06d0146107d8578063c2812f74146107f6578063c34c08e514610808578063cd26e1a814610834578063dd62ed3e14610856578063e227b5d11461088a578063ffb2d35d146108b8575bfe5b34156101f557fe5b6101fd6108dc565b604080516020808252835181830152835191928392908301918501908083838215610243575b80518252602083111561024357601f199092019160209182019101610223565b505050905090810190601f16801561026f5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561028557fe5b61029c600160a060020a0360043516602435610913565b005b34156102a657fe5b6101fd6109b3565b604080516020808252835181830152835191928392908301918501908083838215610243575b80518252602083111561024357601f199092019160209182019101610223565b505050905090810190601f16801561026f5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561033657fe5b61033e610a39565b60408051918252519081900360200190f35b341561035857fe5b61033e610a3e565b60408051918252519081900360200190f35b341561037a57fe5b61033e610a43565b60408051918252519081900360200190f35b341561039c57fe5b61033e610a49565b60408051918252519081900360200190f35b34156103be57fe5b61029c600160a060020a0360043581169060243516604435610a4f565b005b34156103e557fe5b61029c610a79565b005b34156103f757fe5b61029c610adf565b005b341561040957fe5b61033e610b88565b60408051918252519081900360200190f35b341561042b57fe5b61033e610b8e565b60408051918252519081900360200190f35b341561044d57fe5b61029c610b93565b005b341561045f57fe5b61029c600160a060020a0360043516610d8e565b005b341561047d57fe5b610485610dd6565b60408051600160a060020a039092168252519081900360200190f35b34156104a957fe5b61033e610de5565b60408051918252519081900360200190f35b34156104cb57fe5b610485610deb565b60408051600160a060020a039092168252519081900360200190f35b34156104f757fe5b61033e610dfa565b60408051918252519081900360200190f35b341561051957fe5b6101fd610e00565b604080516020808252835181830152835191928392908301918501908083838215610243575b80518252602083111561024357601f199092019160209182019101610223565b505050905090810190601f16801561026f5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156105a957fe5b61029c610e8e565b005b34156105bb57fe5b610485610f6d565b60408051600160a060020a039092168252519081900360200190f35b34156105e757fe5b61033e600160a060020a0360043516610f7c565b60408051918252519081900360200190f35b341561061557fe5b61061d610f9b565b604080519115158252519081900360200190f35b341561063957fe5b61033e610fbc565b60408051918252519081900360200190f35b341561065b57fe5b61033e610fc1565b60408051918252519081900360200190f35b341561067d57fe5b61061d610fc7565b604080519115158252519081900360200190f35b34156106a157fe5b61033e610fd7565b60408051918252519081900360200190f35b34156106c357fe5b61033e610fdd565b60408051918252519081900360200190f35b34156106e557fe5b6101fd610fe3565b604080516020808252835181830152835191928392908301918501908083838215610243575b80518252602083111561024357601f199092019160209182019101610223565b505050905090810190601f16801561026f5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561077557fe5b61033e61101a565b60408051918252519081900360200190f35b341561079757fe5b61029c600160a060020a0360043516602435611020565b005b34156107b857fe5b61029c600160a060020a0360043516611048565b005b61029c611090565b005b34156107e057fe5b61029c600160a060020a0360043516611229565b005b34156107fe57fe5b61029c611271565b005b341561081057fe5b6104856112b5565b60408051600160a060020a039092168252519081900360200190f35b341561083c57fe5b61033e6112c4565b60408051918252519081900360200190f35b341561085e57fe5b61033e600160a060020a03600435811690602435166112d2565b60408051918252519081900360200190f35b341561089257fe5b61033e600160a060020a03600435166112ff565b60408051918252519081900360200190f35b34156108c057fe5b61061d611311565b604080519115158252519081900360200190f35b60408051808201909152600e81527f426c6f636b43415420546f6b656e000000000000000000000000000000000000602082015281565b80158015906109465750600160a060020a0333811660009081526002602090815260408083209386168352929052205415155b156109515760006000fd5b600160a060020a03338116600081815260026020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a35b5050565b608060405190810160405280604281526020017f307864323266313964353431393366663565303865376261383863386535326581526020017f633162396663386434653063663137376531626538613736346661356233373581526020017f666100000000000000000000000000000000000000000000000000000000000081525081565b601481565b600181565b60005481565b600a5481565b60075460a860020a900460ff161515610a685760006000fd5b610a73838383611334565b5b505050565b60075460a860020a900460ff161515610a925760006000fd5b600160a060020a033016311515610aa95760006000fd5b600554604051600160a060020a039182169130163190600081818185876187965a03f1925050501515610adc5760006000fd5b5b565b60075474010000000000000000000000000000000000000000900460ff1615610b085760006000fd5b60075460a860020a900460ff1615610b205760006000fd5b600b54431015610b305760006000fd5b60045433600160a060020a03908116911614610b4c5760006000fd5b6007805476ff0000000000000000000000000000000000000000000019167601000000000000000000000000000000000000000000001790555b565b60095481565b601281565b6000600060006000600760149054906101000a900460ff1615610bb65760006000fd5b60075460a860020a900460ff161515610bcf5760006000fd5b60045433600160a060020a03908116911614610beb5760006000fd5b6007805474ff0000000000000000000000000000000000000000191674010000000000000000000000000000000000000000179055600054610c4790604f90610c3b90601563ffffffff61145816565b9063ffffffff61148716565b600054909450610c5d908563ffffffff6114a416565b9250610c816015610c3b86600163ffffffff61145816565b9063ffffffff61148716565b9150610c93848363ffffffff6114c016565b600084815560068054600160a060020a039081168352600160209081526040808520869055600754831685529384902087905591548351858152935194955016927f5d9d5b9a6421e0f4a6d338c1f19a0626f1a0e2299ab2308d0965e46e0c82f72f9281900390910190a2600754604080518481529051600160a060020a03909216917f5d9d5b9a6421e0f4a6d338c1f19a0626f1a0e2299ab2308d0965e46e0c82f72f9181900360200190a2600030600160a060020a0316311115610d8657600554604051600160a060020a039182169130163190600081818185876187965a03f1925050501515610d865760006000fd5b5b5b50505050565b60045433600160a060020a03908116911614610daa5760006000fd5b6006805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b50565b600754600160a060020a031681565b600b5481565b600554600160a060020a031681565b61014a81565b6003805460408051602060026001851615610100026000190190941693909304601f81018490048402820184019092528181529291830182828015610e865780601f10610e5b57610100808354040283529160200191610e86565b820191906000526020600020905b815481529060010190602001808311610e6957829003601f168201915b505050505081565b600754600090760100000000000000000000000000000000000000000000900460ff161515610ebd5760006000fd5b600160a060020a0333166000908152600860205260409020541515610ee25760006000fd5b50600160a060020a03331660008181526008602090815260408083208054939055805183815290519293927fafbd8092c9d080898ee0772bd20a3e164c8fbdf7a225ed1a6cbc94a4c40231a0929181900390910190a2604051600160a060020a0333169082156108fc029083906000818181858888f193505050501515610dd35760006000fd5b5b50565b600654600160a060020a031681565b600160a060020a0381166000908152600160205260409020545b919050565b60075474010000000000000000000000000000000000000000900460ff1681565b601581565b61013b81565b60075460a860020a900460ff1681565b600c5481565b600d5481565b60408051808201909152600381527f4341540000000000000000000000000000000000000000000000000000000000602082015281565b61012c81565b60075460a860020a900460ff1615156110395760006000fd5b6109af82826114d9565b5b5050565b60045433600160a060020a039081169116146110645760006000fd5b6007805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b50565b600060006000600060006000600760149054906101000a900460ff16156110b75760006000fd5b600a544310156110c75760006000fd5b600b544311156110d75760006000fd5b6009546110ea903463ffffffff6114a416565b955069d3c21bcecceda10000008611156111045760006000fd5b3415156111115760006000fd5b61012c9450600c5443101561112a5761014a945061113a565b600d5443101561113a5761013b94505b5b61114b348663ffffffff61145816565b600054909450611161908563ffffffff6114a416565b600160a060020a03331660009081526001602052604090205490935061118d908563ffffffff6114a416565b600160a060020a0333166000908152600860205260409020549092506111b9903463ffffffff6114a416565b6000848155600160a060020a03331680825260016020908152604080842087905560098b905560088252928390208490558251888152925193945090927f5d9d5b9a6421e0f4a6d338c1f19a0626f1a0e2299ab2308d0965e46e0c82f72f9281900390910190a25b505050505050565b60045433600160a060020a039081169116146112455760006000fd5b6005805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b50565b60045433600160a060020a0390811691161461128d5760006000fd5b6007805475ff000000000000000000000000000000000000000000191660a860020a1790555b565b600454600160a060020a031681565b69d3c21bcecceda100000081565b600160a060020a038083166000908152600260209081526040808320938516835292905220545b92915050565b60086020526000908152604090205481565b600754760100000000000000000000000000000000000000000000900460ff1681565b6000606060643610156113475760006000fd5b600160a060020a03808616600090815260026020908152604080832033851684528252808320549388168352600190915290205490925061138e908463ffffffff6114a416565b600160a060020a0380861660009081526001602052604080822093909355908716815220546113c3908463ffffffff6114c016565b600160a060020a0386166000908152600160205260409020556113ec828463ffffffff6114c016565b600160a060020a038087166000818152600260209081526040808320338616845282529182902094909455805187815290519288169391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef929181900390910190a35b5b5050505050565b600082820261147c841580611477575083858381151561147457fe5b04145b6115a7565b8091505b5092915050565b60006000828481151561149657fe5b0490508091505b5092915050565b600082820161147c848210156115a7565b8091505b5092915050565b60006114ce838311156115a7565b508082035b92915050565b604060443610156114ea5760006000fd5b600160a060020a033316600090815260016020526040902054611513908363ffffffff6114c016565b600160a060020a033381166000908152600160205260408082209390935590851681522054611548908363ffffffff6114a416565b600160a060020a038085166000818152600160209081526040918290209490945580518681529051919333909316927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a35b5b505050565b801515610dd35760006000fd5b5b505600a165627a7a72305820b64159798b63f00f149f34f14a6d1e4ad5e376247dfea767d1837a5a0813f1ff0029000000000000000000000000ca940e00c64fa7c273b529608c83bd5aaf1cfeff00000000000000000000000000f7d5c1435b927d305a45ed2522076671ded22e00000000000000000000000000f7d5c1435b927d305a45ed2522076671ded22e00000000000000000000000000000000000000000000000000000000003d744e00000000000000000000000000000000000000000000000000000000003fad9a

Deployed Bytecode

0x606060405236156101eb5763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde0381146101ed578063095ea7b31461027d57806313582b6e1461029e578063148386171461032e57806315ff8f3c1461035057806318160ddd14610372578063200272751461039457806323b872dd146103b657806324600fc3146103dd578063263d4878146103ef57806328f5c7b314610401578063313ce56714610423578063380d831b146104455780633aa718d5146104575780633d73c2de146104755780633f99a12b146104a15780634461550b146104c35780634b9eb771146104ef57806354fd4d5014610511578063590e1ae3146105a1578063687f8427146105b357806370a08231146105df578063733e193c1461060d578063802f5bae146106315780638b0451d9146106535780638b9add74146106755780638d2d2563146106995780638fc95403146106bb57806395d89b41146106dd578063a12412f01461076d578063a9059cbb1461078f578063b0112ef2146107b0578063b4427263146107ce578063b5ef06d0146107d8578063c2812f74146107f6578063c34c08e514610808578063cd26e1a814610834578063dd62ed3e14610856578063e227b5d11461088a578063ffb2d35d146108b8575bfe5b34156101f557fe5b6101fd6108dc565b604080516020808252835181830152835191928392908301918501908083838215610243575b80518252602083111561024357601f199092019160209182019101610223565b505050905090810190601f16801561026f5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561028557fe5b61029c600160a060020a0360043516602435610913565b005b34156102a657fe5b6101fd6109b3565b604080516020808252835181830152835191928392908301918501908083838215610243575b80518252602083111561024357601f199092019160209182019101610223565b505050905090810190601f16801561026f5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561033657fe5b61033e610a39565b60408051918252519081900360200190f35b341561035857fe5b61033e610a3e565b60408051918252519081900360200190f35b341561037a57fe5b61033e610a43565b60408051918252519081900360200190f35b341561039c57fe5b61033e610a49565b60408051918252519081900360200190f35b34156103be57fe5b61029c600160a060020a0360043581169060243516604435610a4f565b005b34156103e557fe5b61029c610a79565b005b34156103f757fe5b61029c610adf565b005b341561040957fe5b61033e610b88565b60408051918252519081900360200190f35b341561042b57fe5b61033e610b8e565b60408051918252519081900360200190f35b341561044d57fe5b61029c610b93565b005b341561045f57fe5b61029c600160a060020a0360043516610d8e565b005b341561047d57fe5b610485610dd6565b60408051600160a060020a039092168252519081900360200190f35b34156104a957fe5b61033e610de5565b60408051918252519081900360200190f35b34156104cb57fe5b610485610deb565b60408051600160a060020a039092168252519081900360200190f35b34156104f757fe5b61033e610dfa565b60408051918252519081900360200190f35b341561051957fe5b6101fd610e00565b604080516020808252835181830152835191928392908301918501908083838215610243575b80518252602083111561024357601f199092019160209182019101610223565b505050905090810190601f16801561026f5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156105a957fe5b61029c610e8e565b005b34156105bb57fe5b610485610f6d565b60408051600160a060020a039092168252519081900360200190f35b34156105e757fe5b61033e600160a060020a0360043516610f7c565b60408051918252519081900360200190f35b341561061557fe5b61061d610f9b565b604080519115158252519081900360200190f35b341561063957fe5b61033e610fbc565b60408051918252519081900360200190f35b341561065b57fe5b61033e610fc1565b60408051918252519081900360200190f35b341561067d57fe5b61061d610fc7565b604080519115158252519081900360200190f35b34156106a157fe5b61033e610fd7565b60408051918252519081900360200190f35b34156106c357fe5b61033e610fdd565b60408051918252519081900360200190f35b34156106e557fe5b6101fd610fe3565b604080516020808252835181830152835191928392908301918501908083838215610243575b80518252602083111561024357601f199092019160209182019101610223565b505050905090810190601f16801561026f5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561077557fe5b61033e61101a565b60408051918252519081900360200190f35b341561079757fe5b61029c600160a060020a0360043516602435611020565b005b34156107b857fe5b61029c600160a060020a0360043516611048565b005b61029c611090565b005b34156107e057fe5b61029c600160a060020a0360043516611229565b005b34156107fe57fe5b61029c611271565b005b341561081057fe5b6104856112b5565b60408051600160a060020a039092168252519081900360200190f35b341561083c57fe5b61033e6112c4565b60408051918252519081900360200190f35b341561085e57fe5b61033e600160a060020a03600435811690602435166112d2565b60408051918252519081900360200190f35b341561089257fe5b61033e600160a060020a03600435166112ff565b60408051918252519081900360200190f35b34156108c057fe5b61061d611311565b604080519115158252519081900360200190f35b60408051808201909152600e81527f426c6f636b43415420546f6b656e000000000000000000000000000000000000602082015281565b80158015906109465750600160a060020a0333811660009081526002602090815260408083209386168352929052205415155b156109515760006000fd5b600160a060020a03338116600081815260026020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a35b5050565b608060405190810160405280604281526020017f307864323266313964353431393366663565303865376261383863386535326581526020017f633162396663386434653063663137376531626538613736346661356233373581526020017f666100000000000000000000000000000000000000000000000000000000000081525081565b601481565b600181565b60005481565b600a5481565b60075460a860020a900460ff161515610a685760006000fd5b610a73838383611334565b5b505050565b60075460a860020a900460ff161515610a925760006000fd5b600160a060020a033016311515610aa95760006000fd5b600554604051600160a060020a039182169130163190600081818185876187965a03f1925050501515610adc5760006000fd5b5b565b60075474010000000000000000000000000000000000000000900460ff1615610b085760006000fd5b60075460a860020a900460ff1615610b205760006000fd5b600b54431015610b305760006000fd5b60045433600160a060020a03908116911614610b4c5760006000fd5b6007805476ff0000000000000000000000000000000000000000000019167601000000000000000000000000000000000000000000001790555b565b60095481565b601281565b6000600060006000600760149054906101000a900460ff1615610bb65760006000fd5b60075460a860020a900460ff161515610bcf5760006000fd5b60045433600160a060020a03908116911614610beb5760006000fd5b6007805474ff0000000000000000000000000000000000000000191674010000000000000000000000000000000000000000179055600054610c4790604f90610c3b90601563ffffffff61145816565b9063ffffffff61148716565b600054909450610c5d908563ffffffff6114a416565b9250610c816015610c3b86600163ffffffff61145816565b9063ffffffff61148716565b9150610c93848363ffffffff6114c016565b600084815560068054600160a060020a039081168352600160209081526040808520869055600754831685529384902087905591548351858152935194955016927f5d9d5b9a6421e0f4a6d338c1f19a0626f1a0e2299ab2308d0965e46e0c82f72f9281900390910190a2600754604080518481529051600160a060020a03909216917f5d9d5b9a6421e0f4a6d338c1f19a0626f1a0e2299ab2308d0965e46e0c82f72f9181900360200190a2600030600160a060020a0316311115610d8657600554604051600160a060020a039182169130163190600081818185876187965a03f1925050501515610d865760006000fd5b5b5b50505050565b60045433600160a060020a03908116911614610daa5760006000fd5b6006805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b50565b600754600160a060020a031681565b600b5481565b600554600160a060020a031681565b61014a81565b6003805460408051602060026001851615610100026000190190941693909304601f81018490048402820184019092528181529291830182828015610e865780601f10610e5b57610100808354040283529160200191610e86565b820191906000526020600020905b815481529060010190602001808311610e6957829003601f168201915b505050505081565b600754600090760100000000000000000000000000000000000000000000900460ff161515610ebd5760006000fd5b600160a060020a0333166000908152600860205260409020541515610ee25760006000fd5b50600160a060020a03331660008181526008602090815260408083208054939055805183815290519293927fafbd8092c9d080898ee0772bd20a3e164c8fbdf7a225ed1a6cbc94a4c40231a0929181900390910190a2604051600160a060020a0333169082156108fc029083906000818181858888f193505050501515610dd35760006000fd5b5b50565b600654600160a060020a031681565b600160a060020a0381166000908152600160205260409020545b919050565b60075474010000000000000000000000000000000000000000900460ff1681565b601581565b61013b81565b60075460a860020a900460ff1681565b600c5481565b600d5481565b60408051808201909152600381527f4341540000000000000000000000000000000000000000000000000000000000602082015281565b61012c81565b60075460a860020a900460ff1615156110395760006000fd5b6109af82826114d9565b5b5050565b60045433600160a060020a039081169116146110645760006000fd5b6007805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b50565b600060006000600060006000600760149054906101000a900460ff16156110b75760006000fd5b600a544310156110c75760006000fd5b600b544311156110d75760006000fd5b6009546110ea903463ffffffff6114a416565b955069d3c21bcecceda10000008611156111045760006000fd5b3415156111115760006000fd5b61012c9450600c5443101561112a5761014a945061113a565b600d5443101561113a5761013b94505b5b61114b348663ffffffff61145816565b600054909450611161908563ffffffff6114a416565b600160a060020a03331660009081526001602052604090205490935061118d908563ffffffff6114a416565b600160a060020a0333166000908152600860205260409020549092506111b9903463ffffffff6114a416565b6000848155600160a060020a03331680825260016020908152604080842087905560098b905560088252928390208490558251888152925193945090927f5d9d5b9a6421e0f4a6d338c1f19a0626f1a0e2299ab2308d0965e46e0c82f72f9281900390910190a25b505050505050565b60045433600160a060020a039081169116146112455760006000fd5b6005805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b50565b60045433600160a060020a0390811691161461128d5760006000fd5b6007805475ff000000000000000000000000000000000000000000191660a860020a1790555b565b600454600160a060020a031681565b69d3c21bcecceda100000081565b600160a060020a038083166000908152600260209081526040808320938516835292905220545b92915050565b60086020526000908152604090205481565b600754760100000000000000000000000000000000000000000000900460ff1681565b6000606060643610156113475760006000fd5b600160a060020a03808616600090815260026020908152604080832033851684528252808320549388168352600190915290205490925061138e908463ffffffff6114a416565b600160a060020a0380861660009081526001602052604080822093909355908716815220546113c3908463ffffffff6114c016565b600160a060020a0386166000908152600160205260409020556113ec828463ffffffff6114c016565b600160a060020a038087166000818152600260209081526040808320338616845282529182902094909455805187815290519288169391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef929181900390910190a35b5b5050505050565b600082820261147c841580611477575083858381151561147457fe5b04145b6115a7565b8091505b5092915050565b60006000828481151561149657fe5b0490508091505b5092915050565b600082820161147c848210156115a7565b8091505b5092915050565b60006114ce838311156115a7565b508082035b92915050565b604060443610156114ea5760006000fd5b600160a060020a033316600090815260016020526040902054611513908363ffffffff6114c016565b600160a060020a033381166000908152600160205260408082209390935590851681522054611548908363ffffffff6114a416565b600160a060020a038085166000818152600160209081526040918290209490945580518681529051919333909316927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a35b5b505050565b801515610dd35760006000fd5b5b505600a165627a7a72305820b64159798b63f00f149f34f14a6d1e4ad5e376247dfea767d1837a5a0813f1ff0029

Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)

000000000000000000000000ca940e00c64fa7c273b529608c83bd5aaf1cfeff00000000000000000000000000f7d5c1435b927d305a45ed2522076671ded22e00000000000000000000000000f7d5c1435b927d305a45ed2522076671ded22e00000000000000000000000000000000000000000000000000000000003d744e00000000000000000000000000000000000000000000000000000000003fad9a

-----Decoded View---------------
Arg [0] : _devETHDestination (address): 0xcA940e00C64fa7C273b529608c83bd5aAf1cFefF
Arg [1] : _devCATDestination (address): 0x00f7d5C1435b927D305a45eD2522076671dED22E
Arg [2] : _reserveCATDestination (address): 0x00f7d5C1435b927D305a45eD2522076671dED22E
Arg [3] : _saleStartBlock (uint256): 4027470
Arg [4] : _saleEndBlock (uint256): 4173210

-----Encoded View---------------
5 Constructor Arguments found :
Arg [0] : 000000000000000000000000ca940e00c64fa7c273b529608c83bd5aaf1cfeff
Arg [1] : 00000000000000000000000000f7d5c1435b927d305a45ed2522076671ded22e
Arg [2] : 00000000000000000000000000f7d5c1435b927d305a45ed2522076671ded22e
Arg [3] : 00000000000000000000000000000000000000000000000000000000003d744e
Arg [4] : 00000000000000000000000000000000000000000000000000000000003fad9a


Swarm Source

bzzr://b64159798b63f00f149f34f14a6d1e4ad5e376247dfea767d1837a5a0813f1ff
Loading...
Loading
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.