Skip to main content
PulseScanner.io

Address

0xe46dbd49068f10d91c1d1007b1bd9e7e36a6f2be
Current Holdings
$0.00
TXs sent
not counted
First Active
2026-08-05
block 27,206,977
Last Active
42 days ago
block 27,229,444
Funded By
not identified

Net worth historyi

No net-worth snapshots recorded yet
partial matchPlainERC20Tokensolc 0.8.34+commit.80d5c536runtime partial · creation partial
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.24;

import {ERC20} from "@openzeppelin/contracts/token/ERC20/ERC20.sol";
import {Ownable} from "@openzeppelin/contracts/access/Ownable.sol";

import {Helpers} from "./interfaces/TokenTypes.sol";

/// @notice Fixed-supply non-tax launch token used by the Cabal/Pump curve.
/// @dev Keeps the small factory-facing surface that TokenFactoryTax already
///      expects, but does not include tax, trading-gate, or swap logic.
contract PlainERC20Token is ERC20, Ownable {
    address public constant DEAD = 0x000000000000000000000000000000000000dEaD;

    uint256 public immutable initialSupply;

    constructor(
        string memory name_,
        string memory symbol_,
        address owner_,
        address mintTo_,
        uint256 initialSupply_
    ) ERC20(name_, symbol_) Ownable(owner_) {
        require(owner_ != address(0), "Invalid owner");
        require(mintTo_ != address(0), "Invalid mint to");

        initialSupply = initialSupply_;

        _mint(mintTo_, initialSupply_);
    }

    function getTaxes() external pure returns (Helpers.Tax[] memory taxes) {
        taxes = new Helpers.Tax[](0);
    }

    function _update(address from, address to, uint256 value) internal override {
        if (to == DEAD && from != address(0)) {
            super._update(from, address(0), value);
            return;
        }
        super._update(from, to, value);
    }
}