12     return hasCheckmateMove<BLACK>(depth, best_move, proof_pieces);
 
   14     return hasCheckmateMove<WHITE>(
depth, best_move, proof_pieces);
 
   21   if (state->turn() == 
BLACK)
 
   22     return hasCheckmateMove<BLACK>(depth, best_move);
 
   24     return hasCheckmateMove<WHITE>(
depth, best_move);
 
   31   if (state->turn() == 
BLACK)
 
   32     return hasCheckmateWithGuide<BLACK>(depth, guide, proof_pieces);
 
   34     return hasCheckmateWithGuide<WHITE>(
depth, guide, proof_pieces);
 
   41   if (state->turn() == 
BLACK)
 
   42     return hasEscapeMove<BLACK>(last_move, depth);
 
   44     return hasEscapeMove<WHITE>(last_move, 
depth);
 
   52   if (state->turn() == 
BLACK)
 
   53     return hasEscapeByMove<WHITE>(next_move, depth, check_move, proof_pieces);
 
   55     return hasEscapeByMove<BLACK>(next_move, 
depth, check_move, proof_pieces);
 
   62   if (state->turn() == 
BLACK)
 
   63     return hasEscapeByMove<WHITE>(next_move, depth);
 
   65     return hasEscapeByMove<BLACK>(next_move, 
depth);