ETH Price: $1,761.30 (+11.50%)
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Finalize Presale51700522018-02-28 7:13:562610 days ago1519802036IN
0x8b316d06...C3C9435f4
0 ETH0.0025292420
Transfer50172682018-02-02 12:33:062636 days ago1517574786IN
0x8b316d06...C3C9435f4
5 ETH0.0007685130
Transfer50163302018-02-02 8:48:232636 days ago1517561303IN
0x8b316d06...C3C9435f4
5.1 ETH0.0015370260
Transfer50148262018-02-02 2:43:052636 days ago1517539385IN
0x8b316d06...C3C9435f4
9 ETH0.0015370260
Transfer50147652018-02-02 2:23:472636 days ago1517538227IN
0x8b316d06...C3C9435f4
14 ETH0.0016907266
Transfer50147382018-02-02 2:16:242636 days ago1517537784IN
0x8b316d06...C3C9435f4
14 ETH0.0016907266
Transfer50147272018-02-02 2:13:142636 days ago1517537594IN
0x8b316d06...C3C9435f4
10 ETH0.0015370260
Transfer50146912018-02-02 2:02:562636 days ago1517536976IN
0x8b316d06...C3C9435f4
5 ETH0.010290660
Transfer50146532018-02-02 1:51:102636 days ago1517536270IN
0x8b316d06...C3C9435f4
6.5 ETH0.0023719499
Transfer50146502018-02-02 1:50:452636 days ago1517536245IN
0x8b316d06...C3C9435f4
70 ETH0.0025435621
Transfer50146322018-02-02 1:46:282636 days ago1517535988IN
0x8b316d06...C3C9435f4
3,900 ETH0.0034327421
Transfer50146272018-02-02 1:45:392636 days ago1517535939IN
0x8b316d06...C3C9435f4
5 ETH0.008173250
Transfer50146222018-02-02 1:44:202636 days ago1517535860IN
0x8b316d06...C3C9435f4
5 ETH0.0098078460
Transfer50146052018-02-02 1:42:082636 days ago1517535728IN
0x8b316d06...C3C9435f4
9.5 ETH0.0034327421
Transfer50145862018-02-02 1:37:502636 days ago1517535470IN
0x8b316d06...C3C9435f4
5 ETH0.0014375460
Transfer50145722018-02-02 1:33:242636 days ago1517535204IN
0x8b316d06...C3C9435f4
5 ETH0.0098078460
Transfer50145692018-02-02 1:31:442636 days ago1517535104IN
0x8b316d06...C3C9435f4
18 ETH0.0098078460
Transfer50145172018-02-02 1:17:492636 days ago1517534269IN
0x8b316d06...C3C9435f4
5 ETH0.0065385640
Transfer50145012018-02-02 1:12:092636 days ago1517533929IN
0x8b316d06...C3C9435f4
5 ETH0.0000422
Transfer50144942018-02-02 1:10:392636 days ago1517533839IN
0x8b316d06...C3C9435f4
5 ETH0.0098078460
Transfer50144492018-02-02 1:00:382636 days ago1517533238IN
0x8b316d06...C3C9435f4
15 ETH0.0098078460
Transfer50144202018-02-02 0:52:482636 days ago1517532768IN
0x8b316d06...C3C9435f4
5 ETH0.0098078460
Transfer50143912018-02-02 0:45:462636 days ago1517532346IN
0x8b316d06...C3C9435f4
55.30936973 ETH0.0098078460
Transfer50143692018-02-02 0:40:192636 days ago1517532019IN
0x8b316d06...C3C9435f4
5.05 ETH0.000484484
Transfer50142792018-02-02 0:17:452636 days ago1517530665IN
0x8b316d06...C3C9435f4
5 ETH0.0096897680
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Method Block
From
To
Transfer50524242018-02-08 10:25:252630 days ago1518085525
0x8b316d06...C3C9435f4
1 ETH
Transfer50146912018-02-02 2:02:562636 days ago1517536976
0x8b316d06...C3C9435f4
0.66718608 ETH
Transfer50146912018-02-02 2:02:562636 days ago1517536976
0x8b316d06...C3C9435f4
4.33281391 ETH
Transfer50146502018-02-02 1:50:452636 days ago1517536245
0x8b316d06...C3C9435f4
70 ETH
Transfer50146322018-02-02 1:46:282636 days ago1517535988
0x8b316d06...C3C9435f4
3,900 ETH
Transfer50146272018-02-02 1:45:392636 days ago1517535939
0x8b316d06...C3C9435f4
5 ETH
Transfer50146222018-02-02 1:44:202636 days ago1517535860
0x8b316d06...C3C9435f4
5 ETH
Transfer50146052018-02-02 1:42:082636 days ago1517535728
0x8b316d06...C3C9435f4
9.5 ETH
Transfer50145722018-02-02 1:33:242636 days ago1517535204
0x8b316d06...C3C9435f4
5 ETH
Transfer50145692018-02-02 1:31:442636 days ago1517535104
0x8b316d06...C3C9435f4
18 ETH
Transfer50145172018-02-02 1:17:492636 days ago1517534269
0x8b316d06...C3C9435f4
5 ETH
Transfer50144942018-02-02 1:10:392636 days ago1517533839
0x8b316d06...C3C9435f4
5 ETH
Transfer50144492018-02-02 1:00:382636 days ago1517533238
0x8b316d06...C3C9435f4
15 ETH
Transfer50144202018-02-02 0:52:482636 days ago1517532768
0x8b316d06...C3C9435f4
5 ETH
Transfer50143912018-02-02 0:45:462636 days ago1517532346
0x8b316d06...C3C9435f4
55.30936973 ETH
Transfer50143692018-02-02 0:40:192636 days ago1517532019
0x8b316d06...C3C9435f4
5.05 ETH
Transfer50142792018-02-02 0:17:452636 days ago1517530665
0x8b316d06...C3C9435f4
5 ETH
Transfer50142252018-02-02 0:05:042636 days ago1517529904
0x8b316d06...C3C9435f4
5 ETH
Transfer50142032018-02-02 0:00:552636 days ago1517529655
0x8b316d06...C3C9435f4
5 ETH
Transfer50141942018-02-01 23:58:282636 days ago1517529508
0x8b316d06...C3C9435f4
5 ETH
Transfer50141432018-02-01 23:45:402636 days ago1517528740
0x8b316d06...C3C9435f4
5 ETH
Transfer50141072018-02-01 23:37:122636 days ago1517528232
0x8b316d06...C3C9435f4
9.51 ETH
Transfer50140832018-02-01 23:32:002636 days ago1517527920
0x8b316d06...C3C9435f4
6 ETH
Transfer50140112018-02-01 23:15:562636 days ago1517526956
0x8b316d06...C3C9435f4
10 ETH
Transfer50139912018-02-01 23:11:342637 days ago1517526694
0x8b316d06...C3C9435f4
5 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
FXTPresale

