* "score" is also evaluated at this point. scores can be empty and is frequently
* sparse; it's generally only really useful for history (we obviously don't know
* much about how the score will * move during e.g. a PV, except that a mate/TB
* "score" is also evaluated at this point. scores can be empty and is frequently
* sparse; it's generally only really useful for history (we obviously don't know
* much about how the score will * move during e.g. a PV, except that a mate/TB
-/** @type {?number} @private */
+/** @type {?number} @private
+ *
+ * The highlighted/used/shown move in current_display_line.pv, in terms of absolute index
+ * (not relative to e.g. the start FEN).
+ */
let display_line = display_lines[line_num];
let pv = display_line.pv;
let halfmove_num = find_halfmove_num(display_line.start_fen) + 2; // From two, for simplicity.
let display_line = display_lines[line_num];
let pv = display_line.pv;
let halfmove_num = find_halfmove_num(display_line.start_fen) + 2; // From two, for simplicity.