ETH Price: $2,950.83 (-0.17%)
 

Overview

ETH Balance

0.046187867331013794 ETH

Eth Value

$136.29 (@ $2,950.83/ETH)

Token Holdings

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Owner Withdraw47454432017-12-16 23:57:362961 days ago1513468656IN
0xA67F4365...f72C2F6D9
0 ETH0.0004861721
Owner Clawback47454382017-12-16 23:56:202961 days ago1513468580IN
0xA67F4365...f72C2F6D9
0 ETH0.0004594321
Owner Withdraw47454212017-12-16 23:52:552961 days ago1513468375IN
0xA67F4365...f72C2F6D9
0 ETH0.0004861721
Transfer45835792017-11-19 18:11:592988 days ago1511115119IN
0xA67F4365...f72C2F6D9
1 ETH0.0004218620
Owner Withdraw45812802017-11-19 9:23:312988 days ago1511083411IN
0xA67F4365...f72C2F6D9
0 ETH0.0006349321
Owner Withdraw45811782017-11-19 8:57:162988 days ago1511081836IN
0xA67F4365...f72C2F6D9
0 ETH0.0006362721
Owner Withdraw45811722017-11-19 8:56:032988 days ago1511081763IN
0xA67F4365...f72C2F6D9
0 ETH0.0006362721
Owner Withdraw45811552017-11-19 8:52:222988 days ago1511081542IN
0xA67F4365...f72C2F6D9
0 ETH0.0006362721
Owner Withdraw45811512017-11-19 8:49:112988 days ago1511081351IN
0xA67F4365...f72C2F6D9
0 ETH0.0006349321
Owner Withdraw45793452017-11-19 2:06:522989 days ago1511057212IN
0xA67F4365...f72C2F6D9
0 ETH0.0006349321
Owner Withdraw45793332017-11-19 2:04:142989 days ago1511057054IN
0xA67F4365...f72C2F6D9
0 ETH0.0006295521
Owner Withdraw45791312017-11-19 1:09:362989 days ago1511053776IN
0xA67F4365...f72C2F6D9
0.1 ETH0.0004533621
Owner Withdraw45791142017-11-19 1:04:402989 days ago1511053480IN
0xA67F4365...f72C2F6D9
0 ETH0.0004861721
Owner Withdraw45790952017-11-19 1:00:252989 days ago1511053225IN
0xA67F4365...f72C2F6D9
0.01 ETH0.0004520221
Transfer45790452017-11-19 0:46:502989 days ago1511052410IN
0xA67F4365...f72C2F6D9
1 ETH0.0004429521
Transfer45790402017-11-19 0:46:082989 days ago1511052368IN
0xA67F4365...f72C2F6D9
1 ETH0.0004429521
Transfer45790272017-11-19 0:43:442989 days ago1511052224IN
0xA67F4365...f72C2F6D9
1.2 ETH0.0004429521
Transfer45790172017-11-19 0:41:002989 days ago1511052060IN
0xA67F4365...f72C2F6D9
0.68 ETH0.0004429521
Transfer45790012017-11-19 0:37:052989 days ago1511051825IN
0xA67F4365...f72C2F6D9
0.35397574 ETH0.0004429521
Transfer45789992017-11-19 0:36:172989 days ago1511051777IN
0xA67F4365...f72C2F6D9
1.2 ETH0.0004429521
Transfer45789722017-11-19 0:29:552989 days ago1511051395IN
0xA67F4365...f72C2F6D9
2.8 ETH0.0004429521
Transfer45789522017-11-19 0:26:032989 days ago1511051163IN
0xA67F4365...f72C2F6D9
1.2 ETH0.000021091
Transfer45785212017-11-18 22:45:582989 days ago1511045158IN
0xA67F4365...f72C2F6D9
10 ETH0.0010320821
Transfer45784352017-11-18 22:28:572989 days ago1511044137IN
0xA67F4365...f72C2F6D9
0.5 ETH0.0010320821
Transfer45783812017-11-18 22:17:562989 days ago1511043476IN
0xA67F4365...f72C2F6D9
0.5 ETH0.0007170821
View all transactions

Latest 7 internal transactions

Advanced mode:
Parent Transaction Hash Method Block
From
To
Transfer45812802017-11-19 9:23:312988 days ago1511083411
0xA67F4365...f72C2F6D9
4.4 ETH
Transfer45811782017-11-19 8:57:162988 days ago1511081836
0xA67F4365...f72C2F6D9
65 ETH
Transfer45811722017-11-19 8:56:032988 days ago1511081763
0xA67F4365...f72C2F6D9
200 ETH
Transfer45811552017-11-19 8:52:222988 days ago1511081542
0xA67F4365...f72C2F6D9
100 ETH
Transfer45811512017-11-19 8:49:112988 days ago1511081351
0xA67F4365...f72C2F6D9
10 ETH
Transfer45793452017-11-19 2:06:522989 days ago1511057212
0xA67F4365...f72C2F6D9
1 ETH
Transfer45793332017-11-19 2:04:142989 days ago1511057054
0xA67F4365...f72C2F6D9
0 ETH
Loading...
Loading
Cross-Chain Transactions

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
IungoPresale

