A live coding session for Advent of Code 2025 Day 5, written in Rust. The session begins with a recap of Day 4 optimizations, showing how swapping Rust's default hasher for FxHashSet cuts runtime from 50ms to 25ms, and exploring an ndarray-based convolution approach that runs in 4ms as a stepping stone toward compute shaders. Day 5 involves parsing ingredient ID ranges and checking freshness. Part 1 uses the nom parser combinator library to parse ranges and ingredient IDs, then filters with short-circuit evaluation. Part 2 requires merging overlapping ranges to count all fresh IDs — the session explores several Rust crates (merged_range, range_set, range_map), discusses how to evaluate open source library quality on crates.io, and ultimately lands on range_map for its documentation, activity, and adoption by known projects.