-record(game, { board :: board:board_bb(), turn :: color:color(), history :: list(move:move()), status :: gleam@option:option(game:status()), ply :: integer(), fifty_move_rule :: integer(), white_kingside_castle :: castle_rights:castle_rights(), white_queenside_castle :: castle_rights:castle_rights(), black_kingside_castle :: castle_rights:castle_rights(), black_queenside_castle :: castle_rights:castle_rights(), en_passant :: gleam@option:option(position:position()) }).