Forkchoice Ethereum Mainnet

Address Contract Verified

Address 0x5202d112f476199Cf7df2bf4EfCa113aD13358dA
Balance 0 ETH
Nonce 1
Code Size 2511 bytes
Indexed Transactions 0
External Etherscan · Sourcify

Contract Bytecode

2511 bytes
0x608060405234801561001057600080fd5b50600436106100a95760003560e01c80633950935111610071578063395093511461014e57806370a082311461016157806395d89b411461018a578063a457c2d7146101ac578063a9059cbb146101bf578063dd62ed3e146101d257600080fd5b806306fdde03146100ae578063095ea7b3146100e857806318160ddd1461010b57806323b872dd14610121578063313ce56714610134575b600080fd5b6100d26040518060400160405280600581526020016420a92c27a760d91b81525081565b6040516100df9190610740565b60405180910390f35b6100fb6100f63660046107aa565b61020b565b60405190151581526020016100df565b610113610222565b6040519081526020016100df565b6100fb61012f3660046107d4565b61023f565b61013c601281565b60405160ff90911681526020016100df565b6100fb61015c3660046107aa565b610361565b61011361016f366004610811565b6001600160a01b031660009081526020819052604090205490565b6100d260405180604001604052806003815260200162082a4b60eb1b81525081565b6100fb6101ba3660046107aa565b61039d565b6100fb6101cd3660046107aa565b610436565b6101136101e0366004610833565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6000610218338484610443565b5060015b92915050565b61022e6012600a610963565b61023c906305f5e10061096f565b81565b6001600160a01b0383166000908152600160209081526040808320338452909152812054828110156102c95760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b60648201526084015b60405180910390fd5b6001600160a01b0385166000908152600160209081526040808320338452909152902083820390556102fc858585610550565b6001600160a01b038516600081815260016020908152604080832033808552908352928190205490519081529192917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3506001949350505050565b3360008181526001602090815260408083206001600160a01b03871684529091528120549091610218918590610398908690610986565b610443565b3360009081526001602090815260408083206001600160a01b03861684529091528120548281101561041f5760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084016102c0565b61042c3385858403610443565b5060019392505050565b6000610218338484610550565b6001600160a01b0383166104995760405162461bcd60e51b815260206004820181905260248201527f45524332303a20617070726f76652066726f6d207a65726f206164647265737360448201526064016102c0565b6001600160a01b0382166104ef5760405162461bcd60e51b815260206004820152601e60248201527f45524332303a20617070726f766520746f207a65726f2061646472657373000060448201526064016102c0565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166105b05760405162461bcd60e51b815260206004820152602160248201527f45524332303a207472616e736665722066726f6d207a65726f206164647265736044820152607360f81b60648201526084016102c0565b6001600160a01b0382166106065760405162461bcd60e51b815260206004820152601f60248201527f45524332303a207472616e7366657220746f207a65726f20616464726573730060448201526064016102c0565b600081116106615760405162461bcd60e51b815260206004820152602260248201527f45524332303a207472616e7366657220616d6f756e74206d757374206265203e604482015261020360f41b60648201526084016102c0565b6001600160a01b038316600090815260208190526040902054818110156106d95760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b60648201526084016102c0565b6001600160a01b03848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a350505050565b602081526000825180602084015260005b8181101561076e5760208186018101516040868401015201610751565b506000604082850101526040601f19601f83011684010191505092915050565b80356001600160a01b03811681146107a557600080fd5b919050565b600080604083850312156107bd57600080fd5b6107c68361078e565b946020939093013593505050565b6000806000606084860312156107e957600080fd5b6107f28461078e565b92506108006020850161078e565b929592945050506040919091013590565b60006020828403121561082357600080fd5b61082c8261078e565b9392505050565b6000806040838503121561084657600080fd5b61084f8361078e565b915061085d6020840161078e565b90509250929050565b634e487b7160e01b600052601160045260246000fd5b6001815b60018411156108b75780850481111561089b5761089b610866565b60018416156108a957908102905b60019390931c928002610880565b935093915050565b6000826108ce5750600161021c565b816108db5750600061021c565b81600181146108f157600281146108fb57610917565b600191505061021c565b60ff84111561090c5761090c610866565b50506001821b61021c565b5060208310610133831016604e8410600b841016171561093a575081810a61021c565b610947600019848461087c565b806000190482111561095b5761095b610866565b029392505050565b600061082c83836108bf565b808202811582820484141761021c5761021c610866565b8082018082111561021c5761021c61086656fea264697066735822122010763e4178dc3258c7cb6225ad6d48620e35541f2b90f80c79c7a67e095f8d5064736f6c634300081f0033

