// SPDX-License-Identifier: MIT
pragma solidity 0.8.25;
import {ERC20} from "@openzeppelin/contracts/token/ERC20/ERC20.sol";
/// @title PartyToken
/// @notice Minimal fixed-supply ERC20 launched by PartyFactory via CREATE2.
/// @dev No owner, no mint, no transfer hooks. The full supply is minted once to
/// `recipient` (the factory) in the constructor. The caller-bound CREATE2
/// salt is mined off-chain so this token sorts below the paired asset (token0).
contract PartyToken is ERC20 {
/// @notice IPFS (or https) URI of the token's metadata JSON.
string public metadataUri;
constructor(
string memory name_,
string memory symbol_,
uint256 supply_,
address recipient_,
string memory metadataUri_
) ERC20(name_, symbol_) {
metadataUri = metadataUri_;
_mint(recipient_, supply_);
}
/// @notice Alias for `metadataUri`, mirroring the ERC721 tokenURI convention.
function tokenURI() external view returns (string memory) {
return metadataUri;
}
}[
{
"type": "constructor",
"inputs": [
{
"name": "name_",
"type": "string",
"internalType": "string"
},
{
"name": "symbol_",
"type": "string",
"internalType": "string"
},
{
"name": "supply_",
"type": "uint256",
"internalType": "uint256"
},
{
"name": "recipient_",
"type": "address",
"internalType": "address"
},
{
"name": "metadataUri_",
"type": "string",
"internalType": "string"
}
],
"stateMutability": "nonpayable"
},
{
"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": "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": "decimals",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "uint8",
"internalType": "uint8"
}
],
"stateMutability": "view"
},
{
"name": "metadataUri",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "string",
"internalType": "string"
}
],
"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": "tokenURI",
"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"
}
]0x6080604090808252600480361015610015575f80fd5b5f3560e01c91826306fdde031461046557508163095ea7b3146103bd57816318160ddd1461039f57816323b872dd146102ad578163313ce567146102925781633c130d901461023457816370a082311461025c57816377a4d5591461023457816395d89b411461011557508063a9059cbb146100e55763dd62ed3e14610099575f80fd5b346100e157806003193601126100e1576020906100b4610567565b6100bc61057d565b9060018060a01b038091165f5260018452825f2091165f528252805f20549051908152f35b5f80fd5b50346100e157806003193601126100e15760209061010e610104610567565b6024359033610698565b5160018152f35b82346100e1575f3660031901126100e1578051905f835460018160011c906001831692831561022a575b6020938484108114610217578388529081156101fb57506001146101a7575b505050829003601f01601f191682019267ffffffffffffffff841183851017610194575082918261019092528261053d565b0390f35b604190634e487b7160e01b5f525260245ffd5b5f878152929350837f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b5b8385106101e7575050505083010184808061015e565b8054888601830152930192849082016101d1565b60ff1916878501525050151560051b840101905084808061015e565b602289634e487b7160e01b5f525260245ffd5b91607f169161013f565b82346100e1575f3660031901126100e15761019090610251610593565b90519182918261053d565b82346100e15760203660031901126100e1576020906001600160a01b03610281610567565b165f525f8252805f20549051908152f35b82346100e1575f3660031901126100e1576020905160128152f35b9050346100e15760603660031901126100e1576102c8610567565b6102d061057d565b906044359260018060a01b038216805f526001602052855f20335f52602052855f2054915f19831061030b575b60208761010e888888610698565b85831061037357811561035d57331561034757505f9081526001602090815286822033835281529086902091859003909155829061010e6102fd565b6024905f885191634a1406b160e11b8352820152fd5b6024905f88519163e602df0560e01b8352820152fd5b8651637dc7a0d960e11b8152339181019182526020820193909352604081018690528291506060010390fd5b82346100e1575f3660031901126100e1576020906002549051908152f35b82346100e157806003193601126100e1576103d6610567565b60243590331561044f576001600160a01b03169081156104395760209350335f5260018452825f20825f52845280835f205582519081527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925843392a35160018152f35b8251634a1406b160e11b81525f81860152602490fd5b825163e602df0560e01b81525f81860152602490fd5b83346100e1575f3660031901126100e1575f60035460018160011c9060018316928315610533575b6020938484108114610217578388529081156101fb57506001146104dd57505050829003601f01601f191682019267ffffffffffffffff841183851017610194575082918261019092528261053d565b60035f908152929350837fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b5b83851061051f575050505083010184808061015e565b805488860183015293019284908201610509565b91607f169161048d565b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b03821682036100e157565b602435906001600160a01b03821682036100e157565b604051905f60055460018160011c906001831692831561068e575b602093848410811461067a5783885290811561065e5750600114610608575b505050829003601f01601f1916820167ffffffffffffffff8111838210176105f457604052565b634e487b7160e01b5f52604160045260245ffd5b60055f908152929350837f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db05b83851061064a57505050508301015f80806105cd565b805488860183015293019284908201610634565b60ff1916878501525050151560051b84010190505f80806105cd565b634e487b7160e01b5f52602260045260245ffd5b91607f16916105ae565b916001600160a01b0380841692831561075a571692831561074257825f525f60205260405f2054908282106107105750817fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92602092855f525f84520360405f2055845f5260405f20818154019055604051908152a3565b60405163391434e360e21b81526001600160a01b03919091166004820152602481019190915260448101829052606490fd5b60405163ec442f0560e01b81525f6004820152602490fd5b604051634b637e8f60e11b81525f6004820152602490fdfea2646970667358221220d17c4219ae719cdd67293c7cc1df6199db324657aed7aeb144d3027dcf6fac5364736f6c63430008190033
| Token | Symbol | Balance | Price | Value |
|---|---|---|---|---|
| no token holdings | ||||
| 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 | |||||||||
| Transaction Hash | Method ? | Block | Age | From | To | Amount | Txn Fee ? | ||
|---|---|---|---|---|---|---|---|---|---|
| 0xc7b579…5b1dfe | Approve | 39,161,871 | 15 secs agoMon, 17 Aug 2026 21:31:44 UTC | 0x6429…5c7e | IN | HOODBUTT | $0.000 ETH | 0.00000096 | |
| 0x03a536…358457 | Approve | 39,159,708 | 3 mins agoMon, 17 Aug 2026 21:28:08 UTC | 0xff7f…8073 | IN | HOODBUTT | $0.000 ETH | 0.00000092 | |
| 0xb975fe…2ad576 | Approve | 39,156,868 | 8 mins agoMon, 17 Aug 2026 21:23:23 UTC | 0xdeda…2828 | IN | HOODBUTT | $0.000 ETH | 0.00000092 | |
| 0x9f85d5…026522 | Approve | 39,156,830 | 8 mins agoMon, 17 Aug 2026 21:23:19 UTC | 0x9061…0723 | IN | HOODBUTT | $0.000 ETH | 0.00000092 | |
| 0x537b10…a48613 | Approve | 39,156,518 | 9 mins agoMon, 17 Aug 2026 21:22:48 UTC | 0x9061…0723 | IN | HOODBUTT | $0.000 ETH | 0.00000092 | |
| 0xee84a7…ede4de | Approve | 39,156,108 | 9 mins agoMon, 17 Aug 2026 21:22:07 UTC | 0x7dd2…6e62 | IN | HOODBUTT | $0.000 ETH | 0.00000092 | |
| 0xa4fb78…c85fe6 | Approve | 39,154,816 | 12 mins agoMon, 17 Aug 2026 21:19:57 UTC | 0xa674…2166 | IN | HOODBUTT | $0.000 ETH | 0.00000092 | |
| 0xa01523…147916 | Approve | 39,154,391 | 12 mins agoMon, 17 Aug 2026 21:19:14 UTC | 0x2631…bcbc | IN | HOODBUTT | $0.000 ETH | 0.00000092 | |
| 0x08f12c…316875 | Approve | 39,152,675 | 15 mins agoMon, 17 Aug 2026 21:16:22 UTC | 0x2631…bcbc | IN | HOODBUTT | $0.000 ETH | 0.00000094 | |
| 0xf705d1…79bdc3 | Approve | 39,150,651 | 19 mins agoMon, 17 Aug 2026 21:12:59 UTC | 0xae91…a702 | IN | HOODBUTT | $0.000 ETH | 0.00000093 | |
| 0x73fb3a…efad27 | Approve | 39,144,054 | 30 mins agoMon, 17 Aug 2026 21:01:57 UTC | 0xdf48…23af | IN | HOODBUTT | $0.000 ETH | 0.00000093 | |
| 0x5287fd…870d61 | Approve | 39,142,307 | 32 mins agoMon, 17 Aug 2026 20:59:02 UTC | 0xef68…2ac4 | IN | HOODBUTT | $0.000 ETH | 0.00000093 | |
| 0x2d5404…69926a | Approve | 39,142,201 | 33 mins agoMon, 17 Aug 2026 20:58:51 UTC | 0x252a…9a59 | IN | HOODBUTT | $0.000 ETH | 0.00000092 | |
| 0xa247fa…887604 | Approve | 39,141,576 | 34 mins agoMon, 17 Aug 2026 20:57:49 UTC | 0xb2f0…d1ba | IN | HOODBUTT | $0.000 ETH | 0.00000093 | |
| 0xaa54b5…d2cdbd | Approve | 39,140,028 | 36 mins agoMon, 17 Aug 2026 20:55:14 UTC | 0x3ea4…46ca | IN | HOODBUTT | $0.000 ETH | 0.00000094 | |
| 0xdce0a8…2ce336 | Approve | 39,138,304 | 39 mins agoMon, 17 Aug 2026 20:52:20 UTC | 0x10fc…cba5 | IN | HOODBUTT | $0.000 ETH | 0.00000092 | |
| 0xcf294a…ade8e0 | Approve | 39,137,614 | 40 mins agoMon, 17 Aug 2026 20:51:12 UTC | 0x2c81…9d15 | IN | HOODBUTT | $0.000 ETH | 0.00000093 | |
| 0x12da07…c90a65 | Approve | 39,133,689 | 47 mins agoMon, 17 Aug 2026 20:44:39 UTC | 0x47e9…7a24 | IN | HOODBUTT | $0.000 ETH | 0.00000092 | |
| 0x3ae13e…334bf8 | Approve | 39,133,244 | 48 mins agoMon, 17 Aug 2026 20:43:54 UTC | 0xdf48…23af | IN | HOODBUTT | $0.000 ETH | 0.00000092 | |
| 0x1b9cca…8b9e9a | Approve | 39,133,191 | 48 mins agoMon, 17 Aug 2026 20:43:49 UTC | 0x455d…884f | IN | HOODBUTT | $0.000 ETH | 0.00000092 | |
| 0x1ff80f…daa5e3 | Approve | 39,133,158 | 48 mins agoMon, 17 Aug 2026 20:43:45 UTC | 0x2631…bcbc | IN | HOODBUTT | $0.000 ETH | 0.00000092 | |
| 0x5fff37…22ad58 | Approve | 39,133,070 | 48 mins agoMon, 17 Aug 2026 20:43:36 UTC | 0xcd6b…9799 | IN | HOODBUTT | $0.000 ETH | 0.00000093 | |
| 0x155118…f0260a | Approve | 39,128,630 | 55 mins agoMon, 17 Aug 2026 20:36:11 UTC | 0xef0d…1d87 | IN | HOODBUTT | $0.000 ETH | 0.00000093 | |
| 0x661295…9b3889 | Approve | 39,128,328 | 56 mins agoMon, 17 Aug 2026 20:35:41 UTC | 0x8e50…276b | IN | HOODBUTT | $0.000 ETH | 0.00000093 | |
| 0xca51c4…90a86c | Approve | 39,125,572 | 1 hr agoMon, 17 Aug 2026 20:31:05 UTC | 0xb60f…3424 | IN | HOODBUTT | $0.000 ETH | 0.00000058 |
| 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 | Token | ||
|---|---|---|---|---|---|---|---|---|---|
| no token transfers for this address yet | |||||||||
| Txn Hash | Age | Event | Topics / Data |
|---|---|---|---|
| 0xef5595…fa47d5 | 17 secs agoMon, 17 Aug 2026 21:31:45 UTC | Transfer | [0] 0x000000000000…d113f996 [1] 0x000000000000…13df9b84 data: 0x000000000000000000…f0ff2c00 |
| 0xef5595…fa47d5 | 17 secs agoMon, 17 Aug 2026 21:31:45 UTC | Transfer | [0] 0x000000000000…9b9f5c7e [1] 0x000000000000…d113f996 data: 0x000000000000000000…f0ff2c00 |
| 0xef5595…fa47d5 | 17 secs agoMon, 17 Aug 2026 21:31:45 UTC | Transfer | [0] 0x000000000000…9b9f5c7e [1] 0x000000000000…10d09799 data: 0x000000000000000000…d1201400 |
| 0xc7b579…5b1dfe | 18 secs agoMon, 17 Aug 2026 21:31:44 UTC | Approval | [0] 0x000000000000…9b9f5c7e [1] 0x000000000000…b66337b5 data: 0x000000000000000000…c21f4000 |
| 0x1ab886…1e55fe | 1 min agoMon, 17 Aug 2026 21:30:24 UTC | Transfer | [0] 0x000000000000…a9f8e4bf [1] 0x000000000000…13df9b84 data: 0x000000000000000000…d3f31ca3 |
| 0x1ab886…1e55fe | 1 min agoMon, 17 Aug 2026 21:30:24 UTC | Approval | [0] 0x000000000000…a9f8e4bf [1] 0x000000000000…bafad669 data: 0x000000000000000000…d3f31ca3 |
| 0x1ab886…1e55fe | 1 min agoMon, 17 Aug 2026 21:30:24 UTC | Transfer | [0] 0x000000000000…f681f298 [1] 0x000000000000…a9f8e4bf data: 0x000000000000000000…d3f31ca3 |
| 0x736baa…b6ec44 | 3 mins agoMon, 17 Aug 2026 21:28:10 UTC | Transfer | [0] 0x000000000000…20cbbe5f [1] 0x000000000000…13df9b84 data: 0x000000000000000000…728727f8 |
| 0x736baa…b6ec44 | 3 mins agoMon, 17 Aug 2026 21:28:10 UTC | Transfer | [0] 0x000000000000…20cbbe5f [1] 0x000000000000…10d09799 data: 0x000000000000000000…16be40e6 |
| 0x736baa…b6ec44 | 3 mins agoMon, 17 Aug 2026 21:28:10 UTC | Transfer | [0] 0x000000000000…002c8073 [1] 0x000000000000…20cbbe5f data: 0x000000000000000000…894568de |
| 0x03a536…358457 | 3 mins agoMon, 17 Aug 2026 21:28:08 UTC | Approval | [0] 0x000000000000…002c8073 [1] 0x000000000000…72c22734 data: 0x000000000000000000…894568de |
| 0x429267…09510c | 5 mins agoMon, 17 Aug 2026 21:26:28 UTC | Transfer | [0] 0x000000000000…a9f8e4bf [1] 0x000000000000…13df9b84 data: 0x000000000000000000…bf314bfd |
| 0x429267…09510c | 5 mins agoMon, 17 Aug 2026 21:26:28 UTC | Approval | [0] 0x000000000000…a9f8e4bf [1] 0x000000000000…bafad669 data: 0x000000000000000000…bf314bfd |
| 0x429267…09510c | 5 mins agoMon, 17 Aug 2026 21:26:28 UTC | Transfer | [0] 0x000000000000…3316b67f [1] 0x000000000000…a9f8e4bf data: 0x000000000000000000…bf314bfd |
| 0x3fe331…a91355 | 5 mins agoMon, 17 Aug 2026 21:26:08 UTC | Transfer | [0] 0x000000000000…72414af3 [1] 0x000000000000…96e88ec9 data: 0x000000000000000000…699ab75b |
| 0x3fe331…a91355 | 5 mins agoMon, 17 Aug 2026 21:26:08 UTC | Transfer | [0] 0x000000000000…f3dc860c [1] 0x000000000000…72414af3 data: 0x000000000000000000…699ab75b |
| 0x3fe331…a91355 | 5 mins agoMon, 17 Aug 2026 21:26:08 UTC | Transfer | [0] 0x000000000000…1b024afa [1] 0x000000000000…f3dc860c data: 0x000000000000000000…699ab75b |
| 0x3fe331…a91355 | 5 mins agoMon, 17 Aug 2026 21:26:08 UTC | Transfer | [0] 0x000000000000…13df9b84 [1] 0x000000000000…1b024afa data: 0x000000000000000000…699ab75b |
| 0xf106cb…fad515 | 6 mins agoMon, 17 Aug 2026 21:25:37 UTC | Transfer | [0] 0x000000000000…4e3010e2 [1] 0x000000000000…b92360c0 data: 0x000000000000000000…e27d7dce |
| 0xf106cb…fad515 | 6 mins agoMon, 17 Aug 2026 21:25:37 UTC | Transfer | [0] 0x000000000000…20cbbe5f [1] 0x000000000000…4e3010e2 data: 0x000000000000000000…e27d7dce |
| 0xf106cb…fad515 | 6 mins agoMon, 17 Aug 2026 21:25:37 UTC | Transfer | [0] 0x000000000000…13df9b84 [1] 0x000000000000…20cbbe5f data: 0x000000000000000000…e27d7dce |
| 0x5bb2a7…31452d | 7 mins agoMon, 17 Aug 2026 21:24:40 UTC | Transfer | [0] 0x000000000000…96e88ec9 [1] 0x000000000000…13df9b84 data: 0x000000000000000000…8696a800 |
| 0x5bb2a7…31452d | 7 mins agoMon, 17 Aug 2026 21:24:40 UTC | Approval | [0] 0x000000000000…96e88ec9 [1] 0x000000000000…72c22734 data: 0x000000000000000000…8696a800 |
| 0xaadb95…bb8992 | 8 mins agoMon, 17 Aug 2026 21:23:34 UTC | Transfer | [0] 0x000000000000…13df9b84 [1] 0x000000000000…f681f298 data: 0x000000000000000000…d3f31ca3 |
| 0x2bee05…0a87df | 8 mins agoMon, 17 Aug 2026 21:23:23 UTC | Transfer | [0] 0x000000000000…4c832828 [1] 0x000000000000…13df9b84 data: 0x000000000000000000…6dc2058c |