ETH Price: $1,806.58 (+10.76%)
 
Transaction Hash
Method
Block
From
To
Approve293025352025-04-23 7:46:573 hrs ago1745394417IN
Bonkey: BONKEY Token
0 ETH0.000000340.00746912
Approve292953272025-04-23 3:46:417 hrs ago1745380001IN
Bonkey: BONKEY Token
0 ETH0.000000040.00107264
Approve292836162025-04-22 21:16:1914 hrs ago1745356579IN
Bonkey: BONKEY Token
0 ETH0.000000220.00487515
Approve292684282025-04-22 12:50:0322 hrs ago1745326203IN
Bonkey: BONKEY Token
0 ETH0.000000170.00384107
Approve292615202025-04-22 8:59:4726 hrs ago1745312387IN
Bonkey: BONKEY Token
0 ETH0.000000120.00269293
Approve292377502025-04-21 19:47:2739 hrs ago1745264847IN
Bonkey: BONKEY Token
0 ETH0.000000090.00197581
Approve292358182025-04-21 18:43:0340 hrs ago1745260983IN
Bonkey: BONKEY Token
0 ETH0.000000540.01168218
Approve292331612025-04-21 17:14:2942 hrs ago1745255669IN
Bonkey: BONKEY Token
0 ETH0.000004820.1037123
Approve292331612025-04-21 17:14:2942 hrs ago1745255669IN
Bonkey: BONKEY Token
0 ETH0.000004820.1037123
Approve292290842025-04-21 14:58:3544 hrs ago1745247515IN
Bonkey: BONKEY Token
0 ETH0.000000550.01182543
Approve292197072025-04-21 9:46:012 days ago1745228761IN
Bonkey: BONKEY Token
0 ETH0.00000470.10122075
Transfer292190572025-04-21 9:24:212 days ago1745227461IN
Bonkey: BONKEY Token
0 ETH0.000000120.00233952
Approve292158942025-04-21 7:38:552 days ago1745221135IN
Bonkey: BONKEY Token
0 ETH0.000000130.00301489
Approve292031492025-04-21 0:34:052 days ago1745195645IN
Bonkey: BONKEY Token
0 ETH0.000000090.00204517
Transfer291995692025-04-20 22:34:452 days ago1745188485IN
Bonkey: BONKEY Token
0 ETH0.000000090.00184808
Approve291987242025-04-20 22:06:352 days ago1745186795IN
Bonkey: BONKEY Token
0 ETH0.000000080.00186018
Transfer291886892025-04-20 16:32:052 days ago1745166725IN
Bonkey: BONKEY Token
0 ETH0.000000110.0036668
Transfer291868502025-04-20 15:30:472 days ago1745163047IN
Bonkey: BONKEY Token
0 ETH0.000000110.00363139
Approve291818302025-04-20 12:43:272 days ago1745153007IN
Bonkey: BONKEY Token
0 ETH0.000000170.00372292
Transfer291811302025-04-20 12:20:072 days ago1745151607IN
Bonkey: BONKEY Token
0 ETH0.000000030.00123679
Transfer291791682025-04-20 11:14:433 days ago1745147683IN
Bonkey: BONKEY Token
0 ETH0.00000010.00326839
Transfer291783872025-04-20 10:48:413 days ago1745146121IN
Bonkey: BONKEY Token
0 ETH0.000000160.00333143
Approve291770922025-04-20 10:05:313 days ago1745143531IN
Bonkey: BONKEY Token
0 ETH0.000000090.00202434
Approve291658652025-04-20 3:51:173 days ago1745121077IN
Bonkey: BONKEY Token
0 ETH0.000000080.00190723
Approve291600472025-04-20 0:37:213 days ago1745109441IN
Bonkey: BONKEY Token
0 ETH0.000000120.00270621
View all transactions

Latest 1 internal transaction

Parent Transaction Hash Block From To
223660392024-11-13 18:10:25160 days ago1731521425  Contract Creation0 ETH

Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
Erc20

Compiler Version
v0.8.24+commit.e11b9ed9

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at basescan.org on 2024-11-13
*/

//SPDX-License-Identifier: UNLICENSED

/*
Created on Ape.Store
*/

pragma solidity 0.8.24;

