-record(game, { board :: board:board_bb(), turn :: color:color(), history :: list(move:move()), status :: game:status(), ply :: integer(), white_king_castle :: boolean(), white_queen_castle :: boolean(), black_king_castle :: boolean(), black_queen_castle :: boolean(), en_passant :: gleam@option:option(position:position()) }).