Ah, grid-based puzzles, always pretty straightforward to visualize. I spent most of the time writing some (hopefully) reusable grid functions this time.