Compiler Version
v0.4.18+commit.9cf6e910

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion

Contract Source Code (Solidity)

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

pragma solidity ^0.4.18;


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



/**
 * @title Ownable
 * @dev The Ownable contract has an owner address, and provides basic authorization control
 * functions, this simplifies the implementation of "user permissions".
 */
contract Ownable {
  address public owner;


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


  /**
   * @dev The Ownable constructor sets the original `owner` of the contract to the sender
   * account.
   */
  function Ownable() public {
    owner = msg.sender;
  }


  /**
   * @dev Throws if called by any account other than the owner.
   */
  modifier onlyOwner() {
    require(msg.sender == owner);
    _;
  }


  /**
   * @dev Allows the current owner to transfer control of the contract to a newOwner.
   * @param newOwner The address to transfer ownership to.
   */
  function transferOwnership(address newOwner) public onlyOwner {
    require(newOwner != address(0));
    OwnershipTransferred(owner, newOwner);
    owner = newOwner;
  }

}


contract PresaleFallbackReceiver {
  bool public presaleFallBackCalled;

  function presaleFallBack(uint256 _presaleWeiRaised) public returns (bool);
}











/**
 * @title Pausable
 * @dev Base contract which allows children to implement an emergency stop mechanism.
 */
contract Pausable is Ownable {
  event Pause();
  event Unpause();

  bool public paused = false;


  /**
   * @dev Modifier to make a function callable only when the contract is not paused.
   */
  modifier whenNotPaused() {
    require(!paused);
    _;
  }

  /**
   * @dev Modifier to make a function callable only when the contract is paused.
   */
  modifier whenPaused() {
    require(paused);
    _;
  }

  /**
   * @dev called by the owner to pause, triggers stopped state
   */
  function pause() onlyOwner whenNotPaused public {
    paused = true;
    Pause();
  }

  /**
   * @dev called by the owner to unpause, returns to normal state
   */
  function unpause() onlyOwner whenPaused public {
    paused = false;
    Unpause();
  }
}






/**
 * @title RefundVault
 * @dev This contract is used for storing funds while a crowdsale
 * is in progress. Supports refunding the money if crowdsale fails,
 * and forwarding it if crowdsale is successful.
 */
contract RefundVault is Ownable {
  using SafeMath for uint256;

  enum State { Active, Refunding, Closed }

  mapping (address => uint256) public deposited;
  address public wallet;
  State public state;

  event Closed();
  event RefundsEnabled();
  event Refunded(address indexed beneficiary, uint256 weiAmount);

  function RefundVault(address _wallet) public {
    require(_wallet != address(0));
    wallet = _wallet;
    state = State.Active;
  }

  function deposit(address investor) onlyOwner public payable {
    require(state == State.Active);
    deposited[investor] = deposited[investor].add(msg.value);
  }

  function close() onlyOwner public {
    require(state == State.Active);
    state = State.Closed;
    Closed();
    wallet.transfer(this.balance);
  }

  function enableRefunds() onlyOwner public {
    require(state == State.Active);
    state = State.Refunding;
    RefundsEnabled();
  }

  function refund(address investor) public {
    require(state == State.Refunding);
    uint256 depositedValue = deposited[investor];
    deposited[investor] = 0;
    investor.transfer(depositedValue);
    Refunded(investor, depositedValue);
  }
}




/**
 * @title SafeMath
 * @dev Math operations with safety checks that throw on error
 */
