Abstract Testnet

Contract

0x3c8802aeecb8D8B243700aAAeFf45ab6b88cCBCf

Overview

ETH Balance

0.001 ETH

Token Holdings

Multichain Info

N/A
Transaction Hash
Method
Block
From
To
Buy Tokens51557712025-01-26 9:46:0515 days ago1737884765IN
0x3c8802ae...6b88cCBCf
0.001 ETH0.000005580.025

Latest 8 internal transactions

Parent Transaction Hash Block From To
51557712025-01-26 9:46:0515 days ago1737884765
0x3c8802ae...6b88cCBCf
0 ETH
51557712025-01-26 9:46:0515 days ago1737884765
0x3c8802ae...6b88cCBCf
0 ETH
51557712025-01-26 9:46:0515 days ago1737884765
0x3c8802ae...6b88cCBCf
0 ETH
51557712025-01-26 9:46:0515 days ago1737884765
0x3c8802ae...6b88cCBCf
0 ETH
51557712025-01-26 9:46:0515 days ago1737884765
0x3c8802ae...6b88cCBCf
0 ETH
51557712025-01-26 9:46:0515 days ago1737884765
0x3c8802ae...6b88cCBCf
0.001 ETH
51556222025-01-26 9:43:2615 days ago1737884606
0x3c8802ae...6b88cCBCf
0 ETH
51556222025-01-26 9:43:2615 days ago1737884606  Contract Creation0 ETH
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
SimpleICO

Compiler Version
v0.8.24+commit.e11b9ed9

ZkSolc Version
v1.5.7

Optimization Enabled:
Yes with Mode 3

Other Settings:
paris EvmVersion

Contract Source Code (Solidity Standard Json-Input format)

File 1 of 1 : SimpleICO.sol
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.24;

contract SimpleICO {
    address public owner;
    uint256 public tokenPrice = 0.001 ether;
    uint256 public tokensSold;
    uint256 public constant TOTAL_SUPPLY = 1000000 * 10**18; // 1 million tokens
    
    mapping(address => uint256) public balances;
    
    event TokensPurchased(address buyer, uint256 amount);
    
    constructor() {
        owner = msg.sender;
        balances[address(this)] = TOTAL_SUPPLY;
    }
    
    modifier onlyOwner() {
        require(msg.sender == owner, "Only owner can call this function");
        _;
    }
    
    function buyTokens() public payable {
        require(msg.value > 0, "Send ETH to buy tokens");
        require(balances[address(this)] > 0, "No tokens available");
        
        uint256 tokenAmount = (msg.value * 10**18) / tokenPrice;
        require(tokenAmount <= balances[address(this)], "Not enough tokens available");
        
        balances[address(this)] -= tokenAmount;
        balances[msg.sender] += tokenAmount;
        tokensSold += tokenAmount;
        
        emit TokensPurchased(msg.sender, tokenAmount);
    }
    
    function withdrawFunds() public onlyOwner {
        (bool success, ) = owner.call{value: address(this).balance}("");
        require(success, "Payment failed.");
    }
    
    function getBalance(address account) public view returns (uint256) {
        return balances[account];
    }
    
    function getRemainingTokens() public view returns (uint256) {
        return balances[address(this)];
    }
}

Settings
{
  "evmVersion": "paris",
  "optimizer": {
    "enabled": true,
    "mode": "3"
  },
  "outputSelection": {
    "*": {
      "*": [
        "abi",
        "metadata"
      ],
      "": [
        "ast"
      ]
    }
  },
  "detectMissingLibraries": false,
  "forceEVMLA": false,
  "enableEraVMExtensions": true,
  "libraries": {}
}

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"buyer","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"TokensPurchased","type":"event"},{"inputs":[],"name":"TOTAL_SUPPLY","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"balances","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"buyTokens","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"getBalance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getRemainingTokens","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tokenPrice","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tokensSold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"withdrawFunds","outputs":[],"stateMutability":"nonpayable","type":"function"}]

9c4d535b0000000000000000000000000000000000000000000000000000000000000000010000939d3fcb0fc79c047d4f911d6380cf6ea167b8dca7928a92003c8789b600000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000

Deployed Bytecode