Verified Source Code Full Match

Compiler: v0.8.31+commit.fd3a2265 EVM: paris Optimization: Yes (200 runs)
ARXON_ERC20.sol 109 lines
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.20;

/*
ARXON (ARX) - Simple ERC20
- Fixed total supply
- No mint after deploy
- No tax, no blacklist, no proxy
- Single-file, verify-friendly
*/

contract ARXON {
    // ERC20 metadata
    string public constant name = "ARXON";
    string public constant symbol = "ARX";
    uint8 public constant decimals = 18;

    // Total supply: 100,000,000 ARX (18 decimals)
    uint256 public constant totalSupply = 100_000_000 * 10 ** uint256(decimals);

    // Balances & allowances
    mapping(address => uint256) private _balances;
    mapping(address => mapping(address => uint256)) private _allowances;

    // Events (ERC20 standard)
    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(address indexed owner, address indexed spender, uint256 value);

    constructor() {
        // Mint fixed supply to deployer
        _balances[msg.sender] = totalSupply;
        emit Transfer(address(0), msg.sender, totalSupply);
    }

    // --- ERC20 standard functions ---

    function balanceOf(address account) external view returns (uint256) {
        return _balances[account];
    }

    function allowance(address owner, address spender) external view returns (uint256) {
        return _allowances[owner][spender];
    }

    function transfer(address to, uint256 amount) external returns (bool) {
        _transfer(msg.sender, to, amount);
        return true;
    }

    function approve(address spender, uint256 amount) external returns (bool) {
        _approve(msg.sender, spender, amount);
        return true;
    }

    function transferFrom(address from, address to, uint256 amount) external returns (bool) {
        uint256 currentAllowance = _allowances[from][msg.sender];
        require(currentAllowance >= amount, "ERC20: transfer amount exceeds allowance");

        unchecked {
            _allowances[from][msg.sender] = currentAllowance - amount;
        }

        _transfer(from, to, amount);
        emit Approval(from, msg.sender, _allowances[from][msg.sender]);
        return true;
    }

    // Optional helpers (still standard-ish)
    function increaseAllowance(address spender, uint256 addedValue) external returns (bool) {
        _approve(msg.sender, spender, _allowances[msg.sender][spender] + addedValue);
        return true;
    }

    function decreaseAllowance(address spender, uint256 subtractedValue) external returns (bool) {
        uint256 currentAllowance = _allowances[msg.sender][spender];
        require(currentAllowance >= subtractedValue, "ERC20: decreased allowance below zero");

        unchecked {
            _approve(msg.sender, spender, currentAllowance - subtractedValue);
        }
        return true;
    }

    // --- internal logic ---

    function _transfer(address from, address to, uint256 amount) internal {
        require(from != address(0), "ERC20: transfer from zero address");
        require(to != address(0), "ERC20: transfer to zero address");
        require(amount > 0, "ERC20: transfer amount must be > 0");

        uint256 fromBalance = _balances[from];
        require(fromBalance >= amount, "ERC20: transfer amount exceeds balance");

        unchecked {
            _balances[from] = fromBalance - amount;
            _balances[to] += amount;
        }

        emit Transfer(from, to, amount);
    }

    function _approve(address owner, address spender, uint256 amount) internal {
        require(owner != address(0), "ERC20: approve from zero address");
        require(spender != address(0), "ERC20: approve to zero address");

        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }
}

Read Contract

allowance 0xdd62ed3e → uint256
balanceOf 0x70a08231 → uint256
decimals 0x313ce567 → uint8
name 0x06fdde03 → string
symbol 0x95d89b41 → string
totalSupply 0x18160ddd → uint256

Write Contract 5 functions

These functions modify contract state and require a wallet transaction to execute.

approve 0x095ea7b3
address spender
uint256 amount
returns: bool
decreaseAllowance 0xa457c2d7
address spender
uint256 subtractedValue
returns: bool
increaseAllowance 0x39509351
address spender
uint256 addedValue
returns: bool
transfer 0xa9059cbb
address to
uint256 amount
returns: bool
transferFrom 0x23b872dd
address from
address to
uint256 amount
returns: bool

Recent Transactions

No transactions found for this address