YCE — two distinct tokens, one symbol
The YouthChain ecosystem uses the symbolYCE for two distinct value primitives.
Both have 18 decimals and the user-facing UI doesn’t always make the boundary obvious,
which causes recurring confusion. Read this section before doing any wallet work.
Native YCE (gas token)
- The ledger account balance, used to pay transaction fees.
- Returned by
eth_getBalance(addr). - Wallets like MetaMask display this as the network’s native balance.
- Genesis allocation (testnet):
- 1,000,000 YCE each to test accounts
0x0ffb…,0xe18d…,0xd1e5… - 10,000 YCE each to the four validator addresses
- 100,000 YCE to the faucet/oracle operator wallet
0x1a64…
- 1,000,000 YCE each to test accounts
- The faucet credits 0.1 native YCE per request (sufficient for ~200 contract calls at the current 1 gwei fee).
YCE ERC-20 token
- The
YCETokencontract on the live testnet:0x6a2247af143536d3ce0b9bf86a27c9b366e2f9ed(re-deployed deterministically viacontracts/script/deploy_full.sh). - Initial mint: 1,000,000,000 YCE to the deployer (
0xd1e5…), used to seed the AMM pool, staking jars, and faucet wallet. - Returned by
YCEToken.balanceOf(addr). - Distributed via:
- Faucet (
11,000YCE per request) - Engagement-to-token conversion via the AMM (swap YCR → YCE)
- Validator staking returns
- Faucet (
Fee split
The base fee follows an EIP-1559-style dynamic curve (±12.5% per block targeting 50% fullness, 1 gwei floor) but is used as a dynamic minimum gas price rather than a burned base fee. The gas actually paid (gas_used × gas_price, in native YCE) is split three
ways at block production time — a fixed split, not Ethereum’s burn-the-base-fee model:
This creates a deflationary pressure proportional to activity, while keeping validators
paid without needing inflation. No transaction is gasless — server-side helpers
(
/api/mobile/faucet, /api/mobile/claim) exist purely as testnet UX fallbacks when
a user’s wallet refuses to sign; on mainnet, the user always pays their own fee.
Staking Jars
StakingJars is a multi-pool staking contract. Each pool (“jar”) has an opinionated
theme (e.g., “creators”, “curators”, “validators”). Stakers deposit YCE into a jar and
receive a pro-rata share of rewards distributed to that jar.
Reward weight inside a jar is stake × ES(staker) — so a Diamond-tier user staking
1000 YCE earns more than a newly-registered wallet staking the same 1000 YCE. This is
the main mechanism that couples engagement to yield.
Jars are funded by:
- The Treasury slice of the fee split.
- Direct donations from any address.
- Validator rewards that jar stakers voluntarily recycle.
Validator rewards
Each block, the validator earns a flat block subsidy (BLOCK_REWARD = 1 YCE) plus
50% of the block’s gas fees, credited directly. Higher-stake validators get more
leader slots (the β·ES engagement term is inert on the 4-node testnet), so the block
reward is not engagement-proportional today. Engagement-proportional rewards
(R_i = ES_i / ΣES) are a post-testnet upgrade.
Governance: Quadratic Voting
The DAO treasury is spent viaQuadraticVoting. Voting power is sqrt(stake × ES), so:
- A user with 100 staked YCE + ES 4.0 gets
sqrt(400) = 20votes. - A whale with 10,000 staked YCE + ES 1.0 gets
sqrt(10,000) = 100votes — 5× more, not 100× more.