object contracts
11
deployed by accounts
protocol modules
5
native, not deployed bytecode
verified sources
9
matched against on-chain hash
standards
GIF-721 / 1155
plus GIF-165 and GIF-2981
GIFCATS
GIF-721 · 48 supply · 26 owners
| address | 0x12dc69ececfc0798cf81e03f19757e7ac48d54fb |
|---|---|
| creator | dither.gif |
| deployed | block #655,211 2026-02-26 11:38:54 UTC |
| source | verified0x8c6e52a64637b0a82b73ff74601627a3397a9a14 |
| royalty | 2.5% enforced by the market module |
| lifetime volume | 8,548 GIF |
| floor | 19.58 GIF |
| abi | totalSupply() -> u32 ownerOf(id: u32) -> address objectOf(id: u32) -> bytes traitsOf(id: u32) -> (string, string)[] transfer(to: address, id: u32) burn(id: u32) royaltyInfo(id: u32, price: u128) -> (address, u128) |
Source verification compares a rebuilt artifact against the code hash stored at the contract address. Unverified contracts still work, you just have to trust the bytes.
| module | address | responsibility | upgradeable |
|---|---|---|---|
| market | gif1qmarket000000000000000… | listings, bids, escrow and royalty settlement | governed |
| objects | gif1qobjects00000000000000… | the object trie, frame storage and root commitments | frozen |
| bridge | gif1qbridge000000000000000… | lock and release of objects mirrored to other chains | governed |
| staking | gif1qstaking00000000000000… | sequencer bonds and slashing for missed epochs | governed |
| treasury | gif1qtreasury0000000000000… | fee sink, funds indexer grants and public goods | governed |
Modules live at reserved addresses on gifchain-mainnet-1 and are part of the node binary. The object module is frozen: changing how objects are stored would invalidate every historical object root.