fn count<T>(
    input: &str,
    on: fn(_: &mut T),
    off: fn(_: &mut T),
    toggle: fn(_: &mut T)
) -> usize where
    Grid<T>: GridCount,
    T: Default,
    T: Copy