library SafeMath {
  function mul(uint256 a, uint256 b) internal pure returns (uint256) {
    if (a == 0) {
      return 0;
    }
    uint256 c = a * b;
    assert(c / a == b);
    return c;
  }

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

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

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




contract Controlled {
    /// @notice The address of the controller is the only address that can call
    ///  a function with this modifier
    modifier onlyController { require(msg.sender == controller); _; }

    address public controller;

    function Controlled() public { controller = msg.sender;}

    /// @notice Changes the controller of the contract
    /// @param _newController The new controller of the contract
    function changeController(address _newController) public onlyController {
        controller = _newController;
    }
}










contract BTCPaymentI is Ownable, PresaleFallbackReceiver {
  PaymentFallbackReceiver public presale;
  PaymentFallbackReceiver public mainsale;

  function addPayment(address _beneficiary, uint256 _tokens) public;
  function setPresale(address _presale) external;
  function setMainsale(address _mainsale) external;
  function presaleFallBack(uint256) public returns (bool);
}


contract PaymentFallbackReceiver {
  BTCPaymentI public payment;

  enum SaleType { pre, main }

  function PaymentFallbackReceiver(address _payment) public {
    require(_payment != address(0));
    payment = BTCPaymentI(_payment);
  }

  modifier onlyPayment() {
    require(msg.sender == address(payment));
    _;
  }

  event MintByBTC(SaleType _saleType, address indexed _beneficiary, uint256 _tokens);

  /**
   * @dev paymentFallBack() is called in BTCPayment.addPayment().
   * Presale or Mainsale contract should mint token to beneficiary,
   * and apply corresponding ether amount to max ether cap.
   * @param _beneficiary ethereum address who receives tokens
   * @param _tokens amount of FXT to mint
   */
  function paymentFallBack(address _beneficiary, uint256 _tokens) external onlyPayment();
}






/**
 * @title Sudo
 * @dev Some functions should be restricted so as not to be available in any situation.
 * `onlySudoEnabled` modifier controlls it.
 */
contract Sudo is Ownable {
  bool public sudoEnabled;

  modifier onlySudoEnabled() {
    require(sudoEnabled);
    _;
  }

  event SudoEnabled(bool _sudoEnabled);

  function Sudo(bool _sudoEnabled) public {
    sudoEnabled = _sudoEnabled;
  }

  function enableSudo(bool _sudoEnabled) public onlyOwner {
    sudoEnabled = _sudoEnabled;
    SudoEnabled(_sudoEnabled);
  }
}










/**
 * @title ERC20 interface
 * @dev see https://github.com/ethereum/EIPs/issues/20
 */
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 FXTI is ERC20 {
  bool public sudoEnabled = true;

  function transfer(address _to, uint256 _amount) public returns (bool success);

  function transferFrom(address _from, address _to, uint256 _amount) public returns (bool success);

  function generateTokens(address _owner, uint _amount) public returns (bool);

  function destroyTokens(address _owner, uint _amount) public returns (bool);

  function blockAddress(address _addr) public;

  function unblockAddress(address _addr) public;

  function enableSudo(bool _sudoEnabled) public;

  function enableTransfers(bool _transfersEnabled) public;

  // byList functions

  function generateTokensByList(address[] _owners, uint[] _amounts) public returns (bool);
}





/**
 * @title KYCInterface
 */
contract KYCI is Ownable {
  function setAdmin(address _addr, bool _value) public returns (bool);
  function isRegistered(address _addr, bool _isPresale) public returns (bool);
  function register(address _addr, bool _isPresale) public;
  function registerByList(address[] _addrs, bool _isPresale) public;
  function unregister(address _addr, bool _isPresale)public;
  function unregisterByList(address[] _addrs, bool _isPresale) public;
}


/**
 * @dev This base contract is inherited by FXTPresale and FXTMainsale
 * and have related contracts address and ether funded in the sale as state.
 * Main purpose of this base contract is to provide the interface to control
 * generating / burning token and increase / decrease ether ether funded in the sale.
 * Those functions are only called in case of emergency situation such as
 * erroneous action handling Bitcoin payment.
 */
contract SaleBase is Sudo, Pausable, PaymentFallbackReceiver {
  using SafeMath for uint256;

  // related contracts
  FXTI public token;
  KYCI public kyc;
  RefundVault public vault;

  // fuzex account to hold ownership of contracts after sale finalized
  address public fuzexAccount;

  // common sale parameters
  mapping (address => uint256) public beneficiaryFunded;
  uint256 public weiRaised;

  bool public isFinalized; // whether sale is finalized

  /**
   * @dev After sale finalized, token and other contract ownership is transferred to
   * another contract or account. So this modifier doesn't effect contract logic, just
   * make sure of it.
   */
  modifier onlyNotFinalized() {
    require(!isFinalized);
    _;
  }

  function SaleBase(
    address _token,
    address _kyc,
    address _vault,
    address _payment,
    address _fuzexAccount)
    Sudo(false) // sudoEnabled
    PaymentFallbackReceiver(_payment)
    public
  {
    require(_token != address(0)
     && _kyc != address(0)
     && _vault != address(0)
     && _fuzexAccount != address(0));

    token = FXTI(_token);
    kyc = KYCI(_kyc);
    vault = RefundVault(_vault);
    fuzexAccount = _fuzexAccount;
  }

  /**
   * @dev Below 4 functions are only called in case of emergency and certain situation.
   * e.g. Wrong parameters for BTCPayment.addPayment function so that token should be burned and
   * wei-raised should be modified.
   */
  function increaseWeiRaised(uint256 _amount) public onlyOwner onlyNotFinalized onlySudoEnabled {
    weiRaised = weiRaised.add(_amount);
  }

  function decreaseWeiRaised(uint256 _amount) public onlyOwner onlyNotFinalized onlySudoEnabled {
    weiRaised = weiRaised.sub(_amount);
  }

  function generateTokens(address _owner, uint _amount) public onlyOwner onlyNotFinalized onlySudoEnabled returns (bool) {
    return token.generateTokens(_owner, _amount);
  }

  function destroyTokens(address _owner, uint _amount) public onlyOwner onlyNotFinalized onlySudoEnabled returns (bool) {
    return token.destroyTokens(_owner, _amount);
  }

  /**
   * @dev Prevent token holder from transfer.
   */
  function blockAddress(address _addr) public onlyOwner onlyNotFinalized onlySudoEnabled {
    token.blockAddress(_addr);
  }

  function unblockAddress(address _addr) public onlyOwner onlyNotFinalized onlySudoEnabled {
    token.unblockAddress(_addr);
  }

  /**
   * @dev Transfer ownership of other contract whoes owner is `this` to other address.
   */
  function changeOwnership(address _target, address _newOwner) public onlyOwner {
    Ownable(_target).transferOwnership(_newOwner);
  }

  /**
   * @dev Transfer ownership of MiniMeToken whoes controller is `this` to other address.
   */
  function changeController(address _target, address _newOwner) public onlyOwner {
    Controlled(_target).changeController(_newOwner);
  }

  function setFinalize() internal onlyOwner {
    require(!isFinalized);
    isFinalized = true;
  }
}



/**
 * @title FXTPresale
 * @dev Private-sale is finished before this contract is deployed.
 *
 */
contract FXTPresale is SaleBase {
  uint256 public baseRate = 12000;    // 1 ETH = 12000 FXT
  uint256 public PRE_BONUS = 25;     // presale bonus 25%
  uint256 public BONUS_COEFF = 100;

  // private-sale parameters
  uint256 public privateEtherFunded;
  uint256 public privateMaxEtherCap;

  // presale parameters
  uint256 public presaleMaxEtherCap;
  uint256 public presaleMinPurchase;

  uint256 public maxEtherCap;   // max ether cap for both private-sale & presale

  uint64 public startTime;     // when presale starts
  uint64 public endTime;       // when presale ends

  event PresaleTokenPurchase(address indexed _purchaser, address indexed _beneficiary, uint256 toFund, uint256 tokens);

  /**
   * @dev only presale registered address can participate presale.
   * private-sale doesn't require to check address because owner deals with it.
   */
  modifier onlyRegistered(address _addr) {
    require(kyc.isRegistered(_addr, true));
    _;
  }

  function FXTPresale(
    address _token,
    address _kyc,
    address _vault,
    address _payment,
    address _fuzexAccount,
    uint64 _startTime,
    uint64 _endTime,
    uint256 _privateEtherFunded,
    uint256 _privateMaxEtherCap,
    uint256 _presaleMaxEtherCap,
    uint256 _presaleMinPurchase)
    SaleBase(_token, _kyc, _vault, _payment, _fuzexAccount)
    public
  {
    require(now < _startTime && _startTime < _endTime);

    require(_privateEtherFunded >= 0);
    require(_privateMaxEtherCap > 0);
    require(_presaleMaxEtherCap > 0);
    require(_presaleMinPurchase > 0);

    require(_presaleMinPurchase < _presaleMaxEtherCap);

    startTime = _startTime;
    endTime = _endTime;

    privateEtherFunded = _privateEtherFunded;
    privateMaxEtherCap = _privateMaxEtherCap;

    presaleMaxEtherCap = _presaleMaxEtherCap;
    presaleMinPurchase = _presaleMinPurchase;

    maxEtherCap = privateMaxEtherCap.add(presaleMaxEtherCap);
    weiRaised = _privateEtherFunded; // ether funded during private-sale

    require(weiRaised <= maxEtherCap);
  }

  function () external payable {
    buyPresale(msg.sender);
  }

  /**
   * @dev paymentFallBack() assumes that paid BTC doesn't exceed the max ether cap.
   * BTC / ETH price (or rate) is determined using reliable outer resources.
   * @param _beneficiary ethereum address who receives tokens
   * @param _tokens amount of FXT to mint
   */
  function paymentFallBack(address _beneficiary, uint256 _tokens)
    external
    onlyPayment
  {
    // only check time and parameters
    require(startTime <= now && now <= endTime);
    require(_beneficiary != address(0));
    require(_tokens > 0);

    uint256 rate = getRate();
    uint256 weiAmount = _tokens.div(rate);

    require(weiAmount >= presaleMinPurchase);

    // funded ether should not exceed max ether cap.
    require(weiRaised.add(weiAmount) <= maxEtherCap);

    weiRaised = weiRaised.add(weiAmount);
    beneficiaryFunded[_beneficiary] = beneficiaryFunded[_beneficiary].add(weiAmount);

    token.generateTokens(_beneficiary, _tokens);
    MintByBTC(SaleType.pre, _beneficiary, _tokens);
  }

  function buyPresale(address _beneficiary)
    public
    payable
    onlyRegistered(_beneficiary)
    whenNotPaused
  {
    // check validity
    require(_beneficiary != address(0));
    require(msg.value >= presaleMinPurchase);
    require(validPurchase());

    uint256 toFund;
    uint256 tokens;

    (toFund, tokens) = buy(_beneficiary);

    PresaleTokenPurchase(msg.sender, _beneficiary, toFund, tokens);
  }

  function buy(address _beneficiary)
    internal
    returns (uint256 toFund, uint256 tokens)
  {
    // calculate eth amount
    uint256 weiAmount = msg.value;
    uint256 totalAmount = weiRaised.add(weiAmount);

    if (totalAmount > maxEtherCap) {
      toFund = maxEtherCap.sub(weiRaised);
    } else {
      toFund = weiAmount;
    }

    require(toFund > 0);
    require(weiAmount >= toFund);

    uint256 rate = getRate();
    tokens = toFund.mul(rate);
    uint256 toReturn = weiAmount.sub(toFund);

    weiRaised = weiRaised.add(toFund);
    beneficiaryFunded[_beneficiary] = beneficiaryFunded[_beneficiary].add(toFund);

    token.generateTokens(_beneficiary, tokens);

    if (toReturn > 0) {
      msg.sender.transfer(toReturn);
    }

    forwardFunds(toFund);
  }

  function validPurchase() internal view returns (bool) {
    bool nonZeroPurchase = msg.value != 0;
    bool validTime = now >= startTime && now <= endTime;
    return nonZeroPurchase && !maxReached() && validTime;
  }

  /**
   * @dev get current rate
   */
  function getRate() public view returns (uint256) {
    return calcRate(PRE_BONUS);
  }

  /**
   * @dev Calculate rate wrt _bonus. if _bonus is 15, this function
   * returns baseRate * 1.15.
   * rate = 12000 * (25 + 100) / 100 for 25% bonus
   */
  function calcRate(uint256 _bonus) internal view returns (uint256) {
    return _bonus.add(BONUS_COEFF).mul(baseRate).div(BONUS_COEFF);
  }

  /**
   * @dev Checks whether max ether cap is reached for presale
   * @return true if max ether cap is reaced
   */
  function maxReached() public view  returns (bool) {
    return weiRaised == maxEtherCap;
  }

  function forwardFunds(uint256 _toFund) internal {
    vault.deposit.value(_toFund)(msg.sender);
  }

  function finalizePresale(address _mainsale) public onlyOwner {
      require(!isFinalized);
      require(maxReached() || now > endTime);

      PresaleFallbackReceiver mainsale = PresaleFallbackReceiver(_mainsale);

      require(mainsale.presaleFallBack(weiRaised));
      require(payment.presaleFallBack(weiRaised));

      vault.close();

      changeController(address(token), _mainsale);
      changeOwnership(address(vault), fuzexAccount);

      enableSudo(false);
      setFinalize();
  }
}

Contract Security Audit

Contract ABI

API
[{"constant":false,"inputs":[{"name":"_amount","type":"uint256"}],"name":"decreaseWeiRaised","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_addr","type":"address"}],"name":"unblockAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"fuzexAccount","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"baseRate","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"privateEtherFunded","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"endTime","outputs":[{"name":"","type":"uint64"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"maxEtherCap","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"sudoEnabled","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_target","type":"address"},{"name":"_newOwner","type":"address"}],"name":"changeController","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"unpause","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"weiRaised","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"payment","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_beneficiary","type":"address"},{"name":"_tokens","type":"uint256"}],"name":"paymentFallBack","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"privateMaxEtherCap","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"paused","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"presaleMaxEtherCap","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getRate","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_sudoEnabled","type":"bool"}],"name":"enableSudo","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"startTime","outputs":[{"name":"","type":"uint64"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_owner","type":"address"},{"name":"_amount","type":"uint256"}],"name":"generateTokens","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"pause","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_beneficiary","type":"address"}],"name":"buyPresale","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[],"name":"isFinalized","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"maxReached","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"kyc","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_mainsale","type":"address"}],"name":"finalizePresale","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"beneficiaryFunded","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_addr","type":"address"}],"name":"blockAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"PRE_BONUS","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_amount","type":"uint256"}],"name":"increaseWeiRaised","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_target","type":"address"},{"name":"_newOwner","type":"address"}],"name":"changeOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"presaleMinPurchase","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_owner","type":"address"},{"name":"_amount","type":"uint256"}],"name":"destroyTokens","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"BONUS_COEFF","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"vault","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"token","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_token","type":"address"},{"name":"_kyc","type":"address"},{"name":"_vault","type":"address"},{"name":"_payment","type":"address"},{"name":"_fuzexAccount","type":"address"},{"name":"_startTime","type":"uint64"},{"name":"_endTime","type":"uint64"},{"name":"_privateEtherFunded","type":"uint256"},{"name":"_privateMaxEtherCap","type":"uint256"},{"name":"_presaleMaxEtherCap","type":"uint256"},{"name":"_presaleMinPurchase","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_purchaser","type":"address"},{"indexed":true,"name":"_beneficiary","type":"address"},{"indexed":false,"name":"toFund","type":"uint256"},{"indexed":false,"name":"tokens","type":"uint256"}],"name":"PresaleTokenPurchase","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_saleType","type":"uint8"},{"indexed":true,"name":"_beneficiary","type":"address"},{"indexed":false,"name":"_tokens","type":"uint256"}],"name":"MintByBTC","type":"event"},{"anonymous":false,"inputs":[],"name":"Pause","type":"event"},{"anonymous":false,"inputs":[],"name":"Unpause","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_sudoEnabled","type":"bool"}],"name":"SudoEnabled","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"}]