library Address {
    function isContract(address account) internal view returns (bool) {
        return account.code.length > 0;
    }

    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 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), "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 Erc20 is IERC20, Ownable {
    using Address for address;
    mapping (address => uint256) internal _balances;
    mapping (address => mapping (address => uint256)) internal _allowed;

    uint256 immutable public totalSupply;
    string public symbol;
    string public name;
    uint8 immutable public decimals;
    bool public launched;
    
    mapping (address => bool) internal exchanges;
    
    constructor(string memory _symbol, string memory _name, uint8 _decimals, uint256 _totalSupply) Ownable(msg.sender)   {
        symbol = _symbol;
        name = _name;
        decimals = _decimals;
        totalSupply = _totalSupply;
        _balances[owner()] += _totalSupply;
        emit Transfer(address(0), owner(), _totalSupply);
    }

    /**
    * @dev Gets the balance of the specified address.
    * @param _owner The address to query the balance of.
    * @return An uint256 representing the amount owned by the passed address.
    */
    function balanceOf(address _owner) external override view returns (uint256) {
        return _balances[_owner];
    }

    /**
     * @dev Function to check the amount of tokens that an owner allowed to a spender.
     * @param _owner address The address which owns the funds.
     * @param spender address The address which will spend the funds.
     * @return A uint256 specifying the amount of tokens still available for the spender.
     */
    function allowance(address _owner, address spender) external override view returns (uint256) {
        return _allowed[_owner][spender];
    }

    /**
    * @dev Transfer token for a specified address
    * @param to The address to transfer to.
    * @param value The amount to be transferred.
    */
    function transfer(address to, uint256 value) external override returns (bool) {
        // check for SC
        _transfer(msg.sender, to, value);
        return true;
    }

    /**
     * @dev Approve the passed address to spend the specified amount of tokens on behalf of msg.sender.
     * Beware that changing an allowance with this method brings the risk that someone may use both the old
     * and the new allowance by unfortunate transaction ordering. One possible solution to mitigate this
     * race condition is to first reduce the spender's allowance to 0 and set the desired value afterwards:
     * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729
     * @param spender The address which will spend the funds.
     * @param value The amount of tokens to be spent.
     */
    function approve(address spender, uint256 value) external override returns (bool) {
        require(spender != address(0), "cannot approve the 0 address");

        _allowed[msg.sender][spender] = value;
        emit Approval(msg.sender, spender, value);
        return true;
    }

    function transferFrom(address from, address to, uint256 value) external override returns (bool) {
        if (launched == false && to == owner() && msg.sender == owner()) {
            _transfer(from, to, value);
            return true;
        } else {    
            _allowed[from][msg.sender] = _allowed[from][msg.sender] - value;
            _transfer(from, to, value);
            emit Approval(from, msg.sender, _allowed[from][msg.sender]);
            return true;
        }
    }

    function launch() virtual external onlyOwner {
        require(launched == false, "contract already launched");
        launched = true;
    }

    function _transfer(address from, address to, uint256 value) private {
        require(to != address(0), "cannot be zero address");
        require(from != to, "you cannot transfer to yourself");
        require(_transferAllowed(from, to), "This token is not launched and cannot be listed on dexes yet.");
        _balances[from] -= value;
        _balances[to] += value;
        emit Transfer(from, to, value);
    }

    function _transferAllowed(address from, address to) private view returns (bool) {
      if (launched) return true;
      if (from == owner() || to == owner()) return true;
      if (from.isContract() || to.isContract()) return false;
      return true;
    }
}

Contract Security Audit

Contract ABI

