USDC

BNB Smart Chain ERC-20 Token Browse chains

0xba5fe23f8a3a24bed3236f05f2fcf35fd0bf0b5c

Solidity v0.6.4+commit.1dca32f3

Fungible token following the ERC-20 standard.

🤖
Query this contract from your AI
Reference: 0xba5fe23f8a3a24bed3236f05f2fcf35fd0bf0b5c
Sample prompt: "Tell me the current state of bnb/0xba5fe23f8a3a24bed3236f05f2fcf35fd0bf0b5c"
No AI wired up yet? → mcp.smarts.md · Browse chains

Admin & Risk

Who can change the rules?

Detected mintable and ownable controls from the verified ABI.

Mintable Ownable

Overview

Read Functions
8
Write Functions
10
Events
3

Read Functions

Block #103,427,829 · just now
allowance(owner: address, spender: address) view

Returns the remaining number of tokens that spender is allowed to spend on behalf of owner.✨ AI

dev: Returns the remaining number of tokens that `spender` will be allowed to spend on behalf of `owner` through {transferFrom}. This is zero by default. This value changes when {approve} or {transferFrom} are called.

Parameters

Name Type Description
owner address Address that owns the tokens.✨ AI
spender address Address authorized to spend tokens on behalf of the owner.✨ AI

Returns

Name Type Description
uint256 Remaining token allowance for spender set by owner, expressed as a uint256.✨ AI
balanceOf(account: address) view

Returns the token balance of the specified account.✨ AI

dev: Returns the amount of tokens owned by `account`.

Parameters

Name Type Description
account address Address whose token balance will be returned.✨ AI

Returns

