ELYBIRDS

Deploy on BNB Chain

Deploy page. You sign in your OKX wallet. Muse never signs or deploys.

Locked specs (do not change)

Name / SymbolElybirds / ELYB
ChainBNB Smart Chain (56)
Supply7,777, max 10 per wallet, treasury 0
Price1st mint FREE per wallet, next mints 0.0005 BNB fixed
Random mintRANDOM tokenIds: minting draws a random unminted tokenId (lazy Fisher-Yates, block data + minter seed). Never sequential, never twice, never above 7,777. Traits stay deterministic per tokenId.
Agent ID gateBinance Agent ID required to mint (registry 0x60B9262456dE011F7d15a54CdD8c48bAaa8B022F). Owner is NOT exempt on public mint. Gate is mint-only, never on transfers/trading.
Royalty1% FIXED (EIP-2981, receiver = owner). No setter exists, royalty cannot be changed.
RevenueNO payout wallet. Mint money accumulates in the contract. Owner claims later with withdraw() (owner panel below).
ArtFully on-chain. 12 AI color-story images reproduced by per-story median-cut palette clustering (K=48 colors/story, mean error 6.27/255 vs the AI image). Cluster index maps live in two data contracts (ElybirdsArtA stories 0-5, ElybirdsArtB stories 6-11); the main contract renders one SVG <path> per cluster. No IPFS, no external URLs. 8,400 constrained combos, all 7,777 tokens unique, 0 neon, gold beak, eyes in family.
ConstructorTwo arguments: the ElybirdsArtA and ElybirdsArtB addresses (this page deploys both data contracts first, then passes their addresses). Deployer = owner = royalty receiver.
Deploy order1) ElybirdsArtA, 2) ElybirdsArtB, 3) Elybirds(artA, artB). One button below does all three in order (3 wallet approvals). Do NOT deploy Elybirds on its own: it needs the art addresses.

Step 1 - Wallet library

Press "Load wallet library" first (needs internet for the ethers CDN).

Step 2 - Connect OKX wallet

Wallet: not connected
Chain: unknown

On connect this page AUTOMATICALLY switches your wallet to BNB Smart Chain (56). If the switch fails, switch manually in OKX before deploying.

Step 3 - Deploy (3 contracts, in order)

Owner will be the connected wallet: connect first

One button deploys all three, in order, each needing your approval in OKX: 1) ElybirdsArtA (stories 0-5, ~21,238 bytes), 2) ElybirdsArtB (stories 6-11, ~22,732 bytes), 3) Elybirds with constructor args (artA address, artB address, ~16,276 bytes). Deployment cost is gas only. After deploy, open the mint from the owner panel below, then verify on BscScan (see Verify section).

Not deployed yet.

ArtA: -
ArtB: -
Elybirds: -
Constructor args for Elybirds verify (copy to BscScan): -

Verify on BscScan (after deploy)

Compiler: solc 0.8.28, Optimizer: enabled, runs 200, viaIR: true, License: MIT.
Verification method: Standard JSON Input - upload the matching file from verify/ for each contract.
ElybirdsArtA: file ElybirdsArtA.sol, verify JSON verify/verify-input-elybirds-arta.json, constructor args: NONE.
ElybirdsArtB: file ElybirdsArtB.sol, verify JSON verify/verify-input-elybirds-artb.json, constructor args: NONE.
Elybirds: file Elybirds.sol, verify JSON verify/verify-input-elybirds.json, constructor args: the two art addresses, ABI-encoded (shown as "Constructor args" above after deploy; copy that hex into BscScan's constructor-arguments field).
Each verify JSON was checked against the local bytecode (creation + runtime FULL identical).