private boolean setCursorToNextGoodMove() {
SGFNodeIterator i = game.kifuLastMove().iterator();
if (i.next(true) != null) {
i.firstVariant(true);
do {
SGFNode node = i.current();
if ((node.bits & SGFNode.GOOD_MOVE) != 0) {
return setCursor(node);
}
} while (i.nextVariant(true) != null);
// no good moves found, set cursor to any move