In your method, how do you find the shortest routine to win if there is indefinite checking/chasing involved? How many moves do you count those? Not to reveal your whole method, do you mind share some thoughts on this specific question as it does bother me a lot.