if ( !PvNode
&& depth < 4 * ONE_PLY
&& eval + razor_margin(depth) <= alpha
- && ttMove == MOVE_NONE
- && !pos.pawn_on_7th(pos.side_to_move()))
+ && ttMove == MOVE_NONE)
{
if ( depth <= ONE_PLY
&& eval + razor_margin(3 * ONE_PLY) <= alpha)
[pos.piece_on(to_sq(move))][to_sq(move)] <= VALUE_ZERO))
ss->reduction += ONE_PLY;
- if ( move == countermove
- || ( History[pos.piece_on(to_sq(move))][to_sq(move)] > VALUE_ZERO
+ if ( History[pos.piece_on(to_sq(move))][to_sq(move)] > VALUE_ZERO
&& CounterMovesHistory[pos.piece_on(prevMoveSq)][prevMoveSq]
- [pos.piece_on(to_sq(move))][to_sq(move)] > VALUE_ZERO))
+ [pos.piece_on(to_sq(move))][to_sq(move)] > VALUE_ZERO)
ss->reduction = std::max(DEPTH_ZERO, ss->reduction - ONE_PLY);
// Decrease reduction for moves that escape a capture