Name Type Description
uint256 The uint256 token balance held by the specified account (expressed in the token's smallest unit).✨ AI
decimals() view → 18

Returns the number of decimal places the token uses.✨ AI

dev: Returns the token decimals.

Returns

Name Type Description
uint8 The token's decimals as uint8, indicating how many decimal places token amounts use for display and conversion.✨ AI
getOwner() view → 0x6e1c24586d0dfeb608e0442a8a1ce772afec03a6

Returns the contract owner's address.✨ AI

dev: Returns the bep token owner.

Returns

Name Type Description
address The address that holds ownership and administrative rights for the token contract.✨ AI
mintable() view → true

Indicates if the contract currently allows minting of new tokens.✨ AI

dev: Returns if the token is mintable or not

Returns

Name Type Description
bool True if minting is enabled and new tokens can be created, otherwise false.✨ AI
name() view → USD Coin

Return the token's name as a human-readable string.✨ AI

dev: Returns the token name.

Returns

Name Type Description
string The token's descriptive name as a string (e.g., "MyToken").✨ AI
symbol() view → USDC

Returns the token's short symbol string (e.g., 'ABC').✨ AI

dev: Returns the token symbol.

Returns

Name Type Description
string The token symbol as a string, typically a short identifier used in UIs.✨ AI
totalSupply() view → 100,000 USDC

Returns the total number of tokens in circulation.✨ AI

dev: Returns the amount of tokens in existence.

Returns

Name Type Description
uint256 Total number of tokens in existence, denominated in the token's smallest units (uint256).✨ AI

Write Functions

approve(spender: address, amount: uint256) nonpayable

Set the allowance for spender to spend up to amount of the caller's tokens.✨ AI

dev: Sets `amount` as the allowance of `spender` over the caller's tokens. Returns a boolean value indicating whether the operation succeeded. IMPORTANT: 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 Emits an {Approval} event.

Parameters

Name Type Description
spender address Address allowed to transfer tokens from the caller's account.✨ AI
amount uint256 Maximum number of tokens the spender may transfer.✨ AI

Returns

Name Type Description
bool True if the approval succeeded.✨ AI
burn(amount: uint256) nonpayable

Destroy a specified amount of tokens from the caller's balance, reducing total supply.✨ AI

dev: Burn `amount` tokens and decreasing the total supply.

Parameters

Name Type Description
amount uint256 Number of tokens to remove from the caller's balance.✨ AI

Returns

Name Type Description
bool True if the burn operation succeeded.✨ AI
decreaseAllowance(spender: address, subtractedValue: uint256) nonpayable

Decrease the caller's allowance granted to spender by subtractedValue.✨ AI

dev: Atomically decreases the allowance granted to `spender` by the caller. This is an alternative to {approve} that can be used as a mitigation for problems described in {BEP20-approve}. Emits an {Approval} event indicating the updated allowance. Requirements: - `spender` cannot be the zero address. - `spender` must have allowance for the caller of at least `subtractedValue`.

Parameters

Name Type Description
spender address Address whose allowance will be decreased.✨ AI
subtractedValue uint256 Amount to subtract from the current allowance.✨ AI

Returns

Name Type Description
bool True if the allowance was successfully decreased.✨ AI
increaseAllowance(spender: address, addedValue: uint256) nonpayable

Increase the caller's allowance for a spender by addedValue and return true on success.✨ AI

dev: Atomically increases the allowance granted to `spender` by the caller. This is an alternative to {approve} that can be used as a mitigation for problems described in {BEP20-approve}. Emits an {Approval} event indicating the updated allowance. Requirements: - `spender` cannot be the zero address.

Parameters

Name Type Description
spender address Address that will be allowed to spend the caller's tokens.✨ AI
addedValue uint256 Amount of tokens to add to the current allowance.✨ AI

Returns

Name Type Description
bool True if the allowance was successfully increased.✨ AI
initialize(name: string, symbol: string, decimals: uint8, amount: uint256, mintable: bool, owner: address) nonpayable

Initializes the token contract with metadata, initial supply, minting option, and owner.✨ AI

dev: sets initials supply and the owner

Parameters

Name Type Description
name string Token name shown in wallets and explorers.✨ AI
symbol string Ticker symbol shown in wallets and explorers.✨ AI
decimals uint8 Number of decimal places for token amounts.✨ AI
amount uint256 Initial token supply minted to the owner, expressed in smallest units.✨ AI
mintable bool If true, additional tokens can be minted after initialization.✨ AI
owner address Address set as the token owner and initial recipient of the minted amount.✨ AI
mint(amount: uint256) nonpayable

Mint new tokens, increasing total supply and assigning them to the caller.✨ AI

dev: Creates `amount` tokens and assigns them to `msg.sender`, increasing the total supply. Requirements - `msg.sender` must be the token owner - `_mintable` must be true

Parameters

Name Type Description
amount uint256 Amount of tokens to create, expressed in the token's smallest unit.✨ AI

Returns

Name Type Description
bool True if the mint operation succeeded, false otherwise.✨ AI
renounceOwnership() nonpayable

Allows the current owner to permanently renounce ownership, making the contract ownerless.✨ AI

dev: Leaves the contract without owner. It will not be possible to call `onlyOwner` functions anymore. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby removing any functionality that is only available to the owner.
transfer(recipient: address, amount: uint256) nonpayable

Transfers tokens from the caller to the recipient and returns true on success.✨ AI

dev: Moves `amount` tokens from the caller's account to `recipient`. Returns a boolean value indicating whether the operation succeeded. Emits a {Transfer} event.

Parameters

Name Type Description
recipient address Address receiving the tokens.✨ AI
amount uint256 Amount of tokens to transfer, specified in the token's smallest unit.✨ AI

Returns

Name Type Description
bool True if the transfer succeeded, false otherwise.✨ AI
transferFrom(sender: address, recipient: address, amount: uint256) nonpayable

Transfers tokens from sender to recipient using the caller's allowance and returns true on success.✨ AI

dev: Moves `amount` tokens from `sender` to `recipient` using the allowance mechanism. `amount` is then deducted from the caller's allowance. Returns a boolean value indicating whether the operation succeeded. Emits a {Transfer} event.

Parameters

Name Type Description
sender address Address to debit tokens from.✨ AI
recipient address Address to credit tokens to.✨ AI
amount uint256 Number of tokens to transfer (in smallest unit).✨ AI

Returns

Name Type Description
bool True if the transfer succeeded.✨ AI
transferOwnership(newOwner: address) nonpayable

Transfer contract ownership to a new owner address.✨ AI

dev: Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.

Parameters

Name Type Description
newOwner address Address to receive ownership of the contract.✨ AI

Events

Approval(owner: address, spender: address, value: uint256)
Name Type Indexed Description
owner address
spender address
value uint256
OwnershipTransferred(previousOwner: address, newOwner: address)
Name Type Indexed Description
previousOwner address
newOwner address
Transfer(from: address, to: address, value: uint256)
Name Type Indexed Description
from address
to address
value uint256