- && select<Next>([&](){return move != refutations[0]
- && move != refutations[1]
- && move != refutations[2];}))
- return move;
+ && select<Next>([&](){return *cur != refutations[0].move
+ && *cur != refutations[1].move
+ && *cur != refutations[2].move;}))
+ return *(cur - 1);