Compiler Version
v0.4.15+commit.bbb8e64f

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion
/**
 *Submitted for verification at Etherscan.io on 2017-10-28
*/

pragma solidity 0.4.15;

contract Owned {
    address public owner;

    function Owned() {
        owner = msg.sender;
    }

    modifier onlyOwner() {
        if (msg.sender != owner) {
            throw;
        }
        _;
    }
}

contract IungoPresale is Owned {
    // Total funding amount
    uint256 public totalFunding;

    // Minimum and maximum amounts per transaction for participants
    uint256 public constant MIN_AMOUNT = 500 finney;
    uint256 public constant MAX_AMOUNT = 50 ether;

    // Minimum and maximum goals of the presale
    uint256 public constant PRESALE_MINIMUM_FUNDING = 120 ether;
    uint256 public constant PRESALE_MAXIMUM_FUNDING = 1100 ether;

    // Public presale period
    // Starts Saturday, October 28, 2017 12:00:00 AM GMT
    // Ends Sunday, November 19, 2017 12:00:00 AM GTM
    uint256 public constant PRESALE_START_DATE = 1509148800;
    uint256 public constant PRESALE_END_DATE = 1511049600;

    // Owner can clawback after a date in the future, so no ethers remain
    // trapped in the contract. This will only be relevant if the
    // minimum funding level is not reached
    // Jan 01 2018 @ 12:00pm (UTC) 2018-01-01T12:00:00+00:00 in ISO 8601
    uint256 public constant OWNER_CLAWBACK_DATE = 1514808000;

    /// @notice Keep track of all participants contributions, including both the
    ///         preallocation and public phases
    /// @dev Name complies with ERC20 token standard, etherscan for example will recognize
    ///      this and show the balances of the address
    mapping (address => uint256) public balanceOf;

    /// @notice Log an event for each funding contributed during the public phase
    /// @notice Events are not logged when the constructor is being executed during
    ///         deployment, so the preallocations will not be logged
    event LogParticipation(address indexed sender, uint256 value, uint256 timestamp);

    /// @notice A participant sends a contribution to the contract's address
    ///         between the PRESALE_STATE_DATE and the PRESALE_END_DATE
    /// @notice Only contributions between the MIN_AMOUNT and
    ///         MAX_AMOUNT are accepted. Otherwise the transaction
    ///         is rejected and contributed amount is returned to the participant's
    ///         account
    /// @notice A participant's contribution will be rejected if the presale
    ///         has been funded to the maximum amount
    function () payable {
        // A participant cannot send funds before the presale start date
        if (now < PRESALE_START_DATE) throw;
        // A participant cannot send funds after the presale end date
        if (now > PRESALE_END_DATE) throw;
        // A participant cannot send less than the minimum amount
        if (msg.value < MIN_AMOUNT) throw;
        // A participant cannot send more than the maximum amount
        if (msg.value > MAX_AMOUNT) throw;
        // A participant cannot send funds if the presale has been reached the maximum
        // funding amount
        if (safeIncrement(totalFunding, msg.value) > PRESALE_MAXIMUM_FUNDING) throw;
        // Register the participant's contribution
        addBalance(msg.sender, msg.value);
    }

    /// @notice The owner can withdraw ethers already during presale,
    ///         only if the minimum funding level has been reached
    function ownerWithdraw(uint256 value) external onlyOwner {
        // The owner cannot withdraw if the presale did not reach the minimum funding amount
        if (totalFunding < PRESALE_MINIMUM_FUNDING) throw;
        // Withdraw the amount requested
        if (!owner.send(value)) throw;
    }

    /// @notice The participant will need to withdraw their funds from this contract if
    ///         the presale has not achieved the minimum funding level
    function participantWithdrawIfMinimumFundingNotReached(uint256 value) external {
        // Participant cannot withdraw before the presale ends
        if (now <= PRESALE_END_DATE) throw;
        // Participant cannot withdraw if the minimum funding amount has been reached
        if (totalFunding >= PRESALE_MINIMUM_FUNDING) throw;
        // Participant can only withdraw an amount up to their contributed balance
        if (balanceOf[msg.sender] < value) throw;
        // Participant's balance is reduced by the claimed amount.
        balanceOf[msg.sender] = safeDecrement(balanceOf[msg.sender], value);
        // Send ethers back to the participant's account
        if (!msg.sender.send(value)) throw;
    }

    /// @notice The owner can clawback any ethers after a date in the future, so no
    ///         ethers remain trapped in this contract. This will only be relevant
    ///         if the minimum funding level is not reached
    function ownerClawback() external onlyOwner {
        // The owner cannot withdraw before the clawback date
        if (now < OWNER_CLAWBACK_DATE) throw;
        // Send remaining funds back to the owner
        if (!owner.send(this.balance)) throw;
    }

    /// @dev Keep track of participants contributions and the total funding amount
    function addBalance(address participant, uint256 value) private {
        // Participant's balance is increased by the sent amount
        balanceOf[participant] = safeIncrement(balanceOf[participant], value);
        // Keep track of the total funding amount
        totalFunding = safeIncrement(totalFunding, value);
        // Log an event of the participant's contribution
        LogParticipation(participant, value, now);
    }

    /// @dev Add a number to a base value. Detect overflows by checking the result is larger
    ///      than the original base value.
    function safeIncrement(uint256 base, uint256 increment) private constant returns (uint256) {
        uint256 result = base + increment;
        if (result < base) throw;
        return result;
    }

    /// @dev Subtract a number from a base value. Detect underflows by checking that the result
    ///      is smaller than the original base value
    function safeDecrement(uint256 base, uint256 increment) private constant returns (uint256) {
        uint256 result = base - increment;
        if (result > base) throw;
        return result;
    }
}

