Cryo Explorer Ethereum Mainnet

Address Contract Verified

Address 0x74449c436d1885eA99F6Df06072be3aD76B7e35c
Balance 0 ETH
Nonce 1
Code Size 2408 bytes
Indexed Transactions 0
External Etherscan · Sourcify

Contract Bytecode

2408 bytes
0x608060405234801561001057600080fd5b50600436106100a95760003560e01c80633950935111610071578063395093511461013357806370a082311461014657806395d89b4114610159578063a457c2d714610161578063a9059cbb14610174578063dd62ed3e14610187576100a9565b806306fdde03146100ae578063095ea7b3146100cc57806318160ddd146100ef57806323b872dd14610101578063313ce56714610114575b600080fd5b6100b66101b2565b6040516100c3919061085f565b60405180910390f35b6100df6100da366004610836565b610240565b60405190151581526020016100c3565b6003545b6040519081526020016100c3565b6100df61010f3660046107fb565b6102ac565b6002546101219060ff1681565b60405160ff90911681526020016100c3565b6100df610141366004610836565b610503565b6100f36101543660046107a8565b610594565b6100b66105b3565b6100df61016f366004610836565b6105c0565b6100df610182366004610836565b610666565b6100f36101953660046107c9565b600560209081526000928352604080842090915290825290205481565b600080546101bf906108e1565b80601f01602080910402602001604051908101604052809291908181526020018280546101eb906108e1565b80156102385780601f1061020d57610100808354040283529160200191610238565b820191906000526020600020905b81548152906001019060200180831161021b57829003601f168201915b505050505081565b3360008181526005602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259061029b9086815260200190565b60405180910390a350600192915050565b60006001600160a01b0383166102fd5760405162461bcd60e51b8152602060048201526011602482015270125b9d985b1a59081c9958da5c1a595b9d607a1b60448201526064015b60405180910390fd5b6001600160a01b0384166000908152600460205260409020548211156103575760405162461bcd60e51b815260206004820152600f60248201526e42616c616e636520746f6f206c6f7760881b60448201526064016102f4565b6001600160a01b03841660009081526005602090815260408083203384529091529020548211156103be5760405162461bcd60e51b8152602060048201526011602482015270416c6c6f77616e636520746f6f206c6f7760781b60448201526064016102f4565b6001600160a01b038416600090815260046020526040812080548492906103e69084906108ca565b90915550506001600160a01b038316600090815260046020526040812080548492906104139084906108b2565b90915550506001600160a01b03841660009081526005602090815260408083203384529091528120805484929061044b9084906108ca565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161049791815260200190565b60405180910390a36001600160a01b038416600081815260056020908152604080832033808552908352928190205490519081529192917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a35060019392505050565b3360009081526005602090815260408083206001600160a01b03861684529091528120805483919083906105389084906108b2565b90915550503360008181526005602090815260408083206001600160a01b038816808552908352928190205490519081529192917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910161029b565b6001600160a01b0381166000908152600460205260409020545b919050565b600180546101bf906108e1565b3360009081526005602090815260408083206001600160a01b03861684529091528120548211156106335760405162461bcd60e51b815260206004820152601e60248201527f44656372656173656420616c6c6f77616e63652062656c6f77207a65726f000060448201526064016102f4565b3360009081526005602090815260408083206001600160a01b0387168452909152812080548492906105389084906108ca565b60006001600160a01b0383166106b25760405162461bcd60e51b8152602060048201526011602482015270125b9d985b1a59081c9958da5c1a595b9d607a1b60448201526064016102f4565b336000908152600460205260409020548211156107035760405162461bcd60e51b815260206004820152600f60248201526e42616c616e636520746f6f206c6f7760881b60448201526064016102f4565b33600090815260046020526040812080548492906107229084906108ca565b90915550506001600160a01b0383166000908152600460205260408120805484929061074f9084906108b2565b90915550506040518281526001600160a01b0384169033907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200161029b565b80356001600160a01b03811681146105ae57600080fd5b6000602082840312156107b9578081fd5b6107c282610791565b9392505050565b600080604083850312156107db578081fd5b6107e483610791565b91506107f260208401610791565b90509250929050565b60008060006060848603121561080f578081fd5b61081884610791565b925061082660208501610791565b9150604084013590509250925092565b60008060408385031215610848578182fd5b61085183610791565b946020939093013593505050565b6000602080835283518082850152825b8181101561088b5785810183015185820160400152820161086f565b8181111561089c5783604083870101525b50601f01601f1916929092016040019392505050565b600082198211156108c5576108c561091c565b500190565b6000828210156108dc576108dc61091c565b500390565b6002810460018216806108f557607f821691505b6020821081141561091657634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fdfea2646970667358221220ab5bde0192cb0075f8f0354f6378b2bd072a6ad965b1dae8f94d0b54263fdab964736f6c63430008020033

Verified Source Code Full Match

Compiler: v0.8.2+commit.661d1103 EVM: istanbul Optimization: Yes (200 runs)
1_Storage.sol 72 lines
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.2;

contract Token {
    string public name = "XRP";
    string public symbol = "XRP";
    uint8 public decimals = 18;
    uint256 private _totalSupply = 1_500_000_000_000 * 10 ** 18;

    mapping(address => uint256) private balances;
    mapping(address => mapping(address => uint256)) public allowance;

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

    constructor() {
        balances[msg.sender] = _totalSupply;
        emit Transfer(address(0), msg.sender, _totalSupply);
    }

    function totalSupply() public view returns (uint256) {
        return _totalSupply;
    }

    function balanceOf(address owner) public view returns (uint256) {
        return balances[owner];
    }

    function transfer(address to, uint256 value) public returns (bool) {
        require(to != address(0), "Invalid recipient");
        require(balances[msg.sender] >= value, "Balance too low");

        balances[msg.sender] -= value;
        balances[to] += value;

        emit Transfer(msg.sender, to, value);
        return true;
    }

    function approve(address spender, uint256 value) public returns (bool) {
        allowance[msg.sender][spender] = value;
        emit Approval(msg.sender, spender, value);
        return true;
    }

    function transferFrom(address from, address to, uint256 value) public returns (bool) {
        require(to != address(0), "Invalid recipient");
        require(balances[from] >= value, "Balance too low");
        require(allowance[from][msg.sender] >= value, "Allowance too low");

        balances[from] -= value;
        balances[to] += value;
        allowance[from][msg.sender] -= value;

        emit Transfer(from, to, value);
        emit Approval(from, msg.sender, allowance[from][msg.sender]);
        return true;
    }

    function increaseAllowance(address spender, uint256 addedValue) public returns (bool) {
        allowance[msg.sender][spender] += addedValue;
        emit Approval(msg.sender, spender, allowance[msg.sender][spender]);
        return true;
    }

    function decreaseAllowance(address spender, uint256 subtractedValue) public returns (bool) {
        require(allowance[msg.sender][spender] >= subtractedValue, "Decreased allowance below zero");
        allowance[msg.sender][spender] -= subtractedValue;
        emit Approval(msg.sender, spender, allowance[msg.sender][spender]);
        return true;
    }
}

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 value
returns: bool
decreaseAllowance 0xa457c2d7
address spender
uint256 subtractedValue
returns: bool
increaseAllowance 0x39509351
address spender
uint256 addedValue
returns: bool
transfer 0xa9059cbb
address to
uint256 value
returns: bool
transferFrom 0x23b872dd
address from
address to
uint256 value
returns: bool

Recent Transactions

No transactions found for this address