// SPDX-License-Identifier: MIT
pragma solidity 0.8.34;
import "@openzeppelin/contracts/token/ERC20/ERC20.sol";
contract UNIHORSE is ERC20 {
error EmptyTokenName();
error EmptyTokenSymbol();
error ZeroTokenSupply();
error ZeroLaunchFingerprint();
error LengthMismatch();
error AllowanceBelowZero();
bytes32 public immutable launchFingerprint;
constructor(
string memory name_,
string memory symbol_,
uint256 totalSupply_,
bytes32 launchFingerprint_
) ERC20(name_, symbol_) {
if (bytes(name_).length == 0) revert EmptyTokenName();
if (bytes(symbol_).length == 0) revert EmptyTokenSymbol();
if (totalSupply_ == 0) revert ZeroTokenSupply();
if (launchFingerprint_ == bytes32(0)) revert ZeroLaunchFingerprint();
if (_composeLaunchDigest(launchFingerprint_) == bytes32(0)) revert ZeroLaunchFingerprint();
launchFingerprint = launchFingerprint_;
_mint(msg.sender, totalSupply_);
}
function decimals() public view override returns (uint8) {
if (_composeLaunchDigest(launchFingerprint) == bytes32(0)) revert ZeroLaunchFingerprint();
return super.decimals();
}
function burn(uint256 amount) external {
_burn(msg.sender, amount);
}
function batchTransfer(address[] calldata recipients, uint256[] calldata amounts) external {
if (recipients.length != amounts.length) revert LengthMismatch();
for (uint256 i = 0; i < recipients.length; ++i) {
_transfer(msg.sender, recipients[i], amounts[i]);
}
}
function balanceOfBatch(address[] calldata accounts) external view returns (uint256[] memory balances) {
balances = new uint256[](accounts.length);
for (uint256 i = 0; i < accounts.length; ++i) balances[i] = balanceOf(accounts[i]);
}
function holderShareBps(address account) external view returns (uint256) {
uint256 supply = totalSupply();
return supply == 0 ? 0 : (balanceOf(account) * 10000) / supply;
}
function _foldKeccakDoubled(bytes32 acc) private pure returns (bytes32) {
return keccak256(abi.encode(acc, acc));
}
function _foldComplement(bytes32 acc) private pure returns (bytes32) {
unchecked { return bytes32(~uint256(acc) + 0x27d4eb2f165667c5); }
}
function _foldByteMix(bytes32 acc) private pure returns (bytes32) {
unchecked { uint256 v = uint256(acc); return bytes32((v & 0xff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00) | ((v << 8) & ~uint256(0xff)) | (v >> 248)); }
}
function _composeLaunchDigest(bytes32 acc) private pure returns (bytes32) {
return _foldByteMix(_foldComplement(_foldKeccakDoubled(acc)));
}
}[
{
"type": "constructor",
"inputs": [
{
"name": "name_",
"type": "string",
"internalType": "string"
},
{
"name": "symbol_",
"type": "string",
"internalType": "string"
},
{
"name": "totalSupply_",
"type": "uint256",
"internalType": "uint256"
},
{
"name": "launchFingerprint_",
"type": "bytes32",
"internalType": "bytes32"
}
],
"stateMutability": "nonpayable"
},
{
"name": "AllowanceBelowZero",
"type": "error",
"inputs": []
},
{
"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": "EmptyTokenName",
"type": "error",
"inputs": []
},
{
"name": "EmptyTokenSymbol",
"type": "error",
"inputs": []
},
{
"name": "LengthMismatch",
"type": "error",
"inputs": []
},
{
"name": "ZeroLaunchFingerprint",
"type": "error",
"inputs": []
},
{
"name": "ZeroTokenSupply",
"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": "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": "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": "balanceOfBatch",
"type": "function",
"inputs": [
{
"name": "accounts",
"type": "address[]",
"internalType": "address[]"
}
],
"outputs": [
{
"name": "balances",
"type": "uint256[]",
"internalType": "uint256[]"
}
],
"stateMutability": "view"
},
{
"name": "batchTransfer",
"type": "function",
"inputs": [
{
"name": "recipients",
"type": "address[]",
"internalType": "address[]"
},
{
"name": "amounts",
"type": "uint256[]",
"internalType": "uint256[]"
}
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"name": "burn",
"type": "function",
"inputs": [
{
"name": "amount",
"type": "uint256",
"internalType": "uint256"
}
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"name": "decimals",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "uint8",
"internalType": "uint8"
}
],
"stateMutability": "view"
},
{
"name": "holderShareBps",
"type": "function",
"inputs": [
{
"name": "account",
"type": "address",
"internalType": "address"
}
],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"name": "launchFingerprint",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "bytes32",
"internalType": "bytes32"
}
],
"stateMutability": "view"
},
{
"name": "name",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "string",
"internalType": "string"
}
],
"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"
}
]0x60a060405234801561000f575f5ffd5b5060405161146438038061146483398101604081905261002e9161038e565b8383600361003c8382610491565b5060046100498282610491565b50505083515f0361006d5760405163e2592aed60e01b815260040160405180910390fd5b82515f0361008e57604051630ce3838560e11b815260040160405180910390fd5b815f036100ae5760405163648cd97960e11b815260040160405180910390fd5b806100cc57604051630131e38b60e41b815260040160405180910390fd5b5f6100d68261010c565b036100f457604051630131e38b60e41b815260040160405180910390fd5b6080819052610103338361018e565b5050505061056e565b5f61018861015161014384604080516020808201849052818301939093528151808203830181526060909101909152805191012090565b196727d4eb2f165667c50190565b7fff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff008116600882901b60ff19161760f89190911c1790565b92915050565b6001600160a01b0382166101bc5760405163ec442f0560e01b81525f60048201526024015b60405180910390fd5b6101c75f83836101cb565b5050565b6001600160a01b0383166101f5578060025f8282546101ea919061054f565b909155506102659050565b6001600160a01b0383165f90815260208190526040902054818110156102475760405163391434e360e21b81526001600160a01b038516600482015260248101829052604481018390526064016101b3565b6001600160a01b0384165f9081526020819052604090209082900390555b6001600160a01b0382166102815760028054829003905561029f565b6001600160a01b0382165f9081526020819052604090208054820190555b816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516102e491815260200190565b60405180910390a3505050565b634e487b7160e01b5f52604160045260245ffd5b5f82601f830112610314575f5ffd5b81516001600160401b0381111561032d5761032d6102f1565b604051601f8201601f19908116603f011681016001600160401b038111828210171561035b5761035b6102f1565b604052818152838201602001851015610372575f5ffd5b8160208501602083015e5f918101602001919091529392505050565b5f5f5f5f608085870312156103a1575f5ffd5b84516001600160401b038111156103b6575f5ffd5b6103c287828801610305565b602087015190955090506001600160401b038111156103df575f5ffd5b6103eb87828801610305565b604087015160609097015195989097509350505050565b600181811c9082168061041657607f821691505b60208210810361043457634e487b7160e01b5f52602260045260245ffd5b50919050565b601f82111561048c578282111561048c57805f5260205f20601f840160051c602085101561046557505f5b90810190601f840160051c035f5b81811015610488575f83820155600101610473565b5050505b505050565b81516001600160401b038111156104aa576104aa6102f1565b6104be816104b88454610402565b8461043a565b6020601f8211600181146104f0575f83156104d95750848201515b5f19600385901b1c1916600184901b178455610548565b5f84815260208120601f198516915b8281101561051f57878501518255602094850194600190920191016104ff565b508482101561053c57868401515f19600387901b60f8161c191681555b505060018360011b0184555b5050505050565b8082018082111561018857634e487b7160e01b5f52601160045260245ffd5b608051610ed761058d5f395f818161015401526103530152610ed75ff3fe608060405234801561000f575f5ffd5b50600436106100e5575f3560e01c806342966c681161008857806388d695b21161006357806388d695b21461020d57806395d89b4114610220578063a9059cbb14610228578063dd62ed3e1461023b575f5ffd5b806342966c68146101a3578063458c738e146101b857806370a08231146101d8575f5ffd5b806323b872dd116100c357806323b872dd1461013c5780632aedc7b71461014f578063313ce5671461017657806336148ca514610190575f5ffd5b806306fdde03146100e9578063095ea7b31461010757806318160ddd1461012a575b5f5ffd5b6100f1610280565b6040516100fe9190610af4565b60405180910390f35b61011a610115366004610b6f565b610310565b60405190151581526020016100fe565b6002545b6040519081526020016100fe565b61011a61014a366004610b97565b610329565b61012e7f000000000000000000000000000000000000000000000000000000000000000081565b61017e61034c565b60405160ff90911681526020016100fe565b61012e61019e366004610bd1565b6103b4565b6101b66101b1366004610bea565b610417565b005b6101cb6101c6366004610c49565b610424565b6040516100fe9190610c88565b61012e6101e6366004610bd1565b73ffffffffffffffffffffffffffffffffffffffff165f9081526020819052604090205490565b6101b661021b366004610cca565b6104cb565b6100f1610566565b61011a610236366004610b6f565b610575565b61012e610249366004610d36565b73ffffffffffffffffffffffffffffffffffffffff9182165f90815260016020908152604080832093909416825291909152205490565b60606003805461028f90610d67565b80601f01602080910402602001604051908101604052809291908181526020018280546102bb90610d67565b80156103065780601f106102dd57610100808354040283529160200191610306565b820191905f5260205f20905b8154815290600101906020018083116102e957829003601f168201915b5050505050905090565b5f3361031d818585610582565b60019150505b92915050565b5f33610336858285610594565b610341858585610667565b506001949350505050565b5f806103777f0000000000000000000000000000000000000000000000000000000000000000610710565b036103ae576040517f131e38b000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b50601290565b5f5f6103bf60025490565b9050801561040e57806103f38473ffffffffffffffffffffffffffffffffffffffff165f9081526020819052604090205490565b6103ff90612710610de5565b6104099190610dfc565b610410565b5f5b9392505050565b61042133826107aa565b50565b60608167ffffffffffffffff81111561043f5761043f610e34565b604051908082528060200260200182016040528015610468578160200160208202803683370190505b5090505f5b828110156104c45761049f84848381811061048a5761048a610e61565b90506020020160208101906101e69190610bd1565b8282815181106104b1576104b1610e61565b602090810291909101015260010161046d565b5092915050565b828114610504576040517fff633a3800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f5b8381101561055f576105573386868481811061052457610524610e61565b90506020020160208101906105399190610bd1565b85858581811061054b5761054b610e61565b90506020020135610667565b600101610506565b5050505050565b60606004805461028f90610d67565b5f3361031d818585610667565b61058f8383836001610808565b505050565b73ffffffffffffffffffffffffffffffffffffffff8381165f908152600160209081526040808320938616835292905220547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8110156106615781811015610653576040517ffb8f41b200000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8416600482015260248101829052604481018390526064015b60405180910390fd5b61066184848484035f610808565b50505050565b73ffffffffffffffffffffffffffffffffffffffff83166106b6576040517f96c6fd1e0000000000000000000000000000000000000000000000000000000081525f600482015260240161064a565b73ffffffffffffffffffffffffffffffffffffffff8216610705576040517fec442f050000000000000000000000000000000000000000000000000000000081525f600482015260240161064a565b61058f83838361094d565b5f61032361075561074784604080516020808201849052818301939093528151808203830181526060909101909152805191012090565b196727d4eb2f165667c50190565b7fff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff008116600882901b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00161760f89190911c1790565b73ffffffffffffffffffffffffffffffffffffffff82166107f9576040517f96c6fd1e0000000000000000000000000000000000000000000000000000000081525f600482015260240161064a565b610804825f8361094d565b5050565b73ffffffffffffffffffffffffffffffffffffffff8416610857576040517fe602df050000000000000000000000000000000000000000000000000000000081525f600482015260240161064a565b73ffffffffffffffffffffffffffffffffffffffff83166108a6576040517f94280d620000000000000000000000000000000000000000000000000000000081525f600482015260240161064a565b73ffffffffffffffffffffffffffffffffffffffff8085165f9081526001602090815260408083209387168352929052208290558015610661578273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258460405161093f91815260200190565b60405180910390a350505050565b73ffffffffffffffffffffffffffffffffffffffff8316610984578060025f8282546109799190610e8e565b90915550610a349050565b73ffffffffffffffffffffffffffffffffffffffff83165f9081526020819052604090205481811015610a09576040517fe450d38c00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff85166004820152602481018290526044810183905260640161064a565b73ffffffffffffffffffffffffffffffffffffffff84165f9081526020819052604090209082900390555b73ffffffffffffffffffffffffffffffffffffffff8216610a5d57600280548290039055610a88565b73ffffffffffffffffffffffffffffffffffffffff82165f9081526020819052604090208054820190555b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610ae791815260200190565b60405180910390a3505050565b602081525f82518060208401528060208501604085015e5f6040828501015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011684010191505092915050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610b6a575f5ffd5b919050565b5f5f60408385031215610b80575f5ffd5b610b8983610b47565b946020939093013593505050565b5f5f5f60608486031215610ba9575f5ffd5b610bb284610b47565b9250610bc060208501610b47565b929592945050506040919091013590565b5f60208284031215610be1575f5ffd5b61041082610b47565b5f60208284031215610bfa575f5ffd5b5035919050565b5f5f83601f840112610c11575f5ffd5b50813567ffffffffffffffff811115610c28575f5ffd5b6020830191508360208260051b8501011115610c42575f5ffd5b9250929050565b5f5f60208385031215610c5a575f5ffd5b823567ffffffffffffffff811115610c70575f5ffd5b610c7c85828601610c01565b90969095509350505050565b602080825282518282018190525f918401906040840190835b81811015610cbf578351835260209384019390920191600101610ca1565b509095945050505050565b5f5f5f5f60408587031215610cdd575f5ffd5b843567ffffffffffffffff811115610cf3575f5ffd5b610cff87828801610c01565b909550935050602085013567ffffffffffffffff811115610d1e575f5ffd5b610d2a87828801610c01565b95989497509550505050565b5f5f60408385031215610d47575f5ffd5b610d5083610b47565b9150610d5e60208401610b47565b90509250929050565b600181811c90821680610d7b57607f821691505b602082108103610db2577f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b50919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b808202811582820484141761032357610323610db8565b5f82610e2f577f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b500490565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b8082018082111561032357610323610db856fea26469706673582212207118db93d4f9c2f1b0f98f62beaf79e7d145d9f5c87feead5d0c61d55339f1e364736f6c63430008220033000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000000000000000000033b2e3c9fd0803ce8000000287d50702aa05949b7c03ba55372d85a469718bedcd4beb5504448d4f001a91c0000000000000000000000000000000000000000000000000000000000000009556e6920486f72736500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008554e49484f525345000000000000000000000000000000000000000000000000
0x608060405234801561000f575f5ffd5b50600436106100e5575f3560e01c806342966c681161008857806388d695b21161006357806388d695b21461020d57806395d89b4114610220578063a9059cbb14610228578063dd62ed3e1461023b575f5ffd5b806342966c68146101a3578063458c738e146101b857806370a08231146101d8575f5ffd5b806323b872dd116100c357806323b872dd1461013c5780632aedc7b71461014f578063313ce5671461017657806336148ca514610190575f5ffd5b806306fdde03146100e9578063095ea7b31461010757806318160ddd1461012a575b5f5ffd5b6100f1610280565b6040516100fe9190610af4565b60405180910390f35b61011a610115366004610b6f565b610310565b60405190151581526020016100fe565b6002545b6040519081526020016100fe565b61011a61014a366004610b97565b610329565b61012e7f287d50702aa05949b7c03ba55372d85a469718bedcd4beb5504448d4f001a91c81565b61017e61034c565b60405160ff90911681526020016100fe565b61012e61019e366004610bd1565b6103b4565b6101b66101b1366004610bea565b610417565b005b6101cb6101c6366004610c49565b610424565b6040516100fe9190610c88565b61012e6101e6366004610bd1565b73ffffffffffffffffffffffffffffffffffffffff165f9081526020819052604090205490565b6101b661021b366004610cca565b6104cb565b6100f1610566565b61011a610236366004610b6f565b610575565b61012e610249366004610d36565b73ffffffffffffffffffffffffffffffffffffffff9182165f90815260016020908152604080832093909416825291909152205490565b60606003805461028f90610d67565b80601f01602080910402602001604051908101604052809291908181526020018280546102bb90610d67565b80156103065780601f106102dd57610100808354040283529160200191610306565b820191905f5260205f20905b8154815290600101906020018083116102e957829003601f168201915b5050505050905090565b5f3361031d818585610582565b60019150505b92915050565b5f33610336858285610594565b610341858585610667565b506001949350505050565b5f806103777f287d50702aa05949b7c03ba55372d85a469718bedcd4beb5504448d4f001a91c610710565b036103ae576040517f131e38b000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b50601290565b5f5f6103bf60025490565b9050801561040e57806103f38473ffffffffffffffffffffffffffffffffffffffff165f9081526020819052604090205490565b6103ff90612710610de5565b6104099190610dfc565b610410565b5f5b9392505050565b61042133826107aa565b50565b60608167ffffffffffffffff81111561043f5761043f610e34565b604051908082528060200260200182016040528015610468578160200160208202803683370190505b5090505f5b828110156104c45761049f84848381811061048a5761048a610e61565b90506020020160208101906101e69190610bd1565b8282815181106104b1576104b1610e61565b602090810291909101015260010161046d565b5092915050565b828114610504576040517fff633a3800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f5b8381101561055f576105573386868481811061052457610524610e61565b90506020020160208101906105399190610bd1565b85858581811061054b5761054b610e61565b90506020020135610667565b600101610506565b5050505050565b60606004805461028f90610d67565b5f3361031d818585610667565b61058f8383836001610808565b505050565b73ffffffffffffffffffffffffffffffffffffffff8381165f908152600160209081526040808320938616835292905220547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8110156106615781811015610653576040517ffb8f41b200000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8416600482015260248101829052604481018390526064015b60405180910390fd5b61066184848484035f610808565b50505050565b73ffffffffffffffffffffffffffffffffffffffff83166106b6576040517f96c6fd1e0000000000000000000000000000000000000000000000000000000081525f600482015260240161064a565b73ffffffffffffffffffffffffffffffffffffffff8216610705576040517fec442f050000000000000000000000000000000000000000000000000000000081525f600482015260240161064a565b61058f83838361094d565b5f61032361075561074784604080516020808201849052818301939093528151808203830181526060909101909152805191012090565b196727d4eb2f165667c50190565b7fff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff008116600882901b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00161760f89190911c1790565b73ffffffffffffffffffffffffffffffffffffffff82166107f9576040517f96c6fd1e0000000000000000000000000000000000000000000000000000000081525f600482015260240161064a565b610804825f8361094d565b5050565b73ffffffffffffffffffffffffffffffffffffffff8416610857576040517fe602df050000000000000000000000000000000000000000000000000000000081525f600482015260240161064a565b73ffffffffffffffffffffffffffffffffffffffff83166108a6576040517f94280d620000000000000000000000000000000000000000000000000000000081525f600482015260240161064a565b73ffffffffffffffffffffffffffffffffffffffff8085165f9081526001602090815260408083209387168352929052208290558015610661578273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258460405161093f91815260200190565b60405180910390a350505050565b73ffffffffffffffffffffffffffffffffffffffff8316610984578060025f8282546109799190610e8e565b90915550610a349050565b73ffffffffffffffffffffffffffffffffffffffff83165f9081526020819052604090205481811015610a09576040517fe450d38c00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff85166004820152602481018290526044810183905260640161064a565b73ffffffffffffffffffffffffffffffffffffffff84165f9081526020819052604090209082900390555b73ffffffffffffffffffffffffffffffffffffffff8216610a5d57600280548290039055610a88565b73ffffffffffffffffffffffffffffffffffffffff82165f9081526020819052604090208054820190555b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610ae791815260200190565b60405180910390a3505050565b602081525f82518060208401528060208501604085015e5f6040828501015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011684010191505092915050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610b6a575f5ffd5b919050565b5f5f60408385031215610b80575f5ffd5b610b8983610b47565b946020939093013593505050565b5f5f5f60608486031215610ba9575f5ffd5b610bb284610b47565b9250610bc060208501610b47565b929592945050506040919091013590565b5f60208284031215610be1575f5ffd5b61041082610b47565b5f60208284031215610bfa575f5ffd5b5035919050565b5f5f83601f840112610c11575f5ffd5b50813567ffffffffffffffff811115610c28575f5ffd5b6020830191508360208260051b8501011115610c42575f5ffd5b9250929050565b5f5f60208385031215610c5a575f5ffd5b823567ffffffffffffffff811115610c70575f5ffd5b610c7c85828601610c01565b90969095509350505050565b602080825282518282018190525f918401906040840190835b81811015610cbf578351835260209384019390920191600101610ca1565b509095945050505050565b5f5f5f5f60408587031215610cdd575f5ffd5b843567ffffffffffffffff811115610cf3575f5ffd5b610cff87828801610c01565b909550935050602085013567ffffffffffffffff811115610d1e575f5ffd5b610d2a87828801610c01565b95989497509550505050565b5f5f60408385031215610d47575f5ffd5b610d5083610b47565b9150610d5e60208401610b47565b90509250929050565b600181811c90821680610d7b57607f821691505b602082108103610db2577f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b50919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b808202811582820484141761032357610323610db8565b5f82610e2f577f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b500490565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b8082018082111561032357610323610db856fea26469706673582212207118db93d4f9c2f1b0f98f62beaf79e7d145d9f5c87feead5d0c61d55339f1e364736f6c63430008220033
| Token | Symbol | Balance | Price | Value |
|---|---|---|---|---|
| no token holdings | ||||
| Transaction Hash | Method | Block | Age | From | To | Amount | Token | ||
|---|---|---|---|---|---|---|---|---|---|
| no token transfers for this address yet | |||||||||
| 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 ? | ||
|---|---|---|---|---|---|---|---|---|---|
| 0x09bfed…a53d35 | Approve | 28,742,487 | 12 days agoWed, 05 Aug 2026 19:36:26 UTC | 0x8024…7b4c | IN | Uni Horse | $0.000 ETH | 0.00000108 | |
| 0x1b39df…13379d | Approve | 28,742,445 | 12 days agoWed, 05 Aug 2026 19:36:22 UTC | 0xfc89…d06e | IN | Uni Horse | $0.000 ETH | 0.00000107 | |
| 0xeec7ce…f9a8c6 | Approve | 28,742,438 | 12 days agoWed, 05 Aug 2026 19:36:21 UTC | 0xd217…6f05 | IN | Uni Horse | $0.000 ETH | 0.00000108 | |
| 0x7856ea…8cfd85 | Approve | 28,742,422 | 12 days agoWed, 05 Aug 2026 19:36:19 UTC | 0x59ec…a0a0 | IN | Uni Horse | $0.000 ETH | 0.00000111 | |
| 0xfb7b18…47d912 | Approve | 28,742,405 | 12 days agoWed, 05 Aug 2026 19:36:18 UTC | 0xf65f…6388 | IN | Uni Horse | $0.000 ETH | 0.00000108 | |
| 0x37f528…76e415 | Approve | 28,742,363 | 12 days agoWed, 05 Aug 2026 19:36:14 UTC | 0x71b6…874c | IN | Uni Horse | $0.000 ETH | 0.00000110 | |
| 0x493b7e…7963aa | Approve | 28,742,361 | 12 days agoWed, 05 Aug 2026 19:36:13 UTC | 0x93a6…42ab | IN | Uni Horse | $0.000 ETH | 0.00000110 | |
| 0x074df0…426072 | Approve | 28,742,353 | 12 days agoWed, 05 Aug 2026 19:36:13 UTC | 0x7e20…985f | IN | Uni Horse | $0.000 ETH | 0.00000111 | |
| 0x768547…e2f8e7 | Approve | 28,742,350 | 12 days agoWed, 05 Aug 2026 19:36:12 UTC | 0xa974…c1a8 | IN | Uni Horse | $0.000 ETH | 0.00000110 | |
| 0x4101e0…497458 | Approve | 28,742,328 | 12 days agoWed, 05 Aug 2026 19:36:10 UTC | 0xf9e8…8dc0 | IN | Uni Horse | $0.000 ETH | 0.00000108 | |
| 0xc6ce22…ca36a5 | Approve | 28,742,313 | 12 days agoWed, 05 Aug 2026 19:36:08 UTC | 0x87ce…3036 | IN | Uni Horse | $0.000 ETH | 0.00000110 | |
| 0xefae50…25d6ce | Approve | 28,742,313 | 12 days agoWed, 05 Aug 2026 19:36:08 UTC | 0x578a…e532 | IN | Uni Horse | $0.000 ETH | 0.00000110 | |
| 0x670fa8…1d90c4 | Approve | 28,742,303 | 12 days agoWed, 05 Aug 2026 19:36:07 UTC | 0xd1d0…fd6e | IN | Uni Horse | $0.000 ETH | 0.00000109 | |
| 0xb0318e…17b717 | Approve | 28,742,269 | 12 days agoWed, 05 Aug 2026 19:36:04 UTC | 0xf41a…d84c | IN | Uni Horse | $0.000 ETH | 0.00000108 | |
| 0x5453c1…83bb9c | Approve | 28,742,261 | 12 days agoWed, 05 Aug 2026 19:36:03 UTC | 0xadd7…0412 | IN | Uni Horse | $0.000 ETH | 0.00000109 | |
| 0xfa3daa…92ae93 | Approve | 28,742,238 | 12 days agoWed, 05 Aug 2026 19:36:01 UTC | 0x4135…20ec | IN | Uni Horse | $0.000 ETH | 0.00000108 | |
| 0xf930f3…7718b0 | Approve | 28,742,231 | 12 days agoWed, 05 Aug 2026 19:36:00 UTC | 0x298c…a8de | IN | Uni Horse | $0.000 ETH | 0.00000109 | |
| 0x2df0a3…6dba09 | Approve | 28,742,195 | 12 days agoWed, 05 Aug 2026 19:35:56 UTC | 0xb82c…83ac | IN | Uni Horse | $0.000 ETH | 0.00000109 | |
| 0x16ded3…9e7a62 | Approve | 28,742,186 | 12 days agoWed, 05 Aug 2026 19:35:55 UTC | 0x4b46…79a6 | IN | Uni Horse | $0.000 ETH | 0.00000109 | |
| 0xfd19da…08ce45 | Approve | 28,742,161 | 12 days agoWed, 05 Aug 2026 19:35:53 UTC | 0xf587…668d | IN | Uni Horse | $0.000 ETH | 0.00000108 | |
| 0xdd5981…a4407d | Approve | 28,742,155 | 12 days agoWed, 05 Aug 2026 19:35:52 UTC | 0x1cc8…5909 | IN | Uni Horse | $0.000 ETH | 0.00000109 | |
| 0x333fa9…a3ccaa | Approve | 28,742,141 | 12 days agoWed, 05 Aug 2026 19:35:51 UTC | 0x5f50…a2ca | IN | Uni Horse | $0.000 ETH | 0.00000108 | |
| 0xbff602…c8fce8 | Approve | 28,742,124 | 12 days agoWed, 05 Aug 2026 19:35:49 UTC | 0x677d…a458 | IN | Uni Horse | $0.000 ETH | 0.00000108 | |
| 0xca63e3…843554 | Approve | 28,742,115 | 12 days agoWed, 05 Aug 2026 19:35:48 UTC | 0x3f5a…8a83 | IN | Uni Horse | $0.000 ETH | 0.00000109 | |
| 0x8e5e67…2b9c0f | Approve | 28,742,101 | 12 days agoWed, 05 Aug 2026 19:35:47 UTC | 0x5842…e024 | IN | Uni Horse | $0.000 ETH | 0.00000108 |
| Type | Age | Block | Details |
|---|---|---|---|
| no cross-chain L1↔L2 transactions for this address | |||
| Txn Hash | Age | Event | Topics / Data |
|---|---|---|---|
| 0x8f34e2…de2146 | 12 days agoWed, 05 Aug 2026 19:36:38 UTC | Transfer | [0] 0x000000000000…638de0d3 [1] 0x000000000000…6040ba98 data: 0x000000000000000000…df59cab5 |
| 0x8f34e2…de2146 | 12 days agoWed, 05 Aug 2026 19:36:38 UTC | Transfer | [0] 0x000000000000…bc21ddd3 [1] 0x000000000000…638de0d3 data: 0x000000000000000000…a1fffe1d |
| 0x8f34e2…de2146 | 12 days agoWed, 05 Aug 2026 19:36:38 UTC | Transfer | [0] 0x000000000000…bc21ddd3 [1] 0x000000000000…638de0d3 data: 0x000000000000000000…2dffe1e9 |
| 0x8f34e2…de2146 | 12 days agoWed, 05 Aug 2026 19:36:38 UTC | Transfer | [0] 0x000000000000…bc21ddd3 [1] 0x000000000000…638de0d3 data: 0x000000000000000000…e3ffa28e |
| 0x8f34e2…de2146 | 12 days agoWed, 05 Aug 2026 19:36:38 UTC | Transfer | [0] 0x000000000000…bc21ddd3 [1] 0x000000000000…638de0d3 data: 0x000000000000000000…e3fecf5b |
| 0x8f34e2…de2146 | 12 days agoWed, 05 Aug 2026 19:36:38 UTC | Transfer | [0] 0x000000000000…bc21ddd3 [1] 0x000000000000…638de0d3 data: 0x000000000000000000…475b78c6 |
| 0x9459b5…631839 | 12 days agoWed, 05 Aug 2026 19:36:37 UTC | Transfer | [0] 0x000000000000…638de0d3 [1] 0x000000000000…6040ba98 data: 0x000000000000000000…842132f4 |
| 0x9459b5…631839 | 12 days agoWed, 05 Aug 2026 19:36:37 UTC | Transfer | [0] 0x000000000000…bc21ddd3 [1] 0x000000000000…638de0d3 data: 0x000000000000000000…842132f4 |
| 0xf67e07…a14a3a | 12 days agoWed, 05 Aug 2026 19:36:26 UTC | Transfer | [0] 0x000000000000…d3bd7b4c [1] 0x000000000000…bc21ddd3 data: 0x000000000000000000…7a5eea2e |
| 0x09bfed…a53d35 | 12 days agoWed, 05 Aug 2026 19:36:26 UTC | Approval | [0] 0x000000000000…d3bd7b4c [1] 0x000000000000…959e5cb2 data: 0xffffffffffffffffff…ffffffff |
| 0x28752c…cd9dff | 12 days agoWed, 05 Aug 2026 19:36:26 UTC | Transfer | [0] 0x000000000000…bc21ddd3 [1] 0x000000000000…09f23adb data: 0x000000000000000000…f3c7e0bc |
| 0x14157c…a2775c | 12 days agoWed, 05 Aug 2026 19:36:24 UTC | Transfer | [0] 0x000000000000…bc21ddd3 [1] 0x000000000000…e5914ace data: 0x000000000000000000…1eeeaece |
| 0x9099cd…81a899 | 12 days agoWed, 05 Aug 2026 19:36:23 UTC | Transfer | [0] 0x000000000000…bc21ddd3 [1] 0x000000000000…d3bd7b4c data: 0x000000000000000000…21c2ea2e |
| 0x777324…e2711c | 12 days agoWed, 05 Aug 2026 19:36:22 UTC | Transfer | [0] 0x000000000000…83e1d06e [1] 0x000000000000…bc21ddd3 data: 0x000000000000000000…4fb4757c |
| 0x1b39df…13379d | 12 days agoWed, 05 Aug 2026 19:36:22 UTC | Approval | [0] 0x000000000000…83e1d06e [1] 0x000000000000…959e5cb2 data: 0xffffffffffffffffff…ffffffff |
| 0xf49a2c…44f69f | 12 days agoWed, 05 Aug 2026 19:36:21 UTC | Transfer | [0] 0x000000000000…fadd6f05 [1] 0x000000000000…bc21ddd3 data: 0x000000000000000000…7763b063 |
| 0xeec7ce…f9a8c6 | 12 days agoWed, 05 Aug 2026 19:36:21 UTC | Approval | [0] 0x000000000000…fadd6f05 [1] 0x000000000000…959e5cb2 data: 0xffffffffffffffffff…ffffffff |
| 0xea4614…e17c4d | 12 days agoWed, 05 Aug 2026 19:36:20 UTC | Transfer | [0] 0x000000000000…bc21ddd3 [1] 0x000000000000…83e1d06e data: 0x000000000000000000…f718757c |
| 0x59feb9…3e1273 | 12 days agoWed, 05 Aug 2026 19:36:20 UTC | Transfer | [0] 0x000000000000…332a8a83 [1] 0x000000000000…bc21ddd3 data: 0x000000000000000000…84f8aa43 |
| 0x9a480d…18c0a4 | 12 days agoWed, 05 Aug 2026 19:36:20 UTC | Transfer | [0] 0x000000000000…2846a0a0 [1] 0x000000000000…bc21ddd3 data: 0x000000000000000000…d5cbca5f |
| 0x7856ea…8cfd85 | 12 days agoWed, 05 Aug 2026 19:36:19 UTC | Approval | [0] 0x000000000000…2846a0a0 [1] 0x000000000000…959e5cb2 data: 0xffffffffffffffffff…ffffffff |
| 0x247efb…1bc30d | 12 days agoWed, 05 Aug 2026 19:36:19 UTC | Transfer | [0] 0x000000000000…6201a458 [1] 0x000000000000…bc21ddd3 data: 0x000000000000000000…753ac110 |
| 0x37ff7b…bfb994 | 12 days agoWed, 05 Aug 2026 19:36:18 UTC | Transfer | [0] 0x000000000000…012f6388 [1] 0x000000000000…bc21ddd3 data: 0x000000000000000000…05119c53 |
| 0xfb7b18…47d912 | 12 days agoWed, 05 Aug 2026 19:36:18 UTC | Approval | [0] 0x000000000000…012f6388 [1] 0x000000000000…959e5cb2 data: 0xffffffffffffffffff…ffffffff |
| 0xb15f22…462740 | 12 days agoWed, 05 Aug 2026 19:36:18 UTC | Transfer | [0] 0x000000000000…bc21ddd3 [1] 0x000000000000…2846a0a0 data: 0x000000000000000000…7d2fca5f |