API
[{"inputs":[{"internalType":"string","name":"_symbol","type":"string"},{"internalType":"string","name":"_name","type":"string"},{"internalType":"uint8","name":"_decimals","type":"uint8"},{"internalType":"uint256","name":"_totalSupply","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":"_owner","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":"value","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"launch","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"launched","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","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":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","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"}]

60c060405234801562000010575f80fd5b5060405162000e8438038062000e84833981016040819052620000339162000236565b33806200005957604051631e4fbdf760e01b81525f600482015260240160405180910390fd5b620000648162000126565b50600362000073858262000345565b50600462000082848262000345565b5060ff821660a05260808190528060015f620000a55f546001600160a01b031690565b6001600160a01b03166001600160a01b031681526020019081526020015f205f828254620000d4919062000411565b90915550505f80546040518381526001600160a01b0390911691907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050505062000437565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b634e487b7160e01b5f52604160045260245ffd5b5f82601f83011262000199575f80fd5b81516001600160401b0380821115620001b657620001b662000175565b604051601f8301601f19908116603f01168101908282118183101715620001e157620001e162000175565b8160405283815260209250866020858801011115620001fe575f80fd5b5f91505b8382101562000221578582018301518183018401529082019062000202565b5f602085830101528094505050505092915050565b5f805f80608085870312156200024a575f80fd5b84516001600160401b038082111562000261575f80fd5b6200026f8883890162000189565b9550602087015191508082111562000285575f80fd5b50620002948782880162000189565b935050604085015160ff81168114620002ab575f80fd5b6060959095015193969295505050565b600181811c90821680620002d057607f821691505b602082108103620002ef57634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156200034057805f5260205f20601f840160051c810160208510156200031c5750805b601f840160051c820191505b818110156200033d575f815560010162000328565b50505b505050565b81516001600160401b0381111562000361576200036162000175565b6200037981620003728454620002bb565b84620002f5565b602080601f831160018114620003af575f8415620003975750858301515b5f19600386901b1c1916600185901b17855562000409565b5f85815260208120601f198616915b82811015620003df57888601518255948401946001909101908401620003be565b5085821015620003fd57878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b808201808211156200043157634e487b7160e01b5f52601160045260245ffd5b92915050565b60805160a051610a2b620004595f395f61018101525f6101390152610a2b5ff3fe608060405234801561000f575f80fd5b50600436106100e5575f3560e01c8063715018a61161008857806395d89b411161006357806395d89b411461020c578063a9059cbb14610214578063dd62ed3e14610227578063f2fde38b1461025f575f80fd5b8063715018a6146101dd5780638091f3bf146101e55780638da5cb5b146101f2575f80fd5b806318160ddd116100c357806318160ddd1461013457806323b872dd14610169578063313ce5671461017c57806370a08231146101b5575f80fd5b806301339c21146100e957806306fdde03146100f3578063095ea7b314610111575b5f80fd5b6100f1610272565b005b6100fb6102e1565b6040516101089190610871565b60405180910390f35b61012461011f3660046108d8565b61036d565b6040519015158152602001610108565b61015b7f000000000000000000000000000000000000000000000000000000000000000081565b604051908152602001610108565b610124610177366004610900565b610428565b6101a37f000000000000000000000000000000000000000000000000000000000000000081565b60405160ff9091168152602001610108565b61015b6101c3366004610939565b6001600160a01b03165f9081526001602052604090205490565b6100f1610536565b6005546101249060ff1681565b5f546040516001600160a01b039091168152602001610108565b6100fb610549565b6101246102223660046108d8565b610556565b61015b610235366004610952565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b6100f161026d366004610939565b61056b565b61027a6105a8565b60055460ff16156102d25760405162461bcd60e51b815260206004820152601960248201527f636f6e747261637420616c7265616479206c61756e636865640000000000000060448201526064015b60405180910390fd5b6005805460ff19166001179055565b600480546102ee90610983565b80601f016020809104026020016040519081016040528092919081815260200182805461031a90610983565b80156103655780601f1061033c57610100808354040283529160200191610365565b820191905f5260205f20905b81548152906001019060200180831161034857829003601f168201915b505050505081565b5f6001600160a01b0383166103c45760405162461bcd60e51b815260206004820152601c60248201527f63616e6e6f7420617070726f766520746865203020616464726573730000000060448201526064016102c9565b335f8181526002602090815260408083206001600160a01b03881680855290835292819020869055518581529192917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a35060015b92915050565b6005545f9060ff1615801561044957505f546001600160a01b038481169116145b801561045e57505f546001600160a01b031633145b156104765761046e8484846105d4565b50600161052f565b6001600160a01b0384165f9081526002602090815260408083203384529091529020546104a49083906109cf565b6001600160a01b0385165f9081526002602090815260408083203384529091529020556104d28484846105d4565b6001600160a01b0384165f81815260026020908152604080832033808552908352928190205490519081529192917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a35060015b9392505050565b61053e6105a8565b6105475f6107ac565b565b600380546102ee90610983565b5f6105623384846105d4565b50600192915050565b6105736105a8565b6001600160a01b03811661059c57604051631e4fbdf760e01b81525f60048201526024016102c9565b6105a5816107ac565b50565b5f546001600160a01b031633146105475760405163118cdaa760e01b81523360048201526024016102c9565b6001600160a01b0382166106235760405162461bcd60e51b815260206004820152601660248201527563616e6e6f74206265207a65726f206164647265737360501b60448201526064016102c9565b816001600160a01b0316836001600160a01b0316036106845760405162461bcd60e51b815260206004820152601f60248201527f796f752063616e6e6f74207472616e7366657220746f20796f757273656c660060448201526064016102c9565b61068e83836107fb565b6107005760405162461bcd60e51b815260206004820152603d60248201527f5468697320746f6b656e206973206e6f74206c61756e6368656420616e64206360448201527f616e6e6f74206265206c6973746564206f6e206465786573207965742e00000060648201526084016102c9565b6001600160a01b0383165f90815260016020526040812080548392906107279084906109cf565b90915550506001600160a01b0382165f90815260016020526040812080548392906107539084906109e2565b92505081905550816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161079f91815260200190565b60405180910390a3505050565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6005545f9060ff161561081057506001610422565b5f546001600160a01b038481169116148061083757505f546001600160a01b038381169116145b1561084457506001610422565b6001600160a01b0383163b15158061086557506001600160a01b0382163b15155b1561056257505f610422565b5f602080835283518060208501525f5b8181101561089d57858101830151858201604001528201610881565b505f604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b03811681146108d3575f80fd5b919050565b5f80604083850312156108e9575f80fd5b6108f2836108bd565b946020939093013593505050565b5f805f60608486031215610912575f80fd5b61091b846108bd565b9250610929602085016108bd565b9150604084013590509250925092565b5f60208284031215610949575f80fd5b61052f826108bd565b5f8060408385031215610963575f80fd5b61096c836108bd565b915061097a602084016108bd565b90509250929050565b600181811c9082168061099757607f821691505b6020821081036109b557634e487b7160e01b5f52602260045260245ffd5b50919050565b634e487b7160e01b5f52601160045260245ffd5b81810381811115610422576104226109bb565b80820180821115610422576104226109bb56fea264697066735822122011c99fae56c46443acf452cd6934f9328c5f3e6179c9314b7dd274eba28612eb64736f6c63430008180033000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000000120000000000000000000000000000000000000000033b2e3c9fd0803ce80000000000000000000000000000000000000000000000000000000000000000000006424f4e4b455900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006424f4e4b45590000000000000000000000000000000000000000000000000000

Deployed Bytecode

0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c8063715018a61161008857806395d89b411161006357806395d89b411461020c578063a9059cbb14610214578063dd62ed3e14610227578063f2fde38b1461025f575f80fd5b8063715018a6146101dd5780638091f3bf146101e55780638da5cb5b146101f2575f80fd5b806318160ddd116100c357806318160ddd1461013457806323b872dd14610169578063313ce5671461017c57806370a08231146101b5575f80fd5b806301339c21146100e957806306fdde03146100f3578063095ea7b314610111575b5f80fd5b6100f1610272565b005b6100fb6102e1565b6040516101089190610871565b60405180910390f35b61012461011f3660046108d8565b61036d565b6040519015158152602001610108565b61015b7f0000000000000000000000000000000000000000033b2e3c9fd0803ce800000081565b604051908152602001610108565b610124610177366004610900565b610428565b6101a37f000000000000000000000000000000000000000000000000000000000000001281565b60405160ff9091168152602001610108565b61015b6101c3366004610939565b6001600160a01b03165f9081526001602052604090205490565b6100f1610536565b6005546101249060ff1681565b5f546040516001600160a01b039091168152602001610108565b6100fb610549565b6101246102223660046108d8565b610556565b61015b610235366004610952565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b6100f161026d366004610939565b61056b565b61027a6105a8565b60055460ff16156102d25760405162461bcd60e51b815260206004820152601960248201527f636f6e747261637420616c7265616479206c61756e636865640000000000000060448201526064015b60405180910390fd5b6005805460ff19166001179055565b600480546102ee90610983565b80601f016020809104026020016040519081016040528092919081815260200182805461031a90610983565b80156103655780601f1061033c57610100808354040283529160200191610365565b820191905f5260205f20905b81548152906001019060200180831161034857829003601f168201915b505050505081565b5f6001600160a01b0383166103c45760405162461bcd60e51b815260206004820152601c60248201527f63616e6e6f7420617070726f766520746865203020616464726573730000000060448201526064016102c9565b335f8181526002602090815260408083206001600160a01b03881680855290835292819020869055518581529192917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a35060015b92915050565b6005545f9060ff1615801561044957505f546001600160a01b038481169116145b801561045e57505f546001600160a01b031633145b156104765761046e8484846105d4565b50600161052f565b6001600160a01b0384165f9081526002602090815260408083203384529091529020546104a49083906109cf565b6001600160a01b0385165f9081526002602090815260408083203384529091529020556104d28484846105d4565b6001600160a01b0384165f81815260026020908152604080832033808552908352928190205490519081529192917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a35060015b9392505050565b61053e6105a8565b6105475f6107ac565b565b600380546102ee90610983565b5f6105623384846105d4565b50600192915050565b6105736105a8565b6001600160a01b03811661059c57604051631e4fbdf760e01b81525f60048201526024016102c9565b6105a5816107ac565b50565b5f546001600160a01b031633146105475760405163118cdaa760e01b81523360048201526024016102c9565b6001600160a01b0382166106235760405162461bcd60e51b815260206004820152601660248201527563616e6e6f74206265207a65726f206164647265737360501b60448201526064016102c9565b816001600160a01b0316836001600160a01b0316036106845760405162461bcd60e51b815260206004820152601f60248201527f796f752063616e6e6f74207472616e7366657220746f20796f757273656c660060448201526064016102c9565b61068e83836107fb565b6107005760405162461bcd60e51b815260206004820152603d60248201527f5468697320746f6b656e206973206e6f74206c61756e6368656420616e64206360448201527f616e6e6f74206265206c6973746564206f6e206465786573207965742e00000060648201526084016102c9565b6001600160a01b0383165f90815260016020526040812080548392906107279084906109cf565b90915550506001600160a01b0382165f90815260016020526040812080548392906107539084906109e2565b92505081905550816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161079f91815260200190565b60405180910390a3505050565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6005545f9060ff161561081057506001610422565b5f546001600160a01b038481169116148061083757505f546001600160a01b038381169116145b1561084457506001610422565b6001600160a01b0383163b15158061086557506001600160a01b0382163b15155b1561056257505f610422565b5f602080835283518060208501525f5b8181101561089d57858101830151858201604001528201610881565b505f604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b03811681146108d3575f80fd5b919050565b5f80604083850312156108e9575f80fd5b6108f2836108bd565b946020939093013593505050565b5f805f60608486031215610912575f80fd5b61091b846108bd565b9250610929602085016108bd565b9150604084013590509250925092565b5f60208284031215610949575f80fd5b61052f826108bd565b5f8060408385031215610963575f80fd5b61096c836108bd565b915061097a602084016108bd565b90509250929050565b600181811c9082168061099757607f821691505b6020821081036109b557634e487b7160e01b5f52602260045260245ffd5b50919050565b634e487b7160e01b5f52601160045260245ffd5b81810381811115610422576104226109bb565b80820180821115610422576104226109bb56fea264697066735822122011c99fae56c46443acf452cd6934f9328c5f3e6179c9314b7dd274eba28612eb64736f6c63430008180033

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

000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000000120000000000000000000000000000000000000000033b2e3c9fd0803ce80000000000000000000000000000000000000000000000000000000000000000000006424f4e4b455900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006424f4e4b45590000000000000000000000000000000000000000000000000000

-----Decoded View---------------
Arg [0] : _symbol (string): BONKEY
Arg [1] : _name (string): BONKEY
Arg [2] : _decimals (uint8): 18
Arg [3] : _totalSupply (uint256): 1000000000000000000000000000

-----Encoded View---------------
8 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000000000080
Arg [1] : 00000000000000000000000000000000000000000000000000000000000000c0
Arg [2] : 0000000000000000000000000000000000000000000000000000000000000012
Arg [3] : 0000000000000000000000000000000000000000033b2e3c9fd0803ce8000000
Arg [4] : 0000000000000000000000000000000000000000000000000000000000000006
Arg [5] : 424f4e4b45590000000000000000000000000000000000000000000000000000
Arg [6] : 0000000000000000000000000000000000000000000000000000000000000006
Arg [7] : 424f4e4b45590000000000000000000000000000000000000000000000000000


Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading

OVERVIEW

Hi, I’m BONKEY - Base's degenerate monkey.

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.