commit f870e452dd99313c23aa776e2a1caa3a69e69dec
parent 3e7bb9b87ef9b47d8f643dbcae19a64ddbc81dbb
Author: Sebastiano Tronto <sebastiano@tronto.net>
Date: Tue, 5 Aug 2025 09:24:02 +0200
Added solvetests for DRFIN
Diffstat:
6 files changed, 711 insertions(+), 0 deletions(-)
diff --git a/tools/416_solvetest_opt0_DRFIN_UD/scrambles.h b/tools/416_solvetest_opt0_DRFIN_UD/scrambles.h
@@ -0,0 +1,218 @@
+struct {
+ char *scramble;
+ char *solutions;
+} s[] = {
+[0] = {
+ .scramble = "F2 U' L2 U F2 R2 U' R2 D L2 D' R2 U",
+ .solutions =
+ "U' R2 D L2 D' R2 U R2 F2 U' L2 U F2\n"
+},
+[1] = {
+ .scramble = "U' B2 D2 R2 U' R2 L2 U2 B2 R2 D' R2 U2",
+ .solutions =
+ "U2 R2 D R2 B2 U2 R2 L2 U R2 D2 B2 U\n"
+ "D2 L2 D L2 F2 D2 R2 L2 D' L2 U2 F2 D'\n"
+},
+[2] = {
+ .scramble = "U B2 R2 U F2 L2 D B2 D' F2 U F2 L2 F2",
+ .solutions =
+ "F2 R2 F2 U' B2 D F2 D' L2 B2 U' R2 B2 U'\n"
+ "F2 L2 F2 U' F2 D B2 D' L2 F2 U' R2 B2 U'\n"
+},
+[3] = {
+ .scramble = "U B2 D2 L2 U F2 L2 D B2 R2 U F2",
+ .solutions =
+ "F2 U' R2 B2 D' L2 F2 U' L2 D2 B2 U'\n"
+},
+[4] = {
+ .scramble = "U2 F2 U L2 F2 D' F2 R2 D2 R2 D F2 U2",
+ .solutions =
+ "U2 F2 D' R2 D2 R2 F2 D F2 L2 U' F2 U2\n"
+ "B2 D2 B2 U R2 D2 B2 D' R2 F2 D' F2 U2\n"
+ "D2 B2 D' L2 D2 L2 B2 D B2 R2 U' B2 D2\n"
+ "B2 D2 B2 D' L2 U2 F2 U L2 B2 D' B2 D2\n"
+},
+[5] = {
+ .scramble = "U2 R2 F2 D' F2 B2 L2 F2 U' B2 U L2 D2",
+ .solutions =
+ "D2 L2 U' R2 F2 D' F2 B2 L2 F2 U' B2 U2\n"
+ "D2 L2 U' B2 U F2 L2 F2 B2 D F2 R2 U2\n"
+},
+[6] = {
+ .scramble = "B2 U L2 B2 L2 B2 U2 L2 D B2 U R2 D' R2",
+ .solutions =
+ "U2 L2 F2 B2 U' R2 U R2 D' R2 F2 B2 U B2\n"
+ "U2 L2 F2 B2 D' F2 U F2 U' R2 F2 B2 U B2\n"
+ "R2 D R2 U' B2 D' L2 U2 B2 L2 B2 L2 U' B2\n"
+},
+[7] = {
+ .scramble = "D F2 U' F2 U' F2 L2 B2 R2 U' F2 U' F2 R2",
+ .solutions =
+ "F2 U L2 F2 R2 F2 U' B2 U R2 U2 B2 D2 F2\n"
+ "F2 D F2 R2 B2 R2 D' B2 D' R2 U' D' L2 F2\n"
+ "F2 L2 U' F2 L2 D R2 U' B2 U' F2 B2 U F2\n"
+ "F2 L2 D' L2 B2 D F2 U' R2 U' R2 L2 D F2\n"
+ "U R2 L2 U2 R2 F2 D L2 F2 D' L2 U2 R2 B2\n"
+ "U B2 D R2 B2 D R2 U B2 U' L2 B2 L2 B2\n"
+ "R2 U' R2 L2 D F2 B2 U R2 D B2 D' R2 B2\n"
+ "R2 D' F2 B2 D R2 L2 D R2 D B2 D' R2 B2\n"
+ "R2 D F2 B2 U' B2 R2 F2 U' B2 D' R2 D R2\n"
+ "U D2 L2 F2 D L2 F2 D' L2 F2 R2 B2 D2 L2\n"
+ "R2 F2 U F2 U R2 B2 L2 F2 U F2 U F2 D'\n"
+},
+[8] = {
+ .scramble = "R2 L2 U' F2 L2 U' B2 L2 D F2 U' R2 B2",
+ .solutions =
+ "U L2 D' L2 B2 R2 B2 U R2 B2 D L2 F2\n"
+ "B2 R2 F2 D2 F2 D' B2 R2 U B2 U2 L2 F2\n"
+ "R2 L2 U F2 D' B2 D' F2 L2 D' L2 F2 B2\n"
+ "U B2 R2 U F2 D L2 B2 U B2 L2 F2 L2\n"
+ "D L2 B2 U R2 U L2 B2 U B2 L2 F2 L2\n"
+ "L2 F2 R2 U' R2 F2 B2 U R2 U F2 D' L2\n"
+ "L2 F2 R2 D' F2 R2 L2 U F2 D F2 D' L2\n"
+ "B2 R2 U F2 D' L2 B2 U L2 F2 U R2 L2\n"
+},
+[9] = {
+ .scramble = "R2 U2 L2 F2 U' F2 U2 R2 F2 R2 F2 U L2 D",
+ .solutions =
+ "D' L2 U' F2 R2 F2 R2 U2 F2 U F2 L2 U2 R2\n"
+},
+[10] = {
+ .scramble = "F2 B2 D' B2 L2 U F2 D' L2 B2 D' B2 D' R2",
+ .solutions =
+ "R2 D B2 D B2 L2 D F2 U' L2 B2 D F2 B2\n"
+},
+[11] = {
+ .scramble = "U2 B2 U B2 U2 R2 D' F2 D2 F2 R2 D' R2 L2",
+ .solutions =
+ "D B2 L2 U2 L2 D' B2 L2 U2 R2 D F2 U2 F2\n"
+ "D B2 L2 D2 R2 D' F2 R2 D2 R2 D F2 U2 F2\n"
+ "U B2 L2 U2 L2 D' B2 L2 U2 R2 U' B2 U2 B2\n"
+ "U B2 L2 D2 R2 D' F2 R2 D2 R2 U' B2 U2 B2\n"
+ "D B2 L2 U2 L2 U B2 L2 D2 R2 U' B2 D2 B2\n"
+ "D B2 L2 D2 R2 U F2 R2 U2 R2 U' B2 D2 B2\n"
+ "L2 U2 F2 U' F2 D2 R2 U' B2 U2 B2 R2 D R2\n"
+ "L2 U2 F2 D F2 U2 R2 D B2 U2 B2 R2 D R2\n"
+ "L2 U2 F2 D' L2 B2 U2 B2 D L2 U2 F2 D' R2\n"
+ "L2 U2 F2 D' L2 B2 D2 F2 U' R2 D2 B2 U R2\n"
+ "L2 D2 B2 U' B2 U2 R2 U' B2 U2 B2 R2 D R2\n"
+ "L2 D2 B2 D B2 D2 R2 D B2 U2 B2 R2 D R2\n"
+ "L2 D2 B2 D' R2 F2 U2 F2 U' R2 D2 B2 U R2\n"
+ "L2 D2 B2 D' R2 F2 D2 B2 D L2 U2 F2 D' R2\n"
+ "U L2 F2 U2 F2 D' L2 U2 B2 U B2 U2 R2 L2\n"
+ "U L2 F2 U2 F2 D' L2 D2 F2 U F2 D2 R2 L2\n"
+ "U L2 F2 D2 B2 U R2 U2 B2 D' F2 D2 R2 L2\n"
+ "U L2 F2 D2 B2 U R2 D2 F2 D' B2 U2 R2 L2\n"
+ "U' F2 D2 R2 D' F2 U2 F2 R2 U' F2 D2 R2 L2\n"
+ "U' F2 D2 R2 D' F2 D2 B2 L2 U' B2 U2 R2 L2\n"
+ "D F2 U2 R2 U F2 U2 F2 R2 U' F2 D2 R2 L2\n"
+ "D F2 U2 R2 U F2 D2 B2 L2 U' B2 U2 R2 L2\n"
+ "R2 L2 U F2 U2 R2 D B2 U2 F2 L2 D' B2 U2\n"
+ "R2 L2 D R2 F2 U2 B2 U' L2 D2 F2 D B2 U2\n"
+ "R2 L2 D R2 F2 D2 F2 D R2 U2 B2 U' B2 U2\n"
+ "R2 L2 D' F2 D2 R2 U' B2 U2 F2 L2 D' B2 U2\n"
+ "R2 L2 U F2 U2 R2 D B2 D2 B2 R2 D' F2 D2\n"
+ "R2 L2 D R2 F2 U2 B2 U' L2 U2 B2 D F2 D2\n"
+ "R2 L2 D R2 F2 D2 F2 D R2 D2 F2 U' F2 D2\n"
+ "R2 L2 D' F2 D2 R2 U' B2 D2 B2 R2 D' F2 D2\n"
+},
+[12] = {
+ .scramble = "U' B2 L2 U R2 D L2 U2 R2 B2 U F2 D R2 D'",
+ .solutions =
+ "F2 U' L2 B2 D' F2 U2 L2 B2 R2 B2 D' F2 U F2\n"
+ "F2 D' B2 R2 U' F2 D2 R2 F2 L2 F2 U' L2 D F2\n"
+ "U2 L2 D B2 D L2 U' L2 F2 D' R2 U' L2 B2 U\n"
+ "D R2 D' F2 U' B2 R2 U2 L2 D' R2 U' L2 B2 U\n"
+ "D2 R2 D F2 D R2 D' F2 R2 D' B2 D' L2 B2 U\n"
+ "U F2 U' F2 U' B2 R2 U2 L2 D' R2 D' B2 R2 D\n"
+ "U F2 D' L2 U' R2 F2 U2 B2 U' R2 D' B2 R2 D\n"
+ "U F2 D' L2 D' F2 L2 U2 R2 U' F2 U' B2 R2 D\n"
+ "D R2 U' R2 D' B2 R2 U2 L2 D' R2 D' B2 R2 D\n"
+ "D R2 D' F2 D' R2 F2 U2 B2 D' F2 U' B2 R2 D\n"
+ "D2 R2 U L2 U L2 U' L2 F2 D' R2 D' B2 R2 D\n"
+ "D2 R2 U L2 U L2 D' B2 L2 D' F2 U' B2 R2 D\n"
+ "D2 R2 D F2 U F2 D' L2 F2 D' R2 D' B2 R2 D\n"
+ "B2 U' L2 U' F2 U B2 U' L2 D' L2 D F2 R2 D2\n"
+ "B2 D' B2 U' L2 U R2 U' B2 U' L2 D F2 R2 D2\n"
+ "B2 D' B2 U' L2 D B2 U' L2 U' F2 U F2 R2 D2\n"
+},
+[13] = {
+ .scramble = "R2 F2 D2 L2 B2 D B2 R2 B2 R2 U R2 U' R2",
+ .solutions =
+ "F2 L2 D' R2 B2 D' R2 U F2 D2 R2 F2 R2 F2\n"
+ "B2 L2 D' L2 F2 D' L2 U F2 U2 R2 B2 L2 F2\n"
+ "L2 U F2 D' R2 D F2 B2 U' F2 U' L2 U2 B2\n"
+ "L2 D R2 D' B2 D R2 L2 U' R2 D' L2 U2 B2\n"
+ "L2 B2 L2 B2 U' L2 U L2 F2 B2 U' L2 U2 B2\n"
+ "R2 U R2 U' R2 B2 R2 B2 D' B2 L2 D2 F2 R2\n"
+},
+[14] = {
+ .scramble = "U2 F2 U' F2 R2 D R2 U2 F2 U R2 U' R2 D'",
+ .solutions =
+ "R2 U' F2 U' F2 D F2 B2 L2 U R2 D R2 B2\n"
+ "B2 L2 U L2 F2 U' F2 U F2 L2 D' L2 U' B2\n"
+ "R2 D' L2 D' R2 F2 R2 U L2 B2 D' R2 F2 U\n"
+ "U F2 U F2 U' L2 U2 F2 D' F2 L2 D F2 U2\n"
+ "U F2 D R2 D B2 U2 R2 D F2 L2 D F2 U2\n"
+ "D R2 U R2 U' F2 U2 R2 D' R2 F2 U F2 U2\n"
+ "D R2 U R2 D' L2 U2 F2 D' F2 L2 D F2 U2\n"
+ "D R2 D B2 D L2 U2 B2 D R2 F2 U F2 U2\n"
+ "D R2 U R2 U' F2 D2 L2 D' L2 B2 U B2 D2\n"
+},
+[15] = {
+ .scramble = "U' R2 U B2 D' F2 D' B2 D L2 B2 U L2 D' B2",
+ .solutions =
+ "B2 D L2 U' B2 L2 D' B2 D F2 D B2 U' R2 U\n"
+ "B2 D L2 D' R2 B2 U' B2 U L2 D R2 U' F2 D\n"
+},
+[16] = {
+ .scramble = "U L2 U' F2 D2 L2 F2 B2 D' R2 B2 U2 B2 U' F2",
+ .solutions =
+ "B2 D L2 F2 D' R2 F2 U2 B2 U' L2 U R2 U2 B2\n"
+ "L2 B2 U' F2 U' B2 U2 L2 U L2 U' B2 L2 U2 R2\n"
+ "F2 U B2 U' B2 D R2 F2 B2 D' L2 D' F2 U L2\n"
+ "F2 U B2 D' R2 D F2 R2 L2 D' B2 D' L2 D L2\n"
+ "F2 D L2 U' L2 U R2 F2 B2 D' L2 D' F2 U L2\n"
+ "F2 D L2 U' L2 D B2 R2 L2 U' R2 U' L2 D L2\n"
+ "F2 D L2 D' B2 U F2 R2 L2 U' L2 D' F2 U L2\n"
+ "F2 U B2 U2 B2 R2 U' L2 U2 R2 L2 B2 D' L2 U'\n"
+ "F2 U B2 U2 B2 R2 D F2 B2 L2 D2 F2 U L2 U'\n"
+ "F2 U' F2 D2 L2 D' F2 D2 R2 F2 B2 U' R2 B2 U'\n"
+ "F2 U B2 L2 U2 B2 R2 D' B2 D2 F2 L2 D' F2 D'\n"
+ "F2 U B2 L2 D2 F2 L2 D' F2 U2 F2 L2 D' F2 D'\n"
+ "F2 U' F2 U2 R2 U' L2 U2 B2 R2 L2 U' B2 L2 D'\n"
+ "F2 U' F2 D2 L2 U' R2 D2 B2 R2 L2 U' B2 L2 D'\n"
+},
+[17] = {
+ .scramble = "L2 U B2 U2 F2 L2 U' B2 U2 F2 R2 D' B2 U'",
+ .solutions =
+ "U B2 D R2 F2 U2 B2 U L2 F2 U2 B2 U' L2\n"
+ "U B2 D R2 F2 D2 F2 U R2 B2 D2 B2 U' L2\n"
+},
+[18] = {
+ .scramble = "U R2 D' L2 B2 U' R2 U L2 U' R2 B2 D L2",
+ .solutions =
+ "U L2 U F2 U2 F2 R2 U B2 R2 D F2 D2 B2\n"
+ "U F2 L2 D R2 U2 R2 B2 D F2 D B2 U2 B2\n"
+ "U' L2 D' B2 U2 L2 D R2 U F2 B2 D2 R2 B2\n"
+ "U' L2 D' B2 D2 R2 D L2 U F2 B2 U2 R2 B2\n"
+ "D R2 F2 D B2 U2 B2 L2 U F2 D B2 U2 B2\n"
+ "D R2 F2 D B2 L2 D2 F2 R2 U' B2 D' B2 U2\n"
+ "L2 D' B2 R2 U L2 U' R2 U B2 L2 D R2 U'\n"
+ "L2 U' L2 B2 U F2 U' B2 U L2 F2 D B2 D'\n"
+},
+[19] = {
+ .scramble = "U' L2 B2 U R2 L2 U2 L2 D' B2 L2 B2 U L2",
+ .solutions =
+ "D R2 D R2 U2 R2 D R2 B2 L2 F2 R2 U' B2\n"
+ "D R2 D R2 U2 R2 D L2 F2 L2 B2 L2 U' B2\n"
+ "D2 R2 F2 D2 L2 F2 U2 L2 D R2 D' F2 R2 B2\n"
+ "L2 B2 L2 D2 B2 D' R2 D R2 D2 F2 R2 D2 B2\n"
+ "F2 U2 R2 F2 D R2 F2 D R2 F2 D' B2 U' R2\n"
+ "L2 U' B2 L2 B2 D L2 U2 R2 L2 U' B2 L2 U\n"
+ "L2 U' B2 L2 B2 U B2 U2 F2 B2 U' R2 B2 D\n"
+},
+{
+ .scramble = "", /* End-of-list signal */
+}
+};
diff --git a/tools/416_solvetest_opt0_DRFIN_UD/solvetest.c b/tools/416_solvetest_opt0_DRFIN_UD/solvetest.c
@@ -0,0 +1,9 @@
+#define SOLVER "mcoord_DRFIN_UF"
+#define NISSFLAG NISSY_NISSFLAG_NORMAL
+#define MINMOVES 0
+#define MAXMOVES 20
+#define MAXSOLUTIONS 500
+#define OPTIMAL 0
+
+#include "scrambles.h"
+#include "../solvetest.h"
diff --git a/tools/417_solvetest_opt0_DRFIN_RL/scrambles.h b/tools/417_solvetest_opt0_DRFIN_RL/scrambles.h
@@ -0,0 +1,258 @@
+struct {
+ char *scramble;
+ char *solutions;
+} s[] = {
+[0] = {
+ .scramble = "L F2 U2 L' B2 U2 R2 B2 D2 R' F2 U2 F2 U2",
+ .solutions =
+ "U2 F2 D2 F2 R B2 L2 U2 L B2 L F2 D2 F2\n"
+ "L' F2 L' B2 R D2 R U2 R2 F2 U2 F2 L' B2\n"
+ "L' F2 L' B2 L B2 R F2 L2 U2 B2 U2 R' B2\n"
+ "L U2 F2 R2 D2 F2 R B2 D2 L' D2 R2 B2 L2\n"
+ "U2 F2 U2 F2 R D2 B2 R2 U2 B2 L U2 F2 L'\n"
+ "U2 F2 D2 B2 R' U2 B2 L2 U2 F2 L' D2 B2 L'\n"
+ "R B2 U2 R2 F2 U2 L B2 D2 R2 L' B2 L2 U2\n"
+ "R2 L' D2 B2 R2 U2 B2 L D2 F2 R B2 L2 U2\n"
+ "R2 L' D2 B2 L2 D2 F2 L U2 B2 R F2 R2 U2\n"
+ "R' L2 F2 D2 R2 B2 D2 L F2 U2 L B2 L2 U2\n"
+ "L U2 F2 R2 D2 F2 L U2 B2 R' L2 B2 L2 U2\n"
+ "L U2 F2 L2 U2 B2 L D2 F2 R' L2 F2 R2 U2\n"
+ "F2 U2 R D2 B2 R2 U2 B2 L B2 R U2 F2 D2\n"
+},
+[1] = {
+ .scramble = "R D2 U2 R' L2 U2 L B2 R2 D2 B2 U2 B2 U2",
+ .solutions =
+ "L2 F2 R' B2 L F2 B2 L' F2 U2 F2 D2 R2 F2\n"
+ "D2 U2 F2 R2 D2 L' D2 U2 L D2 R F2 U2 R2\n"
+ "F2 R2 B2 D2 L' U2 F2 D2 L' D2 R F2 D2 R2\n"
+ "B2 L2 D2 L F2 B2 L' U2 F2 B2 R F2 U2 R2\n"
+ "U2 B2 U2 B2 D2 R2 B2 L' U2 R L2 D2 U2 R'\n"
+ "D2 F2 U2 F2 U2 R2 B2 L' U2 R L2 D2 U2 R'\n"
+ "U2 L' B2 U2 B2 L D2 B2 L2 D2 B2 L B2 L2\n"
+ "F2 R2 B2 D2 R' F2 D2 B2 R' U2 R B2 U2 L2\n"
+ "B2 U2 L' F2 U2 F2 L D2 L2 D2 B2 L B2 L2\n"
+ "U2 B2 U2 B2 D2 L2 F2 R2 L U2 L' F2 B2 L'\n"
+ "U2 B2 U2 B2 L2 F2 R2 U2 R B2 R' F2 B2 L'\n"
+ "D2 F2 U2 F2 U2 L2 F2 R2 L U2 L' F2 B2 L'\n"
+ "D2 F2 U2 F2 R2 B2 L2 D2 R B2 R' F2 B2 L'\n"
+ "U2 B2 U2 B2 D2 R2 B2 L' U2 R' D2 U2 R L2\n"
+ "D2 F2 U2 F2 U2 R2 B2 L' U2 R' D2 U2 R L2\n"
+ "U2 B2 U2 R F2 B2 R' L2 B2 L D2 L2 B2 U2\n"
+ "U2 B2 U2 R F2 B2 L D2 R' B2 L2 D2 L2 U2\n"
+ "U2 B2 U2 R' L2 F2 B2 R B2 L D2 L2 B2 U2\n"
+ "U2 B2 U2 L D2 U2 L B2 R2 L' U2 R2 B2 U2\n"
+},
+[2] = {
+ .scramble = "L2 D2 L' D2 R U2 B2 L2 U2 B2 L' D2 F2 R' F2",
+ .solutions =
+ "B2 R B2 R2 D2 R' F2 U2 L2 D2 R F2 U2 R' F2\n"
+ "B2 R B2 L2 U2 R' B2 D2 R2 D2 R F2 U2 R' F2\n"
+ "B2 R' D2 L2 F2 R B2 D2 R2 D2 L D2 F2 L' F2\n"
+ "B2 L U2 R2 B2 L' F2 U2 L2 D2 L D2 F2 L' F2\n"
+ "U2 F2 R B2 R2 F2 U2 R U2 R2 B2 L D2 R' B2\n"
+ "U2 F2 R B2 R2 F2 U2 L F2 R2 U2 L B2 L' B2\n"
+ "U2 F2 R B2 L2 B2 D2 L B2 L2 U2 L B2 L' B2\n"
+ "U2 F2 L U2 R2 D2 F2 L D2 R2 F2 R B2 L' B2\n"
+ "U2 F2 L U2 L2 U2 B2 L U2 L2 F2 R B2 L' B2\n"
+ "F2 R D2 R2 D2 B2 L' B2 U2 R2 D2 R B2 L' B2\n"
+ "F2 R D2 L2 U2 F2 L' F2 D2 L2 D2 R B2 L' B2\n"
+ "F2 R F2 D2 L B2 U2 L2 B2 U2 R' D2 L D2 L2\n"
+ "D2 F2 L' U2 L B2 D2 L2 U2 R D2 L' D2 L2 U2\n"
+},
+[3] = {
+ .scramble = "R2 U2 R' U2 L' B2 L2 F2 R2 U2 R D2 B2 R U2",
+ .solutions =
+ "L' D2 R' B2 L D2 R2 D2 F2 R F2 R' F2 L' F2\n"
+ "U2 R2 L U2 B2 L B2 R2 D2 B2 L U2 R U2 R2\n"
+ "U2 R' B2 D2 R' U2 R2 F2 L2 B2 L U2 R U2 R2\n"
+ "U2 R' B2 D2 L' B2 R2 U2 L2 D2 L B2 L U2 R2\n"
+ "U2 L2 B2 R' B2 D2 L D2 L' F2 L2 D2 L U2 R2\n"
+ "U2 L' D2 F2 L' D2 L2 F2 L2 B2 R B2 L U2 R2\n"
+ "B2 R U2 L U2 R' F2 R2 B2 U2 R' F2 L D2 L\n"
+ "B2 L F2 R U2 L' U2 L2 U2 F2 R' D2 R D2 L\n"
+ "B2 L F2 L F2 L' F2 R2 B2 U2 R' F2 L D2 L\n"
+ "U2 R2 F2 R' F2 U2 R B2 R D2 R2 B2 L' D2 L2\n"
+ "U2 R2 F2 L' U2 B2 R D2 L D2 R2 B2 L' D2 L2\n"
+ "U2 R' B2 D2 R' U2 L2 B2 L2 F2 L D2 R D2 L2\n"
+ "U2 R' B2 D2 L' B2 R2 U2 R2 U2 L F2 L D2 L2\n"
+ "U2 L2 B2 R' B2 D2 R F2 R U2 L2 B2 L' D2 L2\n"
+ "U2 L2 B2 R' B2 D2 L D2 L' F2 R2 U2 L D2 L2\n"
+ "U2 L2 B2 L' D2 F2 R U2 L U2 L2 B2 L' D2 L2\n"
+ "U2 L' D2 F2 R U2 R2 B2 U2 R U2 R' L2 D2 L2\n"
+ "D2 L' F2 D2 R2 F2 L' F2 D2 L F2 B2 U2 L' U2\n"
+ "D2 F2 U2 F2 L F2 L2 B2 R' F2 U2 L U2 R' D2\n"
+},
+[4] = {
+ .scramble = "R D2 R' F2 L' F2 D2 U2 R' B2 U2 R2 U2 L2",
+ .solutions =
+ "F2 B2 D2 R F2 R' B2 L2 U2 F2 D2 B2 L2 F2\n"
+ "F2 B2 D2 R F2 R' F2 R2 D2 F2 U2 B2 R2 B2\n"
+ "L2 U2 R2 U2 B2 R D2 U2 F2 L F2 R D2 R'\n"
+ "R2 D2 L' F2 U2 R D2 F2 U2 L2 B2 L D2 L'\n"
+ "L2 U2 R2 U2 B2 L F2 B2 D2 R F2 L B2 L'\n"
+ "L2 U2 L' B2 D2 R U2 B2 D2 R2 B2 L D2 L'\n"
+ "B2 D2 L' D2 U2 B2 L' U2 L' B2 U2 B2 R U2\n"
+},
+[5] = {
+ .scramble = "R2 U2 B2 D2 U2 L F2 R' D2 R2 U2 F2 U2 R",
+ .solutions =
+ "D2 U2 F2 L2 D2 B2 L F2 U2 R D2 R2 L F2\n"
+ "F2 L2 U2 F2 L B2 D2 R D2 L2 F2 B2 L F2\n"
+ "B2 D2 R2 F2 L2 B2 U2 L' U2 F2 L F2 R' F2\n"
+ "B2 R2 D2 F2 D2 U2 L F2 U2 R D2 R2 L F2\n"
+ "U2 B2 R2 F2 B2 D2 R F2 D2 L U2 R L2 B2\n"
+ "D2 F2 L2 U2 R B2 D2 F2 B2 L U2 R L2 B2\n"
+ "F2 R2 U2 B2 R2 L' F2 U2 R D2 L' D2 U2 B2\n"
+ "R D2 B2 R F2 L2 U2 B2 D2 R' D2 U2 F2 R2\n"
+ "R' U2 F2 U2 R2 D2 R F2 L' D2 U2 B2 U2 R2\n"
+ "R' U2 F2 U2 L2 U2 R B2 L' D2 U2 F2 D2 L2\n"
+ "R2 B2 R F2 B2 D2 L' B2 R2 D2 B2 L' B2 U2\n"
+ "L2 F2 R F2 B2 U2 L' F2 L2 D2 B2 L' B2 U2\n"
+ "R2 F2 D2 B2 U2 R B2 R2 F2 L B2 L F2 D2\n"
+ "F2 D2 R2 F2 R2 B2 U2 R' F2 R' U2 R F2 D2\n"
+ "R' D2 B2 D2 R2 U2 L B2 R' B2 D2 L2 D2 U2\n"
+ "R' D2 B2 D2 L2 D2 L F2 R' F2 U2 R2 D2 U2\n"
+},
+[6] = {
+ .scramble = "R' U2 L' F2 D2 R' F2 R' U2 F2 B2 R2 F2",
+ .solutions =
+ "U2 B2 L2 F2 L' B2 D2 R F2 L' U2 B2 R\n"
+ "F2 R2 F2 B2 U2 R F2 R D2 F2 L U2 R\n"
+ "B2 L2 U2 R F2 R D2 U2 B2 R' D2 B2 R\n"
+},
+[7] = {
+ .scramble = "U2 R D2 R' U2 R B2 R2 U2 B2 U2 L' D2 L'",
+ .solutions =
+ "D2 L2 U2 R' D2 R U2 R' F2 L U2 F2 R' U2\n"
+ "L D2 R B2 D2 B2 L2 U2 L' U2 L B2 L' U2\n"
+ "L D2 L U2 B2 U2 R2 B2 R' U2 R D2 R' U2\n"
+},
+[8] = {
+ .scramble = "R B2 D2 R F2 L F2 L2 F2 B2 D2 L2 F2 R'",
+ .solutions =
+ "R F2 L2 D2 F2 B2 L2 F2 L' F2 R' D2 B2 R'\n"
+ "R B2 R2 U2 F2 B2 R2 B2 L' F2 R' D2 B2 R'\n"
+ "R' U2 R' F2 L2 F2 U2 R2 B2 U2 L D2 B2 R'\n"
+ "R' U2 R' B2 R2 F2 D2 L2 F2 U2 L D2 B2 R'\n"
+ "L D2 U2 R2 F2 D2 U2 L U2 R2 L D2 B2 R'\n"
+ "L' B2 U2 R2 D2 U2 R2 U2 L D2 L' D2 B2 R'\n"
+ "L' B2 U2 L2 D2 U2 L2 U2 L D2 L' D2 B2 R'\n"
+ "L' B2 D2 U2 R2 D2 U2 L' U2 R2 L D2 B2 R'\n"
+ "L' B2 D2 R2 D2 U2 R2 D2 L D2 L' D2 B2 R'\n"
+ "L' B2 D2 L2 D2 U2 L2 D2 L D2 L' D2 B2 R'\n"
+ "R' F2 U2 R2 U2 B2 L U2 L F2 R F2 D2 L2\n"
+ "R' B2 D2 L2 D2 F2 L U2 L F2 R F2 D2 L2\n"
+ "R F2 L2 D2 F2 B2 L2 F2 R' D2 R' B2 U2 L'\n"
+ "R F2 B2 L2 D2 F2 B2 L F2 R2 L B2 U2 L'\n"
+ "R B2 R2 U2 F2 B2 R2 B2 R' D2 R' B2 U2 L'\n"
+ "R' U2 F2 R2 F2 B2 R2 F2 L B2 L' B2 U2 L'\n"
+ "R' U2 F2 L2 F2 B2 L2 F2 L B2 L' B2 U2 L'\n"
+ "R' U2 F2 B2 R2 F2 B2 L' F2 R2 L B2 U2 L'\n"
+ "R' U2 B2 R2 F2 B2 R2 B2 L B2 L' B2 U2 L'\n"
+ "R' U2 B2 L2 F2 B2 L2 B2 L B2 L' B2 U2 L'\n"
+ "L U2 R2 F2 D2 U2 R2 U2 L' D2 R' B2 U2 L'\n"
+ "L D2 L2 B2 D2 U2 L2 D2 L' D2 R' B2 U2 L'\n"
+ "L' B2 R' U2 L2 U2 B2 L2 U2 F2 L B2 U2 L'\n"
+ "L' B2 R' D2 R2 U2 F2 R2 D2 F2 L B2 U2 L'\n"
+ "R U2 R2 F2 B2 R B2 L U2 L' U2 R2 B2 U2\n"
+ "R' U2 B2 R2 F2 L' B2 L B2 D2 L D2 R2 U2\n"
+},
+[9] = {
+ .scramble = "R' B2 D2 L D2 F2 R D2 F2 L' U2 R2 U2 R",
+ .solutions =
+ "R F2 D2 R B2 R' B2 R' B2 L2 B2 R' F2 B2\n"
+ "R F2 D2 L U2 R' U2 R' U2 L2 U2 L' F2 B2\n"
+ "R F2 D2 L U2 R' U2 L' B2 L2 B2 R' F2 B2\n"
+ "L D2 B2 R U2 L B2 R2 F2 R' F2 R F2 B2\n"
+ "L D2 B2 R U2 L' B2 R' B2 L2 B2 R' F2 B2\n"
+ "L D2 B2 L' F2 R2 B2 L D2 L F2 R F2 B2\n"
+ "R' U2 R2 U2 L F2 D2 R' F2 D2 L' D2 B2 R\n"
+ "L F2 L' F2 R' F2 U2 L2 D2 U2 F2 R' B2 L\n"
+ "L' B2 L2 F2 R F2 D2 L' U2 F2 L' F2 D2 L\n"
+},
+[10] = {
+ .scramble = "R2 D2 R B2 L U2 L2 D2 U2 R' U2 B2 R2",
+ .solutions =
+ "R2 B2 U2 R D2 U2 L2 U2 L' B2 R' D2 R2\n"
+ "R2 B2 U2 R' U2 R2 D2 U2 L B2 R' D2 R2\n"
+ "R2 B2 U2 R D2 U2 R2 D2 L' F2 R' U2 L2\n"
+ "L D2 F2 D2 F2 R U2 R U2 L2 U2 F2 D2\n"
+},
+[11] = {
+ .scramble = "U2 L F2 D2 F2 U2 R U2 L U2 R'",
+ .solutions =
+ "R U2 L' U2 R' U2 F2 D2 F2 L' U2\n"
+ "L F2 L' F2 L' U2 F2 D2 F2 L' U2\n"
+},
+[12] = {
+ .scramble = "R2 D2 U2 R' B2 U2 R' F2 R' D2 F2 L2",
+ .solutions =
+ "L2 F2 D2 R F2 R U2 B2 R D2 U2 R2\n"
+ "L2 F2 D2 L D2 R F2 U2 L D2 U2 L2\n"
+},
+[13] = {
+ .scramble = "R D2 R F2 R B2 D2 U2 R D2 L' F2 L'",
+ .solutions =
+ "U2 B2 D2 R U2 L' U2 B2 L2 F2 B2 D2 R2\n"
+ "L F2 L D2 R' D2 U2 B2 R' F2 R' D2 R'\n"
+ "R2 D2 R' D2 F2 B2 R' F2 R' U2 R U2 L2\n"
+ "R2 D2 L' F2 D2 U2 R' U2 R' B2 L U2 L2\n"
+ "U2 F2 D2 F2 D2 L2 B2 L2 B2 R U2 L' D2\n"
+ "U2 B2 U2 F2 U2 R2 B2 R2 F2 R U2 L' D2\n"
+ "D2 F2 U2 B2 D2 R2 B2 R2 F2 R U2 L' D2\n"
+ "D2 B2 D2 B2 U2 L2 B2 L2 B2 R U2 L' D2\n"
+},
+[14] = {
+ .scramble = "F2 R2 U2 F2 B2 L' U2 R' B2 R2 L' D2 L2",
+ .solutions =
+ "R' L' B2 L' D2 R B2 R F2 B2 D2 L2 F2\n"
+ "L2 D2 R2 L B2 R U2 L F2 B2 U2 R2 F2\n"
+},
+[15] = {
+ .scramble = "R D2 L D2 U2 F2 L' D2 R F2 D2 R2 D2 L B2",
+ .solutions =
+ "B2 R' U2 R' D2 L D2 F2 B2 R D2 R2 D2 R F2\n"
+ "F2 L U2 R' U2 F2 R' U2 L' D2 B2 L2 U2 F2 R'\n"
+ "B2 L B2 R2 U2 L' U2 F2 U2 B2 L D2 L' U2 R'\n"
+ "B2 L' D2 R2 D2 F2 R' D2 L F2 D2 U2 L' D2 R'\n"
+ "B2 L' D2 R2 F2 R B2 U2 B2 D2 L F2 R' U2 R'\n"
+ "B2 R' B2 L2 F2 U2 L' U2 R D2 F2 B2 L' B2 L'\n"
+ "F2 R D2 B2 R' D2 L D2 R D2 R2 F2 L B2 U2\n"
+ "F2 R D2 B2 L' F2 R U2 R' B2 R2 U2 L' B2 U2\n"
+ "F2 R D2 B2 L' F2 L F2 L D2 R2 F2 L B2 U2\n"
+ "F2 L B2 U2 R' B2 R D2 L' U2 L2 B2 R' B2 U2\n"
+},
+[16] = {
+ .scramble = "U2 F2 R D2 L' U2 R B2 R B2 R' U2 R",
+ .solutions =
+ "R' U2 R B2 R' F2 R' U2 B2 R' U2 L F2\n"
+ "R' U2 L U2 R' D2 R' F2 U2 R' F2 R F2\n"
+ "R' U2 R B2 R' B2 R' U2 L D2 R' F2 U2\n"
+ "R' U2 L U2 R' U2 L' U2 L D2 R' F2 U2\n"
+},
+[17] = {
+ .scramble = "L2 U2 R' B2 R2 F2 D2 L' F2 D2 R2 U2 L' D2 F2",
+ .solutions =
+ "F2 D2 L U2 R2 D2 F2 L D2 F2 R2 B2 R U2 L2\n"
+ "L2 U2 B2 L' F2 R2 F2 D2 R' D2 L2 B2 R B2 D2\n"
+ "L2 U2 B2 L' F2 L2 B2 U2 L U2 R2 F2 L' B2 D2\n"
+ "F2 R2 D2 F2 R F2 L2 D2 L' F2 L2 U2 R' B2 D2\n"
+ "F2 R2 D2 F2 L' B2 R2 U2 R B2 R2 U2 R' B2 D2\n"
+ "F2 R2 D2 F2 L' B2 L2 D2 L' F2 L2 D2 L B2 D2\n"
+ "F2 L2 U2 B2 R B2 R2 D2 R B2 R2 D2 L B2 D2\n"
+},
+[18] = {
+ .scramble = "B2 D2 B2 L' U2 L' B2 L' F2 B2 U2 R F2",
+ .solutions =
+ "F2 R' U2 F2 B2 L B2 L U2 L B2 D2 B2\n"
+},
+[19] = {
+ .scramble = "R2 B2 R' F2 L' U2 L U2 B2 L U2 B2 L' U2 R2",
+ .solutions =
+ "R2 U2 L B2 U2 L' B2 U2 L' U2 L F2 R B2 R2\n"
+ "R2 U2 R D2 B2 R' B2 U2 R' F2 L D2 L F2 L2\n"
+},
+{
+ .scramble = "", /* End-of-list signal */
+}
+};
diff --git a/tools/417_solvetest_opt0_DRFIN_RL/solvetest.c b/tools/417_solvetest_opt0_DRFIN_RL/solvetest.c
@@ -0,0 +1,9 @@
+#define SOLVER "mcoord_DRFIN_LF"
+#define NISSFLAG NISSY_NISSFLAG_NORMAL
+#define MINMOVES 0
+#define MAXMOVES 20
+#define MAXSOLUTIONS 500
+#define OPTIMAL 0
+
+#include "scrambles.h"
+#include "../solvetest.h"
diff --git a/tools/418_solvetest_opt0_DRFIN_FB/scrambles.h b/tools/418_solvetest_opt0_DRFIN_FB/scrambles.h
@@ -0,0 +1,208 @@
+struct {
+ char *scramble;
+ char *solutions;
+} s[] = {
+[0] = {
+ .scramble = "F2 U2 B U2 B U2 R2 B D2 B' R2 F2 R2 L2",
+ .solutions =
+ "R2 L2 F2 R2 F L2 B' D2 R2 F' U2 B' U2 F2\n"
+ "R2 L2 F2 R2 B D2 B' R2 U2 B' U2 B' U2 F2\n"
+ "R2 L2 B2 L2 F R2 F' L2 D2 F' R2 F' U2 F2\n"
+ "R2 B2 D2 F' R2 F2 U2 F' D2 F' D2 F D2 U2\n"
+ "R2 B2 D2 F' R2 F2 U2 B' L2 F' L2 B D2 U2\n"
+},
+[1] = {
+ .scramble = "B U2 B2 D2 L2 B U2 F' D2 L2 F2 D2 F'",
+ .solutions =
+ "F D2 L2 D2 F2 L2 F' U2 B' L2 F2 D2 B\n"
+ "F D2 L2 D2 B2 R2 F' D2 B' R2 B2 D2 B\n"
+ "F D2 F2 L2 D2 F U2 B' L2 D2 B2 U2 B'\n"
+},
+[2] = {
+ .scramble = "B U2 B' L2 B L2 F' R2 F' L2 U2 B2",
+ .solutions =
+ "B2 U2 L2 B U2 B R2 F' U2 B R2 F'\n"
+ "B2 U2 L2 F R2 F L2 B' L2 B U2 B'\n"
+ "B2 U2 L2 F R2 B D2 B' D2 F U2 B'\n"
+},
+[3] = {
+ .scramble = "B' L2 B' U2 B L2 U2 B' R2 B2 R2 U2 F' U2",
+ .solutions =
+ "U2 F U2 R2 B2 R2 B U2 L2 B' U2 B L2 B\n"
+ "U2 B L2 U2 B2 U2 F U2 L2 F' L2 F L2 B\n"
+ "F' D2 B' L2 F D2 L2 B' L2 U2 F2 D2 F' R2\n"
+ "R2 L2 F L2 B D2 F2 B D2 B D2 R2 B L2\n"
+ "R2 L2 B D2 F D2 F' L2 F' B2 D2 R2 B L2\n"
+ "R2 L2 B D2 B R2 F2 B R2 B R2 U2 F L2\n"
+ "B' D2 R2 B2 R2 F R2 F R2 F' U2 B R2 D2\n"
+ "B' D2 R2 B2 R2 B U2 F U2 B' U2 B R2 D2\n"
+ "B' D2 R2 B2 R2 B U2 B L2 B' L2 F R2 D2\n"
+},
+[4] = {
+ .scramble = "B2 U2 D2 R2 F U2 D2 B2 R2 B' R2 F U2",
+ .solutions =
+ "U2 F' R2 B' D2 U2 B2 R2 F L2 D2 U2 F2\n"
+ "U2 B' D2 B' R2 L2 B2 D2 B L2 D2 U2 F2\n"
+ "L2 U2 B L2 F B2 D2 R2 D2 U2 B L2 F2\n"
+ "U2 F' R2 B R2 B2 D2 U2 F' R2 D2 U2 B2\n"
+ "U2 F' R2 B' D2 U2 F2 L2 F R2 D2 U2 B2\n"
+ "L2 U2 F U2 B' D2 R2 D2 U2 F U2 F B\n"
+},
+[5] = {
+ .scramble = "B D2 R2 B2 F' R2 U2 B R2 B' R2 F L2 U2",
+ .solutions =
+ "F2 D2 L2 F R2 B' U2 L2 B' D2 R2 F' D2 F'\n"
+ "U2 L2 F' R2 F2 B' L2 B' D2 L2 F' R2 D2 B'\n"
+ "U2 L2 F' R2 B R2 B' U2 R2 F B2 R2 D2 B'\n"
+ "U2 L2 B' D2 B D2 F' U2 R2 F B2 R2 D2 B'\n"
+},
+[6] = {
+ .scramble = "F2 R2 B' L2 B' D2 L2 B2 U2 F' U2 R2 F2",
+ .solutions =
+ "F2 R2 U2 F U2 B2 L2 D2 B L2 B R2 F2\n"
+ "F2 R2 U2 B L2 B2 D2 R2 F L2 B R2 F2\n"
+ "B2 L2 D2 B R2 F2 D2 R2 F L2 B R2 F2\n"
+ "U2 F' R2 L2 U2 F U2 L2 B U2 F2 U2 R2\n"
+},
+[7] = {
+ .scramble = "B2 L2 D2 B' U2 B R2 D2 B R2 U2 B2 R2 U2",
+ .solutions =
+ "U2 R2 F2 D2 L2 F' L2 D2 B' R2 F U2 R2 F2\n"
+ "U2 R2 F2 D2 L2 B' U2 L2 B' D2 B U2 R2 F2\n"
+ "U2 R2 B2 U2 R2 F' R2 U2 B' L2 F D2 L2 B2\n"
+ "U2 R2 B2 U2 R2 B' D2 R2 B' U2 B D2 L2 B2\n"
+ "U2 F D2 L2 F L2 B' D2 U2 R2 F' R2 B R2\n"
+ "D2 F2 R2 U2 F D2 B L2 B R2 U2 R2 B2 U2\n"
+ "D2 B2 L2 D2 F U2 B R2 B L2 D2 L2 F2 U2\n"
+},
+[8] = {
+ .scramble = "B D2 L2 F2 R2 B' R2 B D2 B' L2 B' U2 F",
+ .solutions =
+ "U2 B' U2 R2 B2 R2 D2 B R2 D2 B' R2 U2 F'\n"
+ "U2 B' D2 L2 F2 L2 U2 B R2 D2 B' R2 U2 F'\n"
+ "U2 B' L2 D2 L2 U2 B2 D2 B' U2 L2 F L2 F'\n"
+ "F' U2 B L2 B D2 B' R2 B R2 F2 L2 D2 B'\n"
+ "B' R2 B U2 B L2 F' R2 B R2 F2 L2 D2 B'\n"
+ "R2 U2 B D2 F2 L2 U2 B U2 F R2 B' R2 L2\n"
+ "R2 D2 B' L2 F' L2 U2 B2 R2 F' L2 B' R2 L2\n"
+ "U2 F2 R2 F R2 F L2 U2 F U2 F' D2 L2 D2\n"
+ "U2 F D2 F L2 B2 L2 B' D2 U2 R2 B' D2 U2\n"
+},
+[9] = {
+ .scramble = "R2 B2 L2 B L2 F' U2 R2 U2 B D2 F U2 D2 L2",
+ .solutions =
+ "L2 D2 U2 F R2 B D2 L2 D2 F' U2 B L2 B2 R2\n"
+ "L2 D2 U2 F' D2 B' U2 R2 U2 F L2 B' L2 B2 R2\n"
+ "L2 B L2 F D2 R2 D2 B' U2 F R2 F2 D2 U2 R2\n"
+ "L2 B' D2 F' U2 L2 U2 B R2 F' R2 F2 D2 U2 R2\n"
+ "R2 D2 U2 B R2 F U2 L2 U2 B' D2 F L2 F2 L2\n"
+ "R2 D2 U2 B' U2 F' D2 R2 D2 B L2 F' L2 F2 L2\n"
+ "R2 F L2 B U2 R2 U2 F' D2 B R2 B2 D2 U2 L2\n"
+ "R2 F' U2 B' D2 L2 D2 F R2 B' R2 B2 D2 U2 L2\n"
+},
+[10] = {
+ .scramble = "U2 B' D2 B L2 B2 R2 F' D2 F' R2 B R2 D2",
+ .solutions =
+ "D2 R2 F U2 B2 D2 F' L2 B' L2 F R2 F U2\n"
+ "D2 R2 F U2 B2 D2 B' U2 B' U2 B R2 F U2\n"
+ "D2 R2 B' R2 F D2 F R2 B2 L2 B' D2 B U2\n"
+ "D2 R2 B' R2 F' D2 B2 U2 F L2 F R2 F U2\n"
+ "D2 R2 B' R2 B R2 F U2 B2 D2 B' R2 F U2\n"
+ "D2 R2 B' R2 B' L2 B2 R2 F U2 F D2 B U2\n"
+ "L2 F2 R2 U2 B' U2 F' L2 F L2 B' D2 B U2\n"
+ "L2 F2 R2 U2 B' U2 B' U2 F U2 F' D2 B U2\n"
+},
+[11] = {
+ .scramble = "B U2 B' D2 R2 B R2 U2 R2 D2 F L2",
+ .solutions =
+ "L2 F' D2 R2 U2 R2 B' R2 D2 B U2 B'\n"
+},
+[12] = {
+ .scramble = "D2 B' R2 F' L2 F D2 F L2 U2 D2 B R2",
+ .solutions =
+ "R2 B' D2 U2 L2 F' D2 F' L2 F R2 B D2\n"
+},
+[13] = {
+ .scramble = "B L2 F R2 F2 L2 D2 B' R2 B D2 F2 D2 L2",
+ .solutions =
+ "L2 D2 F2 D2 B' R2 B D2 L2 F2 R2 F' L2 B'\n"
+},
+[14] = {
+ .scramble = "B2 L2 U2 F' R2 B L2 F2 R2 F' R2 U2 F2",
+ .solutions =
+ "L2 F' B' R2 D2 B R2 B L2 F D2 R2 F2\n"
+ "F' D2 F2 D2 F' U2 R2 L2 B U2 B' L2 B\n"
+ "F' D2 F2 D2 B' R2 D2 U2 B R2 F' L2 B\n"
+ "B D2 U2 L2 F' U2 B2 U2 F' R2 F' L2 B\n"
+ "B' L2 F2 L2 F' R2 D2 U2 B R2 F' L2 B\n"
+ "L2 F B L2 U2 B L2 B R2 F U2 L2 B2\n"
+ "F2 U2 R2 F R2 F2 L2 B' R2 F U2 L2 B2\n"
+},
+[15] = {
+ .scramble = "F2 R2 D2 B' U2 L2 B U2 F L2 U2 F L2",
+ .solutions =
+ "L2 F' U2 L2 F' U2 B' L2 U2 B D2 R2 F2\n"
+},
+[16] = {
+ .scramble = "B U2 B U2 F' D2 F' U2 F2 D2 F' U2 L2 B'",
+ .solutions =
+ "F U2 R2 F' R2 F L2 F2 R2 B' D2 F' R2 F'\n"
+ "B L2 U2 F D2 B2 D2 F U2 B R2 B' R2 F'\n"
+ "B L2 U2 F' U2 B R2 B2 R2 F' R2 B' R2 F'\n"
+ "B L2 U2 F' U2 B' R2 F' R2 B2 R2 B R2 F'\n"
+ "R2 D2 F L2 B' D2 L2 U2 L2 F2 D2 F' U2 B'\n"
+ "F U2 R2 B' D2 F U2 B2 U2 B' R2 F' U2 B'\n"
+ "F' L2 F2 U2 R2 F L2 F' L2 F R2 F' U2 B'\n"
+ "B L2 U2 F D2 F2 U2 F D2 F U2 B' U2 B'\n"
+ "B L2 U2 F' U2 F' U2 F' U2 B2 U2 B U2 B'\n"
+ "B' U2 F2 R2 D2 F U2 F' U2 B R2 F' U2 B'\n"
+ "B' U2 F2 R2 D2 B L2 F' L2 F R2 F' U2 B'\n"
+},
+[17] = {
+ .scramble = "B R2 B2 R2 U2 B L2 B2 D2 F L2 U2 B' D2 B'",
+ .solutions =
+ "U2 F R2 F L2 F B2 U2 F R2 F2 R2 D2 L2 F'\n"
+ "U2 F2 B' D2 B L2 B' L2 B L2 B2 R2 D2 L2 F'\n"
+ "U2 F' B2 L2 F R2 F' U2 F R2 F2 R2 D2 L2 F'\n"
+ "U2 B U2 F' D2 B2 U2 F L2 B' R2 F2 D2 L2 F'\n"
+ "F R2 B U2 R2 F U2 F2 R2 F L2 U2 B2 D2 F'\n"
+ "F L2 F D2 R2 F' U2 B2 R2 F' R2 D2 B2 D2 F'\n"
+ "B U2 F U2 R2 F' R2 F2 U2 F' L2 U2 B2 D2 F'\n"
+ "B U2 F U2 R2 F' R2 B2 D2 F' R2 D2 F2 D2 F'\n"
+ "B U2 B L2 U2 F' U2 F2 L2 B' L2 U2 B2 D2 F'\n"
+ "B D2 F R2 U2 B' U2 B2 R2 F' R2 D2 B2 D2 F'\n"
+ "B D2 B U2 L2 B' L2 F2 D2 B' L2 U2 F2 D2 F'\n"
+ "B D2 B U2 L2 B' L2 B2 U2 B' R2 D2 B2 D2 F'\n"
+ "U2 F R2 B D2 F B2 L2 F U2 F2 U2 R2 D2 B'\n"
+ "U2 F2 B' D2 B L2 F' D2 B D2 B2 U2 R2 D2 B'\n"
+ "U2 B U2 F' D2 F2 D2 F R2 F' D2 B2 R2 D2 B'\n"
+ "U2 B U2 F' D2 B2 U2 F L2 F' U2 F2 R2 D2 B'\n"
+ "U2 B U2 B R2 F' U2 F2 B' D2 B2 U2 R2 D2 B'\n"
+ "U2 B U2 B' L2 F2 L2 B R2 F' D2 B2 R2 D2 B'\n"
+ "F R2 F R2 D2 B' L2 F2 D2 B' D2 L2 B2 R2 B'\n"
+ "F L2 B R2 U2 F' L2 B2 U2 F' U2 R2 B2 R2 B'\n"
+ "B U2 F U2 R2 F U2 F2 R2 B D2 L2 B2 R2 B'\n"
+ "B U2 F U2 R2 F U2 B2 L2 B U2 R2 F2 R2 B'\n"
+ "B D2 B U2 L2 F' D2 F2 R2 B' D2 L2 F2 R2 B'\n"
+ "B D2 B U2 L2 F' D2 B2 L2 B' U2 R2 B2 R2 B'\n"
+},
+[18] = {
+ .scramble = "R2 B' R2 U2 B' U2 B' F2 R2 D2 F D2 F' U2",
+ .solutions =
+ "U2 R2 L2 F L2 F' U2 F2 B' U2 F' R2 F R2\n"
+ "U2 F U2 F' D2 B L2 F B2 L2 D2 U2 F R2\n"
+ "U2 F D2 F' D2 R2 F2 B U2 B U2 R2 B R2\n"
+ "U2 B R2 F2 B U2 L2 F' L2 F U2 R2 B R2\n"
+ "U2 B R2 F' R2 U2 F2 B L2 B L2 U2 F R2\n"
+ "D2 R2 L2 F D2 F' U2 B R2 F B2 L2 F R2\n"
+ "D2 F R2 F' D2 F2 B' D2 F' R2 D2 U2 F R2\n"
+},
+[19] = {
+ .scramble = "D2 B' D2 B' D2 B' D2 R2 B' D2 F R2 B R2",
+ .solutions =
+ "R2 B' R2 F' D2 B R2 D2 B D2 B D2 B D2\n"
+},
+{
+ .scramble = "", /* End-of-list signal */
+}
+};
diff --git a/tools/418_solvetest_opt0_DRFIN_FB/solvetest.c b/tools/418_solvetest_opt0_DRFIN_FB/solvetest.c
@@ -0,0 +1,9 @@
+#define SOLVER "mcoord_DRFIN_BU"
+#define NISSFLAG NISSY_NISSFLAG_NORMAL
+#define MINMOVES 0
+#define MAXMOVES 20
+#define MAXSOLUTIONS 500
+#define OPTIMAL 0
+
+#include "scrambles.h"
+#include "../solvetest.h"