60606040526000805460a860020a60ff0219169055612ee06009556019600a556064600b5534156200003057600080fd5b604051610160806200187b833981016040528080519190602001805191906020018051919060200180519190602001805191906020018051919060200180519190602001805191906020018051919060200180519190602001805160008054600160a060020a03191633600160a060020a039081169190911760a060020a60ff0219169091559092508c91508b908b908b908b90829081161515620000d457600080fd5b60018054600160a060020a031916600160a060020a03928316179055851615801590620001095750600160a060020a03841615155b80156200011e5750600160a060020a03831615155b8015620001335750600160a060020a03811615155b15156200013f57600080fd5b60028054600160a060020a03968716600160a060020a0319918216179091556003805495871695821695909517909455600480549386169385169390931790925550600580549190931691161790556001604060020a03861642108015620001b85750846001604060020a0316866001604060020a0316105b1515620001c457600080fd5b6000841015620001d357600080fd5b60008311620001e157600080fd5b60008211620001ef57600080fd5b60008111620001fd57600080fd5b8181106200020a57600080fd5b601180546001604060020a038781166801000000000000000002604060020a608060020a0319918a1667ffffffffffffffff199093169290921716179055600c849055600d839055600e829055600f8190556200027683836401000000006200146f6200029e82021704565b601081905560078590558411156200028d57600080fd5b5050505050505050505050620002b5565b600082820183811015620002ae57fe5b9392505050565b6115b680620002c56000396000f3006060604052600436106101be5763ffffffff60e060020a6000350416630698ac9b81146101c9578063186d9d88146101df57806318b38777146101fe5780631f68f20a1461022d5780633135471d146102525780633197cbb614610265578063326fd58414610295578063388911dc146102a85780633e11e378146102cf5780633f4ba83a146102f45780634042b66f1461030757806342f6487a1461031a57806347ca78d71461032d578063523a0b0d1461034f5780635c975abb146103625780636293b5bb14610375578063679aefce14610388578063768557641461039b57806378e97925146103b3578063827f32c0146103c65780638456cb59146103e85780638bbb9fca146103fb5780638d4e40831461040f5780638da5cb5b1461042257806390135fec1461043557806390d6b45f14610448578063927c41511461045b578063a743fa501461047a578063ad2bb1b314610499578063aebacd53146104b8578063bbbf8fbd146104cb578063bf93a8be146104e1578063c67b599a14610506578063d3ce77fe14610519578063de0b5af21461053b578063f2fde38b1461054e578063fbfa77cf1461056d578063fc0c546a14610580575b6101c733610593565b005b34156101d457600080fd5b6101c76004356106cb565b34156101ea57600080fd5b6101c7600160a060020a0360043516610727565b341561020957600080fd5b6102116107d1565b604051600160a060020a03909116815260200160405180910390f35b341561023857600080fd5b6102406107e0565b60405190815260200160405180910390f35b341561025d57600080fd5b6102406107e6565b341561027057600080fd5b6102786107ec565b60405167ffffffffffffffff909116815260200160405180910390f35b34156102a057600080fd5b610240610808565b34156102b357600080fd5b6102bb61080e565b604051901515815260200160405180910390f35b34156102da57600080fd5b6101c7600160a060020a036004358116906024351661081e565b34156102ff57600080fd5b6101c761089f565b341561031257600080fd5b61024061091f565b341561032557600080fd5b610211610925565b341561033857600080fd5b6101c7600160a060020a0360043516602435610934565b341561035a57600080fd5b610240610b34565b341561036d57600080fd5b6102bb610b3a565b341561038057600080fd5b610240610b4a565b341561039357600080fd5b610240610b50565b34156103a657600080fd5b6101c76004351515610b62565b34156103be57600080fd5b610278610bdd565b34156103d157600080fd5b6102bb600160a060020a0360043516602435610bed565b34156103f357600080fd5b6101c7610cb1565b6101c7600160a060020a0360043516610593565b341561041a57600080fd5b6102bb610d36565b341561042d57600080fd5b610211610d3f565b341561044057600080fd5b6102bb610d4e565b341561045357600080fd5b610211610d58565b341561046657600080fd5b6101c7600160a060020a0360043516610d67565b341561048557600080fd5b610240600160a060020a0360043516610f5a565b34156104a457600080fd5b6101c7600160a060020a0360043516610f6c565b34156104c357600080fd5b610240610fff565b34156104d657600080fd5b6101c7600435611005565b34156104ec57600080fd5b6101c7600160a060020a036004358116906024351661105b565b341561051157600080fd5b6102406110c4565b341561052457600080fd5b6102bb600160a060020a03600435166024356110ca565b341561054657600080fd5b61024061116d565b341561055957600080fd5b6101c7600160a060020a0360043516611173565b341561057857600080fd5b61021161120e565b341561058b57600080fd5b61021161121d565b60035460009081908390600160a060020a031663d5ce91fd826001856040516020015260405160e060020a63ffffffff8516028152600160a060020a03909216600483015215156024820152604401602060405180830381600087803b15156105fb57600080fd5b6102c65a03f1151561060c57600080fd5b50505060405180519050151561062157600080fd5b60005460a860020a900460ff161561063857600080fd5b600160a060020a038416151561064d57600080fd5b600f5434101561065c57600080fd5b61066461122c565b151561066f57600080fd5b6106788461128d565b9093509150600160a060020a038085169033167f892886e12c91004a98b529d090d33b1fbcd7f0a2c7179a18ff621623d7979c20858560405191825260208201526040908101905180910390a350505050565b60005433600160a060020a039081169116146106e657600080fd5b60085460ff16156106f657600080fd5b60005460a060020a900460ff16151561070e57600080fd5b600754610721908263ffffffff61144116565b60075550565b60005433600160a060020a0390811691161461074257600080fd5b60085460ff161561075257600080fd5b60005460a060020a900460ff16151561076a57600080fd5b600254600160a060020a031663186d9d888260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401600060405180830381600087803b15156107ba57600080fd5b6102c65a03f115156107cb57600080fd5b50505050565b600554600160a060020a031681565b60095481565b600c5481565b60115468010000000000000000900467ffffffffffffffff1681565b60105481565b60005460a060020a900460ff1681565b60005433600160a060020a0390811691161461083957600080fd5b81600160a060020a0316633cebb8238260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401600060405180830381600087803b151561088757600080fd5b6102c65a03f1151561089857600080fd5b5050505050565b60005433600160a060020a039081169116146108ba57600080fd5b60005460a860020a900460ff1615156108d257600080fd5b6000805475ff000000000000000000000000000000000000000000191690557f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b3360405160405180910390a1565b60075481565b600154600160a060020a031681565b600154600090819033600160a060020a0390811691161461095457600080fd5b6011544267ffffffffffffffff9091161180159061098a575060115468010000000000000000900467ffffffffffffffff164211155b151561099557600080fd5b600160a060020a03841615156109aa57600080fd5b600083116109b757600080fd5b6109bf610b50565b91506109d1838363ffffffff61145316565b600f549091508110156109e357600080fd5b6010546007546109f9908363ffffffff61146f16565b1115610a0457600080fd5b600754610a17908263ffffffff61146f16565b600755600160a060020a038416600090815260066020526040902054610a43908263ffffffff61146f16565b600160a060020a03808616600090815260066020526040808220939093556002549091169163827f32c0918791879190516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b1515610abb57600080fd5b6102c65a03f11515610acc57600080fd5b50505060405180515050600160a060020a0384167fb62c0b4142381a9b551383dc1b34d5a2e850c521942aeb5d87a4c2e2a3fe2c0760008560405180836001811115610b1457fe5b60ff1681526020018281526020019250505060405180910390a250505050565b600d5481565b60005460a860020a900460ff1681565b600e5481565b6000610b5d600a54611485565b905090565b60005433600160a060020a03908116911614610b7d57600080fd5b6000805474ff0000000000000000000000000000000000000000191660a060020a831515021790557ff7f8aae99ab5a6521e75542d0ed92fd378f114279bcf63f9354a2a4882356cea81604051901515815260200160405180910390a150565b60115467ffffffffffffffff1681565b6000805433600160a060020a03908116911614610c0957600080fd5b60085460ff1615610c1957600080fd5b60005460a060020a900460ff161515610c3157600080fd5b600254600160a060020a031663827f32c0848460006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b1515610c9057600080fd5b6102c65a03f11515610ca157600080fd5b5050506040518051949350505050565b60005433600160a060020a03908116911614610ccc57600080fd5b60005460a860020a900460ff1615610ce357600080fd5b6000805475ff000000000000000000000000000000000000000000191660a860020a1790557f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff62560405160405180910390a1565b60085460ff1681565b600054600160a060020a031681565b6010546007541490565b600354600160a060020a031681565b6000805433600160a060020a03908116911614610d8357600080fd5b60085460ff1615610d9357600080fd5b610d9b610d4e565b80610dbd575060115468010000000000000000900467ffffffffffffffff1642115b1515610dc857600080fd5b81905080600160a060020a031663ad22612260075460006040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b1515610e1c57600080fd5b6102c65a03f11515610e2d57600080fd5b505050604051805190501515610e4257600080fd5b600154600754600160a060020a039091169063ad2261229060006040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b1515610e9957600080fd5b6102c65a03f11515610eaa57600080fd5b505050604051805190501515610ebf57600080fd5b600454600160a060020a03166343d726d66040518163ffffffff1660e060020a028152600401600060405180830381600087803b1515610efe57600080fd5b6102c65a03f11515610f0f57600080fd5b5050600254610f289150600160a060020a03168361081e565b600454600554610f4491600160a060020a03908116911661105b565b610f4e6000610b62565b610f566114c4565b5050565b60066020526000908152604090205481565b60005433600160a060020a03908116911614610f8757600080fd5b60085460ff1615610f9757600080fd5b60005460a060020a900460ff161515610faf57600080fd5b600254600160a060020a031663ad2bb1b38260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401600060405180830381600087803b15156107ba57600080fd5b600a5481565b60005433600160a060020a0390811691161461102057600080fd5b60085460ff161561103057600080fd5b60005460a060020a900460ff16151561104857600080fd5b600754610721908263ffffffff61146f16565b60005433600160a060020a0390811691161461107657600080fd5b81600160a060020a031663f2fde38b8260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401600060405180830381600087803b151561088757600080fd5b600f5481565b6000805433600160a060020a039081169116146110e657600080fd5b60085460ff16156110f657600080fd5b60005460a060020a900460ff16151561110e57600080fd5b600254600160a060020a031663d3ce77fe848460006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b1515610c9057600080fd5b600b5481565b60005433600160a060020a0390811691161461118e57600080fd5b600160a060020a03811615156111a357600080fd5b600054600160a060020a0380831691167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600454600160a060020a031681565b600254600160a060020a031681565b60115460009034151590829067ffffffffffffffff164210801590611269575060115468010000000000000000900467ffffffffffffffff164211155b905081801561127d575061127b610d4e565b155b80156112865750805b9250505090565b6000806000806000803493506112ae8460075461146f90919063ffffffff16565b92506010548311156112d6576007546010546112cf9163ffffffff61144116565b95506112da565b8395505b600086116112e757600080fd5b858410156112f457600080fd5b6112fc610b50565b915061130e868363ffffffff6114fe16565b9450611320848763ffffffff61144116565b600754909150611336908763ffffffff61146f16565b600755600160a060020a038716600090815260066020526040902054611362908763ffffffff61146f16565b600160a060020a03808916600090815260066020526040808220939093556002549091169163827f32c0918a91899190516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b15156113da57600080fd5b6102c65a03f115156113eb57600080fd5b50505060405180515050600081111561142f57600160a060020a03331681156108fc0282604051600060405180830381858888f19350505050151561142f57600080fd5b61143886611529565b50505050915091565b60008282111561144d57fe5b50900390565b600080828481151561146157fe5b0490508091505b5092915050565b60008282018381101561147e57fe5b9392505050565b600b546009546000916114be916114b2906114a6868463ffffffff61146f16565b9063ffffffff6114fe16565b9063ffffffff61145316565b92915050565b60005433600160a060020a039081169116146114df57600080fd5b60085460ff16156114ef57600080fd5b6008805460ff19166001179055565b6000808315156115115760009150611468565b5082820282848281151561152157fe5b041461147e57fe5b600454600160a060020a031663f340fa01823360405160e060020a63ffffffff8516028152600160a060020a0390911660048201526024016000604051808303818588803b151561157957600080fd5b6125ee5a03f1151561089857600080fd00a165627a7a723058208e9e228e9ba1c5a16496f63d6301e78275b108fae026cc18ce351822efbb051e00290000000000000000000000001829aa045e21e0d59580024a951db48096e01782000000000000000000000000c9e8045616abbdf535fda1fdbfe04b4f42101b2e000000000000000000000000da6d5a2ec190562cbd8c50f13faa8c1a43a0446100000000000000000000000058c3069023ed736f430d585003715058c2e3c671000000000000000000000000f2169b581ee51465fa1837d8450970b5c1aa4d3c000000000000000000000000000000000000000000000000000000005a5bef00000000000000000000000000000000000000000000000000000000005a861f0000000000000000000000000000000000000000000000043c33c193756480000000000000000000000000000000000000000000000000043c33c193756480000000000000000000000000000000000000000000000000043c33c19375648000000000000000000000000000000000000000000000000000004563918244f40000

