Issuance

Supply Summary

  • Native genesis issuance: 3,900,000,000 MAZZE

  • Mining emission target (unchanged schedule): 2,500,000,000 MAZZE

  • Theoretical native upper bound: 6,400,000,000 MAZZE

  • 6.4B is a theoretical long-term upper bound, not present-day circulating supply.

Explicit Supply Logic

At epoch t, native issued supply follows:

native_total_issued(t) = genesis_issued + mined_to_date(t) - burnt_to_date(t)

Where:

  • genesis_issued = 3,900,000,000

  • mined_to_date(t) follows the halving schedule and is bounded by the mining target in configuration.

  • burnt_to_date(t) includes MIP-1559 burns and other protocol burn paths.

Codebase Constants

Native supply and emission parameters are defined in crates/mazzecore/parameters/src/lib.rs:

  • GENESIS_TOKEN_COUNT_IN_MAZZE = 3,900,000,000

  • MINING_SUPPLY_TARGET_IN_MAZZE = 2,500,000,000

  • MAX_SUPPLY_TOKEN_COUNT_IN_MAZZE = 6,400,000,000

  • INITIAL_BASE_MINING_REWARD_IN_UMAZZE = 4,000,000 (4 MAZZE)

  • HALVING_INTERVAL_IN_BLOCKS = 312,500,000

Mining Reward Schedule

  • Initial base mining reward: 4,000,000 uMAZZE (4 MAZZE) per block.

  • Halving interval: 312,500,000 blocks.

  • Reward is halved by integer division each interval until it reaches zero.

Burn Interaction

Realized supply can stay below the theoretical curve because burn is active:

  • MIP-1559 burn updates in execution (burn_by_mip1559).

  • Net epoch issuance adjustment in reward settlement.

  • Additional burn paths during execution.

Last updated

Was this helpful?