pub type CollectedMoves<T> = Vec<Result<(<T as Game>::Move, isize), GameSolveError<T>>>;
struct CollectedMoves<T> { /* private fields */ }