Address Contract Verified
Address
0x74449c436d1885eA99F6Df06072be3aD76B7e35c
Balance
0 ETH
Nonce
1
Code Size
2408 bytes
Creator
0xC79d4F6D...9FD4 at tx 0x57e3c538...b7984b
Indexed Transactions
0
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