+ // Draw by insufficient material (trivial draws like KK, KBK and KNK)
+ if ( !pos.pieces(PAWN)
+ && pos.non_pawn_material(WHITE) + pos.non_pawn_material(BLACK) <= BishopValueMg)
+ {
+ e->evaluationFunction = &EvaluateKmmKm[pos.side_to_move()];
+ return e;
+ }
+
+ // Minor piece endgame with at least one minor piece per side and
+ // no pawns. Note that the case KmmK is already handled by KXK.