Web3 doesn’t need flashy — it needs functional