// SPDX-License-Identifier: MIT
pragma solidity ^0.8.24;
import {AccessControl} from "@openzeppelin/contracts/access/AccessControl.sol";
import {ERC20} from "@openzeppelin/contracts/token/ERC20/ERC20.sol";
import {ERC20Burnable} from "@openzeppelin/contracts/token/ERC20/extensions/ERC20Burnable.sol";
import {BIMOConstants} from "./BIMOConstants.sol";
/// @notice Fixed-supply BIMO ERC-20 used on networks without a native token precompile.
/// @dev Burn authority is intentionally limited to protocol contracts; the final administrator renounces itself.
contract BIMOToken is ERC20, ERC20Burnable, AccessControl {
uint256 public constant TOTAL_SUPPLY = BIMOConstants.TOTAL_SUPPLY;
bytes32 public constant BURN_ROLE = keccak256("BURN_ROLE");
error InvalidAddress();
constructor(address initialHolder) ERC20("BIMO", "BIMO") {
if (initialHolder == address(0)) revert InvalidAddress();
_grantRole(DEFAULT_ADMIN_ROLE, msg.sender);
_mint(initialHolder, TOTAL_SUPPLY);
}
function burn(uint256 value) public override onlyRole(BURN_ROLE) {
super.burn(value);
}
function supportsInterface(bytes4 interfaceId) public view override(AccessControl) returns (bool) {
return super.supportsInterface(interfaceId);
}
}[
{
"type": "constructor",
"inputs": [
{
"name": "initialHolder",
"type": "address",
"internalType": "address"
}
],
"stateMutability": "nonpayable"
},
{
"name": "AccessControlBadConfirmation",
"type": "error",
"inputs": []
},
{
"name": "AccessControlUnauthorizedAccount",
"type": "error",
"inputs": [
{
"name": "account",
"type": "address",
"internalType": "address"
},
{
"name": "neededRole",
"type": "bytes32",
"internalType": "bytes32"
}
]
},
{
"name": "ERC20InsufficientAllowance",
"type": "error",
"inputs": [
{
"name": "spender",
"type": "address",
"internalType": "address"
},
{
"name": "allowance",
"type": "uint256",
"internalType": "uint256"
},
{
"name": "needed",
"type": "uint256",
"internalType": "uint256"
}
]
},
{
"name": "ERC20InsufficientBalance",
"type": "error",
"inputs": [
{
"name": "sender",
"type": "address",
"internalType": "address"
},
{
"name": "balance",
"type": "uint256",
"internalType": "uint256"
},
{
"name": "needed",
"type": "uint256",
"internalType": "uint256"
}
]
},
{
"name": "ERC20InvalidApprover",
"type": "error",
"inputs": [
{
"name": "approver",
"type": "address",
"internalType": "address"
}
]
},
{
"name": "ERC20InvalidReceiver",
"type": "error",
"inputs": [
{
"name": "receiver",
"type": "address",
"internalType": "address"
}
]
},
{
"name": "ERC20InvalidSender",
"type": "error",
"inputs": [
{
"name": "sender",
"type": "address",
"internalType": "address"
}
]
},
{
"name": "ERC20InvalidSpender",
"type": "error",
"inputs": [
{
"name": "spender",
"type": "address",
"internalType": "address"
}
]
},
{
"name": "InvalidAddress",
"type": "error",
"inputs": []
},
{
"name": "Approval",
"type": "event",
"inputs": [
{
"name": "owner",
"type": "address",
"indexed": true,
"internalType": "address"
},
{
"name": "spender",
"type": "address",
"indexed": true,
"internalType": "address"
},
{
"name": "value",
"type": "uint256",
"indexed": false,
"internalType": "uint256"
}
],
"anonymous": false
},
{
"name": "RoleAdminChanged",
"type": "event",
"inputs": [
{
"name": "role",
"type": "bytes32",
"indexed": true,
"internalType": "bytes32"
},
{
"name": "previousAdminRole",
"type": "bytes32",
"indexed": true,
"internalType": "bytes32"
},
{
"name": "newAdminRole",
"type": "bytes32",
"indexed": true,
"internalType": "bytes32"
}
],
"anonymous": false
},
{
"name": "RoleGranted",
"type": "event",
"inputs": [
{
"name": "role",
"type": "bytes32",
"indexed": true,
"internalType": "bytes32"
},
{
"name": "account",
"type": "address",
"indexed": true,
"internalType": "address"
},
{
"name": "sender",
"type": "address",
"indexed": true,
"internalType": "address"
}
],
"anonymous": false
},
{
"name": "RoleRevoked",
"type": "event",
"inputs": [
{
"name": "role",
"type": "bytes32",
"indexed": true,
"internalType": "bytes32"
},
{
"name": "account",
"type": "address",
"indexed": true,
"internalType": "address"
},
{
"name": "sender",
"type": "address",
"indexed": true,
"internalType": "address"
}
],
"anonymous": false
},
{
"name": "Transfer",
"type": "event",
"inputs": [
{
"name": "from",
"type": "address",
"indexed": true,
"internalType": "address"
},
{
"name": "to",
"type": "address",
"indexed": true,
"internalType": "address"
},
{
"name": "value",
"type": "uint256",
"indexed": false,
"internalType": "uint256"
}
],
"anonymous": false
},
{
"name": "BURN_ROLE",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "bytes32",
"internalType": "bytes32"
}
],
"stateMutability": "view"
},
{
"name": "DEFAULT_ADMIN_ROLE",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "bytes32",
"internalType": "bytes32"
}
],
"stateMutability": "view"
},
{
"name": "TOTAL_SUPPLY",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"name": "allowance",
"type": "function",
"inputs": [
{
"name": "owner",
"type": "address",
"internalType": "address"
},
{
"name": "spender",
"type": "address",
"internalType": "address"
}
],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"name": "approve",
"type": "function",
"inputs": [
{
"name": "spender",
"type": "address",
"internalType": "address"
},
{
"name": "value",
"type": "uint256",
"internalType": "uint256"
}
],
"outputs": [
{
"name": "",
"type": "bool",
"internalType": "bool"
}
],
"stateMutability": "nonpayable"
},
{
"name": "balanceOf",
"type": "function",
"inputs": [
{
"name": "account",
"type": "address",
"internalType": "address"
}
],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"name": "burn",
"type": "function",
"inputs": [
{
"name": "value",
"type": "uint256",
"internalType": "uint256"
}
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"name": "burnFrom",
"type": "function",
"inputs": [
{
"name": "account",
"type": "address",
"internalType": "address"
},
{
"name": "value",
"type": "uint256",
"internalType": "uint256"
}
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"name": "decimals",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "uint8",
"internalType": "uint8"
}
],
"stateMutability": "view"
},
{
"name": "getRoleAdmin",
"type": "function",
"inputs": [
{
"name": "role",
"type": "bytes32",
"internalType": "bytes32"
}
],
"outputs": [
{
"name": "",
"type": "bytes32",
"internalType": "bytes32"
}
],
"stateMutability": "view"
},
{
"name": "grantRole",
"type": "function",
"inputs": [
{
"name": "role",
"type": "bytes32",
"internalType": "bytes32"
},
{
"name": "account",
"type": "address",
"internalType": "address"
}
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"name": "hasRole",
"type": "function",
"inputs": [
{
"name": "role",
"type": "bytes32",
"internalType": "bytes32"
},
{
"name": "account",
"type": "address",
"internalType": "address"
}
],
"outputs": [
{
"name": "",
"type": "bool",
"internalType": "bool"
}
],
"stateMutability": "view"
},
{
"name": "name",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "string",
"internalType": "string"
}
],
"stateMutability": "view"
},
{
"name": "renounceRole",
"type": "function",
"inputs": [
{
"name": "role",
"type": "bytes32",
"internalType": "bytes32"
},
{
"name": "callerConfirmation",
"type": "address",
"internalType": "address"
}
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"name": "revokeRole",
"type": "function",
"inputs": [
{
"name": "role",
"type": "bytes32",
"internalType": "bytes32"
},
{
"name": "account",
"type": "address",
"internalType": "address"
}
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"name": "supportsInterface",
"type": "function",
"inputs": [
{
"name": "interfaceId",
"type": "bytes4",
"internalType": "bytes4"
}
],
"outputs": [
{
"name": "",
"type": "bool",
"internalType": "bool"
}
],
"stateMutability": "view"
},
{
"name": "symbol",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "string",
"internalType": "string"
}
],
"stateMutability": "view"
},
{
"name": "totalSupply",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"name": "transfer",
"type": "function",
"inputs": [
{
"name": "to",
"type": "address",
"internalType": "address"
},
{
"name": "value",
"type": "uint256",
"internalType": "uint256"
}
],
"outputs": [
{
"name": "",
"type": "bool",
"internalType": "bool"
}
],
"stateMutability": "nonpayable"
},
{
"name": "transferFrom",
"type": "function",
"inputs": [
{
"name": "from",
"type": "address",
"internalType": "address"
},
{
"name": "to",
"type": "address",
"internalType": "address"
},
{
"name": "value",
"type": "uint256",
"internalType": "uint256"
}
],
"outputs": [
{
"name": "",
"type": "bool",
"internalType": "bool"
}
],
"stateMutability": "nonpayable"
}
]0x608060405234801562000010575f80fd5b506040516200145c3803806200145c8339810160408190526200003391620002f3565b60408051808201825260048082526342494d4f60e01b60208084018290528451808601909552918452908301529060036200006f8382620003c0565b5060046200007e8282620003c0565b5050506001600160a01b038116620000a95760405163e6c4247b60e01b815260040160405180910390fd5b620000b55f33620000d4565b50620000cd816a115eec47f6cf7e3500000062000184565b50620004ac565b5f8281526005602090815260408083206001600160a01b038516845290915281205460ff166200017b575f8381526005602090815260408083206001600160a01b03861684529091529020805460ff19166001179055620001323390565b6001600160a01b0316826001600160a01b0316847f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45060016200017e565b505f5b92915050565b6001600160a01b038216620001b35760405163ec442f0560e01b81525f60048201526024015b60405180910390fd5b620001c05f8383620001c4565b5050565b6001600160a01b038316620001f2578060025f828254620001e691906200048c565b90915550620002649050565b6001600160a01b0383165f9081526020819052604090205481811015620002465760405163391434e360e21b81526001600160a01b03851660048201526024810182905260448101839052606401620001aa565b6001600160a01b0384165f9081526020819052604090209082900390555b6001600160a01b0382166200028257600280548290039055620002a0565b6001600160a01b0382165f9081526020819052604090208054820190555b816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051620002e691815260200190565b60405180910390a3505050565b5f6020828403121562000304575f80fd5b81516001600160a01b03811681146200031b575f80fd5b9392505050565b634e487b7160e01b5f52604160045260245ffd5b600181811c908216806200034b57607f821691505b6020821081036200036a57634e487b7160e01b5f52602260045260245ffd5b50919050565b601f821115620003bb57805f5260205f20601f840160051c81016020851015620003975750805b601f840160051c820191505b81811015620003b8575f8155600101620003a3565b50505b505050565b81516001600160401b03811115620003dc57620003dc62000322565b620003f481620003ed845462000336565b8462000370565b602080601f8311600181146200042a575f8415620004125750858301515b5f19600386901b1c1916600185901b17855562000484565b5f85815260208120601f198616915b828110156200045a5788860151825594840194600190910190840162000439565b50858210156200047857878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b808201808211156200017e57634e487b7160e01b5f52601160045260245ffd5b610fa280620004ba5f395ff3fe608060405234801561000f575f80fd5b5060043610610163575f3560e01c806370a08231116100c7578063a217fddf1161007d578063b930908f11610063578063b930908f14610309578063d547741f14610330578063dd62ed3e14610343575f80fd5b8063a217fddf146102ef578063a9059cbb146102f6575f80fd5b8063902d55a5116100ad578063902d55a51461029057806391d14854146102a257806395d89b41146102e7575f80fd5b806370a082311461024857806379cc67901461027d575f80fd5b8063248a9ca31161011c578063313ce56711610102578063313ce5671461021357806336568abe1461022257806342966c6814610235575f80fd5b8063248a9ca3146101dc5780632f2ff15d146101fe575f80fd5b8063095ea7b31161014c578063095ea7b3146101a457806318160ddd146101b757806323b872dd146101c9575f80fd5b806301ffc9a71461016757806306fdde031461018f575b5f80fd5b61017a610175366004610d28565b610388565b60405190151581526020015b60405180910390f35b610197610398565b6040516101869190610d6e565b61017a6101b2366004610e00565b610428565b6002545b604051908152602001610186565b61017a6101d7366004610e28565b61043f565b6101bb6101ea366004610e61565b5f9081526005602052604090206001015490565b61021161020c366004610e78565b610462565b005b60405160128152602001610186565b610211610230366004610e78565b61048c565b610211610243366004610e61565b6104ea565b6101bb610256366004610ea2565b73ffffffffffffffffffffffffffffffffffffffff165f9081526020819052604090205490565b61021161028b366004610e00565b610521565b6101bb6a115eec47f6cf7e3500000081565b61017a6102b0366004610e78565b5f91825260056020908152604080842073ffffffffffffffffffffffffffffffffffffffff93909316845291905290205460ff1690565b610197610536565b6101bb5f81565b61017a610304366004610e00565b610545565b6101bb7fe97b137254058bd94f28d2f3eb79e2d34074ffb488d042e3bc958e0a57d2fa2281565b61021161033e366004610e78565b610552565b6101bb610351366004610ebb565b73ffffffffffffffffffffffffffffffffffffffff9182165f90815260016020908152604080832093909416825291909152205490565b5f61039282610576565b92915050565b6060600380546103a790610ee3565b80601f01602080910402602001604051908101604052809291908181526020018280546103d390610ee3565b801561041e5780601f106103f55761010080835404028352916020019161041e565b820191905f5260205f20905b81548152906001019060200180831161040157829003601f168201915b5050505050905090565b5f3361043581858561060c565b5060019392505050565b5f3361044c858285610619565b6104578585856106e5565b506001949350505050565b5f8281526005602052604090206001015461047c8161078e565b610486838361079b565b50505050565b73ffffffffffffffffffffffffffffffffffffffff811633146104db576040517f6697b23200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6104e58282610898565b505050565b7fe97b137254058bd94f28d2f3eb79e2d34074ffb488d042e3bc958e0a57d2fa226105148161078e565b61051d82610955565b5050565b61052c823383610619565b61051d828261095b565b6060600480546103a790610ee3565b5f336104358185856106e5565b5f8281526005602052604090206001015461056c8161078e565b6104868383610898565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082167f7965db0b00000000000000000000000000000000000000000000000000000000148061039257507f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831614610392565b6104e583838360016109b5565b73ffffffffffffffffffffffffffffffffffffffff8381165f908152600160209081526040808320938616835292905220547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff811461048657818110156106d7576040517ffb8f41b200000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8416600482015260248101829052604481018390526064015b60405180910390fd5b61048684848484035f6109b5565b73ffffffffffffffffffffffffffffffffffffffff8316610734576040517f96c6fd1e0000000000000000000000000000000000000000000000000000000081525f60048201526024016106ce565b73ffffffffffffffffffffffffffffffffffffffff8216610783576040517fec442f050000000000000000000000000000000000000000000000000000000081525f60048201526024016106ce565b6104e5838383610afa565b6107988133610ca1565b50565b5f82815260056020908152604080832073ffffffffffffffffffffffffffffffffffffffff8516845290915281205460ff16610891575f83815260056020908152604080832073ffffffffffffffffffffffffffffffffffffffff86168452909152902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905561082f3390565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16847f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a4506001610392565b505f610392565b5f82815260056020908152604080832073ffffffffffffffffffffffffffffffffffffffff8516845290915281205460ff1615610891575f83815260056020908152604080832073ffffffffffffffffffffffffffffffffffffffff8616808552925280832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016905551339286917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a4506001610392565b61079833825b73ffffffffffffffffffffffffffffffffffffffff82166109aa576040517f96c6fd1e0000000000000000000000000000000000000000000000000000000081525f60048201526024016106ce565b61051d825f83610afa565b73ffffffffffffffffffffffffffffffffffffffff8416610a04576040517fe602df050000000000000000000000000000000000000000000000000000000081525f60048201526024016106ce565b73ffffffffffffffffffffffffffffffffffffffff8316610a53576040517f94280d620000000000000000000000000000000000000000000000000000000081525f60048201526024016106ce565b73ffffffffffffffffffffffffffffffffffffffff8085165f9081526001602090815260408083209387168352929052208290558015610486578273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92584604051610aec91815260200190565b60405180910390a350505050565b73ffffffffffffffffffffffffffffffffffffffff8316610b31578060025f828254610b269190610f34565b90915550610be19050565b73ffffffffffffffffffffffffffffffffffffffff83165f9081526020819052604090205481811015610bb6576040517fe450d38c00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8516600482015260248101829052604481018390526064016106ce565b73ffffffffffffffffffffffffffffffffffffffff84165f9081526020819052604090209082900390555b73ffffffffffffffffffffffffffffffffffffffff8216610c0a57600280548290039055610c35565b73ffffffffffffffffffffffffffffffffffffffff82165f9081526020819052604090208054820190555b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610c9491815260200190565b60405180910390a3505050565b5f82815260056020908152604080832073ffffffffffffffffffffffffffffffffffffffff8516845290915290205460ff1661051d576040517fe2517d3f00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff82166004820152602481018390526044016106ce565b5f60208284031215610d38575f80fd5b81357fffffffff0000000000000000000000000000000000000000000000000000000081168114610d67575f80fd5b9392505050565b5f602080835283518060208501525f5b81811015610d9a57858101830151858201604001528201610d7e565b505f6040828601015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8301168501019250505092915050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610dfb575f80fd5b919050565b5f8060408385031215610e11575f80fd5b610e1a83610dd8565b946020939093013593505050565b5f805f60608486031215610e3a575f80fd5b610e4384610dd8565b9250610e5160208501610dd8565b9150604084013590509250925092565b5f60208284031215610e71575f80fd5b5035919050565b5f8060408385031215610e89575f80fd5b82359150610e9960208401610dd8565b90509250929050565b5f60208284031215610eb2575f80fd5b610d6782610dd8565b5f8060408385031215610ecc575f80fd5b610ed583610dd8565b9150610e9960208401610dd8565b600181811c90821680610ef757607f821691505b602082108103610f2e577f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b50919050565b80820180821115610392577f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffdfea264697066735822122016a90b6c7896b254ddaa8f22e3c3e83c58cdd5934933ac2e83ba021301285f9a64736f6c63430008180033000000000000000000000000bd556b6244a39044fb3a2c52169f4cee291df893
0x608060405234801561000f575f80fd5b5060043610610163575f3560e01c806370a08231116100c7578063a217fddf1161007d578063b930908f11610063578063b930908f14610309578063d547741f14610330578063dd62ed3e14610343575f80fd5b8063a217fddf146102ef578063a9059cbb146102f6575f80fd5b8063902d55a5116100ad578063902d55a51461029057806391d14854146102a257806395d89b41146102e7575f80fd5b806370a082311461024857806379cc67901461027d575f80fd5b8063248a9ca31161011c578063313ce56711610102578063313ce5671461021357806336568abe1461022257806342966c6814610235575f80fd5b8063248a9ca3146101dc5780632f2ff15d146101fe575f80fd5b8063095ea7b31161014c578063095ea7b3146101a457806318160ddd146101b757806323b872dd146101c9575f80fd5b806301ffc9a71461016757806306fdde031461018f575b5f80fd5b61017a610175366004610d28565b610388565b60405190151581526020015b60405180910390f35b610197610398565b6040516101869190610d6e565b61017a6101b2366004610e00565b610428565b6002545b604051908152602001610186565b61017a6101d7366004610e28565b61043f565b6101bb6101ea366004610e61565b5f9081526005602052604090206001015490565b61021161020c366004610e78565b610462565b005b60405160128152602001610186565b610211610230366004610e78565b61048c565b610211610243366004610e61565b6104ea565b6101bb610256366004610ea2565b73ffffffffffffffffffffffffffffffffffffffff165f9081526020819052604090205490565b61021161028b366004610e00565b610521565b6101bb6a115eec47f6cf7e3500000081565b61017a6102b0366004610e78565b5f91825260056020908152604080842073ffffffffffffffffffffffffffffffffffffffff93909316845291905290205460ff1690565b610197610536565b6101bb5f81565b61017a610304366004610e00565b610545565b6101bb7fe97b137254058bd94f28d2f3eb79e2d34074ffb488d042e3bc958e0a57d2fa2281565b61021161033e366004610e78565b610552565b6101bb610351366004610ebb565b73ffffffffffffffffffffffffffffffffffffffff9182165f90815260016020908152604080832093909416825291909152205490565b5f61039282610576565b92915050565b6060600380546103a790610ee3565b80601f01602080910402602001604051908101604052809291908181526020018280546103d390610ee3565b801561041e5780601f106103f55761010080835404028352916020019161041e565b820191905f5260205f20905b81548152906001019060200180831161040157829003601f168201915b5050505050905090565b5f3361043581858561060c565b5060019392505050565b5f3361044c858285610619565b6104578585856106e5565b506001949350505050565b5f8281526005602052604090206001015461047c8161078e565b610486838361079b565b50505050565b73ffffffffffffffffffffffffffffffffffffffff811633146104db576040517f6697b23200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6104e58282610898565b505050565b7fe97b137254058bd94f28d2f3eb79e2d34074ffb488d042e3bc958e0a57d2fa226105148161078e565b61051d82610955565b5050565b61052c823383610619565b61051d828261095b565b6060600480546103a790610ee3565b5f336104358185856106e5565b5f8281526005602052604090206001015461056c8161078e565b6104868383610898565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082167f7965db0b00000000000000000000000000000000000000000000000000000000148061039257507f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831614610392565b6104e583838360016109b5565b73ffffffffffffffffffffffffffffffffffffffff8381165f908152600160209081526040808320938616835292905220547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff811461048657818110156106d7576040517ffb8f41b200000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8416600482015260248101829052604481018390526064015b60405180910390fd5b61048684848484035f6109b5565b73ffffffffffffffffffffffffffffffffffffffff8316610734576040517f96c6fd1e0000000000000000000000000000000000000000000000000000000081525f60048201526024016106ce565b73ffffffffffffffffffffffffffffffffffffffff8216610783576040517fec442f050000000000000000000000000000000000000000000000000000000081525f60048201526024016106ce565b6104e5838383610afa565b6107988133610ca1565b50565b5f82815260056020908152604080832073ffffffffffffffffffffffffffffffffffffffff8516845290915281205460ff16610891575f83815260056020908152604080832073ffffffffffffffffffffffffffffffffffffffff86168452909152902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905561082f3390565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16847f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a4506001610392565b505f610392565b5f82815260056020908152604080832073ffffffffffffffffffffffffffffffffffffffff8516845290915281205460ff1615610891575f83815260056020908152604080832073ffffffffffffffffffffffffffffffffffffffff8616808552925280832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016905551339286917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a4506001610392565b61079833825b73ffffffffffffffffffffffffffffffffffffffff82166109aa576040517f96c6fd1e0000000000000000000000000000000000000000000000000000000081525f60048201526024016106ce565b61051d825f83610afa565b73ffffffffffffffffffffffffffffffffffffffff8416610a04576040517fe602df050000000000000000000000000000000000000000000000000000000081525f60048201526024016106ce565b73ffffffffffffffffffffffffffffffffffffffff8316610a53576040517f94280d620000000000000000000000000000000000000000000000000000000081525f60048201526024016106ce565b73ffffffffffffffffffffffffffffffffffffffff8085165f9081526001602090815260408083209387168352929052208290558015610486578273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92584604051610aec91815260200190565b60405180910390a350505050565b73ffffffffffffffffffffffffffffffffffffffff8316610b31578060025f828254610b269190610f34565b90915550610be19050565b73ffffffffffffffffffffffffffffffffffffffff83165f9081526020819052604090205481811015610bb6576040517fe450d38c00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8516600482015260248101829052604481018390526064016106ce565b73ffffffffffffffffffffffffffffffffffffffff84165f9081526020819052604090209082900390555b73ffffffffffffffffffffffffffffffffffffffff8216610c0a57600280548290039055610c35565b73ffffffffffffffffffffffffffffffffffffffff82165f9081526020819052604090208054820190555b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610c9491815260200190565b60405180910390a3505050565b5f82815260056020908152604080832073ffffffffffffffffffffffffffffffffffffffff8516845290915290205460ff1661051d576040517fe2517d3f00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff82166004820152602481018390526044016106ce565b5f60208284031215610d38575f80fd5b81357fffffffff0000000000000000000000000000000000000000000000000000000081168114610d67575f80fd5b9392505050565b5f602080835283518060208501525f5b81811015610d9a57858101830151858201604001528201610d7e565b505f6040828601015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8301168501019250505092915050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610dfb575f80fd5b919050565b5f8060408385031215610e11575f80fd5b610e1a83610dd8565b946020939093013593505050565b5f805f60608486031215610e3a575f80fd5b610e4384610dd8565b9250610e5160208501610dd8565b9150604084013590509250925092565b5f60208284031215610e71575f80fd5b5035919050565b5f8060408385031215610e89575f80fd5b82359150610e9960208401610dd8565b90509250929050565b5f60208284031215610eb2575f80fd5b610d6782610dd8565b5f8060408385031215610ecc575f80fd5b610ed583610dd8565b9150610e9960208401610dd8565b600181811c90821680610ef757607f821691505b602082108103610f2e577f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b50919050565b80820180821115610392577f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffdfea264697066735822122016a90b6c7896b254ddaa8f22e3c3e83c58cdd5934933ac2e83ba021301285f9a64736f6c63430008180033
| Token | Symbol | Balance | Price | Value |
|---|---|---|---|---|
| no token holdings | ||||
| Transaction Hash | Method | Block | Age | From | To | Amount | Token | ||
|---|---|---|---|---|---|---|---|---|---|
| no token transfers for this address yet | |||||||||
| Txn Hash | Age | Event | Topics / Data |
|---|---|---|---|
| 0x75adca…b1ecd0 | 15 days agoSun, 02 Aug 2026 12:07:47 UTC | Transfer | [0] 0x000000000000…43e40951 [1] 0x000000000000…81f82cea data: 0x000000000000000000…9789420d |
| 0x75adca…b1ecd0 | 15 days agoSun, 02 Aug 2026 12:07:47 UTC | Transfer | [0] 0x000000000000…aa6930cc [1] 0x000000000000…00000000 data: 0x000000000000000000…6b8d05d6 |
| 0x75adca…b1ecd0 | 15 days agoSun, 02 Aug 2026 12:07:47 UTC | Transfer | [0] 0x000000000000…43e40951 [1] 0x000000000000…aa6930cc data: 0x000000000000000000…6b8d05d6 |
| 0x9c9b40…1d5b68 | 15 days agoSun, 02 Aug 2026 12:07:47 UTC | Transfer | [0] 0x000000000000…43e40951 [1] 0x000000000000…81f82cea data: 0x000000000000000000…f22b4b72 |
| 0x9c9b40…1d5b68 | 15 days agoSun, 02 Aug 2026 12:07:47 UTC | Transfer | [0] 0x000000000000…aa6930cc [1] 0x000000000000…00000000 data: 0x000000000000000000…ffdc3c3c |
| 0x9c9b40…1d5b68 | 15 days agoSun, 02 Aug 2026 12:07:47 UTC | Transfer | [0] 0x000000000000…43e40951 [1] 0x000000000000…aa6930cc data: 0x000000000000000000…ffdc3c3c |
| 0xeb7e18…e49dbb | 15 days agoSun, 02 Aug 2026 12:07:47 UTC | Transfer | [0] 0x000000000000…43e40951 [1] 0x000000000000…81f82cea data: 0x000000000000000000…f8c909a8 |
| 0xeb7e18…e49dbb | 15 days agoSun, 02 Aug 2026 12:07:47 UTC | Transfer | [0] 0x000000000000…aa6930cc [1] 0x000000000000…00000000 data: 0x000000000000000000…9b1421b6 |
| 0xeb7e18…e49dbb | 15 days agoSun, 02 Aug 2026 12:07:47 UTC | Transfer | [0] 0x000000000000…43e40951 [1] 0x000000000000…aa6930cc data: 0x000000000000000000…9b1421b6 |
| 0xf3fb00…e9dbb7 | 15 days agoSun, 02 Aug 2026 12:07:46 UTC | Transfer | [0] 0x000000000000…43e40951 [1] 0x000000000000…81f82cea data: 0x000000000000000000…fe750ff1 |
| 0xf3fb00…e9dbb7 | 15 days agoSun, 02 Aug 2026 12:07:46 UTC | Transfer | [0] 0x000000000000…aa6930cc [1] 0x000000000000…00000000 data: 0x000000000000000000…36499624 |
| 0xf3fb00…e9dbb7 | 15 days agoSun, 02 Aug 2026 12:07:46 UTC | Transfer | [0] 0x000000000000…43e40951 [1] 0x000000000000…aa6930cc data: 0x000000000000000000…36499624 |
| 0x0eca57…3a1deb | 15 days agoSun, 02 Aug 2026 12:07:46 UTC | Transfer | [0] 0x000000000000…43e40951 [1] 0x000000000000…81f82cea data: 0x000000000000000000…b0703e4f |
| 0x0eca57…3a1deb | 15 days agoSun, 02 Aug 2026 12:07:46 UTC | Transfer | [0] 0x000000000000…aa6930cc [1] 0x000000000000…00000000 data: 0x000000000000000000…be8cc527 |
| 0x0eca57…3a1deb | 15 days agoSun, 02 Aug 2026 12:07:46 UTC | Transfer | [0] 0x000000000000…43e40951 [1] 0x000000000000…aa6930cc data: 0x000000000000000000…be8cc527 |
| 0x60393d…4e9791 | 15 days agoSun, 02 Aug 2026 12:07:46 UTC | Transfer | [0] 0x000000000000…43e40951 [1] 0x000000000000…81f82cea data: 0x000000000000000000…ced347cb |
| 0x60393d…4e9791 | 15 days agoSun, 02 Aug 2026 12:07:46 UTC | Transfer | [0] 0x000000000000…aa6930cc [1] 0x000000000000…00000000 data: 0x000000000000000000…effcf661 |
| 0x60393d…4e9791 | 15 days agoSun, 02 Aug 2026 12:07:46 UTC | Transfer | [0] 0x000000000000…43e40951 [1] 0x000000000000…aa6930cc data: 0x000000000000000000…effcf661 |
| 0xe3f071…3bd969 | 15 days agoSun, 02 Aug 2026 12:07:46 UTC | Transfer | [0] 0x000000000000…43e40951 [1] 0x000000000000…81f82cea data: 0x000000000000000000…987aed03 |
| 0xe3f071…3bd969 | 15 days agoSun, 02 Aug 2026 12:07:46 UTC | Transfer | [0] 0x000000000000…aa6930cc [1] 0x000000000000…00000000 data: 0x000000000000000000…2ae9f80c |
| 0xe3f071…3bd969 | 15 days agoSun, 02 Aug 2026 12:07:46 UTC | Transfer | [0] 0x000000000000…43e40951 [1] 0x000000000000…aa6930cc data: 0x000000000000000000…2ae9f80c |
| 0x8855f3…c79d5c | 15 days agoSun, 02 Aug 2026 12:07:45 UTC | Transfer | [0] 0x000000000000…43e40951 [1] 0x000000000000…81f82cea data: 0x000000000000000000…9b64db36 |
| 0x8855f3…c79d5c | 15 days agoSun, 02 Aug 2026 12:07:45 UTC | Transfer | [0] 0x000000000000…aa6930cc [1] 0x000000000000…00000000 data: 0x000000000000000000…75eeeaf1 |
| 0x8855f3…c79d5c | 15 days agoSun, 02 Aug 2026 12:07:45 UTC | Transfer | [0] 0x000000000000…43e40951 [1] 0x000000000000…aa6930cc data: 0x000000000000000000…75eeeaf1 |
| 0x99fe9c…82b9a7 | 15 days agoSun, 02 Aug 2026 12:07:45 UTC | Transfer | [0] 0x000000000000…43e40951 [1] 0x000000000000…81f82cea data: 0x000000000000000000…dc15b9cc |
| Type | Age | Block | Details |
|---|---|---|---|
| no cross-chain L1↔L2 transactions for this address | |||
| Transaction Hash | Method | Block | Age | From | To | Type | Item | ||
|---|---|---|---|---|---|---|---|---|---|
| no NFT transfers for this address yet | |||||||||
| Block | Age | Parent Transaction Hash | Type | Method | From | To | Value | |
|---|---|---|---|---|---|---|---|---|
| no internal transactions found for this address yet (traced blocks + on-demand) | ||||||||
| Transaction Hash | Method ? | Block | Age | From | To | Amount | Txn Fee ? | ||
|---|---|---|---|---|---|---|---|---|---|
| 0x961d00…0fff30 | Approve | 25,888,080 | 15 days agoSun, 02 Aug 2026 12:07:43 UTC | 0x8607…2cea | IN | BIMO | $0.000 ETH | 0.00000093 | |
| 0xc34308…e179a1 | Approve | 25,696,229 | 15 days agoSun, 02 Aug 2026 06:46:51 UTC | 0x5a5d…c12b | IN | BIMO | $0.000 ETH | 0.00000093 | |
| 0x9a01d4…c2e2a1 | Approve | 25,694,605 | 15 days agoSun, 02 Aug 2026 06:44:07 UTC | 0x143e…15ee | IN | BIMO | $0.000 ETH | 0.00000058 | |
| 0xaf3877…bf95fc | Approve | 25,681,998 | 15 days agoSun, 02 Aug 2026 06:23:02 UTC | 0x5a5d…c12b | IN | BIMO | $0.000 ETH | 0.00000092 | |
| 0x492f99…acb9bf | Approve | 25,148,274 | 16 days agoSat, 01 Aug 2026 15:31:04 UTC | 0x143e…15ee | IN | BIMO | $0.000 ETH | 0.00000093 | |
| 0x625d40…14b329 | Approve | 25,142,231 | 16 days agoSat, 01 Aug 2026 15:20:57 UTC | 0x7028…2506 | IN | BIMO | $0.000 ETH | 0.00000094 | |
| 0xce885d…6f5ee6 | Approve | 24,793,639 | 16 days agoSat, 01 Aug 2026 05:37:46 UTC | 0x5fa6…4b07 | IN | BIMO | $0.000 ETH | 0.00000094 | |
| 0x3d71e6…dd88c0 | Approve | 24,772,874 | 16 days agoSat, 01 Aug 2026 05:03:02 UTC | 0x510a…520f | IN | BIMO | $0.000 ETH | 0.00000093 | |
| 0x243743…c94bba | Approve | 24,770,531 | 16 days agoSat, 01 Aug 2026 04:59:07 UTC | 0x0fbc…f250 | IN | BIMO | $0.000 ETH | 0.00000092 | |
| 0x694cb2…19f089 | Approve | 23,322,459 | 18 days agoThu, 30 Jul 2026 12:40:21 UTC | 0xe90e…0a96 | IN | BIMO | $0.000 ETH | 0.00000069 | |
| 0x599255…e134ad | Approve | 20,759,629 | 21 days agoMon, 27 Jul 2026 13:14:33 UTC | 0xb75d…e768 | IN | BIMO | $0.000 ETH | 0.00000170 | |
| 0xe3d732…6746cd | Approve | 20,556,585 | 21 days agoMon, 27 Jul 2026 07:34:46 UTC | 0xe90e…0a96 | IN | BIMO | $0.000 ETH | 0.00000186 | |
| 0x347cc2…ec21c7 | Approve | 19,039,523 | 23 days agoSat, 25 Jul 2026 13:18:15 UTC | 0x42ba…f84b | IN | BIMO | $0.000 ETH | 0.00000379 | |
| 0x3f4821…5a3ef4 | Approve | 19,036,313 | 23 days agoSat, 25 Jul 2026 13:12:53 UTC | 0x7d6f…2023 | IN | BIMO | $0.000 ETH | 0.00000381 | |
| 0x1ab85a…58fca7 | Approve | 19,011,114 | 23 days agoSat, 25 Jul 2026 12:30:45 UTC | 0x42ba…f84b | IN | BIMO | $0.000 ETH | 0.00000380 | |
| 0x00ee93…8d0909 | Approve | 19,009,564 | 23 days agoSat, 25 Jul 2026 12:28:09 UTC | 0xc9be…e3d0 | IN | BIMO | $0.000 ETH | 0.00000379 | |
| 0x219ffe…7ad893 | Approve | 19,008,213 | 23 days agoSat, 25 Jul 2026 12:25:54 UTC | 0x7d6f…2023 | IN | BIMO | $0.000 ETH | 0.00000382 | |
| 0x44651a…fb5390 | Transfer | 19,007,677 | 23 days agoSat, 25 Jul 2026 12:25:00 UTC | 0x0c2e…8d39 | IN | BIMO | $0.000 ETH | 0.00000380 | |
| 0x5ae6ab…bbaa6c | Approve | 19,006,644 | 23 days agoSat, 25 Jul 2026 12:23:16 UTC | 0x68b4…fe50 | IN | BIMO | $0.000 ETH | 0.00000380 | |
| 0x0786e1…1c597e | Approve | 19,005,278 | 23 days agoSat, 25 Jul 2026 12:20:58 UTC | 0x4c0f…0d15 | IN | BIMO | $0.000 ETH | 0.00000381 | |
| 0x6c4de3…a437cb | Approve | 18,999,194 | 23 days agoSat, 25 Jul 2026 12:10:48 UTC | 0x5a57…8dec | IN | BIMO | $0.000 ETH | 0.00000382 | |
| 0xc682b7…c31364 | Approve | 18,998,971 | 23 days agoSat, 25 Jul 2026 12:10:26 UTC | 0x6688…7395 | IN | BIMO | $0.000 ETH | 0.00000380 | |
| 0x7340ef…6b0a79 | Approve | 18,998,617 | 23 days agoSat, 25 Jul 2026 12:09:50 UTC | 0xc9be…e3d0 | IN | BIMO | $0.000 ETH | 0.00000216 | |
| 0x22d7f6…c680ce | Approve | 18,998,491 | 23 days agoSat, 25 Jul 2026 12:09:37 UTC | 0xc9be…e3d0 | IN | BIMO | $0.000 ETH | 0.00000380 | |
| 0xb8127e…3444bf | Approve | 18,973,614 | 23 days agoSat, 25 Jul 2026 11:28:00 UTC | 0x2e1c…29b8 | IN | BIMO | $0.000 ETH | 0.00000390 |