// Null move dynamic reduction based on depth and value
Depth R = 3 * ONE_PLY
+ depth / 4
- + (abs(beta) < VALUE_KNOWN_WIN ? int(eval - beta) / PawnValueMg * ONE_PLY
- : DEPTH_ZERO);
+ + std::min(int(eval - beta) / PawnValueMg, 3) * ONE_PLY;
pos.do_null_move(st);
(ss+1)->skipNullMove = true;