nissy-core

The "engine" of nissy, including the H48 optimal solver.
git clone https://git.tronto.net/nissy-core
Download | Log | Files | Refs | README | LICENSE

scrambles.h (7033B)


      1 struct {
      2 	char *scramble;
      3 	char *solutions;
      4 } s[] = {
      5 [0] = {
      6 	.scramble = "L D' F R' F' B L F U2 R2 D2 R2 F2 R2 L U2 F2 R U2",
      7 	.solutions =
      8 		"(L D F' D2 L U2 F' R)\n"
      9 		"(L D F' U2 R U2 B' L)\n"
     10 },
     11 [1] = {
     12 	.scramble = "L F R B2 L2 D B R2 L F L2 D2 B R2 F2 U2 D2 F U2 F2 R2",
     13 	.solutions =
     14 		"(L F R B2 L2 D B L)\n"
     15 },
     16 [2] = {
     17 	.scramble = "F U' F2 R2 L' F' U' D2 L' D2 B2 R2 D2 B2 L2 U2 B2 D' F2 B2 R2",
     18 	.solutions =
     19 		"(U2 R L U R F B' D)\n"
     20 },
     21 [3] = {
     22 	.scramble = "D R L2 F' B R D2 B' U' R D2 R B2 D2 L' F2 U2 R2 L",
     23 	.solutions =
     24 		"R' L B L' D L2 D' B2 R\n"
     25 		"D' U2 R' U' R U' B' D' L\n"
     26 		"B' U' L F2 U2 R' B' R2 U\n"
     27 		"(L2 D' F' U2 F2 D' R2 F2 R)\n"
     28 		"(L2 D' F' U2 F2 D' L2 B2 R)\n"
     29 },
     30 [4] = {
     31 	.scramble = "D' B L' F2 L' F' B U' R' F2 B' U2 F2 U L2 B2 D' F2 D2 L2 U L2",
     32 	.solutions =
     33 		"(B D R2 D2 U' R F2 B' D)\n"
     34 },
     35 [5] = {
     36 	.scramble = "U' B R U2 F' D2 L U B2 L D2 L2 U2 R2 F2 U R2 D' F2 U' B2",
     37 	.solutions =
     38 		"L' B' D' F B' L D2 U' R\n"
     39 		"D' F R' B' U F' U B' L\n"
     40 		"(F D U R' B2 R2 F R' D)\n"
     41 },
     42 [6] = {
     43 	.scramble = "U' D' F' R B' L2 F2 U B' R' L F2 U2 D2 R' B2 U2 R U2 L",
     44 	.solutions =
     45 		"R2 L' D' B' U L D' L F2 R\n"
     46 		"B R2 B' D2 L' D B' U F' R\n"
     47 		"U' R' U F2 B D R D2 U' L\n"
     48 		"R2 L' D' B' U L D' R U2 L\n"
     49 		"R2 F2 R B' D U' B' L B' L\n"
     50 		"R2 B2 L B D2 L B2 D' L' U\n"
     51 		"D U2 B' L2 F' U L' D' B' D\n"
     52 		"D2 L2 B' R2 U R' B R2 F' D\n"
     53 		"D' F R2 B' L2 U' F' R' F' D\n"
     54 		"R' F' R F' R B' L2 U' R' D\n"
     55 		"(F2 B' U2 R B D' U F' D2 R)\n"
     56 		"(U F' D' F B2 L' F' U B U)\n"
     57 		"(U F' R2 D2 F2 R2 B' D2 L U)\n"
     58 		"(U' R D' B L' F2 B2 D2 R U)\n"
     59 		"(U' F2 R D F' B2 U R2 F' U)\n"
     60 		"(U' F2 R F U2 B' U2 B' L2 U)\n"
     61 		"(D R2 D' R2 F L2 F D R U)\n"
     62 		"(D2 U B2 L U' B' L2 D B U)\n"
     63 		"(F R' F2 L2 B2 R D R F U)\n"
     64 		"(F B2 U' B2 R' F L2 F R2 U)\n"
     65 		"(F2 B R2 D F R2 B' R F2 U)\n"
     66 		"(B' U2 L2 U F' L2 F2 B R U)\n"
     67 		"(U R' L2 D2 B L2 B U2 R D)\n"
     68 		"(U' F2 R B L2 B' L2 F' R2 D)\n"
     69 		"(U' F' D' F' D2 R' F' D B D)\n"
     70 		"(U' B D2 U2 B2 U2 B U2 L D)\n"
     71 		"(D2 R2 F U' F D2 F2 B R D)\n"
     72 		"(R F D2 R' B' U L' B' L' D)\n"
     73 		"(R2 F R F' L2 B2 U' R F' D)\n"
     74 		"(F R2 F' R' F L2 U' R F' D)\n"
     75 		"(B' L2 U B D2 F B2 L F2 D)\n"
     76 },
     77 [7] = {
     78 	.scramble = "F U B' R2 D' L' F2 U R' L' D B2 D F2 U2 F2 L2 D B2 U' B2 D",
     79 	.solutions =
     80 		"(D' L D2 F U R F D)\n"
     81 },
     82 [8] = {
     83 	.scramble = "F' B R2 L' F' U2 B' L' U R B2 U2 R2 U D2 L2 U L2 F2 L2",
     84 	.solutions =
     85 		"R B2 U2 F' R L2 F2 U' L\n"
     86 		"U R' D L2 U B' R L U\n"
     87 		"F R' D' F2 U2 B2 R' B' D\n"
     88 		"(F' U2 L' U B U' F' U R)\n"
     89 		"(B L B' D2 R' F' L D R)\n"
     90 		"(R2 B2 D2 B' R2 B' R' U L)\n"
     91 		"(F' U F2 R2 D2 F' R D L)\n"
     92 		"(B R' B' R D2 B2 R U L)\n"
     93 		"(D R D B' D2 B' U R L)\n"
     94 		"(D R D B' D2 B' U' R L)\n"
     95 },
     96 [9] = {
     97 	.scramble = "D B U2 B2 R' L' D' R' U F B2 R2 D2 L2 F R2 F2 B L2 F R2",
     98 	.solutions =
     99 		"(D F2 B' U2 R' L D R' U)\n"
    100 		"(D B U2 B2 R' L' D' R' U)\n"
    101 		"(D B' R' L D2 F2 D R' U)\n"
    102 		"(R F2 D U2 B L2 U2 R' D)\n"
    103 },
    104 [10] = {
    105 	.scramble = "R' L2 D' F' L B L F' U2 L' D2 B2 D2 F2 R2 D' R2 D B2 D F2",
    106 	.solutions =
    107 		"(U2 R' F' B L' U' B2 D' R)\n"
    108 },
    109 [11] = {
    110 	.scramble = "F' U' R2 F U' B U' R D' B U2 D2 F2 R2 F U2 F' L2 B' L2 D2",
    111 	.solutions =
    112 		"D2 F' L2 D R' U F B D\n"
    113 		"D2 F' L2 D R' U' F B D\n"
    114 		"(U' B' D' F2 D' L' D' F U)\n"
    115 		"(F' U' R2 F U' B U' R D)\n"
    116 		"(B L2 D F' U' L2 D R D)\n"
    117 },
    118 [12] = {
    119 	.scramble = "U2 R' U2 D2 B' L D B2 R B L2 B2 U2 B2 U D2 B2 D B2 D'",
    120 	.solutions =
    121 		"(D2 U L2 D R F L' U2 R)\n"
    122 		"(U2 F2 U B R B' D B L)\n"
    123 		"(D2 U L2 D R F R' F2 L)\n"
    124 		"(L2 D R' B2 U2 F' B2 L' U)\n"
    125 },
    126 [13] = {
    127 	.scramble = "L' U2 F2 B' U' R D B' U' F2 U2 F' R2 U2 F L2 F U2 B2 L2 U2 D2",
    128 	.solutions =
    129 		"(B2 L' F R F2 D F' U' R)\n"
    130 		"(L' U2 F2 B' U' R D B' U)\n"
    131 },
    132 [14] = {
    133 	.scramble = "B2 U' B D R U2 F R' D2 F R B2 U2 L U2 R' B2 U2 R F2 R U2",
    134 	.solutions =
    135 		"R2 D' B R L2 B' L' U' F L\n"
    136 		"F D2 U' F R' B L D L2 U\n"
    137 		"F D2 L2 F R B L' D' F' U\n"
    138 		"F D2 U' F R' B L U B2 D\n"
    139 		"(U L' F' L2 D' F' B2 L U' R)\n"
    140 		"(F B' L2 F D B' U' L' B' R)\n"
    141 		"(F2 D R B R2 U' R' D2 F2 R)\n"
    142 		"(F2 D R B R2 U' L' B2 D2 R)\n"
    143 		"(F2 L2 B U' B' D' F L' F' R)\n"
    144 		"(F2 B2 U2 B D B' U L' B' R)\n"
    145 		"(F2 B' D B' U' L' B2 L2 B R)\n"
    146 		"(U F R2 U F' D U R B L)\n"
    147 		"(R2 D U2 F' U' L F R B' L)\n"
    148 		"(R2 D U2 F' U' L F' R B' L)\n"
    149 		"(R2 D' U2 F' U B' R' F B' L)\n"
    150 		"(L' D2 B2 L' D U R F' D L)\n"
    151 		"(F2 D R B U B2 U' R2 U L)\n"
    152 		"(F2 D R B R2 U' R' U2 B2 L)\n"
    153 		"(F2 D R B R2 U' L' F2 U2 L)\n"
    154 		"(D R B' U L' B' D2 B' L2 U)\n"
    155 		"(D B2 L B' R L' U L B U)\n"
    156 		"(B' D R L F U B U2 R U)\n"
    157 		"(D R B U B2 L' F' D' F' D)\n"
    158 		"(F L' B' R F B' U R L' D)\n"
    159 		"(F2 R B D U' F2 R F' B2 D)\n"
    160 		"(B2 U R' L' D' B2 U2 B L D)\n"
    161 },
    162 [15] = {
    163 	.scramble = "U2 F U2 L F2 U2 R2 D L F2 D2 F R2 U2 L2 U2 B U2 B U2 L2",
    164 	.solutions =
    165 		"R' F' L U' L D2 R\n"
    166 		"R' F' L U' R F2 L\n"
    167 },
    168 [16] = {
    169 	.scramble = "L' F U' R2 F U2 B U2 L' U' F2 U2 L2 D2 R U2 B2 D2 L2 D2",
    170 	.solutions =
    171 		"U R' U' F L' F' D' R' F2 R\n"
    172 		"R' F D U L F' B2 L2 D' R\n"
    173 		"R' F2 R2 L' F D U2 R2 U' R\n"
    174 		"R' F2 R2 L' F D' L2 D2 U R\n"
    175 		"L' U2 F R' D2 L2 D' B2 U R\n"
    176 		"U R' U' F L' F' D' L' U2 L\n"
    177 		"R' L' F' D R2 F R' U R' U\n"
    178 		"L B R U' F' D2 F2 L B' U\n"
    179 		"R' B2 L' F U L D B2 L' D\n"
    180 		"L' F R F' U R2 U' F' R D\n"
    181 		"(D2 F L B D' L' F R' D' L)\n"
    182 		"(F L B L' D L2 U' R U' L)\n"
    183 		"(D U' L F R' U' B D' L U)\n"
    184 		"(F2 L D F B' R' L' F L' U)\n"
    185 		"(L B L' F' D' F2 L D R' D)\n"
    186 		"(L B L' F' D' F2 L' D R' D)\n"
    187 },
    188 [17] = {
    189 	.scramble = "D F' B D' B' U' L2 B' U' R' L2 B2 U' B2 D F2 U' L2 F2 U2 B2 D'",
    190 	.solutions =
    191 		"D' F' R B' R2 U R' D B2 U\n"
    192 		"R F L2 B' L2 D R2 B2 R' U\n"
    193 		"R F2 U2 F' D' L' D L2 B U\n"
    194 		"R B2 D' R' D2 R2 F D' B' U\n"
    195 		"L2 U' B2 D L' F' B' D F2 U\n"
    196 		"L2 F' D' R B' D2 R' F2 R2 U\n"
    197 		"D' R2 D2 F U' F L' F' B D\n"
    198 		"D' F' R B' R2 U R' U R2 D\n"
    199 		"R F L2 B' L2 D L2 F2 R' D\n"
    200 		"R B2 D' R' F D2 B U' F' D\n"
    201 		"R B2 D' R' B R2 F U' F' D\n"
    202 		"R B' D' F2 U F' D F2 R' D\n"
    203 		"R2 U B2 R' U' F U B' R2 D\n"
    204 		"L2 U' B2 D L' F' B' U L2 D\n"
    205 		"L2 F' D' R B' D2 R' B2 L2 D\n"
    206 		"B D U2 F' L U2 B' L2 B D\n"
    207 		"(L' F2 D' U2 B R2 U R' B' R)\n"
    208 		"(U R2 F' D' L' D' L' D2 U' L)\n"
    209 		"(U R' D2 U R F' L F R2 U)\n"
    210 		"(U' R2 F' U' L' D2 B R2 B2 U)\n"
    211 		"(D F' L B2 D2 R B D' F' U)\n"
    212 		"(D' R2 B D F2 B' D F L' U)\n"
    213 		"(D' F2 R2 D L2 B' L' F' B U)\n"
    214 		"(R2 B2 D' F D' F2 U2 R' F U)\n"
    215 		"(F U' F' U' L' D2 B D R2 U)\n"
    216 		"(U F2 R2 U' R2 F L' F B' D)\n"
    217 		"(U' R2 F' U' L' D2 B L2 F2 D)\n"
    218 		"(D L F U2 L' D' B U' F D)\n"
    219 		"(D L F U2 L' D' B' U' F D)\n"
    220 		"(D L2 U2 L2 F L' F' U' B' D)\n"
    221 		"(D F' L F2 U2 L B U' F' D)\n"
    222 		"(D' R2 D2 F L' F' R2 U' B' D)\n"
    223 		"(F U' F' U' L' D2 B U F2 D)\n"
    224 },
    225 [18] = {
    226 	.scramble = "D' R D2 F' R2 B2 R B U' R2 L2 F U2 D2 F L2 U2 B' D2",
    227 	.solutions =
    228 		"(D' R B D2 F' R2 U F R)\n"
    229 		"(D R' F D' B' L2 D' B L)\n"
    230 		"(D' R D2 F' R2 B2 R B U)\n"
    231 		"(D' R F' D2 R2 B2 R B U)\n"
    232 		"(D' R B D2 F' B' R' B U)\n"
    233 },
    234 [19] = {
    235 	.scramble = "R2 B U F D R' F2 B D B U2 R2 B2 R2 U' R2 F2 U D2 B2 U'",
    236 	.solutions =
    237 		"L' U F' U L F L' D\n"
    238 		"F D' F' L' B' R2 B D\n"
    239 },
    240 {
    241 	.scramble = "", /* End-of-list signal */
    242 }
    243 };