// 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 | ||||
| Transaction Hash | Method ? | Block | Age | From | To | Amount | Txn Fee ? | ||
|---|---|---|---|---|---|---|---|---|---|
| 0xeb4f72…4876da | Approve | 38,221,500 | 1 day agoSun, 16 Aug 2026 19:19:31 UTC | 0x5616…a741 | IN | HODL | $0.000 ETH | 0.00000095 | |
| 0x02032d…d899d4 | Approve | 37,811,498 | 1 day agoSun, 16 Aug 2026 07:53:29 UTC | 0x38f5…aa90 | IN | HODL | $0.000 ETH | 0.00000108 | |
| 0x8074c5…f0f52d | Approve | 37,446,128 | 2 days agoSat, 15 Aug 2026 21:42:21 UTC | 0x1c3f…70ac | IN | HODL | $0.000 ETH | 0.00000131 | |
| 0x43ca12…98e3f3 | Approve | 37,446,128 | 2 days agoSat, 15 Aug 2026 21:42:21 UTC | 0x120c…196b | IN | HODL | $0.000 ETH | 0.00000131 | |
| 0x170d03…8905ae | Approve | 37,446,128 | 2 days agoSat, 15 Aug 2026 21:42:21 UTC | 0xe7cb…fe1f | IN | HODL | $0.000 ETH | 0.00000131 | |
| 0x315d25…ddca1e | Approve | 37,446,128 | 2 days agoSat, 15 Aug 2026 21:42:21 UTC | 0x0823…2292 | IN | HODL | $0.000 ETH | 0.00000131 | |
| 0x1369f6…8fcb83 | Approve | 37,446,065 | 2 days agoSat, 15 Aug 2026 21:42:15 UTC | 0x120c…196b | IN | HODL | $0.000 ETH | 0.00000129 | |
| 0x950c85…d49485 | Approve | 37,446,065 | 2 days agoSat, 15 Aug 2026 21:42:15 UTC | 0x1c3f…70ac | IN | HODL | $0.000 ETH | 0.00000129 | |
| 0x96462d…5f0283 | Approve | 37,446,065 | 2 days agoSat, 15 Aug 2026 21:42:15 UTC | 0x0823…2292 | IN | HODL | $0.000 ETH | 0.00000129 | |
| 0x9dac90…57f103 | Approve | 37,446,065 | 2 days agoSat, 15 Aug 2026 21:42:15 UTC | 0xe7cb…fe1f | IN | HODL | $0.000 ETH | 0.00000129 | |
| 0xea88ba…8c5157 | Approve | 37,422,706 | 2 days agoSat, 15 Aug 2026 21:03:12 UTC | 0x50c1…0a0c | IN | HODL | $0.000 ETH | 0.00000133 | |
| 0x610499…d788b9 | Approve | 37,421,392 | 2 days agoSat, 15 Aug 2026 21:00:59 UTC | 0x14e3…7f92 | IN | HODL | $0.000 ETH | 0.00000133 | |
| 0x77e760…4b4310 | Approve | 37,421,392 | 2 days agoSat, 15 Aug 2026 21:00:59 UTC | 0xd77b…2b8a | IN | HODL | $0.000 ETH | 0.00000133 | |
| 0x65e366…d8eba0 | Approve | 37,421,392 | 2 days agoSat, 15 Aug 2026 21:00:59 UTC | 0x5082…13d6 | IN | HODL | $0.000 ETH | 0.00000133 | |
| 0xece2ce…3c996d | Approve | 37,420,972 | 2 days agoSat, 15 Aug 2026 21:00:17 UTC | 0x0522…6718 | IN | HODL | $0.000 ETH | 0.00000131 | |
| 0xa4ca7b…4e705c | Approve | 37,420,850 | 2 days agoSat, 15 Aug 2026 21:00:05 UTC | 0xb2bd…3c4a | IN | HODL | $0.000 ETH | 0.00000132 | |
| 0x6845d6…599710 | Approve | 37,420,390 | 2 days agoSat, 15 Aug 2026 20:59:18 UTC | 0x41ff…6401 | IN | HODL | $0.000 ETH | 0.00000132 | |
| 0x9e3ee8…633007 | Approve | 37,419,915 | 2 days agoSat, 15 Aug 2026 20:58:30 UTC | 0xb20e…0280 | IN | HODL | $0.000 ETH | 0.00000133 | |
| 0xb131b6…74a0fc | Approve | 37,419,493 | 2 days agoSat, 15 Aug 2026 20:57:49 UTC | 0x6078…58b2 | IN | HODL | $0.000 ETH | 0.00000130 | |
| 0x4c06f8…2a8bd1 | Approve | 37,419,493 | 2 days agoSat, 15 Aug 2026 20:57:49 UTC | 0x4746…eb78 | IN | HODL | $0.000 ETH | 0.00000130 | |
| 0x4bb22e…2e5feb | Approve | 37,419,493 | 2 days agoSat, 15 Aug 2026 20:57:49 UTC | 0xcea0…cc2e | IN | HODL | $0.000 ETH | 0.00000130 | |
| 0xb2933e…1e3343 | Approve | 37,419,493 | 2 days agoSat, 15 Aug 2026 20:57:49 UTC | 0xa0ed…ff85 | IN | HODL | $0.000 ETH | 0.00000130 | |
| 0xa10fce…d88f7e | Approve | 37,419,483 | 2 days agoSat, 15 Aug 2026 20:57:48 UTC | 0xed87…7c61 | IN | HODL | $0.000 ETH | 0.00000082 | |
| 0x3dd94f…77486b | Approve | 37,419,233 | 2 days agoSat, 15 Aug 2026 20:57:23 UTC | 0xdda8…22f5 | IN | HODL | $0.000 ETH | 0.00000130 | |
| 0x500178…b5f427 | Approve | 37,419,233 | 2 days agoSat, 15 Aug 2026 20:57:23 UTC | 0x0050…d47c | IN | HODL | $0.000 ETH | 0.00000130 |
| Transaction Hash | Method | Block | Age | From | To | Type | Item | ||
|---|---|---|---|---|---|---|---|---|---|
| no NFT transfers for this address yet | |||||||||
| Txn Hash | Age | Event | Topics / Data |
|---|---|---|---|
| 0x8a7b9d…efc66e | 1 day agoSun, 16 Aug 2026 19:19:33 UTC | Transfer | [0] 0x000000000000…1b024afa [1] 0x000000000000…50925eb9 data: 0x000000000000000000…9fe60713 |
| 0x8a7b9d…efc66e | 1 day agoSun, 16 Aug 2026 19:19:33 UTC | Transfer | [0] 0x000000000000…f3b5a741 [1] 0x000000000000…1b024afa data: 0x000000000000000000…9fe60713 |
| 0x8a7b9d…efc66e | 1 day agoSun, 16 Aug 2026 19:19:33 UTC | Transfer | [0] 0x000000000000…f3b5a741 [1] 0x000000000000…10d09799 data: 0x000000000000000000…f8b39583 |
| 0xeb4f72…4876da | 1 day agoSun, 16 Aug 2026 19:19:31 UTC | Approval | [0] 0x000000000000…f3b5a741 [1] 0x000000000000…f3dc860c data: 0x000000000000000000…98999c96 |
| 0x6ceff1…aba661 | 1 day agoSun, 16 Aug 2026 19:00:52 UTC | Transfer | [0] 0x000000000000…43e40951 [1] 0x000000000000…7290afa9 data: 0x000000000000000000…b4e50f11 |
| 0x54018c…69a632 | 1 day agoSun, 16 Aug 2026 19:00:52 UTC | Transfer | [0] 0x000000000000…43e40951 [1] 0x000000000000…f3b5a741 data: 0x000000000000000000…eac94942 |
| 0xbc2dd0…237938 | 1 day agoSun, 16 Aug 2026 07:53:57 UTC | Transfer | [0] 0x000000000000…bb27aa90 [1] 0x000000000000…50925eb9 data: 0x000000000000000000…5328d380 |
| 0x02032d…d899d4 | 1 day agoSun, 16 Aug 2026 07:53:29 UTC | Approval | [0] 0x000000000000…bb27aa90 [1] 0x000000000000…72c22734 data: 0xffffffffffffffffff…ffffffff |
| 0x883fc8…72d59a | 2 days agoSat, 15 Aug 2026 22:17:44 UTC | Transfer | [0] 0x000000000000…ec4fff4f [1] 0x000000000000…50925eb9 data: 0x000000000000000000…b294a2a5 |
| 0x883fc8…72d59a | 2 days agoSat, 15 Aug 2026 22:17:44 UTC | Approval | [0] 0x000000000000…ec4fff4f [1] 0x000000000000…72c22734 data: 0x000000000000000000…b294a2a5 |
| 0x883fc8…72d59a | 2 days agoSat, 15 Aug 2026 22:17:44 UTC | Transfer | [0] 0x000000000000…4b8e27a2 [1] 0x000000000000…ec4fff4f data: 0x000000000000000000…b294a2a5 |
| 0x883fc8…72d59a | 2 days agoSat, 15 Aug 2026 22:17:44 UTC | Approval | [0] 0x000000000000…4b8e27a2 [1] 0x000000000000…f1c315be data: 0x000000000000000000…b294a2a5 |
| 0x15d3a4…76ff92 | 2 days agoSat, 15 Aug 2026 22:04:00 UTC | Transfer | [0] 0x000000000000…f6d1178d [1] 0x000000000000…50925eb9 data: 0x000000000000000000…71a72f4f |
| 0xb32e8a…69439c | 2 days agoSat, 15 Aug 2026 22:03:51 UTC | Transfer | [0] 0x000000000000…50925eb9 [1] 0x000000000000…f6d1178d data: 0x000000000000000000…71a72f4f |
| 0xfb53e4…a417ef | 2 days agoSat, 15 Aug 2026 21:42:21 UTC | Transfer | [0] 0x000000000000…0787196b [1] 0x000000000000…50925eb9 data: 0x000000000000000000…9b3d7b4c |
| 0x4c6a76…6e356b | 2 days agoSat, 15 Aug 2026 21:42:21 UTC | Transfer | [0] 0x000000000000…aa3670ac [1] 0x000000000000…50925eb9 data: 0x000000000000000000…2b4f5be9 |
| 0xf412dd…adb275 | 2 days agoSat, 15 Aug 2026 21:42:21 UTC | Transfer | [0] 0x000000000000…0705fe1f [1] 0x000000000000…50925eb9 data: 0x000000000000000000…29e5d16b |
| 0x170d03…8905ae | 2 days agoSat, 15 Aug 2026 21:42:21 UTC | Approval | [0] 0x000000000000…0705fe1f [1] 0x000000000000…262c40dc data: 0x000000000000000000…29e5d16b |
| 0x8074c5…f0f52d | 2 days agoSat, 15 Aug 2026 21:42:21 UTC | Approval | [0] 0x000000000000…aa3670ac [1] 0x000000000000…262c40dc data: 0x000000000000000000…2b4f5be9 |
| 0x43ca12…98e3f3 | 2 days agoSat, 15 Aug 2026 21:42:21 UTC | Approval | [0] 0x000000000000…0787196b [1] 0x000000000000…262c40dc data: 0x000000000000000000…9b3d7b4c |
| 0x9951de…cca9a9 | 2 days agoSat, 15 Aug 2026 21:42:21 UTC | Transfer | [0] 0x000000000000…c0992292 [1] 0x000000000000…50925eb9 data: 0x000000000000000000…a4808407 |
| 0x315d25…ddca1e | 2 days agoSat, 15 Aug 2026 21:42:21 UTC | Approval | [0] 0x000000000000…c0992292 [1] 0x000000000000…262c40dc data: 0x000000000000000000…a4808407 |
| 0x3f3356…4af2dd | 2 days agoSat, 15 Aug 2026 21:42:15 UTC | Transfer | [0] 0x000000000000…0705fe1f [1] 0x000000000000…50925eb9 data: 0x000000000000000000…29e5d16a |
| 0xfe6500…77719e | 2 days agoSat, 15 Aug 2026 21:42:15 UTC | Transfer | [0] 0x000000000000…0787196b [1] 0x000000000000…50925eb9 data: 0x000000000000000000…9b3d7b4c |
| 0x9dac90…57f103 | 2 days agoSat, 15 Aug 2026 21:42:15 UTC | Approval | [0] 0x000000000000…0705fe1f [1] 0x000000000000…262c40dc data: 0x000000000000000000…29e5d16a |
| Type | Age | Block | Details |
|---|---|---|---|
| no cross-chain L1↔L2 transactions for this address | |||
| Transaction Hash | Method | Block | Age | From | To | Amount | Token | ||
|---|---|---|---|---|---|---|---|---|---|
| no token transfers for this address yet | |||||||||
| Block | Age | Parent Transaction Hash | Type | Method | From | To | Value | |
|---|---|---|---|---|---|---|---|---|
| 37,412,126 | 2 days agoSat, 15 Aug 2026 20:45:29 UTC | 0xeee809…63525f | CREATE2 | launch | 0x626c…b3d4 | IN | 0x03a4…9fe3 | 0 ETH |