# M09-L01 — Exercises

1. **Core:** Implement `Reentrancy` without copying reference code. Demonstrate: Attack test fails on fixed implementation.
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 reentrancy on correctness, gas/performance, and operational complexity.

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