+ return Phase(((npm - EndgameLimit) * 128) / (MidgameLimit - EndgameLimit));
+}
+
+inline bool Position::move_is_deep_pawn_push(Move m) const {
+
+ Color c = side_to_move();
+ return piece_on(move_from(m)) == pawn_of_color(c)
+ && relative_rank(c, move_to(m)) > RANK_4;