Deployed Bytecode

0x6060604052600436106101be5763ffffffff60e060020a6000350416630698ac9b81146101c9578063186d9d88146101df57806318b38777146101fe5780631f68f20a1461022d5780633135471d146102525780633197cbb614610265578063326fd58414610295578063388911dc146102a85780633e11e378146102cf5780633f4ba83a146102f45780634042b66f1461030757806342f6487a1461031a57806347ca78d71461032d578063523a0b0d1461034f5780635c975abb146103625780636293b5bb14610375578063679aefce14610388578063768557641461039b57806378e97925146103b3578063827f32c0146103c65780638456cb59146103e85780638bbb9fca146103fb5780638d4e40831461040f5780638da5cb5b1461042257806390135fec1461043557806390d6b45f14610448578063927c41511461045b578063a743fa501461047a578063ad2bb1b314610499578063aebacd53146104b8578063bbbf8fbd146104cb578063bf93a8be146104e1578063c67b599a14610506578063d3ce77fe14610519578063de0b5af21461053b578063f2fde38b1461054e578063fbfa77cf1461056d578063fc0c546a14610580575b6101c733610593565b005b34156101d457600080fd5b6101c76004356106cb565b34156101ea57600080fd5b6101c7600160a060020a0360043516610727565b341561020957600080fd5b6102116107d1565b604051600160a060020a03909116815260200160405180910390f35b341561023857600080fd5b6102406107e0565b60405190815260200160405180910390f35b341561025d57600080fd5b6102406107e6565b341561027057600080fd5b6102786107ec565b60405167ffffffffffffffff909116815260200160405180910390f35b34156102a057600080fd5b610240610808565b34156102b357600080fd5b6102bb61080e565b604051901515815260200160405180910390f35b34156102da57600080fd5b6101c7600160a060020a036004358116906024351661081e565b34156102ff57600080fd5b6101c761089f565b341561031257600080fd5b61024061091f565b341561032557600080fd5b610211610925565b341561033857600080fd5b6101c7600160a060020a0360043516602435610934565b341561035a57600080fd5b610240610b34565b341561036d57600080fd5b6102bb610b3a565b341561038057600080fd5b610240610b4a565b341561039357600080fd5b610240610b50565b34156103a657600080fd5b6101c76004351515610b62565b34156103be57600080fd5b610278610bdd565b34156103d157600080fd5b6102bb600160a060020a0360043516602435610bed565b34156103f357600080fd5b6101c7610cb1565b6101c7600160a060020a0360043516610593565b341561041a57600080fd5b6102bb610d36565b341561042d57600080fd5b610211610d3f565b341561044057600080fd5b6102bb610d4e565b341561045357600080fd5b610211610d58565b341561046657600080fd5b6101c7600160a060020a0360043516610d67565b341561048557600080fd5b610240600160a060020a0360043516610f5a565b34156104a457600080fd5b6101c7600160a060020a0360043516610f6c565b34156104c357600080fd5b610240610fff565b34156104d657600080fd5b6101c7600435611005565b34156104ec57600080fd5b6101c7600160a060020a036004358116906024351661105b565b341561051157600080fd5b6102406110c4565b341561052457600080fd5b6102bb600160a060020a03600435166024356110ca565b341561054657600080fd5b61024061116d565b341561055957600080fd5b6101c7600160a060020a0360043516611173565b341561057857600080fd5b61021161120e565b341561058b57600080fd5b61021161121d565b60035460009081908390600160a060020a031663d5ce91fd826001856040516020015260405160e060020a63ffffffff8516028152600160a060020a03909216600483015215156024820152604401602060405180830381600087803b15156105fb57600080fd5b6102c65a03f1151561060c57600080fd5b50505060405180519050151561062157600080fd5b60005460a860020a900460ff161561063857600080fd5b600160a060020a038416151561064d57600080fd5b600f5434101561065c57600080fd5b61066461122c565b151561066f57600080fd5b6106788461128d565b9093509150600160a060020a038085169033167f892886e12c91004a98b529d090d33b1fbcd7f0a2c7179a18ff621623d7979c20858560405191825260208201526040908101905180910390a350505050565b60005433600160a060020a039081169116146106e657600080fd5b60085460ff16156106f657600080fd5b60005460a060020a900460ff16151561070e57600080fd5b600754610721908263ffffffff61144116565b60075550565b60005433600160a060020a0390811691161461074257600080fd5b60085460ff161561075257600080fd5b60005460a060020a900460ff16151561076a57600080fd5b600254600160a060020a031663186d9d888260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401600060405180830381600087803b15156107ba57600080fd5b6102c65a03f115156107cb57600080fd5b50505050565b600554600160a060020a031681565b60095481565b600c5481565b60115468010000000000000000900467ffffffffffffffff1681565b60105481565b60005460a060020a900460ff1681565b60005433600160a060020a0390811691161461083957600080fd5b81600160a060020a0316633cebb8238260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401600060405180830381600087803b151561088757600080fd5b6102c65a03f1151561089857600080fd5b5050505050565b60005433600160a060020a039081169116146108ba57600080fd5b60005460a860020a900460ff1615156108d257600080fd5b6000805475ff000000000000000000000000000000000000000000191690557f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b3360405160405180910390a1565b60075481565b600154600160a060020a031681565b600154600090819033600160a060020a0390811691161461095457600080fd5b6011544267ffffffffffffffff9091161180159061098a575060115468010000000000000000900467ffffffffffffffff164211155b151561099557600080fd5b600160a060020a03841615156109aa57600080fd5b600083116109b757600080fd5b6109bf610b50565b91506109d1838363ffffffff61145316565b600f549091508110156109e357600080fd5b6010546007546109f9908363ffffffff61146f16565b1115610a0457600080fd5b600754610a17908263ffffffff61146f16565b600755600160a060020a038416600090815260066020526040902054610a43908263ffffffff61146f16565b600160a060020a03808616600090815260066020526040808220939093556002549091169163827f32c0918791879190516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b1515610abb57600080fd5b6102c65a03f11515610acc57600080fd5b50505060405180515050600160a060020a0384167fb62c0b4142381a9b551383dc1b34d5a2e850c521942aeb5d87a4c2e2a3fe2c0760008560405180836001811115610b1457fe5b60ff1681526020018281526020019250505060405180910390a250505050565b600d5481565b60005460a860020a900460ff1681565b600e5481565b6000610b5d600a54611485565b905090565b60005433600160a060020a03908116911614610b7d57600080fd5b6000805474ff0000000000000000000000000000000000000000191660a060020a831515021790557ff7f8aae99ab5a6521e75542d0ed92fd378f114279bcf63f9354a2a4882356cea81604051901515815260200160405180910390a150565b60115467ffffffffffffffff1681565b6000805433600160a060020a03908116911614610c0957600080fd5b60085460ff1615610c1957600080fd5b60005460a060020a900460ff161515610c3157600080fd5b600254600160a060020a031663827f32c0848460006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b1515610c9057600080fd5b6102c65a03f11515610ca157600080fd5b5050506040518051949350505050565b60005433600160a060020a03908116911614610ccc57600080fd5b60005460a860020a900460ff1615610ce357600080fd5b6000805475ff000000000000000000000000000000000000000000191660a860020a1790557f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff62560405160405180910390a1565b60085460ff1681565b600054600160a060020a031681565b6010546007541490565b600354600160a060020a031681565b6000805433600160a060020a03908116911614610d8357600080fd5b60085460ff1615610d9357600080fd5b610d9b610d4e565b80610dbd575060115468010000000000000000900467ffffffffffffffff1642115b1515610dc857600080fd5b81905080600160a060020a031663ad22612260075460006040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b1515610e1c57600080fd5b6102c65a03f11515610e2d57600080fd5b505050604051805190501515610e4257600080fd5b600154600754600160a060020a039091169063ad2261229060006040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b1515610e9957600080fd5b6102c65a03f11515610eaa57600080fd5b505050604051805190501515610ebf57600080fd5b600454600160a060020a03166343d726d66040518163ffffffff1660e060020a028152600401600060405180830381600087803b1515610efe57600080fd5b6102c65a03f11515610f0f57600080fd5b5050600254610f289150600160a060020a03168361081e565b600454600554610f4491600160a060020a03908116911661105b565b610f4e6000610b62565b610f566114c4565b5050565b60066020526000908152604090205481565b60005433600160a060020a03908116911614610f8757600080fd5b60085460ff1615610f9757600080fd5b60005460a060020a900460ff161515610faf57600080fd5b600254600160a060020a031663ad2bb1b38260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401600060405180830381600087803b15156107ba57600080fd5b600a5481565b60005433600160a060020a0390811691161461102057600080fd5b60085460ff161561103057600080fd5b60005460a060020a900460ff16151561104857600080fd5b600754610721908263ffffffff61146f16565b60005433600160a060020a0390811691161461107657600080fd5b81600160a060020a031663f2fde38b8260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401600060405180830381600087803b151561088757600080fd5b600f5481565b6000805433600160a060020a039081169116146110e657600080fd5b60085460ff16156110f657600080fd5b60005460a060020a900460ff16151561110e57600080fd5b600254600160a060020a031663d3ce77fe848460006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b1515610c9057600080fd5b600b5481565b60005433600160a060020a0390811691161461118e57600080fd5b600160a060020a03811615156111a357600080fd5b600054600160a060020a0380831691167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600454600160a060020a031681565b600254600160a060020a031681565b60115460009034151590829067ffffffffffffffff164210801590611269575060115468010000000000000000900467ffffffffffffffff164211155b905081801561127d575061127b610d4e565b155b80156112865750805b9250505090565b6000806000806000803493506112ae8460075461146f90919063ffffffff16565b92506010548311156112d6576007546010546112cf9163ffffffff61144116565b95506112da565b8395505b600086116112e757600080fd5b858410156112f457600080fd5b6112fc610b50565b915061130e868363ffffffff6114fe16565b9450611320848763ffffffff61144116565b600754909150611336908763ffffffff61146f16565b600755600160a060020a038716600090815260066020526040902054611362908763ffffffff61146f16565b600160a060020a03808916600090815260066020526040808220939093556002549091169163827f32c0918a91899190516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b15156113da57600080fd5b6102c65a03f115156113eb57600080fd5b50505060405180515050600081111561142f57600160a060020a03331681156108fc0282604051600060405180830381858888f19350505050151561142f57600080fd5b61143886611529565b50505050915091565b60008282111561144d57fe5b50900390565b600080828481151561146157fe5b0490508091505b5092915050565b60008282018381101561147e57fe5b9392505050565b600b546009546000916114be916114b2906114a6868463ffffffff61146f16565b9063ffffffff6114fe16565b9063ffffffff61145316565b92915050565b60005433600160a060020a039081169116146114df57600080fd5b60085460ff16156114ef57600080fd5b6008805460ff19166001179055565b6000808315156115115760009150611468565b5082820282848281151561152157fe5b041461147e57fe5b600454600160a060020a031663f340fa01823360405160e060020a63ffffffff8516028152600160a060020a0390911660048201526024016000604051808303818588803b151561157957600080fd5b6125ee5a03f1151561089857600080fd00a165627a7a723058208e9e228e9ba1c5a16496f63d6301e78275b108fae026cc18ce351822efbb051e0029

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