Contract Security Audit

Contract ABI

API
[{"constant":false,"inputs":[{"name":"value","type":"uint256"}],"name":"participantWithdrawIfMinimumFundingNotReached","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"value","type":"uint256"}],"name":"ownerWithdraw","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"PRESALE_MINIMUM_FUNDING","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"OWNER_CLAWBACK_DATE","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"PRESALE_MAXIMUM_FUNDING","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"ownerClawback","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"PRESALE_END_DATE","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"MAX_AMOUNT","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"MIN_AMOUNT","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"PRESALE_START_DATE","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"totalFunding","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"payable":true,"type":"fallback"},{"anonymous":false,"inputs":[{"indexed":true,"name":"sender","type":"address"},{"indexed":false,"name":"value","type":"uint256"},{"indexed":false,"name":"timestamp","type":"uint256"}],"name":"LogParticipation","type":"event"}]

60606040525b60008054600160a060020a03191633600160a060020a03161790555b5b610607806100316000396000f300606060405236156100c25763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416632350e762811461013e57806333f707d114610156578063475ec95a1461016e5780635a4a04a71461019357806361962265146101b857806370a08231146101dd5780638da5cb5b1461020e578063b63e93dc1461023d578063b644ee4114610252578063d40dc87014610277578063ddbcb5fa1461029c578063f0b80000146102c1578063fe47a8a7146102e6575b5b6359f3c8804210156100d457600080fd5b635a10c9804211156100e557600080fd5b6706f05b59d3b200003410156100fa57600080fd5b6802b5e3af16b188000034111561011057600080fd5b683ba1910bf341b000006101266001543461030b565b111561013157600080fd5b61013b3334610328565b5b005b341561014957600080fd5b61013b6004356103bd565b005b341561016157600080fd5b61013b600435610478565b005b341561017957600080fd5b6101816104e3565b60405190815260200160405180910390f35b341561019e57600080fd5b6101816104f0565b60405190815260200160405180910390f35b34156101c357600080fd5b6101816104f8565b60405190815260200160405180910390f35b34156101e857600080fd5b610181600160a060020a0360043516610505565b60405190815260200160405180910390f35b341561021957600080fd5b610221610517565b604051600160a060020a03909116815260200160405180910390f35b341561024857600080fd5b61013b610526565b005b341561025d57600080fd5b61018161058f565b60405190815260200160405180910390f35b341561028257600080fd5b610181610597565b60405190815260200160405180910390f35b34156102a757600080fd5b6101816105a4565b60405190815260200160405180910390f35b34156102cc57600080fd5b6101816105b0565b60405190815260200160405180910390f35b34156102f157600080fd5b6101816105b8565b60405190815260200160405180910390f35b60008282018381101561031d57600080fd5b8091505b5092915050565b600160a060020a03821660009081526002602052604090205461034b908261030b565b600160a060020a038316600090815260026020526040902055600154610371908261030b565b600155600160a060020a0382167f0d0c0c5120500a67dc7f367c4b7f7afc5a39488be49264d6bd4a6c7e19b245ca824260405191825260208201526040908101905180910390a25b5050565b635a10c98042116103cd57600080fd5b60015468068155a43676e0000090106103e557600080fd5b600160a060020a0333166000908152600260205260409020548190101561040b57600080fd5b600160a060020a03331660009081526002602052604090205461042e90826105be565b600160a060020a03331660008181526002602052604090819020929092559082156108fc0290839051600060405180830381858888f19350505050151561047457600080fd5b5b50565b60005433600160a060020a0390811691161461049357600080fd5b68068155a43676e0000060015410156104ab57600080fd5b600054600160a060020a031681156108fc0282604051600060405180830381858888f19350505050151561047457600080fd5b5b5b50565b68068155a43676e0000081565b635a4a22c081565b683ba1910bf341b0000081565b60026020526000908152604090205481565b600054600160a060020a031681565b60005433600160a060020a0390811691161461054157600080fd5b635a4a22c042101561055257600080fd5b600054600160a060020a039081169030163180156108fc0290604051600060405180830381858888f19350505050151561058b57600080fd5b5b5b565b635a10c98081565b6802b5e3af16b188000081565b6706f05b59d3b2000081565b6359f3c88081565b60015481565b60008183038381111561031d57600080fd5b8091505b50929150505600a165627a7a72305820bc81b12e974ac825014e1f1030e7aae1b6551e31851be26e0dbf20675ccfb84f0029

Deployed Bytecode

0x606060405236156100c25763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416632350e762811461013e57806333f707d114610156578063475ec95a1461016e5780635a4a04a71461019357806361962265146101b857806370a08231146101dd5780638da5cb5b1461020e578063b63e93dc1461023d578063b644ee4114610252578063d40dc87014610277578063ddbcb5fa1461029c578063f0b80000146102c1578063fe47a8a7146102e6575b5b6359f3c8804210156100d457600080fd5b635a10c9804211156100e557600080fd5b6706f05b59d3b200003410156100fa57600080fd5b6802b5e3af16b188000034111561011057600080fd5b683ba1910bf341b000006101266001543461030b565b111561013157600080fd5b61013b3334610328565b5b005b341561014957600080fd5b61013b6004356103bd565b005b341561016157600080fd5b61013b600435610478565b005b341561017957600080fd5b6101816104e3565b60405190815260200160405180910390f35b341561019e57600080fd5b6101816104f0565b60405190815260200160405180910390f35b34156101c357600080fd5b6101816104f8565b60405190815260200160405180910390f35b34156101e857600080fd5b610181600160a060020a0360043516610505565b60405190815260200160405180910390f35b341561021957600080fd5b610221610517565b604051600160a060020a03909116815260200160405180910390f35b341561024857600080fd5b61013b610526565b005b341561025d57600080fd5b61018161058f565b60405190815260200160405180910390f35b341561028257600080fd5b610181610597565b60405190815260200160405180910390f35b34156102a757600080fd5b6101816105a4565b60405190815260200160405180910390f35b34156102cc57600080fd5b6101816105b0565b60405190815260200160405180910390f35b34156102f157600080fd5b6101816105b8565b60405190815260200160405180910390f35b60008282018381101561031d57600080fd5b8091505b5092915050565b600160a060020a03821660009081526002602052604090205461034b908261030b565b600160a060020a038316600090815260026020526040902055600154610371908261030b565b600155600160a060020a0382167f0d0c0c5120500a67dc7f367c4b7f7afc5a39488be49264d6bd4a6c7e19b245ca824260405191825260208201526040908101905180910390a25b5050565b635a10c98042116103cd57600080fd5b60015468068155a43676e0000090106103e557600080fd5b600160a060020a0333166000908152600260205260409020548190101561040b57600080fd5b600160a060020a03331660009081526002602052604090205461042e90826105be565b600160a060020a03331660008181526002602052604090819020929092559082156108fc0290839051600060405180830381858888f19350505050151561047457600080fd5b5b50565b60005433600160a060020a0390811691161461049357600080fd5b68068155a43676e0000060015410156104ab57600080fd5b600054600160a060020a031681156108fc0282604051600060405180830381858888f19350505050151561047457600080fd5b5b5b50565b68068155a43676e0000081565b635a4a22c081565b683ba1910bf341b0000081565b60026020526000908152604090205481565b600054600160a060020a031681565b60005433600160a060020a0390811691161461054157600080fd5b635a4a22c042101561055257600080fd5b600054600160a060020a039081169030163180156108fc0290604051600060405180830381858888f19350505050151561058b57600080fd5b5b5b565b635a10c98081565b6802b5e3af16b188000081565b6706f05b59d3b2000081565b6359f3c88081565b60015481565b60008183038381111561031d57600080fd5b8091505b50929150505600a165627a7a72305820bc81b12e974ac825014e1f1030e7aae1b6551e31851be26e0dbf20675ccfb84f0029

Swarm Source

bzzr://bc81b12e974ac825014e1f1030e7aae1b6551e31851be26e0dbf20675ccfb84f

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading
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.