+ else if (nullDrivenIID)
+ {
+ // The null move failed low due to a suspicious capture. Perhaps we
+ // are facing a null capture artifact due to the side to move change
+ // and this is a cut-node. So it's a good time to search for a ttMove.
+ Move tm = ss[ply].threatMove;
+
+ assert(tm != MOVE_NONE);
+
+ search(pos, ss, beta, Min(depth/2, depth-3*OnePly), ply, false, threadID);
+ ttMove = ss[ply].pv[ply];
+ ss[ply].threatMove = tm;
+ }