0000000000000000000000001829aa045e21e0d59580024a951db48096e01782000000000000000000000000c9e8045616abbdf535fda1fdbfe04b4f42101b2e000000000000000000000000da6d5a2ec190562cbd8c50f13faa8c1a43a0446100000000000000000000000058c3069023ed736f430d585003715058c2e3c671000000000000000000000000f2169b581ee51465fa1837d8450970b5c1aa4d3c000000000000000000000000000000000000000000000000000000005a5bef00000000000000000000000000000000000000000000000000000000005a861f0000000000000000000000000000000000000000000000043c33c193756480000000000000000000000000000000000000000000000000043c33c193756480000000000000000000000000000000000000000000000000043c33c19375648000000000000000000000000000000000000000000000000000004563918244f40000

-----Decoded View---------------
Arg [0] : _token (address): 0x1829aA045E21E0D59580024A951DB48096e01782
Arg [1] : _kyc (address): 0xc9e8045616ABbdf535Fda1Fdbfe04b4F42101b2E
Arg [2] : _vault (address): 0xda6d5A2eC190562CBD8C50f13FaA8C1a43A04461
Arg [3] : _payment (address): 0x58C3069023eD736F430D585003715058c2E3c671
Arg [4] : _fuzexAccount (address): 0xF2169b581ee51465FA1837d8450970B5c1aA4d3c
Arg [5] : _startTime (uint64): 1515974400
Arg [6] : _endTime (uint64): 1518739200
Arg [7] : _privateEtherFunded (uint256): 20000000000000000000000
Arg [8] : _privateMaxEtherCap (uint256): 20000000000000000000000
Arg [9] : _presaleMaxEtherCap (uint256): 20000000000000000000000
Arg [10] : _presaleMinPurchase (uint256): 5000000000000000000

-----Encoded View---------------
11 Constructor Arguments found :
Arg [0] : 0000000000000000000000001829aa045e21e0d59580024a951db48096e01782
Arg [1] : 000000000000000000000000c9e8045616abbdf535fda1fdbfe04b4f42101b2e
Arg [2] : 000000000000000000000000da6d5a2ec190562cbd8c50f13faa8c1a43a04461
Arg [3] : 00000000000000000000000058c3069023ed736f430d585003715058c2e3c671
Arg [4] : 000000000000000000000000f2169b581ee51465fa1837d8450970b5c1aa4d3c
Arg [5] : 000000000000000000000000000000000000000000000000000000005a5bef00
Arg [6] : 000000000000000000000000000000000000000000000000000000005a861f00
Arg [7] : 00000000000000000000000000000000000000000000043c33c1937564800000
Arg [8] : 00000000000000000000000000000000000000000000043c33c1937564800000
Arg [9] : 00000000000000000000000000000000000000000000043c33c1937564800000
Arg [10] : 0000000000000000000000000000000000000000000000004563918244f40000


Swarm Source

bzzr://8e9e228e9ba1c5a16496f63d6301e78275b108fae026cc18ce351822efbb051e

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

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

Validator Index Block Amount
View All Withdrawals

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

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