0x0002000000000002000200000000000200000060031002700000006a0330019700010000003103550000008004000039000000400040043f0000000100200190000000180000c13d000000040030008c000001840000413d000000000201043b000000e0022002700000006f0020009c000000300000a13d000000700020009c000000400000a13d000000710020009c000000540000613d000000720020009c0000005e0000613d000000730020009c000000360000613d000001840000013d0000000001000416000000000001004b000001840000c13d0000006b010000410000000102000039000000000012041b000000000100041a0000006c011001970000000002000411000000000121019f000000000010041b0000000001000410000000000010043f0000000301000039000000200010043f000000000100001901a201870000040f0000006d02000041000000000021041b0000002001000039000001000010044300000120000004430000006e01000041000001a30001042e000000760020009c0000004b0000213d000000790020009c0000006b0000613d0000007a0020009c000001840000c13d000000240030008c000001840000413d0000000002000416000000000002004b000001840000c13d0000000401100370000000000101043b0000007b0010009c000000580000a13d000001840000013d000000740020009c000000880000613d000000750020009c000001840000c13d0000000001000416000000000001004b000001840000c13d0000006d01000041000000800010043f0000007c01000041000001a30001042e000000770020009c000000900000613d000000780020009c000001840000c13d0000000001000416000000000001004b000001840000c13d0000000101000039000000940000013d0000000001000416000000000001004b000001840000c13d0000000001000410000000000010043f0000000301000039000000200010043f000000000100001901a201870000040f000000940000013d0000000001000416000000000001004b000000980000c13d0000008301000041000000800010043f0000002001000039000000840010043f0000001601000039000000a40010043f0000008601000041000000c40010043f0000008701000041000001a4000104300000000001000416000000000001004b000001840000c13d000000000100041a0000007b011001970000000002000411000000000012004b000000b00000c13d0000008b0100004100000000001004430000000001000410000000040010044300000000010004140000006a0010009c0000006a01008041000000c0011002100000008c011001c70000800a0200003901a2019d0000040f0000000100200190000000bc0000613d000000000301043b00000000010004140000000004000411000000040040008c000000cc0000c13d00000001020000390000000001000031000000f70000013d0000000001000416000000000001004b000001840000c13d000000000100041a0000007b01100197000000800010043f0000007c01000041000001a30001042e0000000001000416000000000001004b000001840000c13d0000000201000039000000000101041a000000800010043f0000007c01000041000001a30001042e0000000001000410000000000010043f0000000301000039000000200010043f00000000010004140000006a0010009c0000006a01008041000000c0011002100000007d011001c7000080100200003901a2019d0000040f0000000100200190000001840000613d000000000101043b000000000101041a000000000001004b000000bd0000c13d000000400100043d00000044021000390000008503000041000000000032043500000024021000390000001303000039000001320000013d0000008301000041000000800010043f0000002001000039000000840010043f0000002101000039000000a40010043f0000008801000041000000c40010043f0000008901000041000000e40010043f0000008a01000041000001a400010430000000000001042f00000000010004160000007e021000d100000000011200d90000007e0010009c0000014f0000c13d0000000101000039000000000101041a000000000001004b000000d30000c13d0000008001000041000000000010043f0000001201000039000000040010043f0000008101000041000001a4000104300000006a0010009c0000006a01008041000000c001100210000000000003004b000000ef0000c13d0000000002040019000000f20000013d000100000001001d000200000002001d0000000001000410000000000010043f0000000301000039000000200010043f00000000010004140000006a0010009c0000006a01008041000000c0011002100000007d011001c7000080100200003901a2019d0000040f0000000100200190000001840000613d000000010300002900000002023000f9000000000101043b000000000101041a000000000012004b0000013d0000a13d000000400100043d00000044021000390000008203000041000000000032043500000024021000390000001b03000039000001320000013d0000008d011001c70000800902000039000000000500001901a201980000040f000100000001035500000060011002700000006a0010019d0000006a01100197000000000001004b000000fd0000c13d00000001002001900000012c0000613d0000000001000019000001a30001042e0000008e0010009c000001260000813d0000001f0410003900000091044001970000003f044000390000009105400197000000400400043d0000000005540019000000000045004b000000000600003900000001060040390000008f0050009c000001260000213d0000000100600190000001260000c13d000000400050043f000000000614043600000091031001980000001f0410018f00000000013600190000000105000367000001180000613d000000000705034f000000007807043c0000000006860436000000000016004b000001140000c13d000000000004004b000000f90000613d000000000335034f0000000304400210000000000501043300000000054501cf000000000545022f000000000303043b0000010004400089000000000343022f00000000034301cf000000000353019f0000000000310435000000f90000013d0000008001000041000000000010043f0000004101000039000000040010043f0000008101000041000001a400010430000000400100043d00000044021000390000009003000041000000000032043500000024021000390000000f030000390000000000320435000000830200004100000000002104350000000402100039000000200300003900000000003204350000006a0010009c0000006a01008041000000400110021000000084011001c7000001a400010430000200000002001d0000000001000410000000000010043f0000000301000039000000200010043f00000000010004140000006a0010009c0000006a01008041000000c0011002100000007d011001c7000080100200003901a2019d0000040f0000000100200190000001840000613d000000000101043b000000000201041a000000020220006c000001550000813d0000008001000041000000000010043f0000001101000039000000040010043f0000008101000041000001a400010430000000000021041b0000000001000411000000000010043f0000000301000039000000200010043f00000000010004140000006a0010009c0000006a01008041000000c0011002100000007d011001c7000080100200003901a2019d0000040f0000000100200190000001840000613d000000000101043b000000000201041a0000000203000029000000000032001a0000014f0000413d0000000002320019000000000021041b0000000201000039000000000201041a000000000032001a0000014f0000413d0000000002320019000000000021041b000000400100043d00000020021000390000000000320435000000000200041100000000002104350000006a0010009c0000006a01008041000000400110021000000000020004140000006a0020009c0000006a02008041000000c002200210000000000112019f0000007d011001c70000800d0200003900000001030000390000007f0400004101a201980000040f0000000100200190000000fb0000c13d0000000001000019000001a400010430000000000001042f00000000020004140000006a0020009c0000006a02008041000000c0022002100000006a0010009c0000006a010080410000004001100210000000000121019f0000007d011001c7000080100200003901a2019d0000040f0000000100200190000001960000613d000000000101043b000000000001042d0000000001000019000001a4000104300000019b002104210000000102000039000000000001042d0000000002000019000000000001042d000001a0002104230000000102000039000000000001042d0000000002000019000000000001042d000001a200000432000001a30001042e000001a40001043000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffff00000000000000000000000000000000000000000000000000038d7ea4c68000ffffffffffffffffffffffff000000000000000000000000000000000000000000000000000000000000000000000000000000000000d3c21bcecceda10000000000000200000000000000000000000000000040000001000000000000000000000000000000000000000000000000000000000000000000000000008da5cb5a00000000000000000000000000000000000000000000000000000000af35ae2600000000000000000000000000000000000000000000000000000000af35ae2700000000000000000000000000000000000000000000000000000000d0febe4c00000000000000000000000000000000000000000000000000000000f8b2cb4f000000000000000000000000000000000000000000000000000000008da5cb5b00000000000000000000000000000000000000000000000000000000902d55a500000000000000000000000000000000000000000000000000000000518ab2a700000000000000000000000000000000000000000000000000000000518ab2a8000000000000000000000000000000000000000000000000000000007ff9b5960000000000000000000000000000000000000000000000000000000024600fc30000000000000000000000000000000000000000000000000000000027e235e3000000000000000000000000ffffffffffffffffffffffffffffffffffffffff000000000000000000000000000000000000002000000080000000000000000002000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000de0b6b3a76400008f28852646c20cc973d3a8218f7eefed58c25c909f78f0265af4818c3d4dc2714e487b710000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000240000000000000000000000004e6f7420656e6f75676820746f6b656e7320617661696c61626c65000000000008c379a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000640000000000000000000000004e6f20746f6b656e7320617661696c61626c650000000000000000000000000053656e642045544820746f2062757920746f6b656e730000000000000000000000000000000000000000000000000000000000640000008000000000000000004f6e6c79206f776e65722063616e2063616c6c20746869732066756e6374696f6e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000840000008000000000000000009cc7f708afc65944829bd487b90b72536b1951864fbfc14e125fc972a6507f39020000020000000000000000000000000000002400000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000ffffffffffffffff5061796d656e74206661696c65642e0000000000000000000000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe039247c48df83f849edcbd914189ba1b811f44f9f8ee086bccc4496a0ee93aa80

Block Transaction 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
[ 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.