Address Contract Verified
Address
0xC4c07c99585B362D59c62551d3313d64e82Db61A
Balance
0 ETH
Nonce
1
Code Size
2215 bytes
Creator
0x784C88E9...12dA at tx 0xf7f29e83...deaeb1
Indexed Transactions
0
Contract Bytecode
2215 bytes
0x608060405234801561001057600080fd5b50600436106100cf5760003560e01c806340c10f191161008c57806395d89b411161006657806395d89b41146101ed578063a9059cbb14610210578063dd62ed3e14610223578063f2fde38b1461025c57600080fd5b806340c10f191461018657806370a08231146101995780638da5cb5b146101c257600080fd5b806306fdde03146100d4578063095ea7b31461011257806318160ddd1461013557806323b872dd14610147578063313ce5671461015a578063355274ea14610174575b600080fd5b6100fc6040518060400160405280600981526020016844554249434f494e5360b81b81525081565b604051610109919061072b565b60405180910390f35b610125610120366004610795565b610271565b6040519015158152602001610109565b6001545b604051908152602001610109565b6101256101553660046107bf565b6102de565b610162601281565b60405160ff9091168152602001610109565b6101396a084595161401484a00000081565b610125610194366004610795565b610395565b6101396101a73660046107fb565b6001600160a01b031660009081526002602052604090205490565b6000546101d5906001600160a01b031681565b6040516001600160a01b039091168152602001610109565b6100fc604051806040016040528060048152602001634455424960e01b81525081565b61012561021e366004610795565b6103ef565b61013961023136600461081d565b6001600160a01b03918216600090815260036020908152604080832093909416825291909152205490565b61026f61026a3660046107fb565b6103fc565b005b3360008181526003602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906102cc9086815260200190565b60405180910390a35060015b92915050565b6001600160a01b0383166000908152600360209081526040808320338452909152812054828110156103575760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e636500000060448201526064015b60405180910390fd5b6001600160a01b03851660009081526003602090815260408083203384529091529020838203905561038a8585856104e6565b506001949350505050565b600080546001600160a01b031633146103dc5760405162461bcd60e51b81526020600482015260096024820152682737ba1037bbb732b960b91b604482015260640161034e565b6103e683836105ff565b50600192915050565b60006103e63384846104e6565b6000546001600160a01b031633146104425760405162461bcd60e51b81526020600482015260096024820152682737ba1037bbb732b960b91b604482015260640161034e565b6001600160a01b03811661048b5760405162461bcd60e51b815260206004820152601060248201526f6e6577206f776e6572203d207a65726f60801b604482015260640161034e565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b03821661052f5760405162461bcd60e51b815260206004820152601060248201526f45524332303a20746f203d207a65726f60801b604482015260640161034e565b6001600160a01b038316600090815260026020526040902054818110156105915760405162461bcd60e51b815260206004820152601660248201527545524332303a2062616c616e636520746f6f206c6f7760501b604482015260640161034e565b6001600160a01b0380851660008181526002602052604080822086860390559286168082529083902080548601905591517fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906105f19086815260200190565b60405180910390a350505050565b6001600160a01b03821661064b5760405162461bcd60e51b815260206004820152601360248201527245524332303a206d696e7420746f207a65726f60681b604482015260640161034e565b6a084595161401484a000000816001546106659190610850565b11156106a25760405162461bcd60e51b815260206004820152600c60248201526b10d85c08195e18d95959195960a21b604482015260640161034e565b80600160008282546106b49190610850565b90915550506001600160a01b038216600090815260026020526040812080548392906106e1908490610850565b90915550506040518181526001600160a01b038316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b600060208083528351808285015260005b818110156107585785810183015185820160400152820161073c565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b038116811461079057600080fd5b919050565b600080604083850312156107a857600080fd5b6107b183610779565b946020939093013593505050565b6000806000606084860312156107d457600080fd5b6107dd84610779565b92506107eb60208501610779565b9150604084013590509250925092565b60006020828403121561080d57600080fd5b61081682610779565b9392505050565b6000806040838503121561083057600080fd5b61083983610779565b915061084760208401610779565b90509250929050565b808201808211156102d857634e487b7160e01b600052601160045260246000fdfea264697066735822122045eaa98460f7bd4cb307fff92a37adb09b3875b097d64dde06620d66089e92cd64736f6c63430008140033
Verified Source Code Full Match
Compiler: v0.8.20+commit.a1b79de6
EVM: london
Optimization: Yes (200 runs)
DUBICOINS.sol 97 lines
// SPDX-License-Identifier: MIT
pragma solidity 0.8.20;
contract DUBICOINS {
// ===== ثابتها و متادیتا
string public constant name = "DUBICOINS";
string public constant symbol = "DUBI";
uint8 public constant decimals = 18;
// سقف کل (10,000,000 * 10^18)
uint256 public constant cap = 10_000_000 * 10**18;
// ===== مالک
address public owner;
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
modifier onlyOwner() {
require(msg.sender == owner, "Not owner");
_;
}
// ===== دادههای ERC20
uint256 private _totalSupply;
mapping(address => uint256) private _balances;
mapping(address => mapping(address => uint256)) private _allowances;
event Transfer(address indexed from, address indexed to, uint256 value);
event Approval(address indexed ownerAddr, address indexed spender, uint256 value);
constructor() {
owner = msg.sender;
emit OwnershipTransferred(address(0), owner);
// مینت اولیه: 100,000 * 10^18
_mint(msg.sender, 100_000 * 10**18);
}
// ===== Viewهای استاندارد ERC20
function totalSupply() external view returns (uint256) { return _totalSupply; }
function balanceOf(address account) external view returns (uint256) { return _balances[account]; }
function allowance(address ownerAddr, address spender) external view returns (uint256) {
return _allowances[ownerAddr][spender];
}
// ===== توابع استاندارد ERC20
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) {
_allowances[msg.sender][spender] = amount;
emit Approval(msg.sender, spender, amount);
return true;
}
function transferFrom(address from, address to, uint256 amount) external returns (bool) {
uint256 current = _allowances[from][msg.sender];
require(current >= amount, "ERC20: insufficient allowance");
unchecked { _allowances[from][msg.sender] = current - amount; }
_transfer(from, to, amount);
return true;
}
// ===== مینت کنترلشده با سقف (فقط مالک)
function mint(address to, uint256 amount) external onlyOwner returns (bool) {
_mint(to, amount);
return true;
}
// ===== انتقال مالکیت (اختیاری)
function transferOwnership(address newOwner) external onlyOwner {
require(newOwner != address(0), "new owner = zero");
emit OwnershipTransferred(owner, newOwner);
owner = newOwner;
}
// ===== توابع داخلی
function _transfer(address from, address to, uint256 amount) internal {
require(to != address(0), "ERC20: to = zero");
uint256 fromBal = _balances[from];
require(fromBal >= amount, "ERC20: balance too low");
unchecked {
_balances[from] = fromBal - amount;
_balances[to] += amount;
}
emit Transfer(from, to, amount);
}
function _mint(address to, uint256 amount) internal {
require(to != address(0), "ERC20: mint to zero");
// رعایت سقف کل عرضه
require(_totalSupply + amount <= cap, "Cap exceeded");
_totalSupply += amount;
_balances[to] += amount;
emit Transfer(address(0), to, amount);
}
}
Read Contract
allowance 0xdd62ed3e → uint256
balanceOf 0x70a08231 → uint256
cap 0x355274ea → uint256
decimals 0x313ce567 → uint8
name 0x06fdde03 → string
owner 0x8da5cb5b → address
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
mint 0x40c10f19
address to
uint256 amount
returns: bool
transfer 0xa9059cbb
address to
uint256 amount
returns: bool
transferFrom 0x23b872dd
address from
address to
uint256 amount
returns: bool
transferOwnership 0xf2fde38b
address newOwner
Recent Transactions
No transactions found for this address