# M02-L05 — Exercises

1. **Core:** Implement `Nonce and replay protection` without copying reference code. Demonstrate: Duplicate nonce or wrong chain rejected.
2. **Edge case:** Find a boundary condition and add a regression test that fails before the fix and passes after.
3. **Reliability:** Inject a duplicate, timeout, revert, or restart and explain the invariant maintained.
4. **Advanced:** Compare two designs for nonce and replay protection on correctness, gas/performance, and operational complexity.

**Done when:** tests and outputs are reproducible, no secrets are present, and trade-offs are documented.
