diff --git a/REGRESSIONTESTS/4_47_to_4_49.reg b/REGRESSIONTESTS/4_47_to_4_49.reg index bffc617ce..c7ec1ad61 100644 --- a/REGRESSIONTESTS/4_47_to_4_49.reg +++ b/REGRESSIONTESTS/4_47_to_4_49.reg @@ -499,10 +499,10 @@ option start in intelligent mode 1 potential positions in 1+7 1.Kb4-c4 2.Qb2-b4 3.Rg3-b3 4.Bg7-c3 5.d5-d4 6.Rf5-b5 7.c6-c5 8.Bb7-d5 d2-d3 # 15 potential positions in 1+8 - add_to_move_generation_stack: 70253 - play_move: 70253 - is_white_king_square_attacked: 4211 - is_black_king_square_attacked: 4721 + add_to_move_generation_stack: 70149 + play_move: 70149 + is_white_king_square_attacked: 4203 + is_black_king_square_attacked: 4713 solution finished. diff --git a/REGRESSIONTESTS/4_51_to_4_53.reg b/REGRESSIONTESTS/4_51_to_4_53.reg index 3c6e4b255..f07ace571 100644 --- a/REGRESSIONTESTS/4_51_to_4_53.reg +++ b/REGRESSIONTESTS/4_51_to_4_53.reg @@ -2111,10 +2111,10 @@ and 1.Kc1-b1 2.Kb1-a1 3.Bc2-b1 Bg6-c2 = 1.Kc1-d1 2.Bc2-b1 3.Kd1-c1 Bg6-c2 = 1.Bc2-b1 2.Bb1-f5 3.Bf5-b1 Bg6-c2 = 1.Bc2-b1 2.Bb1-e4 3.Be4-b1 Bg6-c2 = - add_to_move_generation_stack: 11839 - play_move: 6607 - is_white_king_square_attacked: 2159 - is_black_king_square_attacked: 6180 + add_to_move_generation_stack: 14825 + play_move: 8603 + is_white_king_square_attacked: 2787 + is_black_king_square_attacked: 8050 Partial solution diff --git a/REGRESSIONTESTS/4_55_to_4_57.reg b/REGRESSIONTESTS/4_55_to_4_57.reg index 31450ac5d..6bf22886b 100644 --- a/REGRESSIONTESTS/4_55_to_4_57.reg +++ b/REGRESSIONTESTS/4_55_to_4_57.reg @@ -1351,8 +1351,8 @@ Popeye didn't find a solution since at least 4.37 1.Kg1*h2[+wPg1] 2.Kh2-h3 3.Kh3*h4[+wPh3] 4.Kh4-g3 5.Kg3-h2 6.Kh2*h3[+wPh2] 7.Kh3-g2 8.Kg2*g1[+wPg2] 9.Kg1*h2[+wPg1] 10.Kh2*g2[+wPh2] 11.Kg2-h3 12.Kh3*h2[+wPh3] 13.Kh2*g1[+wPh2] h3-h4 1.Kg1*h2[+wPg1] 2.Kh2-h3 3.Kh3*h4[+wPh3] 4.Kh4-g3 5.Kg3-h2 6.Kh2*h3[+wPh2] 7.Kh3-g2 8.Kg2*h2[+wPg2] 9.Kh2*g1[+wPh2] 10.Kg1*g2[+wPg1] 11.Kg2-h3 12.Kh3*h2[+wPh3] 13.Kh2*g1[+wPh2] h3-h4 1.Kg1*h2[+wPg1] 2.Kh2-h3 3.Kh3*h4[+wPh3] 4.Kh4-g3 5.Kg3*h3[+wPg3] 6.Kh3-g2 7.Kg2*g3[+wPg2] 8.Kg3-h2 9.Kh2*g1[+wPh2] 10.Kg1*g2[+wPg1] 11.Kg2-h3 12.Kh3*h2[+wPh3] 13.Kh2*g1[+wPh2] h3-h4 - add_to_move_generation_stack: 55983 - play_move: 55983 + add_to_move_generation_stack: 55999 + play_move: 55999 is_white_king_square_attacked: 20970 is_black_king_square_attacked: 34578 diff --git a/REGRESSIONTESTS/4_61_to_4_63.reg b/REGRESSIONTESTS/4_61_to_4_63.reg index a47461362..37e8c36be 100644 --- a/REGRESSIONTESTS/4_61_to_4_63.reg +++ b/REGRESSIONTESTS/4_61_to_4_63.reg @@ -1263,10 +1263,10 @@ solution finished. both sides need a king 1.Kh1-g2 2.Kg2-f3 3.Kf3-e4 Sb4*a6 Sa6-c5 + - add_to_move_generation_stack: 316 - play_move: 316 + add_to_move_generation_stack: 328 + play_move: 328 is_white_king_square_attacked: 0 - is_black_king_square_attacked: 153 + is_black_king_square_attacked: 155 solution finished. @@ -1308,10 +1308,10 @@ movenumbers and nested series branches; until 4.61, Popeye produced 1.Kg3-g2 Kd2-e1 2.Kg2-h1 Rc8-c1 3.f3-f2 + Ke1*f2 # 10 (Kg3-g4 ) 11 (Kg3-h3 ) - add_to_move_generation_stack: 235771 - play_move: 250400 - is_white_king_square_attacked: 221287 - is_black_king_square_attacked: 216339 + add_to_move_generation_stack: 235787 + play_move: 250422 + is_white_king_square_attacked: 221309 + is_black_king_square_attacked: 216361 solution finished. diff --git a/REGRESSIONTESTS/4_63_to_4_65.reg b/REGRESSIONTESTS/4_63_to_4_65.reg index e9042f7f9..1f8177f36 100644 --- a/REGRESSIONTESTS/4_63_to_4_65.reg +++ b/REGRESSIONTESTS/4_63_to_4_65.reg @@ -281,10 +281,10 @@ solution finished. 1.d2-d1=S 2.Sd1-e3 3.Se3-f1 Qf2-g1 # 1.d2-d1=R 2.Rd1-d3 3.Rd3-f3 Qf2-g2 # 1.d2-d1=B 2.Bd1-g4 3.Bg4-h3 Qf2-h2 # - add_to_move_generation_stack: 8042 - play_move: 7018 - is_white_king_square_attacked: 1203 - is_black_king_square_attacked: 7018 + add_to_move_generation_stack: 8140 + play_move: 7100 + is_white_king_square_attacked: 1217 + is_black_king_square_attacked: 7100 solution finished. diff --git a/REGRESSIONTESTS/4_69_to_4_71.reg b/REGRESSIONTESTS/4_69_to_4_71.reg index b50be1928..686b2fea6 100644 --- a/REGRESSIONTESTS/4_69_to_4_71.reg +++ b/REGRESSIONTESTS/4_69_to_4_71.reg @@ -190,10 +190,10 @@ Popeye hasn't found the solution since 4.65 KoeKo 1.0-0 2.nRf8-f2 3.nPe3-e2 4.nPe2-e1=nQ 5.nQe1-g1 6.nRf2-h2 7.nQg1-a7 nRh2-h8 # - add_to_move_generation_stack: 558560 - play_move: 643203 - is_white_king_square_attacked: 22728 - is_black_king_square_attacked: 211290 + add_to_move_generation_stack: 558670 + play_move: 643320 + is_white_king_square_attacked: 22732 + is_black_king_square_attacked: 211313 solution finished. diff --git a/REGRESSIONTESTS/4_85_to_4_87.reg b/REGRESSIONTESTS/4_85_to_4_87.reg index b455a8c8b..37b4a1139 100644 --- a/REGRESSIONTESTS/4_85_to_4_87.reg +++ b/REGRESSIONTESTS/4_85_to_4_87.reg @@ -122,10 +122,10 @@ Popeye 4.85 printed dummies as total invisibles in the solution 47 potential positions in 5+5 1.c2-c1=DU Bg7-h6 2.d4-d3 Kg1-f1 3.d3-d2 Kf1-e2 4.d2-d1=B + Ke2-d2 5.Bd1-b3 Kd2*c1 6.Bb3-a2 Bh6-g7 # 289 potential positions in 6+6 - add_to_move_generation_stack: 4715090 - play_move: 4790971 - is_white_king_square_attacked: 443150 - is_black_king_square_attacked: 595213 + add_to_move_generation_stack: 4697629 + play_move: 4772918 + is_white_king_square_attacked: 441359 + is_black_king_square_attacked: 593759 solution finished. @@ -328,10 +328,10 @@ solution finished. 1.Sb5-d4 1.Sd3-c1 2.Sc1-a2 Sd4*b3 # 1.Sb5-d4 1.Rb3-a3 2.Sd3-b2 3.Ra3-a2 Sd4-b3 # 1.Sb5-d4 1.Sd3-b2 2.Rb3-a3 3.Ra3-a2 Sd4-b3 # - add_to_move_generation_stack: 37466 - play_move: 34937 - is_white_king_square_attacked: 4372 - is_black_king_square_attacked: 34927 + add_to_move_generation_stack: 37545 + play_move: 34995 + is_white_king_square_attacked: 4393 + is_black_king_square_attacked: 34985 solution finished. @@ -449,10 +449,10 @@ PDB (P0574726): Gerson Berlinger, 32'er 11-12 1989 Duplex 1.a4*b3 ep. Ka3-a4 2.Kc4-d3 Ka4-b5 3.Kd3-c2 Kb5-c4 4.Kc2-b1 Kc4-d3 5.Bc3-a1 Kd3*e2 6.b3-b2 Ke2*d1 = - add_to_move_generation_stack: 12177338 - play_move: 12857728 - is_white_king_square_attacked: 510274 - is_black_king_square_attacked: 3327092 + add_to_move_generation_stack: 12172593 + play_move: 12852671 + is_white_king_square_attacked: 510238 + is_black_king_square_attacked: 3326960 1.Ka3*a4 Bc3*b4 = add_to_move_generation_stack: 69 diff --git a/REGRESSIONTESTS/CASTchess.ref b/REGRESSIONTESTS/CASTchess.ref index 8e17cf858..66de0e17a 100644 --- a/REGRESSIONTESTS/CASTchess.ref +++ b/REGRESSIONTESTS/CASTchess.ref @@ -470,10 +470,10 @@ solution finished. 1.c2-c1=R 2.Rc1-g1 3.Rg1-g2 4.Rg2*f2 5.Rf2-a2 6.Ra2-a7 Qh2-a2 # 1.c2-c1=B 2.Bc1-f4 3.Bf4-g3 4.Bg3*f2 5.Bf2-d4 6.Bd4-h8 Qh2-b2 # - add_to_move_generation_stack: 538448 - play_move: 147096 - is_white_king_square_attacked: 26735 - is_black_king_square_attacked: 147096 + add_to_move_generation_stack: 539336 + play_move: 147245 + is_white_king_square_attacked: 26746 + is_black_king_square_attacked: 147245 solution finished. diff --git a/REGRESSIONTESTS/annan.out b/REGRESSIONTESTS/annan.out index 0de08e776..4e8c132d4 100644 --- a/REGRESSIONTESTS/annan.out +++ b/REGRESSIONTESTS/annan.out @@ -375,10 +375,10 @@ Loesung beendet. Annanschach 1.Ka8-b7 2.Kb7-d5 3.Lb8-e5 4.Le5-d4 5.Ld4-e4 6.Kd5-e5 7.Ke5-f4 8.Le4*f3 9.Lf3-g3 10.Kf4-e4 11.Lg3-e5 12.Ke4-a8 13.Le5-b8 Lg4-f3 # - add_to_move_generation_stack: 870337 - play_move: 844164 - is_white_king_square_attacked: 455306 - is_black_king_square_attacked: 844164 + add_to_move_generation_stack: 870357 + play_move: 844182 + is_white_king_square_attacked: 455308 + is_black_king_square_attacked: 844182 Loesung beendet. diff --git a/REGRESSIONTESTS/annan.ref b/REGRESSIONTESTS/annan.ref index 15060d7b8..994e34156 100644 --- a/REGRESSIONTESTS/annan.ref +++ b/REGRESSIONTESTS/annan.ref @@ -375,10 +375,10 @@ solution finished. AnnanChess 1.Ka8-b7 2.Kb7-d5 3.Bb8-e5 4.Be5-d4 5.Bd4-e4 6.Kd5-e5 7.Ke5-f4 8.Be4*f3 9.Bf3-g3 10.Kf4-e4 11.Bg3-e5 12.Ke4-a8 13.Be5-b8 Bg4-f3 # - add_to_move_generation_stack: 870337 - play_move: 844164 - is_white_king_square_attacked: 455306 - is_black_king_square_attacked: 844164 + add_to_move_generation_stack: 870357 + play_move: 844182 + is_white_king_square_attacked: 455308 + is_black_king_square_attacked: 844182 solution finished. diff --git a/REGRESSIONTESTS/bgl.out b/REGRESSIONTESTS/bgl.out index af2723e70..148621489 100644 --- a/REGRESSIONTESTS/bgl.out +++ b/REGRESSIONTESTS/bgl.out @@ -125,10 +125,10 @@ Loesung beendet. BGL -/29 1.nBb2-b1=nT (-/28) 2.nTb1-h1 (-/22) 3.nTh1-a1 (-/15) 4.nTa1-a8 (-/8) 5.nTa8-h8 (-/1) nTh8*h6 # - add_to_move_generation_stack: 1275665 - play_move: 1161090 + add_to_move_generation_stack: 1275863 + play_move: 1161288 is_white_king_square_attacked: 94088 - is_black_king_square_attacked: 1161090 + is_black_king_square_attacked: 1161288 Loesung beendet. diff --git a/REGRESSIONTESTS/bgl.ref b/REGRESSIONTESTS/bgl.ref index 00a2a6da9..3e1902a75 100644 --- a/REGRESSIONTESTS/bgl.ref +++ b/REGRESSIONTESTS/bgl.ref @@ -125,10 +125,10 @@ solution finished. BGL -/29 1.nPb2-b1=nR (-/28) 2.nRb1-h1 (-/22) 3.nRh1-a1 (-/15) 4.nRa1-a8 (-/8) 5.nRa8-h8 (-/1) nRh8*h6 # - add_to_move_generation_stack: 1275665 - play_move: 1161090 + add_to_move_generation_stack: 1275863 + play_move: 1161288 is_white_king_square_attacked: 94088 - is_black_king_square_attacked: 1161090 + is_black_king_square_attacked: 1161288 solution finished. diff --git a/REGRESSIONTESTS/brunner.out b/REGRESSIONTESTS/brunner.out index 935202921..89d4a0168 100644 --- a/REGRESSIONTESTS/brunner.out +++ b/REGRESSIONTESTS/brunner.out @@ -204,10 +204,10 @@ Loesung beendet. BrunnerSchach 1.Kd1-e2 2.Ke2-f3 3.Kf3-g4 4.Kg4-h5 5.Kh5-h6 6.Kh6-h7 7.Kh7-g8 8.Kg8-f8 Kf6-f7 # - add_to_move_generation_stack: 1954 - play_move: 2114 - is_white_king_square_attacked: 1275 - is_black_king_square_attacked: 1973 + add_to_move_generation_stack: 1967 + play_move: 2130 + is_white_king_square_attacked: 1279 + is_black_king_square_attacked: 1985 Loesung beendet. diff --git a/REGRESSIONTESTS/castling.out b/REGRESSIONTESTS/castling.out index 619df0f92..db7884ee9 100644 --- a/REGRESSIONTESTS/castling.out +++ b/REGRESSIONTESTS/castling.out @@ -3671,10 +3671,10 @@ RochadenGegenseitigAusschliessend h1h8 1.e7-e5 0-0 2.Ke8-e7 Tf1-d1 3.Ke7-d6 Ld2-b4 # 1.0-0 Th1-f1 2.Kg8-h7 Tf1-f4 3.Kh7-h6 Tf4*h4 # - add_to_move_generation_stack: 16069071 - play_move: 16063007 - is_white_king_square_attacked: 1227530 - is_black_king_square_attacked: 1414094 + add_to_move_generation_stack: 16064305 + play_move: 16058241 + is_white_king_square_attacked: 1227250 + is_black_king_square_attacked: 1413770 Loesung beendet. diff --git a/REGRESSIONTESTS/circe.out b/REGRESSIONTESTS/circe.out index 679343a7b..4aaeb94fb 100644 --- a/REGRESSIONTESTS/circe.out +++ b/REGRESSIONTESTS/circe.out @@ -845,10 +845,10 @@ letzte 6 Halbz\"uge - Test f\"urs Hashing 34 (Kh4-h3 ) 35 (Kh4-g4 ) 36 (Kh4-h5 + ) - add_to_move_generation_stack: 44735971 - play_move: 23799106 - is_white_king_square_attacked: 9855693 - is_black_king_square_attacked: 20042797 + add_to_move_generation_stack: 44736206 + play_move: 23799218 + is_white_king_square_attacked: 9855727 + is_black_king_square_attacked: 20042899 Loesung beendet. diff --git a/REGRESSIONTESTS/cirpiece.out b/REGRESSIONTESTS/cirpiece.out index 9a2a483ac..ae6ec216d 100644 --- a/REGRESSIONTESTS/cirpiece.out +++ b/REGRESSIONTESTS/cirpiece.out @@ -229,10 +229,10 @@ Loesung beendet. 1.f2-f1=T 2.Tf1*c1[+wTa1] 3.Tc1-c6 4.Tc6-h6 Sg1-f3 # 1.f2-f1=T 2.Tf1*c1[+wTa1] 3.Tc1-c5 4.Tc5-h5 Sg1-f3 # 1.f2-f1=T 2.Tf1*c1[+wTa1] 3.Tc1-c4 4.Tc4-h4 Sg1-f3 # - add_to_move_generation_stack: 20164 - play_move: 14181 - is_white_king_square_attacked: 3145 - is_black_king_square_attacked: 14181 + add_to_move_generation_stack: 20554 + play_move: 14376 + is_white_king_square_attacked: 3190 + is_black_king_square_attacked: 14376 Loesung beendet. diff --git a/REGRESSIONTESTS/cirsquar.out b/REGRESSIONTESTS/cirsquar.out index bb87ec663..ddfe64454 100644 --- a/REGRESSIONTESTS/cirsquar.out +++ b/REGRESSIONTESTS/cirsquar.out @@ -1140,10 +1140,10 @@ erste 5 Züge einer Beweispartie in 7 13 (e2-e4 ) 1.e2-e4 d7-d5 2.e4*d5 c7-c5 3.d5*c6 ep.[+sBd5] d5-d4 4.c2-c4 d4*c3 ep.[+sBc5] 5.c6*b7[+wBc4] Sb8-c6 dia - add_to_move_generation_stack: 79112992 - play_move: 79115062 - is_white_king_square_attacked: 3402503 - is_black_king_square_attacked: 2911445 + add_to_move_generation_stack: 78724570 + play_move: 78726640 + is_white_king_square_attacked: 3389500 + is_black_king_square_attacked: 2904749 Loesung beendet. diff --git a/REGRESSIONTESTS/degrad.out b/REGRESSIONTESTS/degrad.out index 069f2ee01..094a47225 100644 --- a/REGRESSIONTESTS/degrad.out +++ b/REGRESSIONTESTS/degrad.out @@ -133,16 +133,16 @@ Loesung beendet. Duplex 1.a2*b1=L 2.Lb1-e4 3.Le4-b7=B c7-c8=S # - add_to_move_generation_stack: 29211 - play_move: 30851 - is_white_king_square_attacked: 3686 - is_black_king_square_attacked: 30851 + add_to_move_generation_stack: 29226 + play_move: 30869 + is_white_king_square_attacked: 3689 + is_black_king_square_attacked: 30869 1.c7*b8=T 2.Tb8*b4 3.Tb4-b2=B a2*b1=D # - add_to_move_generation_stack: 23348 - play_move: 20891 - is_white_king_square_attacked: 20891 - is_black_king_square_attacked: 2393 + add_to_move_generation_stack: 23406 + play_move: 20953 + is_white_king_square_attacked: 20953 + is_black_king_square_attacked: 2397 Loesung beendet. diff --git a/REGRESSIONTESTS/duplex.out b/REGRESSIONTESTS/duplex.out index 8652e5ed4..c2467ae8e 100644 --- a/REGRESSIONTESTS/duplex.out +++ b/REGRESSIONTESTS/duplex.out @@ -152,16 +152,16 @@ Loesung beendet. Duplex 1.nDb1-h1 2.nBg2*h1=nD[+nDd8] 3.nDh1-h5 nBe7-e8=nS # - add_to_move_generation_stack: 240695 - play_move: 155165 - is_white_king_square_attacked: 23901 - is_black_king_square_attacked: 155078 + add_to_move_generation_stack: 241127 + play_move: 155372 + is_white_king_square_attacked: 23952 + is_black_king_square_attacked: 155285 1.nBe7-e8=nT 2.nTe8-e1 3.nTe1-f1 + nBg2*f1=nL[+nTa8] # - add_to_move_generation_stack: 155694 - play_move: 124610 - is_white_king_square_attacked: 124135 - is_black_king_square_attacked: 16456 + add_to_move_generation_stack: 155999 + play_move: 124860 + is_white_king_square_attacked: 124385 + is_black_king_square_attacked: 16491 Loesung beendet. diff --git a/REGRESSIONTESTS/exklohne.out b/REGRESSIONTESTS/exklohne.out index d57af1456..7ff814ad6 100644 --- a/REGRESSIONTESTS/exklohne.out +++ b/REGRESSIONTESTS/exklohne.out @@ -1162,10 +1162,10 @@ Loesung beendet. 1.Kc7-c6 2.Kc6-b5 3.Kb5-b4 4.Nc5-a6 Nc8-f2 # 1.Kc7-d7 2.Kd7-e6 3.Nc5-d7 4.Nd7-f8 Nc8-a4 # - add_to_move_generation_stack: 33941 - play_move: 27288 - is_white_king_square_attacked: 11155 - is_black_king_square_attacked: 28902 + add_to_move_generation_stack: 33976 + play_move: 27305 + is_white_king_square_attacked: 11159 + is_black_king_square_attacked: 28919 Loesung beendet. @@ -1280,9 +1280,9 @@ Loesung beendet. OhneSchach 1.b7-b5 2.b5-b4 3.b4-b3 4.b3-b2 5.b2-b1=L 6.a2-a1=T 7.Ta1-a7 8.Lb1-e4 9.Le4-a8 10.Ta7-b7 Kf1-g2 = - add_to_move_generation_stack: 610595 - play_move: 152683 - is_white_king_square_attacked: 181180 + add_to_move_generation_stack: 611275 + play_move: 152771 + is_white_king_square_attacked: 181268 is_black_king_square_attacked: 0 Loesung beendet. @@ -1316,10 +1316,10 @@ Loesung beendet. OhneSchach 1.Kh7-g6 2.Kg6-f5 3.Kf5-e4 4.Ke4-d4 5.Kd4-c3 6.Kc3-b4 7.Kb4*b5 8.Kb5-a6 9.b6-b5 10.b5-b4 11.b4-b3 12.b3-b2 13.b2-b1=L 14.Lb1-e4 15.Le4-a8 16.Ka6-b7 Kd6-d5 = - add_to_move_generation_stack: 329349 - play_move: 71629 - is_white_king_square_attacked: 79541 - is_black_king_square_attacked: 76142 + add_to_move_generation_stack: 329669 + play_move: 71689 + is_white_king_square_attacked: 79597 + is_black_king_square_attacked: 76194 Loesung beendet. @@ -1482,10 +1482,10 @@ Loesung beendet. OhneSchach 1.a7-a5 2.a5-a4 3.a4-a3 4.a3-a2 5.a2-a1=L 6.La1-e5 7.Le5-c7 Kc8*c7 = - add_to_move_generation_stack: 12954 - play_move: 3848 - is_white_king_square_attacked: 3764 - is_black_king_square_attacked: 3614 + add_to_move_generation_stack: 13068 + play_move: 3872 + is_white_king_square_attacked: 3788 + is_black_king_square_attacked: 3629 Loesung beendet. @@ -1554,10 +1554,10 @@ Loesung beendet. OhneSchach 1.a7-a5 2.a5-a4 3.a4-a3 4.a3-a2 5.a2-a1=L 6.La1-e5 7.Le5-b8 8.Lb8-a7 Kc8-c7 = - add_to_move_generation_stack: 10009 - play_move: 4554 - is_white_king_square_attacked: 4496 - is_black_king_square_attacked: 4746 + add_to_move_generation_stack: 10057 + play_move: 4568 + is_white_king_square_attacked: 4510 + is_black_king_square_attacked: 4756 Loesung beendet. diff --git a/REGRESSIONTESTS/ghostchess.ref b/REGRESSIONTESTS/ghostchess.ref index 190c7f5d4..a70e835a6 100644 --- a/REGRESSIONTESTS/ghostchess.ref +++ b/REGRESSIONTESTS/ghostchess.ref @@ -112,10 +112,10 @@ Jubil\'e Feenschach-50, feenschach 1999, 3\`eme Recommand\'e 1.nSa6-b4 2.nSb4*d3 3.nSd3-c1[+wuRd3] 4.nSc1-e2 uRd3-e3 # 1.nSa6-c7 2.nSc7*e6 3.nSe6-f8[+wuBe6] 4.nSf8-g6 uBe6-f5 # - add_to_move_generation_stack: 13473 - play_move: 6467 - is_white_king_square_attacked: 1631 - is_black_king_square_attacked: 6467 + add_to_move_generation_stack: 13557 + play_move: 6512 + is_white_king_square_attacked: 1643 + is_black_king_square_attacked: 6512 solution finished. diff --git a/REGRESSIONTESTS/h_alt.out b/REGRESSIONTESTS/h_alt.out index e3a63b6aa..c48d723e2 100644 --- a/REGRESSIONTESTS/h_alt.out +++ b/REGRESSIONTESTS/h_alt.out @@ -239,10 +239,10 @@ a) 1.h5-h4 2.h4-h3 3.h3-h2 4.h2-h1=T 5.Th1-d1 6.Td1-d7 7.Td7-d8 Dh7-b7 # 1.h5-h4 2.h4-h3 3.h3-h2 4.h2-h1=T 5.Th1-d1 6.Td1-d7 7.Td7*h7 = - add_to_move_generation_stack: 12083 - play_move: 7725 - is_white_king_square_attacked: 5474 - is_black_king_square_attacked: 4802 + add_to_move_generation_stack: 13142 + play_move: 8386 + is_white_king_square_attacked: 5660 + is_black_king_square_attacked: 5463 b) sBh5-->d7 ser-reci-h(#)=7 diff --git a/REGRESSIONTESTS/haan.out b/REGRESSIONTESTS/haan.out index 613461b6a..3756d8228 100644 --- a/REGRESSIONTESTS/haan.out +++ b/REGRESSIONTESTS/haan.out @@ -298,10 +298,10 @@ b) wKc1-->b3 1.16g7-f1 2.16f1-e7 3.16e7-d1 4.16d1-c7 5.16c7-b1 6.16b1-a7 7.16a7-g6 8.16g6-a5 9.16a5-g4 10.16g4-a3 11.16a3-g2 # 20 (16g7-h1 ) 21 (16g7-a8 ) - add_to_move_generation_stack: 208642028 - play_move: 208642028 - is_white_king_square_attacked: 47159532 - is_black_king_square_attacked: 208357325 + add_to_move_generation_stack: 172423409 + play_move: 172423409 + is_white_king_square_attacked: 43072625 + is_black_king_square_attacked: 172169418 Loesung beendet. diff --git a/REGRESSIONTESTS/hauntedchess.ref b/REGRESSIONTESTS/hauntedchess.ref index 992cd3a03..e411fd6f2 100644 --- a/REGRESSIONTESTS/hauntedchess.ref +++ b/REGRESSIONTESTS/hauntedchess.ref @@ -320,10 +320,10 @@ Sake, Portoroz 2002, 2eme Mention d'Honneur HauntedChess 1.h2-h1=Q + Be4*h1 2.Kc1-c2 Kf1-e2 3.Kc2*b3 Bh1-a8[+bQh1] 4.Qh1*a8 Ke2-d2 5.Qa8-a3[+wBa8] Ba8-d5 # - add_to_move_generation_stack: 169655022 - play_move: 140492186 - is_white_king_square_attacked: 36411309 - is_black_king_square_attacked: 115510283 + add_to_move_generation_stack: 156050941 + play_move: 130481836 + is_white_king_square_attacked: 34629453 + is_black_king_square_attacked: 106030160 solution finished. diff --git a/REGRESSIONTESTS/hopper.out b/REGRESSIONTESTS/hopper.out index 29a23ce51..9fe325766 100644 --- a/REGRESSIONTESTS/hopper.out +++ b/REGRESSIONTESTS/hopper.out @@ -149,10 +149,10 @@ Loesung beendet. 1.Th5-d5 2.Td5-d6 3.Kc5-d4 4.Kd4-e5 5.La7-d4 Lb8*d6 # 1.Th5-h6 2.Kc5-d4 3.Th6-d6 4.Kd4-e5 5.La7-d4 Lb8*d6 # 1.Th5-h6 2.Th6-d6 3.Kc5-d4 4.Kd4-e5 5.La7-d4 Lb8*d6 # - add_to_move_generation_stack: 853996 - play_move: 768567 - is_white_king_square_attacked: 56258 - is_black_king_square_attacked: 768567 + add_to_move_generation_stack: 854119 + play_move: 768650 + is_white_king_square_attacked: 56264 + is_black_king_square_attacked: 768650 Loesung beendet. diff --git a/REGRESSIONTESTS/hpint.out b/REGRESSIONTESTS/hpint.out index 4c3c08cb6..b52fc71a9 100644 --- a/REGRESSIONTESTS/hpint.out +++ b/REGRESSIONTESTS/hpint.out @@ -69,8 +69,8 @@ Loesung beendet. 3 moegliche Stellungen in 1+4 1.Kg1*f1 2.Tg2-g1 3.g3-g2 4.Lh2-f4 5.Lf4-d2 Kd1*d2 = 3 moegliche Stellungen in 1+5 - add_to_move_generation_stack: 58155 - play_move: 57583 + add_to_move_generation_stack: 58160 + play_move: 57588 is_white_king_square_attacked: 88 is_black_king_square_attacked: 56732 @@ -109,10 +109,10 @@ Loesung beendet. 1.b2-b1=S 2.Sb1-a3 3.Sa3*b5 4.Sb5-c7 5.Sc7-a8 b7*a8=L = 1.b2-b1=T 2.Tb1*b5 3.Tb5-b6 4.Tb6-c6 5.Tc6*c8 b7*c8=D = 29 moegliche Stellungen in 1+5 - add_to_move_generation_stack: 923776 - play_move: 671726 - is_white_king_square_attacked: 6039 - is_black_king_square_attacked: 627741 + add_to_move_generation_stack: 922563 + play_move: 670513 + is_white_king_square_attacked: 5964 + is_black_king_square_attacked: 627477 Loesung beendet. @@ -196,10 +196,10 @@ a) 7 moegliche Stellungen in 3+0 1.f7-f8=L 2.a7-a8=T 3.Ta8-a7 4.Ta7-g7 = 38 moegliche Stellungen in 4+0 - add_to_move_generation_stack: 5220 - play_move: 4762 - is_white_king_square_attacked: 1265 - is_black_king_square_attacked: 892 + add_to_move_generation_stack: 5157 + play_move: 4663 + is_white_king_square_attacked: 1251 + is_black_king_square_attacked: 884 b) wKa6-->g2 @@ -249,10 +249,10 @@ Loesung beendet. 1.a2-a1=S 2.Sa1-c2 3.Sc2-b4 4.Sb4-a6 5.Sa6-b8 c7*b8=T = 1.a2-a1=L 2.La1-c3 3.Lc3-e1 4.Le1-h4 5.Lh4-d8 c7*d8=D = 35 moegliche Stellungen in 1+5 - add_to_move_generation_stack: 273429 - play_move: 184250 + add_to_move_generation_stack: 273453 + play_move: 184286 is_white_king_square_attacked: 871 - is_black_king_square_attacked: 176959 + is_black_king_square_attacked: 176950 Loesung beendet. @@ -287,8 +287,8 @@ Loesung beendet. 1.g2-g1=L 2.Lg1-a7 3.La7-b8 c7-c8=D = 1.g2-g1=T 2.Tg1-g8 3.Tg8-d8 + c7*d8=S = 9 moegliche Stellungen in 1+3 - add_to_move_generation_stack: 14439 - play_move: 14621 + add_to_move_generation_stack: 14519 + play_move: 14716 is_white_king_square_attacked: 230 is_black_king_square_attacked: 4648 @@ -366,8 +366,8 @@ Es fehlt ein weisser oder schwarzer Koenig 1.e7-e8=L 2.d7-d8=D 3.Dd8-d5 4.Le8-g6 = 1.e7-e8=S 2.d7-d8=T 3.Td8-d7 4.Td7*g7 = 168 moegliche Stellungen in 4+0 - add_to_move_generation_stack: 10010 - play_move: 12198 + add_to_move_generation_stack: 9994 + play_move: 12176 is_white_king_square_attacked: 0 is_black_king_square_attacked: 2334 @@ -633,10 +633,10 @@ a) 25 moegliche Stellungen in 1+8 1.d2-d1=D 2.Dd1*d4 3.Dd4-a1 4.d5-d4 5.d4-d3 6.d3-d2 7.d2-d1=L 8.Ld1-c2 9.Lc2-b1 Lf1-c4 # 29 moegliche Stellungen in 1+9 - add_to_move_generation_stack: 654427 - play_move: 660848 - is_white_king_square_attacked: 231353 - is_black_king_square_attacked: 272690 + add_to_move_generation_stack: 633596 + play_move: 639474 + is_white_king_square_attacked: 224358 + is_black_king_square_attacked: 263922 b) ser-h=9 @@ -650,10 +650,10 @@ b) ser-h=9 6 moegliche Stellungen in 1+8 1.d2-d1=T 2.Td1*d4 3.Td4-c4 4.d5-d4 5.d4-d3 6.d3-d2 7.d2-d1=S 8.Sd1-b2 9.Ka2-a3 Lf1*c4 = 10 moegliche Stellungen in 1+9 - add_to_move_generation_stack: 315214 - play_move: 311165 - is_white_king_square_attacked: 93660 - is_black_king_square_attacked: 148317 + add_to_move_generation_stack: 307532 + play_move: 303189 + is_white_king_square_attacked: 91024 + is_black_king_square_attacked: 144917 Loesung beendet. @@ -700,10 +700,10 @@ a) 89 moegliche Stellungen in 1+13 1.d7-d6 2.d6*c5 3.c5-c4 4.c4-c3 5.c3*d2 6.d2-d1=D 7.Dd1*d4 8.Dd4-a1 9.d5-d4 10.d4-d3 11.d3-d2 12.d2-d1=L 13.Ld1-c2 14.Lc2-b1 Lf1-c4 # 131 moegliche Stellungen in 1+14 - add_to_move_generation_stack: 884995 - play_move: 890351 - is_white_king_square_attacked: 303718 - is_black_king_square_attacked: 393718 + add_to_move_generation_stack: 814778 + play_move: 819531 + is_white_king_square_attacked: 281564 + is_black_king_square_attacked: 360200 b) ser-h=14 @@ -722,10 +722,10 @@ b) ser-h=14 27 moegliche Stellungen in 1+13 1.d7-d6 2.d6*c5 3.c5-c4 4.c4-c3 5.c3*d2 6.d2-d1=T 7.Td1*d4 8.Td4-c4 9.d5-d4 10.d4-d3 11.d3-d2 12.d2-d1=S 13.Sd1-b2 14.Ka2-a3 Lf1*c4 = 27 moegliche Stellungen in 1+14 - add_to_move_generation_stack: 545129 - play_move: 524171 - is_white_king_square_attacked: 137061 - is_black_king_square_attacked: 303061 + add_to_move_generation_stack: 519643 + play_move: 498313 + is_white_king_square_attacked: 128278 + is_black_king_square_attacked: 289913 Loesung beendet. @@ -767,10 +767,10 @@ a) 25 moegliche Stellungen in 1+8 1.Ke6-f7 2.e7-e5 3.e5*f4 4.f4-f3 5.f3*e2 6.e2-e1=T 7.Te1-e7 8.Kf7-e6 9.Lg8-f7 Td1-d6 # 38 moegliche Stellungen in 1+9 - add_to_move_generation_stack: 32360 - play_move: 32187 - is_white_king_square_attacked: 7397 - is_black_king_square_attacked: 10049 + add_to_move_generation_stack: 30155 + play_move: 29982 + is_white_king_square_attacked: 6887 + is_black_king_square_attacked: 9420 b) ser-h=9 @@ -784,10 +784,10 @@ b) ser-h=9 23 moegliche Stellungen in 1+8 1.Lg8-f7 2.Lf7-e8 3.Le8-b5 4.Lb5-d3 5.Ke6-d5 6.e7-e5 7.e5-e4 8.e4-e3 9.Kd5-e4 Td1*d3 = 44 moegliche Stellungen in 1+9 - add_to_move_generation_stack: 90905 - play_move: 86503 - is_white_king_square_attacked: 10618 - is_black_king_square_attacked: 56677 + add_to_move_generation_stack: 87214 + play_move: 82812 + is_white_king_square_attacked: 9784 + is_black_king_square_attacked: 55435 Loesung beendet. @@ -826,10 +826,10 @@ a) 1 moegliche Stellungen in 1+5 1.a2-a1=S 2.Sa1-b3 3.Sb3-c5 4.Sc5-d7 5.Kf8-e8 6.Ke8-d8 Lc6*d7 = 1 moegliche Stellungen in 1+6 - add_to_move_generation_stack: 23217 - play_move: 21538 - is_white_king_square_attacked: 4553 - is_black_king_square_attacked: 10068 + add_to_move_generation_stack: 22778 + play_move: 21081 + is_white_king_square_attacked: 4455 + is_black_king_square_attacked: 9930 b) sBa2-->b3 @@ -840,10 +840,10 @@ b) sBa2-->b3 1 moegliche Stellungen in 1+5 1.b3-b2 2.b2-b1=L 3.Lb1-f5 4.Lf5-d7 5.Kf8-e8 6.Ke8-d8 Lc6*d7 = 1 moegliche Stellungen in 1+6 - add_to_move_generation_stack: 9562 - play_move: 8528 - is_white_king_square_attacked: 1014 - is_black_king_square_attacked: 4073 + add_to_move_generation_stack: 9417 + play_move: 8374 + is_white_king_square_attacked: 998 + is_black_king_square_attacked: 4039 Loesung beendet. @@ -883,10 +883,10 @@ a) 2862 moegliche Stellungen in 5+0 1.f7-f8=L 2.Lf8-c5 3.Lc5-b6 4.f6-f7 5.f7*g8=L 6.Lg8-d5 # 8122 moegliche Stellungen in 6+0 - add_to_move_generation_stack: 977582 - play_move: 1052676 - is_white_king_square_attacked: 208497 - is_black_king_square_attacked: 222822 + add_to_move_generation_stack: 961406 + play_move: 1035934 + is_white_king_square_attacked: 207450 + is_black_king_square_attacked: 221860 b) ser-=6 @@ -897,10 +897,10 @@ b) ser-=6 2445 moegliche Stellungen in 5+0 1.f7*g8=L 2.Lg8-c4 3.Lc4*a6 4.f6-f7 5.f7-f8=L 6.Lf8-c5 = 7682 moegliche Stellungen in 6+0 - add_to_move_generation_stack: 1302830 - play_move: 1268862 - is_white_king_square_attacked: 198887 - is_black_king_square_attacked: 335170 + add_to_move_generation_stack: 1282603 + play_move: 1248185 + is_white_king_square_attacked: 196815 + is_black_king_square_attacked: 333247 Loesung beendet. @@ -939,10 +939,10 @@ a) 123 moegliche Stellungen in 3+0 1.c7-c8=L 2.Lc8-b7 3.Lb7-e4 4.f7-f8=D # 857 moegliche Stellungen in 4+0 - add_to_move_generation_stack: 40030 - play_move: 54166 - is_white_king_square_attacked: 9158 - is_black_king_square_attacked: 11598 + add_to_move_generation_stack: 39855 + play_move: 53871 + is_white_king_square_attacked: 9146 + is_black_king_square_attacked: 11586 b) ser-=4 @@ -951,10 +951,10 @@ b) ser-=4 30 moegliche Stellungen in 3+0 1.f7-f8=S 2.c7-c8=T 3.Tc8*c3 4.Tc3-g3 = 627 moegliche Stellungen in 4+0 - add_to_move_generation_stack: 29584 - play_move: 37792 - is_white_king_square_attacked: 3536 - is_black_king_square_attacked: 8523 + add_to_move_generation_stack: 29485 + play_move: 37639 + is_white_king_square_attacked: 3530 + is_black_king_square_attacked: 8517 Loesung beendet. @@ -1047,10 +1047,10 @@ Loesung beendet. 1.f4-f3 2.f3-f2 3.f2-f1=S 4.Sf1-e3 5.Se3-c2 6.Sc2-b4 7.g4-g3 8.g3-g2 9.g2-g1=L 10.Lg1-b6 11.Lb6-a5 Tc6-a6 = 1.g4-g3 2.g3-g2 3.g2-g1=L 4.Lg1-c5 5.Lc5-b4 6.f4-f3 7.f3-f2 8.f2-f1=S 9.Sf1-d2 10.Sd2-b3 11.Sb3-a5 Tc6-a6 = 175 moegliche Stellungen in 1+11 - add_to_move_generation_stack: 3007971 - play_move: 2806728 - is_white_king_square_attacked: 292681 - is_black_king_square_attacked: 1219037 + add_to_move_generation_stack: 2956784 + play_move: 2754635 + is_white_king_square_attacked: 283925 + is_black_king_square_attacked: 1207611 Loesung beendet. @@ -1089,10 +1089,10 @@ Loesung beendet. 667 moegliche Stellungen in 7+7 1.e2-e1=S Kc4*c5 2.Se1-f3 g2*f3 3.c2-c1=L f3*g4 4.Lc1-h6 g4-g5 5.g3-g2 g5*h6 6.g2-g1=T h6-h7 7.Tg1-g8 h7*g8=D + 8.Kb8-a7 Dg8-c8 = 939 moegliche Stellungen in 8+8 - add_to_move_generation_stack: 80937161 - play_move: 81340018 - is_white_king_square_attacked: 3536973 - is_black_king_square_attacked: 22199893 + add_to_move_generation_stack: 80639675 + play_move: 81026734 + is_white_king_square_attacked: 3533546 + is_black_king_square_attacked: 22151247 Loesung beendet. @@ -1131,10 +1131,10 @@ Loesung beendet. 61 moegliche Stellungen in 7+7 1.c2-c1=S Kh8*g7 2.Sc1-b3 a2*b3 3.g2-g1=L b3-b4 4.Lg1-c5 b4*c5 5.a3-a2 c5*b6 6.a2-a1=T b6-b7 7.Ta1-a3 b7-b8=D 8.Ta3-g3 + Db8*g3 = 204 moegliche Stellungen in 8+8 - add_to_move_generation_stack: 6046006 - play_move: 6021471 - is_white_king_square_attacked: 454125 - is_black_king_square_attacked: 1666906 + add_to_move_generation_stack: 5997389 + play_move: 5969962 + is_white_king_square_attacked: 448512 + is_black_king_square_attacked: 1658239 Loesung beendet. @@ -1355,10 +1355,10 @@ Loesung beendet. 429 moegliche Stellungen in 4+4 1.b2-b1=T a4-a5 2.Tb1-b6 a5*b6 3.e2-e1=S b6-b7 4.Se1-g2 b7-b8=D 5.h2-h1=L Db8-g3 = 6260 moegliche Stellungen in 5+5 - add_to_move_generation_stack: 16019322 - play_move: 16142253 - is_white_king_square_attacked: 389437 - is_black_king_square_attacked: 5164592 + add_to_move_generation_stack: 16013674 + play_move: 16136128 + is_white_king_square_attacked: 389417 + is_black_king_square_attacked: 5164539 Loesung beendet. @@ -1510,10 +1510,10 @@ a) 7 moegliche Stellungen in 1+5 1.c7-c5 2.c5-c4 3.c4-c3 4.c3-c2 5.c2-c1=L 6.Lc1-f4 Le5*f4 = 7 moegliche Stellungen in 1+6 - add_to_move_generation_stack: 9444 - play_move: 7964 - is_white_king_square_attacked: 239 - is_black_king_square_attacked: 4234 + add_to_move_generation_stack: 8618 + play_move: 7120 + is_white_king_square_attacked: 220 + is_black_king_square_attacked: 4120 b) sBc7-->d6 @@ -1660,8 +1660,8 @@ Loesung beendet. 1.g2-g1=T 2.Tg1-g4 3.Tg4-f4 Se2*f4 = 1.g2-g1=L 2.Lg1-h2 3.Lh2-f4 Se2*f4 = 2 moegliche Stellungen in 1+3 - add_to_move_generation_stack: 7429 - play_move: 6431 + add_to_move_generation_stack: 7486 + play_move: 6488 is_white_king_square_attacked: 48 is_black_king_square_attacked: 4185 @@ -1701,10 +1701,10 @@ Loesung beendet. 1.a2-a1=L 2.La1-b2 3.Lb2-c1 4.Lc1-h6 5.Lh6-f8 e7*f8=D = 1.a2-a1=S 2.Sa1-c2 3.Sc2-d4 4.Sd4*e6 5.Se6-d8 e7*d8=T = 12 moegliche Stellungen in 1+5 - add_to_move_generation_stack: 34222 - play_move: 29971 + add_to_move_generation_stack: 34315 + play_move: 30079 is_white_king_square_attacked: 1099 - is_black_king_square_attacked: 17928 + is_black_king_square_attacked: 17912 Loesung beendet. @@ -2203,10 +2203,10 @@ Loesung beendet. 24 moegliche Stellungen in 1+13 1.Df3-a8 2.Kc8-b7 3.Kb7-c6 4.Kc6-d5 5.Kd5-e4 6.Ke4-f3 7.Kf3-g2 8.Kg2-g1 9.Da8-h1 10.g3-g2 11.Lc7-h2 12.g4-g3 13.Ld7-h3 14.g5-g4 Ke1-e2 = 24 moegliche Stellungen in 1+14 - add_to_move_generation_stack: 3789754 - play_move: 3959002 - is_white_king_square_attacked: 374198 - is_black_king_square_attacked: 746667 + add_to_move_generation_stack: 3746786 + play_move: 3913772 + is_white_king_square_attacked: 369174 + is_black_king_square_attacked: 741611 Loesung beendet. @@ -2357,10 +2357,10 @@ Loesung beendet. 711 moegliche Stellungen in 1+7 1.e2-e1=S 2.Sg1-e2 3.g2-g1=T 4.Se1-g2 5.Sg2-f4 6.Tg1-g2 7.Se2-g1 8.Sf4-e2 Dc1-d2 = 1329 moegliche Stellungen in 1+8 - add_to_move_generation_stack: 63561089 - play_move: 58448511 - is_white_king_square_attacked: 457678 - is_black_king_square_attacked: 56027264 + add_to_move_generation_stack: 63498251 + play_move: 58383069 + is_white_king_square_attacked: 449412 + is_black_king_square_attacked: 56018649 Loesung beendet. @@ -2396,10 +2396,10 @@ Loesung beendet. 109 moegliche Stellungen in 4+4 1.b7-b5 e2-e4 2.b5-b4 e4-e5 3.b4-b3 e5*f6 4.b3-b2 f6-f7 5.b2*a1=T f7-f8=S = 675 moegliche Stellungen in 5+5 - add_to_move_generation_stack: 10126333 - play_move: 9842289 - is_white_king_square_attacked: 231254 - is_black_king_square_attacked: 2591311 + add_to_move_generation_stack: 10093672 + play_move: 9809025 + is_white_king_square_attacked: 230413 + is_black_king_square_attacked: 2584795 Loesung beendet. @@ -2439,10 +2439,10 @@ Loesung beendet. 134 moegliche Stellungen in 7+7 1.d2-d1=L Kb1-a1 2.Ld1-b3 a2*b3 3.f2-f1=L b3-b4 4.Lf1-a6 b4-b5 5.g2-g1=L b5*a6 6.Lg1-h2 a6-a7 7.Lh2-b8 a7*b8=D 8.a3-a2 Db8-g3 = 682 moegliche Stellungen in 8+8 - add_to_move_generation_stack: 7615952 - play_move: 6957131 - is_white_king_square_attacked: 76788 - is_black_king_square_attacked: 5499027 + add_to_move_generation_stack: 7615420 + play_move: 6956527 + is_white_king_square_attacked: 76760 + is_black_king_square_attacked: 5499017 Loesung beendet. @@ -2517,10 +2517,10 @@ a) 1 moegliche Stellungen in 3+3 1.Kf7-g6 Sg3-e4 2.Lh4-g3 Kh3*g3 3.Kg6-h5 Kg3-f4 4.Kh5-h4 Se4*f6 = 7 moegliche Stellungen in 4+4 - add_to_move_generation_stack: 31399 - play_move: 31399 + add_to_move_generation_stack: 31350 + play_move: 31350 is_white_king_square_attacked: 2036 - is_black_king_square_attacked: 4532 + is_black_king_square_attacked: 4528 b) sSf6-->h1 @@ -2529,10 +2529,10 @@ b) sSf6-->h1 1 moegliche Stellungen in 3+3 1.Kf7-g6 Sg3*h1 2.Lh4-g3 Kh3*g3 3.Kg6-h5 Kg3-f4 4.Kh5-h4 Sh1-g3 = 7 moegliche Stellungen in 4+4 - add_to_move_generation_stack: 21916 - play_move: 21916 + add_to_move_generation_stack: 21876 + play_move: 21876 is_white_king_square_attacked: 1509 - is_black_king_square_attacked: 3111 + is_black_king_square_attacked: 3105 Loesung beendet. @@ -2683,10 +2683,10 @@ Loesung beendet. 153 moegliche Stellungen in 6+6 1.e2-e1=L Kc2-c1 2.Le1-b4 a3*b4 3.g2-g1=L b4-b5 4.Lg1-a7 b5-b6 5.h3-h2 b6*a7 6.h2-h1=L a7-a8=L 7.Lh1-d5 La8*d5 = 547 moegliche Stellungen in 7+7 - add_to_move_generation_stack: 96094539 - play_move: 104723724 - is_white_king_square_attacked: 3411026 - is_black_king_square_attacked: 21828689 + add_to_move_generation_stack: 96087187 + play_move: 104715604 + is_white_king_square_attacked: 3410858 + is_black_king_square_attacked: 21828385 Loesung beendet. @@ -2804,10 +2804,10 @@ Loesung beendet. 15 moegliche Stellungen in 1+11 1.Sa8*c7 2.Da7-a8 3.Lb8-a7 4.Tb7-b8 5.Kc8-b7 6.Kb7-a6 7.Ka6-a5 8.Lb5-a6 9.La6-c8 10.Ka5-a6 11.Ka6-b7 12.Sc7-b5 + a4*b5 = 23 moegliche Stellungen in 1+12 - add_to_move_generation_stack: 24291865 - play_move: 22061652 - is_white_king_square_attacked: 1506070 - is_black_king_square_attacked: 17091041 + add_to_move_generation_stack: 24198270 + play_move: 21968057 + is_white_king_square_attacked: 1483736 + is_black_king_square_attacked: 17067788 Loesung beendet. @@ -2844,10 +2844,10 @@ Loesung beendet. 9 moegliche Stellungen in 5+5 1.c2-c1=L g3-g4 2.Lc1-h6 g4-g5 3.a2-a1=L g5*h6 4.La1-g7 h6*g7 5.f2-f1=L g7-g8=T 6.Lf1-g2 + Tg8*g2 = 64 moegliche Stellungen in 6+6 - add_to_move_generation_stack: 2327413 - play_move: 2418868 + add_to_move_generation_stack: 2327399 + play_move: 2418842 is_white_king_square_attacked: 64398 - is_black_king_square_attacked: 929671 + is_black_king_square_attacked: 929669 Loesung beendet. @@ -2916,10 +2916,10 @@ c) wKg4-->f1 wBf2-->a2 2 moegliche Stellungen in 5+5 1.d7-d5 a2-a4 2.d5-d4 a4-a5 3.d4-d3 a5-a6 4.d3-d2 a6-a7 5.d2-d1=L a7-a8=D 6.Ld1-f3 Da8*f3 = 21 moegliche Stellungen in 6+6 - add_to_move_generation_stack: 36339 - play_move: 37675 - is_white_king_square_attacked: 2853 - is_black_king_square_attacked: 9761 + add_to_move_generation_stack: 35339 + play_move: 36633 + is_white_king_square_attacked: 2777 + is_black_king_square_attacked: 9567 Loesung beendet. @@ -2994,10 +2994,10 @@ Loesung beendet. 373 moegliche Stellungen in 4+4 1.a7-a5 f2-f4 2.a5-a4 f4-f5 3.a4-a3 f5-f6 4.a3-a2 f6*g7 5.a2-a1=S g7-g8=T = 3279 moegliche Stellungen in 5+5 - add_to_move_generation_stack: 4127133 - play_move: 3484232 - is_white_king_square_attacked: 135786 - is_black_king_square_attacked: 1622516 + add_to_move_generation_stack: 4123196 + play_move: 3480277 + is_white_king_square_attacked: 135603 + is_black_king_square_attacked: 1622241 Loesung beendet. @@ -3112,10 +3112,10 @@ Loesung beendet. 65 moegliche Stellungen in 4+4 1.a7-a5 f2-f4 2.a5-a4 f4-f5 3.a4-a3 f5-f6 4.a3-a2 f6*e7 5.a2-a1=L e7-e8=S = 154 moegliche Stellungen in 5+5 - add_to_move_generation_stack: 8610187 - play_move: 8612553 - is_white_king_square_attacked: 270158 - is_black_king_square_attacked: 1040537 + add_to_move_generation_stack: 8579228 + play_move: 8580925 + is_white_king_square_attacked: 269825 + is_black_king_square_attacked: 1037955 Loesung beendet. @@ -3151,10 +3151,10 @@ Loesung beendet. 355 moegliche Stellungen in 4+4 1.a7-a5 h2-h4 2.a5-a4 h4-h5 3.a4-a3 h5*g6 4.a3-a2 g6*h7 5.a2-a1=S h7-h8=L = 1990 moegliche Stellungen in 5+5 - add_to_move_generation_stack: 18796372 - play_move: 18247423 - is_white_king_square_attacked: 501386 - is_black_king_square_attacked: 3539656 + add_to_move_generation_stack: 18770946 + play_move: 18221913 + is_white_king_square_attacked: 500970 + is_black_king_square_attacked: 3538168 Loesung beendet. @@ -3190,10 +3190,10 @@ Loesung beendet. 77 moegliche Stellungen in 4+4 1.a7-a5 h2-h4 2.a5-a4 h4-h5 3.a4-a3 h5*g6 4.a3-a2 g6*h7 5.a2-a1=L h7-h8=L = 207 moegliche Stellungen in 5+5 - add_to_move_generation_stack: 5202492 - play_move: 5158253 - is_white_king_square_attacked: 135147 - is_black_king_square_attacked: 803454 + add_to_move_generation_stack: 5191230 + play_move: 5146760 + is_white_king_square_attacked: 135086 + is_black_king_square_attacked: 802891 Loesung beendet. @@ -3229,10 +3229,10 @@ Loesung beendet. 123 moegliche Stellungen in 4+4 1.b7-b5 e2-e4 2.b5-b4 e4-e5 3.b4-b3 e5-e6 4.b3-b2 e6*f7 5.b2*a1=T f7-f8=L = 1627 moegliche Stellungen in 5+5 - add_to_move_generation_stack: 8114863 - play_move: 7768947 - is_white_king_square_attacked: 158672 - is_black_king_square_attacked: 2116135 + add_to_move_generation_stack: 8105946 + play_move: 7759958 + is_white_king_square_attacked: 158597 + is_black_king_square_attacked: 2115777 Loesung beendet. @@ -3268,10 +3268,10 @@ Loesung beendet. 83 moegliche Stellungen in 4+4 1.a7-a5 e2-e4 2.a5-a4 e4-e5 3.a4-a3 e5*f6 4.a3-a2 f6-f7 5.a2-a1=S f7*g8=T = 385 moegliche Stellungen in 5+5 - add_to_move_generation_stack: 3925756 - play_move: 3823234 - is_white_king_square_attacked: 94768 - is_black_king_square_attacked: 817705 + add_to_move_generation_stack: 3917400 + play_move: 3814776 + is_white_king_square_attacked: 94710 + is_black_king_square_attacked: 817127 Loesung beendet. @@ -3307,10 +3307,10 @@ Loesung beendet. 238 moegliche Stellungen in 4+4 1.a7-a5 e2-e4 2.a5-a4 e4*f5 3.a4-a3 f5-f6 4.a3-a2 f6-f7 5.a2-a1=L f7*g8=T = 1158 moegliche Stellungen in 5+5 - add_to_move_generation_stack: 10860326 - play_move: 10721255 - is_white_king_square_attacked: 363844 - is_black_king_square_attacked: 2136231 + add_to_move_generation_stack: 10846579 + play_move: 10707412 + is_white_king_square_attacked: 363449 + is_black_king_square_attacked: 2134955 Loesung beendet. @@ -3346,10 +3346,10 @@ Loesung beendet. 142 moegliche Stellungen in 4+4 1.a7-a5 f2-f4 2.a5-a4 f4-f5 3.a4-a3 f5-f6 4.a3-a2 f6*e7 5.a2-a1=L e7-e8=T = 1300 moegliche Stellungen in 5+5 - add_to_move_generation_stack: 2926833 - play_move: 2839931 - is_white_king_square_attacked: 138620 - is_black_king_square_attacked: 670465 + add_to_move_generation_stack: 2920005 + play_move: 2832920 + is_white_king_square_attacked: 138330 + is_black_king_square_attacked: 670012 Loesung beendet. @@ -3385,10 +3385,10 @@ Loesung beendet. 9 moegliche Stellungen in 4+4 1.a7-a5 g2-g4 2.a5-a4 g4*f5 3.a4-a3 f5-f6 4.a3-a2 f6-f7 5.a2-a1=S f7-f8=D = 136 moegliche Stellungen in 5+5 - add_to_move_generation_stack: 1439495 - play_move: 1397598 - is_white_king_square_attacked: 52742 - is_black_king_square_attacked: 267837 + add_to_move_generation_stack: 1439251 + play_move: 1397354 + is_white_king_square_attacked: 52732 + is_black_king_square_attacked: 267817 Loesung beendet. @@ -3425,10 +3425,10 @@ Loesung beendet. 231 moegliche Stellungen in 4+4 1.a7-a5 c2-c4 2.a5-a4 c4*d5 3.a4-a3 d5-d6 4.a3-a2 d6-d7 5.a2-a1=L d7-d8=D = 1938 moegliche Stellungen in 5+5 - add_to_move_generation_stack: 5270446 - play_move: 5099951 - is_white_king_square_attacked: 238971 - is_black_king_square_attacked: 1281075 + add_to_move_generation_stack: 5260811 + play_move: 5090289 + is_white_king_square_attacked: 238712 + is_black_king_square_attacked: 1280012 Loesung beendet. @@ -3464,10 +3464,10 @@ Loesung beendet. 5 moegliche Stellungen in 4+4 1.a7-a5 f2-f4 2.a5-a4 f4-f5 3.a4-a3 f5-f6 4.a3-a2 f6-f7 5.a2-a1=L f7-f8=D = 24 moegliche Stellungen in 5+5 - add_to_move_generation_stack: 1625753 - play_move: 1618489 - is_white_king_square_attacked: 49319 - is_black_king_square_attacked: 308197 + add_to_move_generation_stack: 1622143 + play_move: 1614834 + is_white_king_square_attacked: 49294 + is_black_king_square_attacked: 307795 Loesung beendet. @@ -3504,8 +3504,8 @@ Loesung beendet. 6 moegliche Stellungen in 4+4 1.a7-a5 f2-f4 2.a5-a4 f4-f5 3.a4-a3 f5-f6 4.a3-a2 f6-f7 5.a2-a1=L f7-f8=D = 21 moegliche Stellungen in 5+5 - add_to_move_generation_stack: 232766 - play_move: 240046 + add_to_move_generation_stack: 232652 + play_move: 239932 is_white_king_square_attacked: 7803 is_black_king_square_attacked: 37672 @@ -3544,10 +3544,10 @@ Loesung beendet. 4 moegliche Stellungen in 4+4 1.b7-b5 f2-f4 2.b5-b4 f4-f5 3.b4-b3 f5-f6 4.b3-b2 f6-f7 5.b2*a1=T f7-f8=D = 158 moegliche Stellungen in 5+5 - add_to_move_generation_stack: 1233371 - play_move: 1145506 + add_to_move_generation_stack: 1233255 + play_move: 1145390 is_white_king_square_attacked: 19397 - is_black_king_square_attacked: 372663 + is_black_king_square_attacked: 372655 Loesung beendet. @@ -3630,10 +3630,10 @@ Loesung beendet. 49 moegliche Stellungen in 1+4 1.d5*e4 2.Kd6-d5 3.Kd5-d4 4.d7-d5 5.e4*d3 + c2*d3 = 61 moegliche Stellungen in 1+5 - add_to_move_generation_stack: 17180 - play_move: 17204 - is_white_king_square_attacked: 1552 - is_black_king_square_attacked: 9148 + add_to_move_generation_stack: 16474 + play_move: 16498 + is_white_king_square_attacked: 1490 + is_black_king_square_attacked: 9042 Loesung beendet. @@ -3670,10 +3670,10 @@ Loesung beendet. 8 moegliche Stellungen in 5+5 1.Kb2-c3 a2*b3 2.Kc3-d4 b3*c4 3.Kd4-e5 c4*d5 4.Ke5-f6 d5*e6 5.Kf6-g7 e6*f7 6.Kg7-h8 Kh5-h6 = 58 moegliche Stellungen in 6+6 - add_to_move_generation_stack: 211844 - play_move: 200305 - is_white_king_square_attacked: 7684 - is_black_king_square_attacked: 65624 + add_to_move_generation_stack: 211115 + play_move: 199576 + is_white_king_square_attacked: 7675 + is_black_king_square_attacked: 65555 Loesung beendet. @@ -3860,10 +3860,10 @@ a) 1.c2-c1=S 2.Sc1-e2 3.Se2-g3 4.Kf3-g2 5.Kg2-h1 Dg7*g3 = 1.c2-c1=T 2.Tc1-g1 3.Tg1-g3 4.Kf3-g2 5.Kg2-h1 Dg7*g3 = 4 moegliche Stellungen in 1+5 - add_to_move_generation_stack: 11322 - play_move: 10236 - is_white_king_square_attacked: 772 - is_black_king_square_attacked: 5315 + add_to_move_generation_stack: 11154 + play_move: 10059 + is_white_king_square_attacked: 769 + is_black_king_square_attacked: 5303 b) wKe5-->b3 @@ -3874,10 +3874,10 @@ b) wKe5-->b3 1.c2-c1=D 2.Dc1-g5 3.Kf3-g2 4.Kg2-h1 5.Dg5-g3 + Dg7*g3 = 1.c2-c1=L 2.Lc1-f4 3.Lf4-g3 4.Kf3-g2 5.Kg2-h1 Dg7*g3 = 8 moegliche Stellungen in 1+5 - add_to_move_generation_stack: 14172 - play_move: 13258 - is_white_king_square_attacked: 985 - is_black_king_square_attacked: 5873 + add_to_move_generation_stack: 13969 + play_move: 13031 + is_white_king_square_attacked: 976 + is_black_king_square_attacked: 5853 Loesung beendet. @@ -3952,10 +3952,10 @@ Loesung beendet. 1.c2-c1=T 2.Tc1-g1 3.Tg1-g3 Dc3*g3 = 1.c2-c1=L 2.Lc1-f4 3.Lf4-g3 + Dc3*g3 = 1 moegliche Stellungen in 1+3 - add_to_move_generation_stack: 10827 - play_move: 9585 + add_to_move_generation_stack: 11039 + play_move: 9791 is_white_king_square_attacked: 109 - is_black_king_square_attacked: 3681 + is_black_king_square_attacked: 3679 Loesung beendet. @@ -4033,10 +4033,10 @@ Loesung beendet. 59 moegliche Stellungen in 6+6 1.a2-a1=L e2-e4 2.La1-f6 e4-e5 3.h2-h1=T e5*f6 4.Th1-h8 f6-f7 5.Th8-g8 f7*g8=D 6.d2-d1=S Dg8*g3 7.Sd1-c3 Dg3*c3 = 297 moegliche Stellungen in 7+7 - add_to_move_generation_stack: 141507054 - play_move: 155016809 - is_white_king_square_attacked: 9217156 - is_black_king_square_attacked: 29810155 + add_to_move_generation_stack: 140234455 + play_move: 153608856 + is_white_king_square_attacked: 9135800 + is_black_king_square_attacked: 29594896 Loesung beendet. @@ -4075,10 +4075,10 @@ Loesung beendet. 123 moegliche Stellungen in 7+7 1.f2-f1=S Kd7-c6 2.Sf1-g3 h2*g3 3.c2-c1=L g3-g4 4.Lc1-h6 g4-g5 5.h3-h2 g5*h6 6.h2-h1=T h6*g7 7.Th1-h8 g7*h8=D 8.Kb3-a4 Dh8-c3 = 437 moegliche Stellungen in 8+8 - add_to_move_generation_stack: 11844643 - play_move: 11928477 - is_white_king_square_attacked: 783004 - is_black_king_square_attacked: 3405516 + add_to_move_generation_stack: 11742765 + play_move: 11817488 + is_white_king_square_attacked: 775577 + is_black_king_square_attacked: 3392051 Loesung beendet. @@ -4109,10 +4109,10 @@ Loesung beendet. ser-=6 3 + 1 1.f7-f8=S 2.Sf8-e6 3.Se6-g7 4.h7-h8=D 5.Dh8-h5 6.Sg7-e6 = - add_to_move_generation_stack: 565933 - play_move: 656441 - is_white_king_square_attacked: 88127 - is_black_king_square_attacked: 92210 + add_to_move_generation_stack: 555134 + play_move: 642474 + is_white_king_square_attacked: 86968 + is_black_king_square_attacked: 91058 Loesung beendet. @@ -4149,8 +4149,8 @@ Loesung beendet. 1.a2-a1=T 2.Ta1-b1 3.Tb1-b4 a3*b4 = 1.a2-a1=L 2.La1-c3 3.Lc3-b4 a3*b4 = 2 moegliche Stellungen in 1+3 - add_to_move_generation_stack: 7349 - play_move: 6408 + add_to_move_generation_stack: 7398 + play_move: 6457 is_white_king_square_attacked: 49 is_black_king_square_attacked: 3842 @@ -4189,8 +4189,8 @@ Loesung beendet. 1.c2-c1=T 2.Tc1-g1 3.Tg1-g3 Dd3*g3 = 1.c2-c1=L 2.Lc1-f4 3.Lf4-g3 + Dd3*g3 = 12 moegliche Stellungen in 1+3 - add_to_move_generation_stack: 17976 - play_move: 15360 + add_to_move_generation_stack: 18174 + play_move: 15558 is_white_king_square_attacked: 195 is_black_king_square_attacked: 7221 @@ -4306,8 +4306,8 @@ Loesung beendet. 1.f2-f1=T 2.Tf1-b1 3.Tb1-b3 Kc2*b3 = 1.f2-f1=L 2.Lf1-c4 3.Lc4-b3 + Kc2*b3 = 30 moegliche Stellungen in 1+3 - add_to_move_generation_stack: 13420 - play_move: 12672 + add_to_move_generation_stack: 13816 + play_move: 13068 is_white_king_square_attacked: 86 is_black_king_square_attacked: 4277 @@ -4438,10 +4438,10 @@ Loesung beendet. 1 moegliche Stellungen in 1+17 1.Kg8-h8 2.Tf8-g8 3.Tg8-g7 4.Kh8-h7 5.Kh7-h6 6.Tg7-g5 7.Tg5-f5 8.Kh6-g5 9.Kg5-f4 10.Kf4-e5 11.Ke5-d6 12.Tf5-e5 13.Te5-e7 14.Kd6-d7 15.Kd7-c8 16.Kc8-b8 17.Kb8-a8 18.Te7-b7 + Tf7*b7 = 1 moegliche Stellungen in 1+18 - add_to_move_generation_stack: 225353 - play_move: 225353 - is_white_king_square_attacked: 115913 - is_black_king_square_attacked: 151268 + add_to_move_generation_stack: 222200 + play_move: 222200 + is_white_king_square_attacked: 113900 + is_black_king_square_attacked: 148838 Loesung beendet. @@ -4487,10 +4487,10 @@ Loesung beendet. 1 moegliche Stellungen in 13+0 1.Ka8-a7 2.Lb6-c7 3.Ka7-b6 4.Kb6-c5 5.Kc5-d4 6.Kd4-e3 7.Ke3-f2 8.Kf2-g1 9.Kg1*h1 10.Kh1-g2 11.Kg2-f3 12.Kf3-e4 13.Ke4-d5 14.Kd5-c6 = 1 moegliche Stellungen in 14+0 - add_to_move_generation_stack: 214672 - play_move: 214672 - is_white_king_square_attacked: 148145 - is_black_king_square_attacked: 129564 + add_to_move_generation_stack: 206960 + play_move: 206960 + is_white_king_square_attacked: 142824 + is_black_king_square_attacked: 125139 Loesung beendet. @@ -4530,10 +4530,10 @@ a) 1 moegliche Stellungen in 6+0 1.e2-e4 2.e4-e5 3.e5-e6 4.e6-e7 5.e7-e8=S 6.Se8-f6 7.Sf6-d7 = 14 moegliche Stellungen in 7+0 - add_to_move_generation_stack: 2248 - play_move: 2359 - is_white_king_square_attacked: 366 - is_black_king_square_attacked: 405 + add_to_move_generation_stack: 1987 + play_move: 2080 + is_white_king_square_attacked: 345 + is_black_king_square_attacked: 381 b) sKa8-->b8 @@ -4545,10 +4545,10 @@ b) sKa8-->b8 1 moegliche Stellungen in 6+0 1.e2-e4 2.e4-e5 3.e5-e6 4.e6-e7 5.e7-e8=L 6.Le8-c6 7.Lc6-b7 = 4 moegliche Stellungen in 7+0 - add_to_move_generation_stack: 656 - play_move: 676 - is_white_king_square_attacked: 73 - is_black_king_square_attacked: 114 + add_to_move_generation_stack: 596 + play_move: 613 + is_white_king_square_attacked: 68 + is_black_king_square_attacked: 109 Loesung beendet. @@ -4632,10 +4632,10 @@ Loesung beendet. 81 moegliche Stellungen in 4+4 1.b7-b5 e2-e4 2.b5-b4 e4-e5 3.b4-b3 e5-e6 4.b3-b2 e6*f7 5.b2*a1=T f7*g8=T = 871 moegliche Stellungen in 5+5 - add_to_move_generation_stack: 8882035 - play_move: 8488594 - is_white_king_square_attacked: 248556 - is_black_king_square_attacked: 1962156 + add_to_move_generation_stack: 8859103 + play_move: 8465323 + is_white_king_square_attacked: 248185 + is_black_king_square_attacked: 1961128 Loesung beendet. @@ -4671,10 +4671,10 @@ Loesung beendet. 844 moegliche Stellungen in 4+4 1.b7-b5 e2-e4 2.b5-b4 e4*f5 3.b4-b3 f5*e6 4.b3-b2 e6*f7 5.b2*a1=T f7-f8=L = 14567 moegliche Stellungen in 5+5 - add_to_move_generation_stack: 33552102 - play_move: 29697630 - is_white_king_square_attacked: 352853 - is_black_king_square_attacked: 12794631 + add_to_move_generation_stack: 33543321 + play_move: 29688642 + is_white_king_square_attacked: 352832 + is_black_king_square_attacked: 12794244 Loesung beendet. @@ -4710,10 +4710,10 @@ Loesung beendet. 1.Tg6-d6 Sc4*e3 2.Td6-d2 Se3-c4 3.Td2*g2 Kf1*g2 = 1.Tg6-h6 Sc4*e3 2.Th6-h2 Se3-c4 3.Th2*g2 Kf1*g2 = 21785 moegliche Stellungen in 3+3 - add_to_move_generation_stack: 51680985 - play_move: 47982690 + add_to_move_generation_stack: 51680869 + play_move: 47982574 is_white_king_square_attacked: 180863 - is_black_king_square_attacked: 39538553 + is_black_king_square_attacked: 39538549 Loesung beendet. @@ -4798,10 +4798,10 @@ Fassung: Theodor Steudel, Problemkiste 128, 4/2000 48 moegliche Stellungen in 1+12 1.d2-d1=L 2.d3-d2 3.d4-d3 4.d5-d4 5.d6-d5 6.d7-d6 7.Kc8-d7 8.Kd7-e6 9.Ke6-f5 10.Kf5-g4 11.Kg4-h3 12.Kh3-h2 13.Kh2-h1 Lh4-g3 = 80 moegliche Stellungen in 1+13 - add_to_move_generation_stack: 4717092 - play_move: 3744734 - is_white_king_square_attacked: 3453 - is_black_king_square_attacked: 3728423 + add_to_move_generation_stack: 4714953 + play_move: 3742307 + is_white_king_square_attacked: 3212 + is_black_king_square_attacked: 3728179 Loesung beendet. @@ -4920,10 +4920,10 @@ Loesung beendet. 28 moegliche Stellungen in 1+9 1.Dg7-g3 2.Dg3-b8 3.Ld8-c7 4.Lc7-e5 5.Le5*c3 6.Lc3-e5 7.Le5-c7 8.Lc7-d8 9.Db8-g3 10.Dg3-g7 Lb2*g7 = 28 moegliche Stellungen in 1+10 - add_to_move_generation_stack: 1012258 - play_move: 906301 - is_white_king_square_attacked: 283316 - is_black_king_square_attacked: 502270 + add_to_move_generation_stack: 986446 + play_move: 880489 + is_white_king_square_attacked: 271756 + is_black_king_square_attacked: 486856 Loesung beendet. @@ -4960,9 +4960,9 @@ Loesung beendet. 476 moegliche Stellungen in 5+5 1.Sf3-h2 Kh1*h2 2.Tf1-e1 Kh2*h3 3.Te1-e2 Kh3*h4 4.Kf2-g2 Sg1*e2 5.Kg2-h1 Kh4-g3 6.h5-h4 + Kg3-h3 = 706 moegliche Stellungen in 6+6 - add_to_move_generation_stack: 4162695 - play_move: 4109250 - is_white_king_square_attacked: 278858 + add_to_move_generation_stack: 4161790 + play_move: 4108345 + is_white_king_square_attacked: 278672 is_black_king_square_attacked: 1158965 Loesung beendet. @@ -5122,10 +5122,10 @@ dies ist ein Testfall fuer intelligent und loch 1.La4-c2 2.Sb2-a4 3.Sa4-c3 4.Sc3-b1 5.Sb1-a3 6.Kb4-a4 7.Sc6-b4 8.Tc4-c3 9.Tc3-b3 10.Lc2-e4 11.Le4-b7 Sa5*b7 = 1.Kb4-c5 2.Tb5-b3 3.Sc6-b4 4.La4-c6 5.Kc5-b5 6.Tc4-c5 7.Sb2-c4 8.Sc4-a3 9.Kb5-a4 10.Tc5-b5 11.Lc6-b7 Sa5*b7 = - add_to_move_generation_stack: 44775759 - play_move: 44574966 - is_white_king_square_attacked: 1178471 - is_black_king_square_attacked: 34227494 + add_to_move_generation_stack: 44526319 + play_move: 44325526 + is_white_king_square_attacked: 1155879 + is_black_king_square_attacked: 34193750 Loesung beendet. diff --git a/REGRESSIONTESTS/intell.out b/REGRESSIONTESTS/intell.out index 07ef09beb..de061917b 100644 --- a/REGRESSIONTESTS/intell.out +++ b/REGRESSIONTESTS/intell.out @@ -70,10 +70,10 @@ Loesung beendet. h#4 3 + 5 1.Le6-a2 Lh7-g8 2.f5-f4 Lg8-b3 3.Ke5-f5 Lb3-c2 4.La2-e6 d3-d4 # - add_to_move_generation_stack: 104104 - play_move: 104112 + add_to_move_generation_stack: 103693 + play_move: 103701 is_white_king_square_attacked: 7197 - is_black_king_square_attacked: 8066 + is_black_king_square_attacked: 8045 Loesung beendet. @@ -294,10 +294,10 @@ Loesung beendet. h#6 2 + 8 1.Sd5-c7 Kf2-e3 2.Te5-d5 Ke3*e4 3.Ld6-e5 Ke4-f3 4.Td5-d6 Kf3-e3 5.Ke6-d5 Ke3-d3 6.Sc7-e6 e2-e4 # - add_to_move_generation_stack: 132121 - play_move: 132121 - is_white_king_square_attacked: 8911 - is_black_king_square_attacked: 14648 + add_to_move_generation_stack: 131097 + play_move: 131097 + is_white_king_square_attacked: 8858 + is_black_king_square_attacked: 14587 Loesung beendet. @@ -372,10 +372,10 @@ Loesung beendet. h#6 2 + 7 1.Kb6-c5 Kh1-g1 2.Tc6-b6 La8*f3 3.Td6-c6 Kg1-f2 4.Lc7-d6 Kf2-e3 5.Tc6-c7 Ke3-e4 6.Kc5-c6 Ke4-d4 # - add_to_move_generation_stack: 508757 - play_move: 511898 - is_white_king_square_attacked: 27438 - is_black_king_square_attacked: 24137 + add_to_move_generation_stack: 508579 + play_move: 511720 + is_white_king_square_attacked: 27422 + is_black_king_square_attacked: 24135 Loesung beendet. @@ -455,10 +455,10 @@ Loesung beendet. 1...Th4*d4 2.Db4-c4 Td4-h4 3.Kc5-b4 Lh2-f4 4.Dc4-c5 Lf4-d2 # 1...Lh2*e5 2.Kc5-c6 Le5-h2 3.Ld6-c5 Th4-f4 4.Kc6-d6 Tf4-f6 # - add_to_move_generation_stack: 3290080 - play_move: 3306735 - is_white_king_square_attacked: 135625 - is_black_king_square_attacked: 126271 + add_to_move_generation_stack: 3287098 + play_move: 3303753 + is_white_king_square_attacked: 135575 + is_black_king_square_attacked: 126216 Loesung beendet. @@ -491,18 +491,18 @@ Loesung beendet. a) 1.Sf6-d7 Te6-h6 2.Tf1-f2 Th6-h3 3.Tf2-c2 Lf3-d5 # - add_to_move_generation_stack: 791707 - play_move: 821537 + add_to_move_generation_stack: 791600 + play_move: 821421 is_white_king_square_attacked: 36462 - is_black_king_square_attacked: 32938 + is_black_king_square_attacked: 32936 b) sBa4-->c2 1.Sg4-f2 Lf3-h5 2.Lc8-d7 Lh5-f7 3.Ld7-a4 Te6-e3 # - add_to_move_generation_stack: 657106 - play_move: 688200 + add_to_move_generation_stack: 657037 + play_move: 688122 is_white_king_square_attacked: 29822 - is_black_king_square_attacked: 30014 + is_black_king_square_attacked: 30012 Loesung beendet. @@ -544,8 +544,8 @@ a) b) sKf6-->f7 1.Te2-e6 Te1*e6 2.Tg5-g7 Te6-h6 3.Ld7-e6 Lc8*e6 # - add_to_move_generation_stack: 228420 - play_move: 252890 + add_to_move_generation_stack: 228358 + play_move: 252810 is_white_king_square_attacked: 6177 is_black_king_square_attacked: 10334 @@ -598,8 +598,8 @@ b) sSe6-->c4 c) sKe5-->b1 1.Tg1-g2 e2-e3 2.Tg2-a2 Lh5-g6 3.b3-b2 Kd3-d2 # - add_to_move_generation_stack: 71655 - play_move: 71917 + add_to_move_generation_stack: 71619 + play_move: 71881 is_white_king_square_attacked: 3974 is_black_king_square_attacked: 2923 @@ -680,18 +680,18 @@ Loesung beendet. a) 1.Tb1-f1 f2-f4 2.Tf1*f4 Ta1-f1 3.Sg2-e3 Tf1*f4 # - add_to_move_generation_stack: 430482 - play_move: 508655 + add_to_move_generation_stack: 430414 + play_move: 508563 is_white_king_square_attacked: 13861 - is_black_king_square_attacked: 54519 + is_black_king_square_attacked: 54497 b) sSg2-->f3 1.Tb1-g1 g3-g4 2.Tg1*g4 Ta1-g1 3.Sh6-f5 Tg1*g4 # - add_to_move_generation_stack: 446939 - play_move: 526249 + add_to_move_generation_stack: 446860 + play_move: 526134 is_white_king_square_attacked: 15981 - is_black_king_square_attacked: 60956 + is_black_king_square_attacked: 60931 Loesung beendet. @@ -816,10 +816,10 @@ Loesung beendet. a) 1.Sf4-e2 Lb3-a4 2.Ta3-e3 La4*c6 3.Tb1-b3 Td5-f5 # - add_to_move_generation_stack: 423364 - play_move: 422716 + add_to_move_generation_stack: 423305 + play_move: 422657 is_white_king_square_attacked: 8514 - is_black_king_square_attacked: 19211 + is_black_king_square_attacked: 19210 b) sBg3-->g2 @@ -861,18 +861,18 @@ ehrende Erw?hnung, 1. SAXA-Turnier 1988 a) 1.Lh3-g2 Te5-h5 2.Lf4-g5 Sg7-e6 + 3.Kd4-e5 Th5*g5 # - add_to_move_generation_stack: 3499332 - play_move: 3497582 + add_to_move_generation_stack: 3496922 + play_move: 3495172 is_white_king_square_attacked: 76936 - is_black_king_square_attacked: 152811 + is_black_king_square_attacked: 152768 b) sBd6-->h6 1.Tb2-f2 Te5-a5 2.Sa3-b5 Sg7-f5 + 3.Kd4-e5 Ta5*b5 # - add_to_move_generation_stack: 2428560 - play_move: 2427154 + add_to_move_generation_stack: 2427149 + play_move: 2425743 is_white_king_square_attacked: 54902 - is_black_king_square_attacked: 108707 + is_black_king_square_attacked: 108683 Loesung beendet. @@ -1005,10 +1005,10 @@ Loesung beendet. h#7 2 + 7 1.Le4-h7 Kf2-e3 2.Kh6-g6 Ke3*d3 3.Lb3-g8 Kd3-e4 4.Kg6-f7 + Ke4-d5 5.Lh7-f5 Kd5-c6 6.Kf7-e6 d2-d4 7.Lg8-f7 d4-d5 # - add_to_move_generation_stack: 2829489 - play_move: 2829492 - is_white_king_square_attacked: 143931 - is_black_king_square_attacked: 517344 + add_to_move_generation_stack: 2823725 + play_move: 2823728 + is_white_king_square_attacked: 143908 + is_black_king_square_attacked: 516306 Loesung beendet. @@ -1044,10 +1044,10 @@ NullStellung a) sLe5-->g8 1.Lg8-a2 Lh7-g8 2.Kd6-e5 Lg8-b3 3.Ke5-f5 Lb3-c2 4.La2-e6 d3-d4 # - add_to_move_generation_stack: 290201 - play_move: 289946 - is_white_king_square_attacked: 15475 - is_black_king_square_attacked: 15096 + add_to_move_generation_stack: 289808 + play_move: 289553 + is_white_king_square_attacked: 15472 + is_black_king_square_attacked: 15081 b) wLh7-->a7 @@ -1167,10 +1167,10 @@ H2021, The Problemist 15/12, 11/1996 1.Ld5-a2 Lc6-b5 2.Ta4-b4 Sa5-b3 3.Kc2-b1 Lb5-d3 # 1.Ta4-d4 Sa5-c4 2.Ld5-e6 Lc6-a4 + 3.Kc2-d3 Sc4-e5 # - add_to_move_generation_stack: 89799 - play_move: 98053 + add_to_move_generation_stack: 89765 + play_move: 98013 is_white_king_square_attacked: 3401 - is_black_king_square_attacked: 5384 + is_black_king_square_attacked: 5383 Loesung beendet. @@ -1203,10 +1203,10 @@ H2032, The Problemist 15/12, 11/1996 1...Sb1*c3 2.Sa3-b1 Sc3-d1 3.Sb1-c3 Sd1-b2 # 1.Sa3-c4 Sb1-a3 2.Sc4*e5 Sa3-c4 3.Se5*g6 Sc4-e5 # - add_to_move_generation_stack: 3293070 - play_move: 3710854 + add_to_move_generation_stack: 3291590 + play_move: 3708756 is_white_king_square_attacked: 173715 - is_black_king_square_attacked: 592151 + is_black_king_square_attacked: 591685 Loesung beendet. @@ -1238,10 +1238,10 @@ H2033, The Problemist 15/12, 11/1996 1.Tg2-g3 Tf5-g5 + 2.Kg4*f4 Tg5-f5 + 3.Kf4-g4 Tf5-f4 # 1.Tb4-b3 + Kc3*c4 2.Tb3-b4 + Kc4-c3 3.Tb4*f4 Tf5-g5 # - add_to_move_generation_stack: 2590500 - play_move: 2600945 + add_to_move_generation_stack: 2589305 + play_move: 2599750 is_white_king_square_attacked: 156752 - is_black_king_square_attacked: 159507 + is_black_king_square_attacked: 159495 Loesung beendet. @@ -1434,10 +1434,10 @@ Loesung beendet. 1.Td2-d3 g2-g4 2.Ke6-d5 g4*h5 3.Kd5-c4 h5-h6 4.Kc4-b3 h6-h7 5.Kb3-a3 h7-h8=D 6.Td3-b3 Dh8-a1 # 1.Td2-d5 g2-g4 2.Td5-b5 g4-g5 3.Ke6-d5 g5-g6 4.Kd5-c4 g6-g7 5.Kc4-b3 g7-g8=D + 6.Kb3-a4 Dg8-a2 # - add_to_move_generation_stack: 1177539 - play_move: 1190394 - is_white_king_square_attacked: 72875 - is_black_king_square_attacked: 131726 + add_to_move_generation_stack: 1172907 + play_move: 1185762 + is_white_king_square_attacked: 72471 + is_black_king_square_attacked: 130990 Loesung beendet. @@ -1468,10 +1468,10 @@ Loesung beendet. h#5.5 5 + 6 1...Ld6-b8 2.Kc3-d4 Kb7-c7 3.Kd4-e5 Kc7-d8 + 4.Ke5-e6 Lb8-g3 5.h4-h3 f2-f4 6.Ke6-d6 f4-f5 # - add_to_move_generation_stack: 5956920 - play_move: 5947168 - is_white_king_square_attacked: 596415 - is_black_king_square_attacked: 550798 + add_to_move_generation_stack: 5911001 + play_move: 5901249 + is_white_king_square_attacked: 591979 + is_black_king_square_attacked: 548411 Loesung beendet. @@ -1508,9 +1508,9 @@ Loesung beendet. 1... ... 2.Sg4-f6 + Kd5-c4 3.Sf6-e8 Se7-d5 4.Se8-c7 Sd5-c3 + 5.Ka4-a3 Sc3-b1 + 6.Ka3-b2 Sb1-c3 7.Sc7-b5 Sc3-d1 + 8.Kb2-a1 Sd1-e3 9.Sb5-a3 + Kc4-b3 10.Sa3-b1 Se3-c2 # 1...Se7-c8 2.Sg4-e3 + Kd5-e4 3.Se3-d1 Sc8-b6 + 4.Ka4-b3 Sb6-d7 5.Sd1-c3 + Ke4-d3 6.Sc3-a2 Sd7-c5 + 7.Kb3-b2 Sc5-a4 + 8.Kb2-a1 Sa4-c5 9.Sa2-c1 + Kd3-c2 10.Sc1-a2 Sc5-b3 # - add_to_move_generation_stack: 840118 - play_move: 555659 - is_white_king_square_attacked: 191722 + add_to_move_generation_stack: 840062 + play_move: 555611 + is_white_king_square_attacked: 191676 is_black_king_square_attacked: 171475 Loesung beendet. @@ -1544,10 +1544,10 @@ Loesung beendet. 1.c4-c3 Le2-f3 + 2.Ke4-d3 Lf8*h6 3.Dh4-c4 0-0-0 # 1.Ke4-e3 0-0-0 2.Tg3-f3 Le2*f3 3.Dh4-f2 Lf8*h6 # 1.e6*f5 Lf8*h6 2.e7-e5 0-0-0 3.Tg3-g4 Le2-f3 # - add_to_move_generation_stack: 3863021 - play_move: 3884404 + add_to_move_generation_stack: 3862507 + play_move: 3883884 is_white_king_square_attacked: 185687 - is_black_king_square_attacked: 246118 + is_black_king_square_attacked: 246086 Loesung beendet. @@ -1976,10 +1976,10 @@ Loesung beendet. 1.Te7-e6 Td5-d1 2.Tc2-d2 Sf7-d6 + 3.Ke4-d5 Td1*d2 # 1.Tc2-c4 Td5-d8 2.Te7-d7 Sf7-g5 + 3.Ke4-d5 Td8*d7 # - add_to_move_generation_stack: 236557 - play_move: 235963 + add_to_move_generation_stack: 236494 + play_move: 235900 is_white_king_square_attacked: 8266 - is_black_king_square_attacked: 9894 + is_black_king_square_attacked: 9892 Loesung beendet. @@ -2129,16 +2129,16 @@ Loesung beendet. a) 1.Dg7-c3 Lb8-e5 2.Ld3-e2 Le5*c3 3.Lb6-d4 Lc3-d2 # - add_to_move_generation_stack: 3645650 - play_move: 3655157 + add_to_move_generation_stack: 3644171 + play_move: 3653678 is_white_king_square_attacked: 131472 - is_black_king_square_attacked: 306276 + is_black_king_square_attacked: 305961 b) sKe3-->h2 1.Lb6-c7 Tb3-c3 2.Tg3-g1 Tc3*c7 3.Dg7-g2 Tc7-h7 # - add_to_move_generation_stack: 1204637 - play_move: 1211123 + add_to_move_generation_stack: 1204583 + play_move: 1211066 is_white_king_square_attacked: 27684 is_black_king_square_attacked: 38471 @@ -2213,18 +2213,18 @@ Loesung beendet. a) 1.Td2-h2 Tg3-g2 2.Te5-e4 Tg2-c2 3.Th2-d2 Tc2-c3 # - add_to_move_generation_stack: 3175184 - play_move: 3172166 + add_to_move_generation_stack: 3173136 + play_move: 3170118 is_white_king_square_attacked: 109593 - is_black_king_square_attacked: 161124 + is_black_king_square_attacked: 161099 b) sKd3-->d4 1.Lc5-f8 Lf6-e7 2.Lf3-e4 Le7-b4 3.Lf8-c5 Lb4-c3 # - add_to_move_generation_stack: 4781249 - play_move: 4774936 + add_to_move_generation_stack: 4778764 + play_move: 4772451 is_white_king_square_attacked: 208279 - is_black_king_square_attacked: 269348 + is_black_king_square_attacked: 269306 Loesung beendet. @@ -2449,10 +2449,10 @@ Loesung beendet. 1.Lf4-h2 Le5*h2 2.Dd6-g3 Sf5-d6 + 3.Ke4-e5 Lh2*g3 # 1.Dd6-b8 Le5*b8 2.Lf4-c7 Sf5-g3 + 3.Ke4-e5 Lb8*c7 # - add_to_move_generation_stack: 325624 - play_move: 325402 + add_to_move_generation_stack: 325454 + play_move: 325232 is_white_king_square_attacked: 10924 - is_black_king_square_attacked: 18816 + is_black_king_square_attacked: 18811 Loesung beendet. @@ -2828,10 +2828,10 @@ a) b) sDg5-->a2 1.Le7-g5 Ld8*g5 2.Tf8-c8 Tg8*c8 3.Sc4-b2 Tc8-c1 # - add_to_move_generation_stack: 41117 - play_move: 41060 + add_to_move_generation_stack: 41081 + play_move: 41024 is_white_king_square_attacked: 1304 - is_black_king_square_attacked: 2461 + is_black_king_square_attacked: 2460 Loesung beendet. @@ -3019,18 +3019,18 @@ Loesung beendet. a) 1.Tf8-a8 Tg8*a8 2.Ta7-a3 Ta8*a3 3.Kg4-h3 Lb3-e6 # - add_to_move_generation_stack: 455504 - play_move: 495402 - is_white_king_square_attacked: 17616 - is_black_king_square_attacked: 45678 + add_to_move_generation_stack: 455105 + play_move: 494967 + is_white_king_square_attacked: 17590 + is_black_king_square_attacked: 45564 b) wLb3-->d5 1.Tf8-c8 Tg8*c8 2.c7-c5 Tc8*c5 3.Kg4-h5 Ld5-f3 # - add_to_move_generation_stack: 587768 - play_move: 637992 - is_white_king_square_attacked: 21914 - is_black_king_square_attacked: 56395 + add_to_move_generation_stack: 587420 + play_move: 637592 + is_white_king_square_attacked: 21904 + is_black_king_square_attacked: 56314 Loesung beendet. @@ -3288,18 +3288,18 @@ Loesung beendet. a) 1.Dh4-h8 Th3*h8 2.Tg8-a8 Th8*a8 3.a5-a4 Ta8*a4 # - add_to_move_generation_stack: 6626462 - play_move: 6622347 + add_to_move_generation_stack: 6621336 + play_move: 6617197 is_white_king_square_attacked: 163627 - is_black_king_square_attacked: 394794 + is_black_king_square_attacked: 394200 b) wBe2-->e3 1.Dh4-h6 Th3*h6 2.Tg6-d6 Th6*d6 3.d5-d4 Td6*d4 # - add_to_move_generation_stack: 9059356 - play_move: 9055609 + add_to_move_generation_stack: 9053078 + play_move: 9049316 is_white_king_square_attacked: 233835 - is_black_king_square_attacked: 570022 + is_black_king_square_attacked: 569396 Loesung beendet. @@ -3469,18 +3469,18 @@ Loesung beendet. a) 1.Db2-c1 Tc2-c8 2.Dc1-c7 Le1-c3 + 3.Kd4-c5 Tc8*c7 # - add_to_move_generation_stack: 364014 - play_move: 367329 + add_to_move_generation_stack: 363818 + play_move: 367133 is_white_king_square_attacked: 14368 - is_black_king_square_attacked: 19042 + is_black_king_square_attacked: 19036 b) wLc2 1.Db2-b1 Lc2-h7 2.Db1-g6 Le1-f2 + 3.Kd4-e4 Lh7*g6 # - add_to_move_generation_stack: 345980 - play_move: 345990 + add_to_move_generation_stack: 345878 + play_move: 345888 is_white_king_square_attacked: 13519 - is_black_king_square_attacked: 20853 + is_black_king_square_attacked: 20849 Loesung beendet. @@ -3790,16 +3790,16 @@ Loesung beendet. Duplex 1.Lf8-h6 2.Lh6-e3 3.Ke5-f4 4.Kf4-g5 5.Kg5-h6 6.Le3-g5 Tb1-h1 # - add_to_move_generation_stack: 167653 - play_move: 168442 - is_white_king_square_attacked: 18639 - is_black_king_square_attacked: 23456 + add_to_move_generation_stack: 162321 + play_move: 163077 + is_white_king_square_attacked: 18129 + is_black_king_square_attacked: 22830 1.Tb1-a1 2.Ta1-a6 3.Kb6-a5 4.Ka5-a4 5.Ka4-a3 6.Ta6-a4 c5-c4 # - add_to_move_generation_stack: 2374227 - play_move: 2370772 - is_white_king_square_attacked: 334627 - is_black_king_square_attacked: 482750 + add_to_move_generation_stack: 2319063 + play_move: 2315608 + is_white_king_square_attacked: 327633 + is_black_king_square_attacked: 472448 Loesung beendet. @@ -3830,10 +3830,10 @@ Loesung beendet. ser-h#8 2 + 8 1.Tc4-b4 2.c5-c4 3.Kb6-c5 4.Dc6-b6 5.Ld5-c6 6.Td4-d5 7.Sb5-d4 8.Sd6-b5 Sf2-e4 # - add_to_move_generation_stack: 446894 - play_move: 446894 - is_white_king_square_attacked: 33697 - is_black_king_square_attacked: 33724 + add_to_move_generation_stack: 440846 + play_move: 440846 + is_white_king_square_attacked: 33170 + is_black_king_square_attacked: 33197 Loesung beendet. @@ -3866,10 +3866,10 @@ Loesung beendet. 1.Kd5-c4 Td8*d6 2.Le6-d5 Td6*d5 3.De7-b4 e2*d3 # 1.Kd5-d4 Lg8*e6 2.Td6-d5 Le6*d5 3.De7-c5 e2-e3 # - add_to_move_generation_stack: 4535638 - play_move: 4521154 + add_to_move_generation_stack: 4533551 + play_move: 4519061 is_white_king_square_attacked: 97965 - is_black_king_square_attacked: 393996 + is_black_king_square_attacked: 393953 Loesung beendet. @@ -3934,10 +3934,10 @@ Loesung beendet. h#7 2 + 8 1.Lb7-h1 La8-g2 2.Dc2-h7 Kf1*f2 3.Td4-d8 Kf2-e3 4.Kc8-d7 Lg2-a8 5.Lh1-b7 Ke3-d4 6.Lb7-c8 Kd4-d5 7.Dh7-e7 La8-c6 # - add_to_move_generation_stack: 1447537 - play_move: 1469122 - is_white_king_square_attacked: 101710 - is_black_king_square_attacked: 69137 + add_to_move_generation_stack: 1439240 + play_move: 1460735 + is_white_king_square_attacked: 101454 + is_black_king_square_attacked: 68793 Loesung beendet. @@ -4037,10 +4037,10 @@ Loesung beendet. h#5 3 + 4 1.f5-f4 La7-b8 2.f4-f3 Lb8-h2 3.f3-f2 Lh2-g1 4.f2*g1=T Sb5-d6 5.Tg1-g6 Sd6-f7 # - add_to_move_generation_stack: 64854 - play_move: 65115 - is_white_king_square_attacked: 4814 - is_black_king_square_attacked: 3895 + add_to_move_generation_stack: 64714 + play_move: 64975 + is_white_king_square_attacked: 4808 + is_black_king_square_attacked: 3891 Loesung beendet. @@ -4072,10 +4072,10 @@ Loesung beendet. h#4 2 + 15 1.Sc2-b4 + Kc3-d4 2.Ld3-b1 Kd4*e3 3.Sb4-d3 Ke3-e2 4.Sd3-b2 Sd2-b3 # - add_to_move_generation_stack: 648964 - play_move: 659184 - is_white_king_square_attacked: 47680 - is_black_king_square_attacked: 40113 + add_to_move_generation_stack: 648480 + play_move: 658691 + is_white_king_square_attacked: 47651 + is_black_king_square_attacked: 40109 Loesung beendet. @@ -4106,10 +4106,10 @@ Loesung beendet. h#7 2 + 5 1.b2-b1=T c2-c3 2.Tb1-b4 c3*b4 3.a2-a1=T b4-b5 4.Ta1-h1 b5-b6 5.Kf2-g1 b6-b7 6.f3-f2 b7-b8=D 7.f2-f1=T Db8-g3 # - add_to_move_generation_stack: 3326376 - play_move: 3556975 + add_to_move_generation_stack: 3326090 + play_move: 3556593 is_white_king_square_attacked: 80752 - is_black_king_square_attacked: 439385 + is_black_king_square_attacked: 439353 Loesung beendet. @@ -4140,10 +4140,10 @@ Loesung beendet. h#9 2 + 3 1.g7-g5 Kh1-g1 2.g5-g4 Kg1-f1 3.g4-g3 h2*g3 4.Kb8-c7 g3-g4 5.Kc7-d6 g4-g5 6.Kd6-e5 g5-g6 7.Ke5-f4 g6-g7 8.Kf4-g3 g7-g8=D + 9.Kg3-h2 Dg8-g1 # - add_to_move_generation_stack: 373447 - play_move: 373720 - is_white_king_square_attacked: 40883 - is_black_king_square_attacked: 83576 + add_to_move_generation_stack: 365167 + play_move: 365434 + is_white_king_square_attacked: 40740 + is_black_king_square_attacked: 82039 Loesung beendet. @@ -4174,10 +4174,10 @@ Loesung beendet. h#4 4 + 9 1.Ld4-a7 Lh7-b1 2.Tb8-b6 Tf2-c2 3.Ke6-f5 h2-h4 4.Tb6-e6 + Tc2-f2 # - add_to_move_generation_stack: 2075239 - play_move: 2079691 - is_white_king_square_attacked: 116835 - is_black_king_square_attacked: 114793 + add_to_move_generation_stack: 2073506 + play_move: 2077958 + is_white_king_square_attacked: 116823 + is_black_king_square_attacked: 114750 Loesung beendet. @@ -4437,10 +4437,10 @@ a) 1.Kg6-h6 Le4-b1 2.Sf5*e3 Dc1-c2 3.Dg3-g5 Dc2-h7 # 1.Kg6-h6 Le4-b1 2.Sf5*e3 Dc1-c2 3.Se3-d1 # 26439 moegliche Stellungen in 3+3 - add_to_move_generation_stack: 50050774 - play_move: 47702156 - is_white_king_square_attacked: 4019317 - is_black_king_square_attacked: 4322999 + add_to_move_generation_stack: 50058799 + play_move: 47708954 + is_white_king_square_attacked: 4025605 + is_black_king_square_attacked: 4323538 b) wKc3-->b7 @@ -4449,10 +4449,10 @@ b) wKc3-->b7 1.Kg6-h7 Te6-a6 2.Sf6-d7 Dc1-c6 3.Dg3-g8 Dc6-h6 # 1.Kg6-h7 Te6-a6 2.Sf6-d7 Dc1-c6 3.Dg3-b8 # 21744 moegliche Stellungen in 3+3 - add_to_move_generation_stack: 64142497 - play_move: 58624017 - is_white_king_square_attacked: 5480908 - is_black_king_square_attacked: 4733554 + add_to_move_generation_stack: 64158135 + play_move: 58635061 + is_white_king_square_attacked: 5491456 + is_black_king_square_attacked: 4734921 Loesung beendet. @@ -4493,10 +4493,10 @@ a) wKh5-->f1 1.Lc6-f3 La8-e4 2.Tb3-b4 Le4-b1 3.Lf3-d5 Lb1-d3 # 1.Lc6-f3 La8-e4 2.Tb3-b4 Le4-b1 3.Tb4*b1 # 553 moegliche Stellungen in 3+3 - add_to_move_generation_stack: 586767 - play_move: 539080 - is_white_king_square_attacked: 63809 - is_black_king_square_attacked: 53070 + add_to_move_generation_stack: 587189 + play_move: 539401 + is_white_king_square_attacked: 64103 + is_black_king_square_attacked: 53101 b) wBe3-->c2 @@ -4505,10 +4505,10 @@ b) wBe3-->c2 1.Tb3-g3 Ta3-e3 2.Lc6-b5 Te3-e8 3.Tg3-c3 Te8-e4 # 1.Tb3-g3 Ta3-e3 2.Lc6-b5 Te3-e8 3.Lb5*e8 # 1012 moegliche Stellungen in 3+3 - add_to_move_generation_stack: 1485368 - play_move: 1352998 - is_white_king_square_attacked: 178399 - is_black_king_square_attacked: 139071 + add_to_move_generation_stack: 1485809 + play_move: 1353383 + is_white_king_square_attacked: 178728 + is_black_king_square_attacked: 139093 Loesung beendet. @@ -4547,10 +4547,10 @@ Loesung beendet. 1.Df6-a6 Lf3-c6 2.Kc5-d4 Kc7-d6 3.Kd4-e3 Kd6-d5 4.Ke3-f3 Kd5-e5 + 5.Kf3-g4 Lc6-e4 6.Kg4-h5 Ke5-f5 7.Da6-h6 Le4-f3 # 1.Df6-a6 Lf3-c6 2.Kc5-d4 Kc7-d6 3.Kd4-e3 Kd6-d5 4.Ke3-f3 Kd5-e5 + 5.Kf3-g4 Lc6-e4 6.Kg4-h5 Ke5-f5 7.Da6-f6 # 26 moegliche Stellungen in 7+7 - add_to_move_generation_stack: 2173228 - play_move: 2168671 - is_white_king_square_attacked: 308818 - is_black_king_square_attacked: 163558 + add_to_move_generation_stack: 2166773 + play_move: 2162216 + is_white_king_square_attacked: 308219 + is_black_king_square_attacked: 163000 Loesung beendet. @@ -4590,10 +4590,10 @@ Loesung beendet. 1.Td2-a2 Kh1-g1 2.De2-b2 Kg1-f1 3.Kd3-c2 Kf1-e2 4.Kc2-c1 + Ke2-d3 5.Db2-e2 + Kd3-c3 6.Ta2-d2 Kc3-b3 7.Sa3-c2 Kb3-a2 8.De2-d1 Le5-b2 # 1.Td2-a2 Kh1-g1 2.De2-b2 Kg1-f1 3.Kd3-c2 Kf1-e2 4.Kc2-c1 + Ke2-d3 5.Db2-e2 + Kd3-c3 6.Ta2-d2 Kc3-b3 7.Sa3-c2 Kb3-a2 8.De2-c4 # 16 moegliche Stellungen in 8+8 - add_to_move_generation_stack: 47932476 - play_move: 47882997 - is_white_king_square_attacked: 7317716 - is_black_king_square_attacked: 4883626 + add_to_move_generation_stack: 47868455 + play_move: 47817374 + is_white_king_square_attacked: 7311492 + is_black_king_square_attacked: 4878760 Loesung beendet. @@ -4838,10 +4838,10 @@ b) sBh5-->d7 ser-reci-h(#)=7 1.d7-d5 2.d5-d4 3.d4-d3 4.d3-d2 5.d2-d1=D 6.Dd1-d6 7.Dd6-e7 Dh7*e7 = 1.d7-d5 2.d5-d4 3.d4-d3 4.d3-d2 5.d2-d1=D 6.Dd1-d6 7.Dd6-b8 # 4 moegliche Stellungen in 1+7 - add_to_move_generation_stack: 10697 - play_move: 8838 - is_white_king_square_attacked: 2240 - is_black_king_square_attacked: 5131 + add_to_move_generation_stack: 10105 + play_move: 8246 + is_white_king_square_attacked: 2071 + is_black_king_square_attacked: 4803 Loesung beendet. diff --git a/REGRESSIONTESTS/legalsq.out b/REGRESSIONTESTS/legalsq.out index 8feba9127..f7bf13076 100644 --- a/REGRESSIONTESTS/legalsq.out +++ b/REGRESSIONTESTS/legalsq.out @@ -481,10 +481,10 @@ Loesung beendet. KoeKo 1.g2-g1=T 2.Tg1-d1 3.e2-e1=L 4.Td1-a1 5.b2-b1=L Th4-h2 # - add_to_move_generation_stack: 241616 - play_move: 255761 + add_to_move_generation_stack: 241648 + play_move: 255793 is_white_king_square_attacked: 9729 - is_black_king_square_attacked: 80764 + is_black_king_square_attacked: 80766 Loesung beendet. diff --git a/REGRESSIONTESTS/madrasi.out b/REGRESSIONTESTS/madrasi.out index 064c81ffe..462c9ffb4 100644 --- a/REGRESSIONTESTS/madrasi.out +++ b/REGRESSIONTESTS/madrasi.out @@ -814,10 +814,10 @@ Loesung beendet. Gitterschach 1.Kg4-g5 2.Kg5-f6 3.Kf6-e7 4.Ke7-d7 5.Kd7-c6 6.Kc6-b5 7.Kb5-b4 8.Kb4-c3 9.Kc3-d2 10.Dd6-h6 11.Dh6-h1 12.Kd2-d3 13.Kd3-e4 14.Ke4-f5 15.Kf5-g4 16.Kg4-h5 Kf2-g1 # - add_to_move_generation_stack: 107345 - play_move: 72701 - is_white_king_square_attacked: 25750 - is_black_king_square_attacked: 72701 + add_to_move_generation_stack: 107380 + play_move: 72717 + is_white_king_square_attacked: 25754 + is_black_king_square_attacked: 72717 Loesung beendet. diff --git a/REGRESSIONTESTS/magic.out b/REGRESSIONTESTS/magic.out index de245add2..fe959fb41 100644 --- a/REGRESSIONTESTS/magic.out +++ b/REGRESSIONTESTS/magic.out @@ -28,10 +28,10 @@ 1.f2-f1=S 2.Sf1-e3 3.Se3-d5=w Sd5-c3 = 1.f2-f1=T 2.Tf1-f5 3.Tf5-d5=w Td5-d1 = 1.f2-f1=L 2.Lf1-c4 3.Lc4-d5=w Ld5-a2 = - add_to_move_generation_stack: 42804 - play_move: 15412 - is_white_king_square_attacked: 6955 - is_black_king_square_attacked: 13709 + add_to_move_generation_stack: 43718 + play_move: 15690 + is_white_king_square_attacked: 7085 + is_black_king_square_attacked: 13965 Loesung beendet. diff --git a/REGRESSIONTESTS/marine.ref b/REGRESSIONTESTS/marine.ref index 4b0c914f5..f63568506 100644 --- a/REGRESSIONTESTS/marine.ref +++ b/REGRESSIONTESTS/marine.ref @@ -869,10 +869,10 @@ solution finished. 1.MPc2-c1=MH 2.MHc1-c6 3.MHc6*d5-e4 4.MPd7-d5 5.MPd5-d4 6.MPd4-d3 7.MPd3-d2 8.MPd2-d1=TR 9.TRd1-d5 10.TRd5*f5-g5 11.TRg5-g4 MHh2-f2 # 1.MPc2-c1=MH 2.MHc1-c6 3.MHc6*d5-e4 4.MPd7-d5 5.MPd5-d4 6.MPd4-d3 7.MPd3-d2 8.MPd2-d1=MH 9.MHd1-d6 10.MHd6-e6 11.MHe6*f5-g4 MHh2-f2 # 1.MPc2-c1=MH 2.MHc1-c6 3.MHc6*d5-e4 4.MPd7-d5 5.MPd5-d4 6.MPd4-d3 7.MPd3-d2 8.MPd2-d1=MH 9.MHd1-d5 10.MHd5*f5-g5 11.MHg5-g4 MHh2-f2 # - add_to_move_generation_stack: 29467747 - play_move: 24006685 - is_white_king_square_attacked: 8105039 - is_black_king_square_attacked: 24006685 + add_to_move_generation_stack: 29467874 + play_move: 24006812 + is_white_king_square_attacked: 8105042 + is_black_king_square_attacked: 24006812 solution finished. diff --git a/REGRESSIONTESTS/mars.out b/REGRESSIONTESTS/mars.out index 28abf0712..032ba7756 100644 --- a/REGRESSIONTESTS/mars.out +++ b/REGRESSIONTESTS/mars.out @@ -655,18 +655,18 @@ Loesung beendet. a) 1.Kd7-c6 2.Kc6-b5 3.Kb5-a4 1.e7-e8=L 2.f7-f8=T # - add_to_move_generation_stack: 158131 - play_move: 87414 - is_white_king_square_attacked: 8616 - is_black_king_square_attacked: 87408 + add_to_move_generation_stack: 158217 + play_move: 87476 + is_white_king_square_attacked: 8648 + is_black_king_square_attacked: 87470 b) MarsCirce Spiegel 1.Kd7-e6 2.Ke6-f5 3.Kf5-g4 1.f7-f8=T 2.e7-e8=L # - add_to_move_generation_stack: 52239 - play_move: 25650 - is_white_king_square_attacked: 3647 - is_black_king_square_attacked: 25257 + add_to_move_generation_stack: 52321 + play_move: 25708 + is_white_king_square_attacked: 3677 + is_black_king_square_attacked: 25311 Loesung beendet. @@ -859,10 +859,10 @@ eigentlich: ser-h=8/3 3 (a7-a6 ) 4 (Ka8-b7 ) 5 (Ka8-b8 ) - add_to_move_generation_stack: 791286 - play_move: 163546 - is_white_king_square_attacked: 99878 - is_black_king_square_attacked: 142970 + add_to_move_generation_stack: 791406 + play_move: 163582 + is_white_king_square_attacked: 99908 + is_black_king_square_attacked: 142994 Loesung beendet. diff --git a/REGRESSIONTESTS/max_var.out b/REGRESSIONTESTS/max_var.out index 9162c4cf9..563335404 100644 --- a/REGRESSIONTESTS/max_var.out +++ b/REGRESSIONTESTS/max_var.out @@ -129,10 +129,10 @@ Loesung beendet. Duellantenschach 1.c2-c1=S 2.a2-a1=L 3.c3-c2 4.c2*b1=T 5.e2-e1=D 6.De1-e7 7.De7-a3 Td1*d2 # - add_to_move_generation_stack: 323133 - play_move: 241577 - is_white_king_square_attacked: 84920 - is_black_king_square_attacked: 241577 + add_to_move_generation_stack: 323169 + play_move: 241609 + is_white_king_square_attacked: 84924 + is_black_king_square_attacked: 241609 Loesung beendet. diff --git a/REGRESSIONTESTS/nanna.ref b/REGRESSIONTESTS/nanna.ref index 8748122d2..33d31e23b 100644 --- a/REGRESSIONTESTS/nanna.ref +++ b/REGRESSIONTESTS/nanna.ref @@ -50,10 +50,10 @@ last 11 half moves of a proof game NannaChess 1.e4-d6 e7*d6 2.Se5-f7 Bf8-e7 3.Sf7-g5 Ke8-h5 4.g4-f2 Be7-f8 5.Sg5-h3 g7-g5 6.Sh3-g1 a=>b - add_to_move_generation_stack: 759914403 - play_move: 763901484 - is_white_king_square_attacked: 58249211 - is_black_king_square_attacked: 29219589 + add_to_move_generation_stack: 699530479 + play_move: 703240780 + is_white_king_square_attacked: 52542018 + is_black_king_square_attacked: 26318548 solution finished. diff --git a/REGRESSIONTESTS/phantom.out b/REGRESSIONTESTS/phantom.out index 43af53865..b9053507e 100644 --- a/REGRESSIONTESTS/phantom.out +++ b/REGRESSIONTESTS/phantom.out @@ -270,10 +270,10 @@ Loesung beendet. 1.Kf3-e2 2.Ke2-d1 g7-g8=D = 1.Kf3-g2 2.Kg2-h1 g7-g8=T = - add_to_move_generation_stack: 824 - play_move: 349 + add_to_move_generation_stack: 912 + play_move: 383 is_white_king_square_attacked: 0 - is_black_king_square_attacked: 349 + is_black_king_square_attacked: 383 Loesung beendet. diff --git a/REGRESSIONTESTS/pieces.out b/REGRESSIONTESTS/pieces.out index 1e5b2d399..cd1eccdc1 100644 --- a/REGRESSIONTESTS/pieces.out +++ b/REGRESSIONTESTS/pieces.out @@ -1236,10 +1236,10 @@ Loesung beendet. 1.a2-a1=Z 2.Za1-c4 3.Zc4-e7 Gd8*f6 # 1.a2-a1=CA 2.CAa1*b4 3.CAb4-c7 Gd8-b6 # 1.a2-a1=GI 2.GIa1-e2 3.GIe2-d6 Gd8-d5 # - add_to_move_generation_stack: 58226 - play_move: 69003 - is_white_king_square_attacked: 3095 - is_black_king_square_attacked: 69003 + add_to_move_generation_stack: 58535 + play_move: 69414 + is_white_king_square_attacked: 3109 + is_black_king_square_attacked: 69414 Loesung beendet. @@ -1548,10 +1548,10 @@ Loesung beendet. a) 1.Kb5-a4 2.Ga6-a3 3.Ka4-b3 4.Gf7-a2 5.Ga2-a4 6.Gg8-a2 Th1-b1 # - add_to_move_generation_stack: 267359 - play_move: 214278 - is_white_king_square_attacked: 23103 - is_black_king_square_attacked: 214278 + add_to_move_generation_stack: 267391 + play_move: 214302 + is_white_king_square_attacked: 23105 + is_black_king_square_attacked: 214302 b) sDGa6 sDGf7 sDGg8 diff --git a/REGRESSIONTESTS/pseries.ref b/REGRESSIONTESTS/pseries.ref index 7d3b914b6..18feedade 100644 --- a/REGRESSIONTESTS/pseries.ref +++ b/REGRESSIONTESTS/pseries.ref @@ -56,10 +56,10 @@ solution finished. 2->pser-h#3 5 + 5 1.Ba2-c4 2.Ra1-a8 1.Bd8-g5 + h4*g5 2.Sf2-d3 + Bc4*d3 + 3.f7-f5 g5*f6 ep. # - add_to_move_generation_stack: 2469666 - play_move: 1600054 - is_white_king_square_attacked: 500356 - is_black_king_square_attacked: 1517182 + add_to_move_generation_stack: 2469726 + play_move: 1600114 + is_white_king_square_attacked: 500432 + is_black_king_square_attacked: 1517242 solution finished. @@ -91,10 +91,10 @@ actually a pser-h#7 Black 13h[1h[#]h]?+?h 2 + 8 1.Sc2-a1 2.Qb1-h7 3.Qh7-b7 + Ra4-e4 4.Kb3-a2 5.Qb7-b1 6.Rb8-b2 7.Sa1-b3 Re4-a4 # - add_to_move_generation_stack: 9439012 - play_move: 9440314 - is_white_king_square_attacked: 3055532 - is_black_king_square_attacked: 1958942 + add_to_move_generation_stack: 9371450 + play_move: 9372740 + is_white_king_square_attacked: 3035858 + is_black_king_square_attacked: 1946492 solution finished. @@ -125,10 +125,10 @@ solution finished. pser-h#6 2 + 5 1.h2-h1=Q 2.Kg1-h2 3.Qh1-c1 + Sd5-f4 4.Qc1-c6 + Sf4-e6 5.Qc6-c1 + Se6-g5 6.Qc1-h1 Sg5-f3 # - add_to_move_generation_stack: 281990 - play_move: 328445 - is_white_king_square_attacked: 89082 - is_black_king_square_attacked: 55695 + add_to_move_generation_stack: 279758 + play_move: 325370 + is_white_king_square_attacked: 88501 + is_black_king_square_attacked: 55340 solution finished. @@ -161,18 +161,18 @@ Dan Meinking (dedicated to Perry Sill) a) 1.e2-e1=S 2.Se1-d3 + Kb2-c2 3.Sd3-e1 + Kc2-d2 4.Se1-f3 + Kd2-e2 5.Sf3-g1 + Ke2-f2 6.Sg1-h3 + Kf2-g3 7.Sh3-g1 Sd1-f2 # - add_to_move_generation_stack: 46413 - play_move: 50130 - is_white_king_square_attacked: 23782 - is_black_king_square_attacked: 21819 + add_to_move_generation_stack: 46392 + play_move: 50103 + is_white_king_square_attacked: 23772 + is_black_king_square_attacked: 21812 b) wBd1 1.e2-e1=B 2.Be1-c3 + Kb2-c1 3.Bc3-b2 + Kc1-d2 4.Bb2-c1 + Kd2-e1 5.Bc1-d2 + Ke1-f2 6.Bd2*e3 + Kf2-g3 7.Be3-g1 Bd1-f3 # - add_to_move_generation_stack: 160327 - play_move: 166929 - is_white_king_square_attacked: 76116 - is_black_king_square_attacked: 63427 + add_to_move_generation_stack: 160281 + play_move: 166871 + is_white_king_square_attacked: 76096 + is_black_king_square_attacked: 63413 solution finished. diff --git a/REGRESSIONTESTS/radiantknight.ref b/REGRESSIONTESTS/radiantknight.ref index a0d6e6d2a..cdd731102 100644 --- a/REGRESSIONTESTS/radiantknight.ref +++ b/REGRESSIONTESTS/radiantknight.ref @@ -24,10 +24,10 @@ ser-h#8 3 + 4 1.Kb6-a7 2.RKa8-a4 3.RKa4*d3 4.RKd3-a6 5.d4-d3 6.d3-d2 7.d2-d1=RK 8.RKd1-a8 RKc5-c7 # - add_to_move_generation_stack: 1072737 - play_move: 959220 - is_white_king_square_attacked: 228804 - is_black_king_square_attacked: 959220 + add_to_move_generation_stack: 1072812 + play_move: 959280 + is_white_king_square_attacked: 228813 + is_black_king_square_attacked: 959280 solution finished. @@ -58,10 +58,10 @@ solution finished. ser-h#13 4 + 4 1.RKf7*c6 2.RKc6-g8 3.c7-c5 4.c5-c4 5.c4-c3 6.c3-c2 7.c2-c1=B 8.Bc1-e3 9.Be3*f2 10.Bf2-a7 11.f3-f2 12.f2-f1=RK 13.RKf1-h7 RKe7-h6 # - add_to_move_generation_stack: 7065926 - play_move: 6503402 - is_white_king_square_attacked: 1616349 - is_black_king_square_attacked: 6503402 + add_to_move_generation_stack: 7066022 + play_move: 6503490 + is_white_king_square_attacked: 1616365 + is_black_king_square_attacked: 6503490 solution finished. diff --git a/REGRESSIONTESTS/series_play.tst b/REGRESSIONTESTS/series_play.tst index 252c80ae8..e66450c69 100644 --- a/REGRESSIONTESTS/series_play.tst +++ b/REGRESSIONTESTS/series_play.tst @@ -89,7 +89,7 @@ solution finished. 1.Rg7-g4 2.Qh8-c3 + Ka3-a2 ##! add_to_move_generation_stack: 2250 play_move: 1914 - is_white_king_square_attacked: 1360 + is_white_king_square_attacked: 1363 is_black_king_square_attacked: 1023 solution finished. diff --git a/REGRESSIONTESTS/sford.out b/REGRESSIONTESTS/sford.out index b4a55bc3e..32c894aa1 100644 --- a/REGRESSIONTESTS/sford.out +++ b/REGRESSIONTESTS/sford.out @@ -579,10 +579,10 @@ zweimal eine Anzuginversion (-) 1...e6-e5 2.e7-e8=T e5-e4 + 3.Te8*e4 = - add_to_move_generation_stack: 13049 - play_move: 8968 - is_white_king_square_attacked: 5251 - is_black_king_square_attacked: 6522 + add_to_move_generation_stack: 13098 + play_move: 9014 + is_white_king_square_attacked: 5291 + is_black_king_square_attacked: 6530 Loesung beendet. @@ -1214,10 +1214,10 @@ Loesung beendet. BiWoozles 1.Ke7-d8 2.Tf2-f8 1.g2-g1=S 2.Dh1-b7 3.Sg1-f3 Kd8-c7 # - add_to_move_generation_stack: 11163433 - play_move: 9634363 - is_white_king_square_attacked: 499130 - is_black_king_square_attacked: 9633969 + add_to_move_generation_stack: 11163701 + play_move: 9634547 + is_white_king_square_attacked: 499186 + is_black_king_square_attacked: 9634153 Loesung beendet. @@ -1467,9 +1467,9 @@ zudem darf die Loesung mit 1.La8 wegen start nicht erscheinen 13 (Kb4-a4 ) 14 (Kb4-b5 ) 15 (Kb4-c4 ) - add_to_move_generation_stack: 207544 - play_move: 153532 - is_white_king_square_attacked: 99905 + add_to_move_generation_stack: 207670 + play_move: 153539 + is_white_king_square_attacked: 99926 is_black_king_square_attacked: 153508 Loesung beendet. diff --git a/REGRESSIONTESTS/snek.ref b/REGRESSIONTESTS/snek.ref index 594945e99..244303c74 100644 --- a/REGRESSIONTESTS/snek.ref +++ b/REGRESSIONTESTS/snek.ref @@ -730,10 +730,10 @@ solution finished. 1.d2-d1=S 2.b2-b1=Q 3.Qb1-a2 4.Sd1-e3 5.Se3-g2 6.Qa2-a8 Kh1*g2[a8=S] = 1.d2-d1=B 2.b2-b1=R 3.Rb1-b2 4.Rb2-g2 5.Bd1-f3 6.Bf3-c6 Kh1*g2[c6=R] = - add_to_move_generation_stack: 2506765 - play_move: 1525277 - is_white_king_square_attacked: 403310 - is_black_king_square_attacked: 1420578 + add_to_move_generation_stack: 2508006 + play_move: 1525796 + is_white_king_square_attacked: 403418 + is_black_king_square_attacked: 1421095 solution finished. diff --git a/REGRESSIONTESTS/stip.out b/REGRESSIONTESTS/stip.out index 57865cc66..0074f34f1 100644 --- a/REGRESSIONTESTS/stip.out +++ b/REGRESSIONTESTS/stip.out @@ -284,9 +284,9 @@ Loesung beendet. ser-h003 2 + 2 1.Kc1-b2 2.Ld1-a4 3.Kb2-b3 0-0-0 - add_to_move_generation_stack: 1618 + add_to_move_generation_stack: 1640 play_move: 345 - is_white_king_square_attacked: 203 + is_white_king_square_attacked: 207 is_black_king_square_attacked: 322 Loesung beendet. @@ -319,9 +319,9 @@ Loesung beendet. 1.Ld7-a4 2.La4-d1 3.Kc1-b2 4.Db1*f5 5.Ld1-a4 6.Kb2-b3 0-0-0 1.Ld7-a4 2.La4-d1 3.Kc1-b2 4.Db1-a2 5.Ld1-a4 6.Kb2-b3 0-0-0 - add_to_move_generation_stack: 254010 + add_to_move_generation_stack: 254213 play_move: 225563 - is_white_king_square_attacked: 49975 + is_white_king_square_attacked: 49985 is_black_king_square_attacked: 225523 Loesung beendet. @@ -353,9 +353,9 @@ Loesung beendet. ser-h003 2 + 2 1.c2-c1=L 2.Lc1-h6 3.Tc5-g5 0-0-0 - add_to_move_generation_stack: 8136 - play_move: 1890 - is_white_king_square_attacked: 812 + add_to_move_generation_stack: 8184 + play_move: 1893 + is_white_king_square_attacked: 821 is_black_king_square_attacked: 0 Loesung beendet. @@ -397,9 +397,9 @@ a) b) sBd4-->h3 1.Lg1-b6 2.g2-g1=L 3.Lg1-c5 4.Tf4-d4 0-0 - add_to_move_generation_stack: 209216 + add_to_move_generation_stack: 209234 play_move: 108545 - is_white_king_square_attacked: 24493 + is_white_king_square_attacked: 24497 is_black_king_square_attacked: 108452 Loesung beendet. @@ -763,9 +763,9 @@ Loesung beendet. 1.Lg1-e3 2.g2-g1=S 3.Sg1-h3 4.Sh3-f2 5.Tg3-h3 0-0 1.c2-c1=L 2.b2-b1=T 3.Tb1-b2 4.Lc1-h6 5.Tc5-g5 0-0-0 - add_to_move_generation_stack: 52830392 - play_move: 11644417 - is_white_king_square_attacked: 3539020 + add_to_move_generation_stack: 52830443 + play_move: 11644420 + is_white_king_square_attacked: 3539029 is_black_king_square_attacked: 11568335 Loesung beendet. @@ -1929,10 +1929,10 @@ Loesung beendet. 4 (Ke1-e2 + ) 5 (Ke1-f1 ) 1.Ke1-f1 2.Kf1-g1 3.Kg1-h2 4.Kh2-h3 5.Kh3-h4 6.Kh4*h5[+wLf1] 7.Kh5-g6 8.Kg6-f7 9.Kf7-e6 10.Ke6*d5[+wSb1] 11.Kd5-c5 12.Kc5-b4 13.Kb4-b3 14.Kb3-c2 15.Kc2-d1 16.Kd1-e1 Lf1-e2 = - add_to_move_generation_stack: 26260 - play_move: 14935 - is_white_king_square_attacked: 9057 - is_black_king_square_attacked: 14069 + add_to_move_generation_stack: 26333 + play_move: 14977 + is_white_king_square_attacked: 9075 + is_black_king_square_attacked: 14106 Loesung beendet. @@ -2845,9 +2845,9 @@ zudem darf die Loesung mit 1.La8 wegen start nicht erscheinen 13 (Kb4-a4 ) 14 (Kb4-b5 ) 15 (Kb4-c4 ) - add_to_move_generation_stack: 207544 - play_move: 153532 - is_white_king_square_attacked: 99905 + add_to_move_generation_stack: 207670 + play_move: 153539 + is_white_king_square_attacked: 99926 is_black_king_square_attacked: 153508 Loesung beendet. diff --git a/REGRESSIONTESTS/takemake.out b/REGRESSIONTESTS/takemake.out index b8728d9af..9941a7393 100644 --- a/REGRESSIONTESTS/takemake.out +++ b/REGRESSIONTESTS/takemake.out @@ -464,10 +464,10 @@ Loesung beendet. 1.f2-f1=S 2.Sf1*g3-g4 3.Sg4-f6 e7-e8=S # 1.f2-f1=T 2.Tf1-h1 3.Th1-h5 e7-e8=L # 1.f2-f1=L 2.Lf1-d3 3.Ld3-e4 e7-e8=T # - add_to_move_generation_stack: 36877 - play_move: 18593 - is_white_king_square_attacked: 2045 - is_black_king_square_attacked: 18593 + add_to_move_generation_stack: 37470 + play_move: 18857 + is_white_king_square_attacked: 2071 + is_black_king_square_attacked: 18857 Loesung beendet. @@ -708,10 +708,10 @@ Loesung beendet. Take&MakeSchach 1.f5*e4-e5 2.Tg4-d4 3.Kh5-g4 4.Kg4-f5 5.Tg1-g4 e2-e4 # - add_to_move_generation_stack: 5697116 - play_move: 4256576 - is_white_king_square_attacked: 291919 - is_black_king_square_attacked: 4256576 + add_to_move_generation_stack: 5697321 + play_move: 4256628 + is_white_king_square_attacked: 291926 + is_black_king_square_attacked: 4256628 Loesung beendet. diff --git a/REGRESSIONTESTS/twin.out b/REGRESSIONTESTS/twin.out index fe9a2d99f..4ca5701a0 100644 --- a/REGRESSIONTESTS/twin.out +++ b/REGRESSIONTESTS/twin.out @@ -411,26 +411,26 @@ Loesung beendet. a) 1.Kd4-d3 2.Kd3-c2 3.Kc2-b1 4.Kb1-a1 Da3-c1 # - add_to_move_generation_stack: 3167 - play_move: 3123 + add_to_move_generation_stack: 3145 + play_move: 3101 is_white_king_square_attacked: 191 - is_black_king_square_attacked: 326 + is_black_king_square_attacked: 324 b) -sTa2 1.Kd4-d5 2.Kd5-c6 3.Kc6-b7 4.Kb7-a8 Da3*a6 # - add_to_move_generation_stack: 780 - play_move: 767 + add_to_move_generation_stack: 767 + play_move: 754 is_white_king_square_attacked: 63 - is_black_king_square_attacked: 133 + is_black_king_square_attacked: 131 +c) -sBa6 1.Kd4-e4 2.Ke4-f3 3.Kf3-g2 4.Kg2-h1 Da3-a8 # - add_to_move_generation_stack: 703 - play_move: 690 + add_to_move_generation_stack: 691 + play_move: 678 is_white_king_square_attacked: 60 - is_black_king_square_attacked: 127 + is_black_king_square_attacked: 125 +d) -wLg3 diff --git a/REGRESSIONTESTS/vvst.out b/REGRESSIONTESTS/vvst.out index 384dd324f..63caa5d52 100644 --- a/REGRESSIONTESTS/vvst.out +++ b/REGRESSIONTESTS/vvst.out @@ -26,10 +26,10 @@ OhneSchach 1.a7-a5 2.a5-a4 3.a4-a3 4.a3-a2 5.a2-a1=L 6.La1-e5 7.Le5-c7 Kc8*c7 = - add_to_move_generation_stack: 12954 - play_move: 3848 - is_white_king_square_attacked: 3764 - is_black_king_square_attacked: 3614 + add_to_move_generation_stack: 13068 + play_move: 3872 + is_white_king_square_attacked: 3788 + is_black_king_square_attacked: 3629 Loesung beendet. @@ -98,10 +98,10 @@ Loesung beendet. OhneSchach 1.a7-a5 2.a5-a4 3.a4-a3 4.a3-a2 5.a2-a1=L 6.La1-e5 7.Le5-b8 8.Lb8-a7 Kc8-c7 = - add_to_move_generation_stack: 10009 - play_move: 4554 - is_white_king_square_attacked: 4496 - is_black_king_square_attacked: 4746 + add_to_move_generation_stack: 10057 + play_move: 4568 + is_white_king_square_attacked: 4510 + is_black_king_square_attacked: 4756 Loesung beendet. diff --git a/REGRESSIONTESTS/woozles.out b/REGRESSIONTESTS/woozles.out index 0cf416f35..973957c71 100644 --- a/REGRESSIONTESTS/woozles.out +++ b/REGRESSIONTESTS/woozles.out @@ -622,10 +622,10 @@ Loesung beendet. 19 (Ke7*d7 ) 20 (Ke7-e8 ) 21 (Ke7-f7 ) - add_to_move_generation_stack: 11163433 - play_move: 9634363 - is_white_king_square_attacked: 499130 - is_black_king_square_attacked: 9633990 + add_to_move_generation_stack: 11163701 + play_move: 9634547 + is_white_king_square_attacked: 499186 + is_black_king_square_attacked: 9634174 Loesung beendet. diff --git a/conditions/circe/capture_fork.c b/conditions/circe/capture_fork.c index 3a00f9df7..7741cd324 100644 --- a/conditions/circe/capture_fork.c +++ b/conditions/circe/capture_fork.c @@ -3,6 +3,7 @@ #include "conditions/circe/rebirth_avoider.h" #include "stipulation/fork.h" #include "solving/binary.h" +#include "solving/fork.h" #include "solving/move_effect_journal.h" #include "debugging/trace.h" #include "debugging/assert.h" diff --git a/conditions/circe/depend b/conditions/circe/depend index 96c0a3877..4f18bfd5c 100644 --- a/conditions/circe/depend +++ b/conditions/circe/depend @@ -1,5281 +1,3174 @@ -conditions/circe/circe$(OBJ_SUFFIX): conditions/circe/circe.c \ - conditions/circe/circe.h pieces/pieces.h utilities/boolean.h \ - position/side.h position/side.enum.h position/side.enum \ - position/board.h utilities/bitmask.h solving/machinery/solve.h \ - stipulation/stipulation.h stipulation/goals/goals.h \ - stipulation/slice_type.h stipulation/slice_type.enum.h \ - stipulation/slice_type.enum output/mode.h output/mode.enum.h \ - output/mode.enum solving/machinery/dispatch.h debugging/trace.h \ - stipulation/structure_traversal.h stipulation/slice.h \ - stipulation/slice_structural_type.h \ - stipulation/slice_structural_type.enum.h \ - stipulation/slice_structural_type.enum \ - stipulation/slice_functional_type.h \ - stipulation/slice_functional_type.enum.h \ - stipulation/slice_functional_type.enum \ - stipulation/slice_contextual_type.h \ - stipulation/slice_contextual_type.enum.h \ - stipulation/slice_contextual_type.enum stipulation/traversal.h \ - stipulation/slice_insertion.h solving/move_effect_journal.h \ - position/castling_rights.h solving/ply.h position/pieceid.h \ - solving/machinery/twin.h conditions/circe/rebirth_square_occupied.h \ - conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ - conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ - conditions/circe/relevant_side.h conditions/circe/april.h \ - conditions/circe/cage.h conditions/circe/capture_fork.h \ - conditions/circe/double_agents.h conditions/circe/frischauf.h \ - conditions/circe/glasgow.h conditions/circe/parrain.h \ - conditions/circe/rex_inclusive.h conditions/circe/super.h \ - conditions/circe/takemake.h conditions/circe/volage.h \ - pieces/walks/walks.h pieces/walks/classification.h position/position.h \ - position/color.h position/color.enum.h position/color.enum \ - pieces/walks/vectors.h pieces/walks/pawns/promotion.h \ - pieces/attributes/chameleon.h position/effects/piece_readdition.h \ - conditions/conditions.h stipulation/pipe.h solving/has_solution_type.h \ - solving/has_solution_type.enum.h solving/has_solution_type.enum \ - solving/pipe.h debugging/assert.h - +conditions/circe/circe.obj: conditions/circe/circe.c \ + conditions/circe/circe.h pieces/pieces.h utilities/boolean.h \ + position/side.h position/side.enum.h position/side.enum position/board.h \ + utilities/bitmask.h solving/machinery/solve.h stipulation/stipulation.h \ + stipulation/goals/goals.h stipulation/slice_type.h \ + stipulation/slice_type.enum.h stipulation/slice_type.enum output/mode.h \ + output/mode.enum.h output/mode.enum solving/machinery/dispatch.h \ + debugging/trace.h stipulation/structure_traversal.h stipulation/slice.h \ + stipulation/slice_structural_type.h \ + stipulation/slice_structural_type.enum.h \ + stipulation/slice_structural_type.enum \ + stipulation/slice_functional_type.h \ + stipulation/slice_functional_type.enum.h \ + stipulation/slice_functional_type.enum \ + stipulation/slice_contextual_type.h \ + stipulation/slice_contextual_type.enum.h \ + stipulation/slice_contextual_type.enum stipulation/traversal.h \ + stipulation/slice_insertion.h solving/move_effect_journal.h \ + position/castling_rights.h solving/ply.h position/pieceid.h \ + solving/machinery/twin.h conditions/circe/rebirth_square_occupied.h \ + conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ + conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ + conditions/circe/relevant_side.h conditions/circe/april.h \ + conditions/circe/cage.h conditions/circe/capture_fork.h \ + conditions/circe/double_agents.h conditions/circe/frischauf.h \ + conditions/circe/glasgow.h conditions/circe/parrain.h \ + conditions/circe/rex_inclusive.h conditions/circe/super.h \ + conditions/circe/takemake.h conditions/circe/volage.h \ + pieces/walks/walks.h pieces/walks/classification.h position/position.h \ + position/color.h position/color.enum.h position/color.enum \ + pieces/walks/vectors.h pieces/walks/pawns/promotion.h \ + pieces/attributes/chameleon.h position/effects/piece_readdition.h \ + conditions/conditions.h stipulation/pipe.h solving/has_solution_type.h \ + solving/has_solution_type.enum.h solving/has_solution_type.enum \ + solving/pipe.h debugging/assert.h conditions/circe/circe.h: - pieces/pieces.h: - utilities/boolean.h: - position/side.h: - position/side.enum.h: - position/side.enum: - position/board.h: - utilities/bitmask.h: - solving/machinery/solve.h: - stipulation/stipulation.h: - stipulation/goals/goals.h: - stipulation/slice_type.h: - stipulation/slice_type.enum.h: - stipulation/slice_type.enum: - output/mode.h: - output/mode.enum.h: - output/mode.enum: - solving/machinery/dispatch.h: - debugging/trace.h: - stipulation/structure_traversal.h: - stipulation/slice.h: - stipulation/slice_structural_type.h: - stipulation/slice_structural_type.enum.h: - stipulation/slice_structural_type.enum: - stipulation/slice_functional_type.h: - stipulation/slice_functional_type.enum.h: - stipulation/slice_functional_type.enum: - stipulation/slice_contextual_type.h: - stipulation/slice_contextual_type.enum.h: - stipulation/slice_contextual_type.enum: - stipulation/traversal.h: - stipulation/slice_insertion.h: - solving/move_effect_journal.h: - position/castling_rights.h: - solving/ply.h: - position/pieceid.h: - solving/machinery/twin.h: - conditions/circe/rebirth_square_occupied.h: - conditions/circe/reborn_piece.h: - conditions/circe/rebirth_square.h: - conditions/circe/relevant_capture.h: - conditions/circe/relevant_piece.h: - conditions/circe/relevant_side.h: - conditions/circe/april.h: - conditions/circe/cage.h: - conditions/circe/capture_fork.h: - conditions/circe/double_agents.h: - conditions/circe/frischauf.h: - conditions/circe/glasgow.h: - conditions/circe/parrain.h: - conditions/circe/rex_inclusive.h: - conditions/circe/super.h: - conditions/circe/takemake.h: - conditions/circe/volage.h: - pieces/walks/walks.h: - pieces/walks/classification.h: - position/position.h: - position/color.h: - position/color.enum.h: - position/color.enum: - pieces/walks/vectors.h: - pieces/walks/pawns/promotion.h: - pieces/attributes/chameleon.h: - position/effects/piece_readdition.h: - conditions/conditions.h: - stipulation/pipe.h: - solving/has_solution_type.h: - solving/has_solution_type.enum.h: - solving/has_solution_type.enum: - solving/pipe.h: - debugging/assert.h: -conditions/circe/goal_filters$(OBJ_SUFFIX): conditions/circe/goal_filters.c \ - conditions/circe/goal_filters.h stipulation/stipulation.h \ - stipulation/goals/goals.h position/board.h utilities/bitmask.h \ - utilities/boolean.h stipulation/slice_type.h \ - stipulation/slice_type.enum.h stipulation/slice_type.enum \ - position/side.h position/side.enum.h position/side.enum \ - pieces/pieces.h output/mode.h output/mode.enum.h output/mode.enum \ - stipulation/pipe.h stipulation/structure_traversal.h \ - stipulation/slice.h stipulation/slice_structural_type.h \ - stipulation/slice_structural_type.enum.h \ - stipulation/slice_structural_type.enum \ - stipulation/slice_functional_type.h \ - stipulation/slice_functional_type.enum.h \ - stipulation/slice_functional_type.enum \ - stipulation/slice_contextual_type.h \ - stipulation/slice_contextual_type.enum.h \ - stipulation/slice_contextual_type.enum stipulation/traversal.h \ - stipulation/branch.h stipulation/proxy.h stipulation/boolean/or.h \ - stipulation/boolean/true.h \ - conditions/circe/circuit_by_rebirth_special.h \ - solving/machinery/solve.h solving/machinery/dispatch.h \ - debugging/trace.h conditions/circe/exchange_by_rebirth_special.h \ - conditions/circe/steingewinn_filter.h debugging/assert.h - +conditions/circe/goal_filters.obj: conditions/circe/goal_filters.c \ + conditions/circe/goal_filters.h stipulation/stipulation.h \ + stipulation/goals/goals.h position/board.h utilities/bitmask.h \ + utilities/boolean.h stipulation/slice_type.h \ + stipulation/slice_type.enum.h stipulation/slice_type.enum \ + position/side.h position/side.enum.h position/side.enum pieces/pieces.h \ + output/mode.h output/mode.enum.h output/mode.enum stipulation/pipe.h \ + stipulation/structure_traversal.h stipulation/slice.h \ + stipulation/slice_structural_type.h \ + stipulation/slice_structural_type.enum.h \ + stipulation/slice_structural_type.enum \ + stipulation/slice_functional_type.h \ + stipulation/slice_functional_type.enum.h \ + stipulation/slice_functional_type.enum \ + stipulation/slice_contextual_type.h \ + stipulation/slice_contextual_type.enum.h \ + stipulation/slice_contextual_type.enum stipulation/traversal.h \ + stipulation/branch.h stipulation/proxy.h stipulation/boolean/or.h \ + stipulation/boolean/true.h conditions/circe/circuit_by_rebirth_special.h \ + solving/machinery/solve.h solving/machinery/dispatch.h debugging/trace.h \ + conditions/circe/exchange_by_rebirth_special.h \ + conditions/circe/steingewinn_filter.h debugging/assert.h conditions/circe/goal_filters.h: - stipulation/stipulation.h: - stipulation/goals/goals.h: - position/board.h: - utilities/bitmask.h: - utilities/boolean.h: - stipulation/slice_type.h: - stipulation/slice_type.enum.h: - stipulation/slice_type.enum: - position/side.h: - position/side.enum.h: - position/side.enum: - pieces/pieces.h: - output/mode.h: - output/mode.enum.h: - output/mode.enum: - stipulation/pipe.h: - stipulation/structure_traversal.h: - stipulation/slice.h: - stipulation/slice_structural_type.h: - stipulation/slice_structural_type.enum.h: - stipulation/slice_structural_type.enum: - stipulation/slice_functional_type.h: - stipulation/slice_functional_type.enum.h: - stipulation/slice_functional_type.enum: - stipulation/slice_contextual_type.h: - stipulation/slice_contextual_type.enum.h: - stipulation/slice_contextual_type.enum: - stipulation/traversal.h: - stipulation/branch.h: - stipulation/proxy.h: - stipulation/boolean/or.h: - stipulation/boolean/true.h: - conditions/circe/circuit_by_rebirth_special.h: - solving/machinery/solve.h: - solving/machinery/dispatch.h: - debugging/trace.h: - conditions/circe/exchange_by_rebirth_special.h: - conditions/circe/steingewinn_filter.h: - debugging/assert.h: -conditions/circe/assassin$(OBJ_SUFFIX): conditions/circe/assassin.c \ - conditions/circe/assassin.h solving/machinery/solve.h \ - stipulation/stipulation.h stipulation/goals/goals.h position/board.h \ - utilities/bitmask.h utilities/boolean.h stipulation/slice_type.h \ - stipulation/slice_type.enum.h stipulation/slice_type.enum \ - position/side.h position/side.enum.h position/side.enum \ - pieces/pieces.h output/mode.h output/mode.enum.h output/mode.enum \ - solving/machinery/dispatch.h debugging/trace.h position/position.h \ - position/color.h position/color.enum.h position/color.enum \ - position/pieceid.h pieces/walks/vectors.h position/castling_rights.h \ - conditions/circe/circe.h stipulation/structure_traversal.h \ - stipulation/slice.h stipulation/slice_structural_type.h \ - stipulation/slice_structural_type.enum.h \ - stipulation/slice_structural_type.enum \ - stipulation/slice_functional_type.h \ - stipulation/slice_functional_type.enum.h \ - stipulation/slice_functional_type.enum \ - stipulation/slice_contextual_type.h \ - stipulation/slice_contextual_type.enum.h \ - stipulation/slice_contextual_type.enum stipulation/traversal.h \ - stipulation/slice_insertion.h solving/move_effect_journal.h \ - solving/ply.h solving/machinery/twin.h \ - conditions/circe/rebirth_square_occupied.h \ - conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ - conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ - conditions/circe/relevant_side.h conditions/circe/rebirth_avoider.h \ - solving/observation.h solving/temporary_hacks.h solving/fork.h \ - solving/check.h debugging/measure.h output/plaintext/protocol.h \ - position/effects/piece_removal.h solving/move_generator.h \ - solving/has_solution_type.h solving/has_solution_type.enum.h \ - solving/has_solution_type.enum stipulation/pipe.h stipulation/fork.h \ - solving/pipe.h debugging/assert.h - +conditions/circe/assassin.obj: conditions/circe/assassin.c \ + conditions/circe/assassin.h solving/machinery/solve.h \ + stipulation/stipulation.h stipulation/goals/goals.h position/board.h \ + utilities/bitmask.h utilities/boolean.h stipulation/slice_type.h \ + stipulation/slice_type.enum.h stipulation/slice_type.enum \ + position/side.h position/side.enum.h position/side.enum pieces/pieces.h \ + output/mode.h output/mode.enum.h output/mode.enum \ + solving/machinery/dispatch.h debugging/trace.h position/position.h \ + position/color.h position/color.enum.h position/color.enum \ + position/pieceid.h pieces/walks/vectors.h position/castling_rights.h \ + conditions/circe/circe.h stipulation/structure_traversal.h \ + stipulation/slice.h stipulation/slice_structural_type.h \ + stipulation/slice_structural_type.enum.h \ + stipulation/slice_structural_type.enum \ + stipulation/slice_functional_type.h \ + stipulation/slice_functional_type.enum.h \ + stipulation/slice_functional_type.enum \ + stipulation/slice_contextual_type.h \ + stipulation/slice_contextual_type.enum.h \ + stipulation/slice_contextual_type.enum stipulation/traversal.h \ + stipulation/slice_insertion.h solving/move_effect_journal.h \ + solving/ply.h solving/machinery/twin.h \ + conditions/circe/rebirth_square_occupied.h \ + conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ + conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ + conditions/circe/relevant_side.h conditions/circe/rebirth_avoider.h \ + solving/observation.h solving/temporary_hacks.h solving/fork.h \ + solving/check.h debugging/measure.h position/effects/piece_removal.h \ + solving/move_generator.h solving/has_solution_type.h \ + solving/has_solution_type.enum.h solving/has_solution_type.enum \ + stipulation/pipe.h stipulation/fork.h solving/pipe.h debugging/assert.h conditions/circe/assassin.h: - solving/machinery/solve.h: - stipulation/stipulation.h: - stipulation/goals/goals.h: - position/board.h: - utilities/bitmask.h: - utilities/boolean.h: - stipulation/slice_type.h: - stipulation/slice_type.enum.h: - stipulation/slice_type.enum: - position/side.h: - position/side.enum.h: - position/side.enum: - pieces/pieces.h: - output/mode.h: - output/mode.enum.h: - output/mode.enum: - solving/machinery/dispatch.h: - debugging/trace.h: - position/position.h: - position/color.h: - position/color.enum.h: - position/color.enum: - position/pieceid.h: - pieces/walks/vectors.h: - position/castling_rights.h: - conditions/circe/circe.h: - stipulation/structure_traversal.h: - stipulation/slice.h: - stipulation/slice_structural_type.h: - stipulation/slice_structural_type.enum.h: - stipulation/slice_structural_type.enum: - stipulation/slice_functional_type.h: - stipulation/slice_functional_type.enum.h: - stipulation/slice_functional_type.enum: - stipulation/slice_contextual_type.h: - stipulation/slice_contextual_type.enum.h: - stipulation/slice_contextual_type.enum: - stipulation/traversal.h: - stipulation/slice_insertion.h: - solving/move_effect_journal.h: - solving/ply.h: - solving/machinery/twin.h: - conditions/circe/rebirth_square_occupied.h: - conditions/circe/reborn_piece.h: - conditions/circe/rebirth_square.h: - conditions/circe/relevant_capture.h: - conditions/circe/relevant_piece.h: - conditions/circe/relevant_side.h: - conditions/circe/rebirth_avoider.h: - solving/observation.h: - solving/temporary_hacks.h: - solving/fork.h: - solving/check.h: - debugging/measure.h: - -output/plaintext/protocol.h: - position/effects/piece_removal.h: - solving/move_generator.h: - solving/has_solution_type.h: - solving/has_solution_type.enum.h: - solving/has_solution_type.enum: - stipulation/pipe.h: - stipulation/fork.h: - solving/pipe.h: - debugging/assert.h: -conditions/circe/steingewinn_filter$(OBJ_SUFFIX): \ - conditions/circe/steingewinn_filter.c \ - conditions/circe/steingewinn_filter.h solving/machinery/solve.h \ - stipulation/stipulation.h stipulation/goals/goals.h position/board.h \ - utilities/bitmask.h utilities/boolean.h stipulation/slice_type.h \ - stipulation/slice_type.enum.h stipulation/slice_type.enum \ - position/side.h position/side.enum.h position/side.enum \ - pieces/pieces.h output/mode.h output/mode.enum.h output/mode.enum \ - solving/machinery/dispatch.h debugging/trace.h stipulation/pipe.h \ - stipulation/structure_traversal.h stipulation/slice.h \ - stipulation/slice_structural_type.h \ - stipulation/slice_structural_type.enum.h \ - stipulation/slice_structural_type.enum \ - stipulation/slice_functional_type.h \ - stipulation/slice_functional_type.enum.h \ - stipulation/slice_functional_type.enum \ - stipulation/slice_contextual_type.h \ - stipulation/slice_contextual_type.enum.h \ - stipulation/slice_contextual_type.enum stipulation/traversal.h \ - solving/pipe.h conditions/circe/circe.h stipulation/slice_insertion.h \ - solving/move_effect_journal.h position/castling_rights.h solving/ply.h \ - position/pieceid.h solving/machinery/twin.h \ - conditions/circe/rebirth_square_occupied.h \ - conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ - conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ - conditions/circe/relevant_side.h debugging/assert.h - +conditions/circe/steingewinn_filter.obj: \ + conditions/circe/steingewinn_filter.c \ + conditions/circe/steingewinn_filter.h solving/machinery/solve.h \ + stipulation/stipulation.h stipulation/goals/goals.h position/board.h \ + utilities/bitmask.h utilities/boolean.h stipulation/slice_type.h \ + stipulation/slice_type.enum.h stipulation/slice_type.enum \ + position/side.h position/side.enum.h position/side.enum pieces/pieces.h \ + output/mode.h output/mode.enum.h output/mode.enum \ + solving/machinery/dispatch.h debugging/trace.h stipulation/pipe.h \ + stipulation/structure_traversal.h stipulation/slice.h \ + stipulation/slice_structural_type.h \ + stipulation/slice_structural_type.enum.h \ + stipulation/slice_structural_type.enum \ + stipulation/slice_functional_type.h \ + stipulation/slice_functional_type.enum.h \ + stipulation/slice_functional_type.enum \ + stipulation/slice_contextual_type.h \ + stipulation/slice_contextual_type.enum.h \ + stipulation/slice_contextual_type.enum stipulation/traversal.h \ + solving/pipe.h conditions/circe/circe.h stipulation/slice_insertion.h \ + solving/move_effect_journal.h position/castling_rights.h solving/ply.h \ + position/pieceid.h solving/machinery/twin.h \ + conditions/circe/rebirth_square_occupied.h \ + conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ + conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ + conditions/circe/relevant_side.h debugging/assert.h conditions/circe/steingewinn_filter.h: - solving/machinery/solve.h: - stipulation/stipulation.h: - stipulation/goals/goals.h: - position/board.h: - utilities/bitmask.h: - utilities/boolean.h: - stipulation/slice_type.h: - stipulation/slice_type.enum.h: - stipulation/slice_type.enum: - position/side.h: - position/side.enum.h: - position/side.enum: - pieces/pieces.h: - output/mode.h: - output/mode.enum.h: - output/mode.enum: - solving/machinery/dispatch.h: - debugging/trace.h: - stipulation/pipe.h: - stipulation/structure_traversal.h: - stipulation/slice.h: - stipulation/slice_structural_type.h: - stipulation/slice_structural_type.enum.h: - stipulation/slice_structural_type.enum: - stipulation/slice_functional_type.h: - stipulation/slice_functional_type.enum.h: - stipulation/slice_functional_type.enum: - stipulation/slice_contextual_type.h: - stipulation/slice_contextual_type.enum.h: - stipulation/slice_contextual_type.enum: - stipulation/traversal.h: - solving/pipe.h: - conditions/circe/circe.h: - stipulation/slice_insertion.h: - solving/move_effect_journal.h: - position/castling_rights.h: - solving/ply.h: - position/pieceid.h: - solving/machinery/twin.h: - conditions/circe/rebirth_square_occupied.h: - conditions/circe/reborn_piece.h: - conditions/circe/rebirth_square.h: - conditions/circe/relevant_capture.h: - conditions/circe/relevant_piece.h: - conditions/circe/relevant_side.h: - debugging/assert.h: -conditions/circe/circuit_by_rebirth_special$(OBJ_SUFFIX): \ - conditions/circe/circuit_by_rebirth_special.c \ - conditions/circe/circuit_by_rebirth_special.h \ - solving/machinery/solve.h stipulation/stipulation.h \ - stipulation/goals/goals.h position/board.h utilities/bitmask.h \ - utilities/boolean.h stipulation/slice_type.h \ - stipulation/slice_type.enum.h stipulation/slice_type.enum \ - position/side.h position/side.enum.h position/side.enum \ - pieces/pieces.h output/mode.h output/mode.enum.h output/mode.enum \ - solving/machinery/dispatch.h debugging/trace.h position/pieceid.h \ - position/position.h position/color.h position/color.enum.h \ - position/color.enum pieces/walks/vectors.h position/castling_rights.h \ - stipulation/pipe.h stipulation/structure_traversal.h \ - stipulation/slice.h stipulation/slice_structural_type.h \ - stipulation/slice_structural_type.enum.h \ - stipulation/slice_structural_type.enum \ - stipulation/slice_functional_type.h \ - stipulation/slice_functional_type.enum.h \ - stipulation/slice_functional_type.enum \ - stipulation/slice_contextual_type.h \ - stipulation/slice_contextual_type.enum.h \ - stipulation/slice_contextual_type.enum stipulation/traversal.h \ - conditions/circe/circe.h stipulation/slice_insertion.h \ - solving/move_effect_journal.h solving/ply.h solving/machinery/twin.h \ - conditions/circe/rebirth_square_occupied.h \ - conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ - conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ - conditions/circe/relevant_side.h solving/pipe.h debugging/assert.h - +conditions/circe/circuit_by_rebirth_special.obj: \ + conditions/circe/circuit_by_rebirth_special.c \ + conditions/circe/circuit_by_rebirth_special.h solving/machinery/solve.h \ + stipulation/stipulation.h stipulation/goals/goals.h position/board.h \ + utilities/bitmask.h utilities/boolean.h stipulation/slice_type.h \ + stipulation/slice_type.enum.h stipulation/slice_type.enum \ + position/side.h position/side.enum.h position/side.enum pieces/pieces.h \ + output/mode.h output/mode.enum.h output/mode.enum \ + solving/machinery/dispatch.h debugging/trace.h position/pieceid.h \ + position/position.h position/color.h position/color.enum.h \ + position/color.enum pieces/walks/vectors.h position/castling_rights.h \ + stipulation/pipe.h stipulation/structure_traversal.h stipulation/slice.h \ + stipulation/slice_structural_type.h \ + stipulation/slice_structural_type.enum.h \ + stipulation/slice_structural_type.enum \ + stipulation/slice_functional_type.h \ + stipulation/slice_functional_type.enum.h \ + stipulation/slice_functional_type.enum \ + stipulation/slice_contextual_type.h \ + stipulation/slice_contextual_type.enum.h \ + stipulation/slice_contextual_type.enum stipulation/traversal.h \ + conditions/circe/circe.h stipulation/slice_insertion.h \ + solving/move_effect_journal.h solving/ply.h solving/machinery/twin.h \ + conditions/circe/rebirth_square_occupied.h \ + conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ + conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ + conditions/circe/relevant_side.h solving/pipe.h debugging/assert.h conditions/circe/circuit_by_rebirth_special.h: - solving/machinery/solve.h: - stipulation/stipulation.h: - stipulation/goals/goals.h: - position/board.h: - utilities/bitmask.h: - utilities/boolean.h: - stipulation/slice_type.h: - stipulation/slice_type.enum.h: - stipulation/slice_type.enum: - position/side.h: - position/side.enum.h: - position/side.enum: - pieces/pieces.h: - output/mode.h: - output/mode.enum.h: - output/mode.enum: - solving/machinery/dispatch.h: - debugging/trace.h: - position/pieceid.h: - position/position.h: - position/color.h: - position/color.enum.h: - position/color.enum: - pieces/walks/vectors.h: - position/castling_rights.h: - stipulation/pipe.h: - stipulation/structure_traversal.h: - stipulation/slice.h: - stipulation/slice_structural_type.h: - stipulation/slice_structural_type.enum.h: - stipulation/slice_structural_type.enum: - stipulation/slice_functional_type.h: - stipulation/slice_functional_type.enum.h: - stipulation/slice_functional_type.enum: - stipulation/slice_contextual_type.h: - stipulation/slice_contextual_type.enum.h: - stipulation/slice_contextual_type.enum: - stipulation/traversal.h: - conditions/circe/circe.h: - stipulation/slice_insertion.h: - solving/move_effect_journal.h: - solving/ply.h: - solving/machinery/twin.h: - conditions/circe/rebirth_square_occupied.h: - conditions/circe/reborn_piece.h: - conditions/circe/rebirth_square.h: - conditions/circe/relevant_capture.h: - conditions/circe/relevant_piece.h: - conditions/circe/relevant_side.h: - solving/pipe.h: - debugging/assert.h: -conditions/circe/exchange_by_rebirth_special$(OBJ_SUFFIX): \ - conditions/circe/exchange_by_rebirth_special.c \ - conditions/circe/exchange_by_rebirth_special.h \ - solving/machinery/solve.h stipulation/stipulation.h \ - stipulation/goals/goals.h position/board.h utilities/bitmask.h \ - utilities/boolean.h stipulation/slice_type.h \ - stipulation/slice_type.enum.h stipulation/slice_type.enum \ - position/side.h position/side.enum.h position/side.enum \ - pieces/pieces.h output/mode.h output/mode.enum.h output/mode.enum \ - solving/machinery/dispatch.h debugging/trace.h position/pieceid.h \ - position/position.h position/color.h position/color.enum.h \ - position/color.enum pieces/walks/vectors.h position/castling_rights.h \ - stipulation/pipe.h stipulation/structure_traversal.h \ - stipulation/slice.h stipulation/slice_structural_type.h \ - stipulation/slice_structural_type.enum.h \ - stipulation/slice_structural_type.enum \ - stipulation/slice_functional_type.h \ - stipulation/slice_functional_type.enum.h \ - stipulation/slice_functional_type.enum \ - stipulation/slice_contextual_type.h \ - stipulation/slice_contextual_type.enum.h \ - stipulation/slice_contextual_type.enum stipulation/traversal.h \ - conditions/circe/circe.h stipulation/slice_insertion.h \ - solving/move_effect_journal.h solving/ply.h solving/machinery/twin.h \ - conditions/circe/rebirth_square_occupied.h \ - conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ - conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ - conditions/circe/relevant_side.h solving/pipe.h debugging/assert.h - +conditions/circe/exchange_by_rebirth_special.obj: \ + conditions/circe/exchange_by_rebirth_special.c \ + conditions/circe/exchange_by_rebirth_special.h solving/machinery/solve.h \ + stipulation/stipulation.h stipulation/goals/goals.h position/board.h \ + utilities/bitmask.h utilities/boolean.h stipulation/slice_type.h \ + stipulation/slice_type.enum.h stipulation/slice_type.enum \ + position/side.h position/side.enum.h position/side.enum pieces/pieces.h \ + output/mode.h output/mode.enum.h output/mode.enum \ + solving/machinery/dispatch.h debugging/trace.h position/pieceid.h \ + position/position.h position/color.h position/color.enum.h \ + position/color.enum pieces/walks/vectors.h position/castling_rights.h \ + stipulation/pipe.h stipulation/structure_traversal.h stipulation/slice.h \ + stipulation/slice_structural_type.h \ + stipulation/slice_structural_type.enum.h \ + stipulation/slice_structural_type.enum \ + stipulation/slice_functional_type.h \ + stipulation/slice_functional_type.enum.h \ + stipulation/slice_functional_type.enum \ + stipulation/slice_contextual_type.h \ + stipulation/slice_contextual_type.enum.h \ + stipulation/slice_contextual_type.enum stipulation/traversal.h \ + conditions/circe/circe.h stipulation/slice_insertion.h \ + solving/move_effect_journal.h solving/ply.h solving/machinery/twin.h \ + conditions/circe/rebirth_square_occupied.h \ + conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ + conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ + conditions/circe/relevant_side.h solving/pipe.h debugging/assert.h conditions/circe/exchange_by_rebirth_special.h: - solving/machinery/solve.h: - stipulation/stipulation.h: - stipulation/goals/goals.h: - position/board.h: - utilities/bitmask.h: - utilities/boolean.h: - stipulation/slice_type.h: - stipulation/slice_type.enum.h: - stipulation/slice_type.enum: - position/side.h: - position/side.enum.h: - position/side.enum: - pieces/pieces.h: - output/mode.h: - output/mode.enum.h: - output/mode.enum: - solving/machinery/dispatch.h: - debugging/trace.h: - position/pieceid.h: - position/position.h: - position/color.h: - position/color.enum.h: - position/color.enum: - pieces/walks/vectors.h: - position/castling_rights.h: - stipulation/pipe.h: - stipulation/structure_traversal.h: - stipulation/slice.h: - stipulation/slice_structural_type.h: - stipulation/slice_structural_type.enum.h: - stipulation/slice_structural_type.enum: - stipulation/slice_functional_type.h: - stipulation/slice_functional_type.enum.h: - stipulation/slice_functional_type.enum: - stipulation/slice_contextual_type.h: - stipulation/slice_contextual_type.enum.h: - stipulation/slice_contextual_type.enum: - stipulation/traversal.h: - conditions/circe/circe.h: - stipulation/slice_insertion.h: - solving/move_effect_journal.h: - solving/ply.h: - solving/machinery/twin.h: - conditions/circe/rebirth_square_occupied.h: - conditions/circe/reborn_piece.h: - conditions/circe/rebirth_square.h: - conditions/circe/relevant_capture.h: - conditions/circe/relevant_piece.h: - conditions/circe/relevant_side.h: - solving/pipe.h: - debugging/assert.h: -conditions/circe/cage$(OBJ_SUFFIX): conditions/circe/cage.c conditions/circe/cage.h \ - solving/machinery/solve.h stipulation/stipulation.h \ - stipulation/goals/goals.h position/board.h utilities/bitmask.h \ - utilities/boolean.h stipulation/slice_type.h \ - stipulation/slice_type.enum.h stipulation/slice_type.enum \ - position/side.h position/side.enum.h position/side.enum \ - pieces/pieces.h output/mode.h output/mode.enum.h output/mode.enum \ - solving/machinery/dispatch.h debugging/trace.h \ - conditions/circe/rebirth_avoider.h conditions/circe/circe.h \ - stipulation/structure_traversal.h stipulation/slice.h \ - stipulation/slice_structural_type.h \ - stipulation/slice_structural_type.enum.h \ - stipulation/slice_structural_type.enum \ - stipulation/slice_functional_type.h \ - stipulation/slice_functional_type.enum.h \ - stipulation/slice_functional_type.enum \ - stipulation/slice_contextual_type.h \ - stipulation/slice_contextual_type.enum.h \ - stipulation/slice_contextual_type.enum stipulation/traversal.h \ - stipulation/slice_insertion.h solving/move_effect_journal.h \ - position/castling_rights.h solving/ply.h position/pieceid.h \ - solving/machinery/twin.h conditions/circe/rebirth_square_occupied.h \ - conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ - conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ - conditions/circe/relevant_side.h conditions/conditions.h \ - position/position.h position/color.h position/color.enum.h \ - position/color.enum pieces/walks/vectors.h \ - conditions/circe/rex_inclusive.h solving/has_solution_type.h \ - solving/has_solution_type.enum.h solving/has_solution_type.enum \ - stipulation/pipe.h stipulation/branch.h stipulation/fork.h \ - solving/temporary_hacks.h solving/check.h debugging/measure.h \ - output/plaintext/protocol.h solving/single_piece_move_generator.h \ - solving/post_move_iteration.h solving/observation.h solving/fork.h \ - solving/move_generator.h solving/conditional_pipe.h solving/pipe.h \ - debugging/assert.h - +conditions/circe/cage.obj: conditions/circe/cage.c \ + conditions/circe/cage.h solving/machinery/solve.h \ + stipulation/stipulation.h stipulation/goals/goals.h position/board.h \ + utilities/bitmask.h utilities/boolean.h stipulation/slice_type.h \ + stipulation/slice_type.enum.h stipulation/slice_type.enum \ + position/side.h position/side.enum.h position/side.enum pieces/pieces.h \ + output/mode.h output/mode.enum.h output/mode.enum \ + solving/machinery/dispatch.h debugging/trace.h \ + conditions/circe/rebirth_avoider.h conditions/circe/circe.h \ + stipulation/structure_traversal.h stipulation/slice.h \ + stipulation/slice_structural_type.h \ + stipulation/slice_structural_type.enum.h \ + stipulation/slice_structural_type.enum \ + stipulation/slice_functional_type.h \ + stipulation/slice_functional_type.enum.h \ + stipulation/slice_functional_type.enum \ + stipulation/slice_contextual_type.h \ + stipulation/slice_contextual_type.enum.h \ + stipulation/slice_contextual_type.enum stipulation/traversal.h \ + stipulation/slice_insertion.h solving/move_effect_journal.h \ + position/castling_rights.h solving/ply.h position/pieceid.h \ + solving/machinery/twin.h conditions/circe/rebirth_square_occupied.h \ + conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ + conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ + conditions/circe/relevant_side.h conditions/conditions.h \ + position/position.h position/color.h position/color.enum.h \ + position/color.enum pieces/walks/vectors.h \ + conditions/circe/rex_inclusive.h solving/has_solution_type.h \ + solving/has_solution_type.enum.h solving/has_solution_type.enum \ + stipulation/pipe.h stipulation/branch.h stipulation/fork.h \ + solving/temporary_hacks.h solving/check.h debugging/measure.h \ + solving/single_piece_move_generator.h solving/post_move_iteration.h \ + solving/observation.h solving/fork.h solving/move_generator.h \ + solving/conditional_pipe.h solving/pipe.h debugging/assert.h conditions/circe/cage.h: - solving/machinery/solve.h: - stipulation/stipulation.h: - stipulation/goals/goals.h: - position/board.h: - utilities/bitmask.h: - utilities/boolean.h: - stipulation/slice_type.h: - stipulation/slice_type.enum.h: - stipulation/slice_type.enum: - position/side.h: - position/side.enum.h: - position/side.enum: - pieces/pieces.h: - output/mode.h: - output/mode.enum.h: - output/mode.enum: - solving/machinery/dispatch.h: - debugging/trace.h: - conditions/circe/rebirth_avoider.h: - conditions/circe/circe.h: - stipulation/structure_traversal.h: - stipulation/slice.h: - stipulation/slice_structural_type.h: - stipulation/slice_structural_type.enum.h: - stipulation/slice_structural_type.enum: - stipulation/slice_functional_type.h: - stipulation/slice_functional_type.enum.h: - stipulation/slice_functional_type.enum: - stipulation/slice_contextual_type.h: - stipulation/slice_contextual_type.enum.h: - stipulation/slice_contextual_type.enum: - stipulation/traversal.h: - stipulation/slice_insertion.h: - solving/move_effect_journal.h: - position/castling_rights.h: - solving/ply.h: - position/pieceid.h: - solving/machinery/twin.h: - conditions/circe/rebirth_square_occupied.h: - conditions/circe/reborn_piece.h: - conditions/circe/rebirth_square.h: - conditions/circe/relevant_capture.h: - conditions/circe/relevant_piece.h: - conditions/circe/relevant_side.h: - conditions/conditions.h: - position/position.h: - position/color.h: - position/color.enum.h: - position/color.enum: - pieces/walks/vectors.h: - conditions/circe/rex_inclusive.h: - solving/has_solution_type.h: - solving/has_solution_type.enum.h: - solving/has_solution_type.enum: - stipulation/pipe.h: - stipulation/branch.h: - stipulation/fork.h: - solving/temporary_hacks.h: - solving/check.h: - debugging/measure.h: - -output/plaintext/protocol.h: - solving/single_piece_move_generator.h: - solving/post_move_iteration.h: - solving/observation.h: - solving/fork.h: - solving/move_generator.h: - solving/conditional_pipe.h: - solving/pipe.h: - debugging/assert.h: -conditions/circe/kamikaze$(OBJ_SUFFIX): conditions/circe/kamikaze.c \ - conditions/circe/kamikaze.h solving/machinery/solve.h \ - stipulation/stipulation.h stipulation/goals/goals.h position/board.h \ - utilities/bitmask.h utilities/boolean.h stipulation/slice_type.h \ - stipulation/slice_type.enum.h stipulation/slice_type.enum \ - position/side.h position/side.enum.h position/side.enum \ - pieces/pieces.h output/mode.h output/mode.enum.h output/mode.enum \ - solving/machinery/dispatch.h debugging/trace.h \ - conditions/circe/rebirth_avoider.h conditions/anticirce/anticirce.h \ - conditions/circe/circe.h stipulation/structure_traversal.h \ - stipulation/slice.h stipulation/slice_structural_type.h \ - stipulation/slice_structural_type.enum.h \ - stipulation/slice_structural_type.enum \ - stipulation/slice_functional_type.h \ - stipulation/slice_functional_type.enum.h \ - stipulation/slice_functional_type.enum \ - stipulation/slice_contextual_type.h \ - stipulation/slice_contextual_type.enum.h \ - stipulation/slice_contextual_type.enum stipulation/traversal.h \ - stipulation/slice_insertion.h solving/move_effect_journal.h \ - position/castling_rights.h solving/ply.h position/pieceid.h \ - solving/machinery/twin.h conditions/circe/rebirth_square_occupied.h \ - conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ - conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ - conditions/circe/relevant_side.h stipulation/pipe.h stipulation/fork.h \ - stipulation/move.h solving/binary.h debugging/assert.h - +conditions/circe/kamikaze.obj: conditions/circe/kamikaze.c \ + conditions/circe/kamikaze.h solving/machinery/solve.h \ + stipulation/stipulation.h stipulation/goals/goals.h position/board.h \ + utilities/bitmask.h utilities/boolean.h stipulation/slice_type.h \ + stipulation/slice_type.enum.h stipulation/slice_type.enum \ + position/side.h position/side.enum.h position/side.enum pieces/pieces.h \ + output/mode.h output/mode.enum.h output/mode.enum \ + solving/machinery/dispatch.h debugging/trace.h \ + conditions/circe/rebirth_avoider.h conditions/anticirce/anticirce.h \ + conditions/circe/circe.h stipulation/structure_traversal.h \ + stipulation/slice.h stipulation/slice_structural_type.h \ + stipulation/slice_structural_type.enum.h \ + stipulation/slice_structural_type.enum \ + stipulation/slice_functional_type.h \ + stipulation/slice_functional_type.enum.h \ + stipulation/slice_functional_type.enum \ + stipulation/slice_contextual_type.h \ + stipulation/slice_contextual_type.enum.h \ + stipulation/slice_contextual_type.enum stipulation/traversal.h \ + stipulation/slice_insertion.h solving/move_effect_journal.h \ + position/castling_rights.h solving/ply.h position/pieceid.h \ + solving/machinery/twin.h conditions/circe/rebirth_square_occupied.h \ + conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ + conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ + conditions/circe/relevant_side.h stipulation/pipe.h stipulation/fork.h \ + stipulation/move.h solving/binary.h debugging/assert.h conditions/circe/kamikaze.h: - solving/machinery/solve.h: - stipulation/stipulation.h: - stipulation/goals/goals.h: - position/board.h: - utilities/bitmask.h: - utilities/boolean.h: - stipulation/slice_type.h: - stipulation/slice_type.enum.h: - stipulation/slice_type.enum: - position/side.h: - position/side.enum.h: - position/side.enum: - pieces/pieces.h: - output/mode.h: - output/mode.enum.h: - output/mode.enum: - solving/machinery/dispatch.h: - debugging/trace.h: - conditions/circe/rebirth_avoider.h: - conditions/anticirce/anticirce.h: - conditions/circe/circe.h: - stipulation/structure_traversal.h: - stipulation/slice.h: - stipulation/slice_structural_type.h: - stipulation/slice_structural_type.enum.h: - stipulation/slice_structural_type.enum: - stipulation/slice_functional_type.h: - stipulation/slice_functional_type.enum.h: - stipulation/slice_functional_type.enum: - stipulation/slice_contextual_type.h: - stipulation/slice_contextual_type.enum.h: - stipulation/slice_contextual_type.enum: - stipulation/traversal.h: - stipulation/slice_insertion.h: - solving/move_effect_journal.h: - position/castling_rights.h: - solving/ply.h: - position/pieceid.h: - solving/machinery/twin.h: - conditions/circe/rebirth_square_occupied.h: - conditions/circe/reborn_piece.h: - conditions/circe/rebirth_square.h: - conditions/circe/relevant_capture.h: - conditions/circe/relevant_piece.h: - conditions/circe/relevant_side.h: - stipulation/pipe.h: - stipulation/fork.h: - stipulation/move.h: - solving/binary.h: - debugging/assert.h: -conditions/circe/parrain$(OBJ_SUFFIX): conditions/circe/parrain.c \ - conditions/circe/parrain.h solving/machinery/solve.h \ - stipulation/stipulation.h stipulation/goals/goals.h position/board.h \ - utilities/bitmask.h utilities/boolean.h stipulation/slice_type.h \ - stipulation/slice_type.enum.h stipulation/slice_type.enum \ - position/side.h position/side.enum.h position/side.enum \ - pieces/pieces.h output/mode.h output/mode.enum.h output/mode.enum \ - solving/machinery/dispatch.h debugging/trace.h \ - conditions/circe/circe.h stipulation/structure_traversal.h \ - stipulation/slice.h stipulation/slice_structural_type.h \ - stipulation/slice_structural_type.enum.h \ - stipulation/slice_structural_type.enum \ - stipulation/slice_functional_type.h \ - stipulation/slice_functional_type.enum.h \ - stipulation/slice_functional_type.enum \ - stipulation/slice_contextual_type.h \ - stipulation/slice_contextual_type.enum.h \ - stipulation/slice_contextual_type.enum stipulation/traversal.h \ - stipulation/slice_insertion.h solving/move_effect_journal.h \ - position/castling_rights.h solving/ply.h position/pieceid.h \ - solving/machinery/twin.h conditions/circe/rebirth_square_occupied.h \ - conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ - conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ - conditions/circe/relevant_side.h conditions/circe/rebirth_avoider.h \ - conditions/conditions.h position/position.h position/color.h \ - position/color.enum.h position/color.enum pieces/walks/vectors.h \ - solving/has_solution_type.h solving/has_solution_type.enum.h \ - solving/has_solution_type.enum stipulation/fork.h solving/binary.h \ - position/effects/piece_removal.h position/effects/piece_movement.h \ - solving/move_generator.h debugging/measure.h \ - output/plaintext/protocol.h solving/pipe.h \ - position/effects/piece_creation.h debugging/assert.h - +conditions/circe/parrain.obj: conditions/circe/parrain.c \ + conditions/circe/parrain.h solving/machinery/solve.h \ + stipulation/stipulation.h stipulation/goals/goals.h position/board.h \ + utilities/bitmask.h utilities/boolean.h stipulation/slice_type.h \ + stipulation/slice_type.enum.h stipulation/slice_type.enum \ + position/side.h position/side.enum.h position/side.enum pieces/pieces.h \ + output/mode.h output/mode.enum.h output/mode.enum \ + solving/machinery/dispatch.h debugging/trace.h conditions/circe/circe.h \ + stipulation/structure_traversal.h stipulation/slice.h \ + stipulation/slice_structural_type.h \ + stipulation/slice_structural_type.enum.h \ + stipulation/slice_structural_type.enum \ + stipulation/slice_functional_type.h \ + stipulation/slice_functional_type.enum.h \ + stipulation/slice_functional_type.enum \ + stipulation/slice_contextual_type.h \ + stipulation/slice_contextual_type.enum.h \ + stipulation/slice_contextual_type.enum stipulation/traversal.h \ + stipulation/slice_insertion.h solving/move_effect_journal.h \ + position/castling_rights.h solving/ply.h position/pieceid.h \ + solving/machinery/twin.h conditions/circe/rebirth_square_occupied.h \ + conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ + conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ + conditions/circe/relevant_side.h conditions/circe/rebirth_avoider.h \ + conditions/conditions.h position/position.h position/color.h \ + position/color.enum.h position/color.enum pieces/walks/vectors.h \ + solving/has_solution_type.h solving/has_solution_type.enum.h \ + solving/has_solution_type.enum stipulation/fork.h solving/binary.h \ + position/effects/piece_removal.h position/effects/piece_movement.h \ + solving/move_generator.h debugging/measure.h solving/pipe.h \ + position/effects/piece_creation.h debugging/assert.h conditions/circe/parrain.h: - solving/machinery/solve.h: - stipulation/stipulation.h: - stipulation/goals/goals.h: - position/board.h: - utilities/bitmask.h: - utilities/boolean.h: - stipulation/slice_type.h: - stipulation/slice_type.enum.h: - stipulation/slice_type.enum: - position/side.h: - position/side.enum.h: - position/side.enum: - pieces/pieces.h: - output/mode.h: - output/mode.enum.h: - output/mode.enum: - solving/machinery/dispatch.h: - debugging/trace.h: - conditions/circe/circe.h: - stipulation/structure_traversal.h: - stipulation/slice.h: - stipulation/slice_structural_type.h: - stipulation/slice_structural_type.enum.h: - stipulation/slice_structural_type.enum: - stipulation/slice_functional_type.h: - stipulation/slice_functional_type.enum.h: - stipulation/slice_functional_type.enum: - stipulation/slice_contextual_type.h: - stipulation/slice_contextual_type.enum.h: - stipulation/slice_contextual_type.enum: - stipulation/traversal.h: - stipulation/slice_insertion.h: - solving/move_effect_journal.h: - position/castling_rights.h: - solving/ply.h: - position/pieceid.h: - solving/machinery/twin.h: - conditions/circe/rebirth_square_occupied.h: - conditions/circe/reborn_piece.h: - conditions/circe/rebirth_square.h: - conditions/circe/relevant_capture.h: - conditions/circe/relevant_piece.h: - conditions/circe/relevant_side.h: - conditions/circe/rebirth_avoider.h: - conditions/conditions.h: - position/position.h: - position/color.h: - position/color.enum.h: - position/color.enum: - pieces/walks/vectors.h: - solving/has_solution_type.h: - solving/has_solution_type.enum.h: - solving/has_solution_type.enum: - stipulation/fork.h: - solving/binary.h: - position/effects/piece_removal.h: - position/effects/piece_movement.h: - solving/move_generator.h: - debugging/measure.h: - -output/plaintext/protocol.h: - solving/pipe.h: - position/effects/piece_creation.h: - debugging/assert.h: -conditions/circe/volage$(OBJ_SUFFIX): conditions/circe/volage.c \ - conditions/circe/volage.h solving/machinery/solve.h \ - stipulation/stipulation.h stipulation/goals/goals.h position/board.h \ - utilities/bitmask.h utilities/boolean.h stipulation/slice_type.h \ - stipulation/slice_type.enum.h stipulation/slice_type.enum \ - position/side.h position/side.enum.h position/side.enum \ - pieces/pieces.h output/mode.h output/mode.enum.h output/mode.enum \ - solving/machinery/dispatch.h debugging/trace.h \ - conditions/circe/circe.h stipulation/structure_traversal.h \ - stipulation/slice.h stipulation/slice_structural_type.h \ - stipulation/slice_structural_type.enum.h \ - stipulation/slice_structural_type.enum \ - stipulation/slice_functional_type.h \ - stipulation/slice_functional_type.enum.h \ - stipulation/slice_functional_type.enum \ - stipulation/slice_contextual_type.h \ - stipulation/slice_contextual_type.enum.h \ - stipulation/slice_contextual_type.enum stipulation/traversal.h \ - stipulation/slice_insertion.h solving/move_effect_journal.h \ - position/castling_rights.h solving/ply.h position/pieceid.h \ - solving/machinery/twin.h conditions/circe/rebirth_square_occupied.h \ - conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ - conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ - conditions/circe/relevant_side.h conditions/conditions.h \ - position/position.h position/color.h position/color.enum.h \ - position/color.enum pieces/walks/vectors.h solving/has_solution_type.h \ - solving/has_solution_type.enum.h solving/has_solution_type.enum \ - stipulation/pipe.h position/effects/flags_change.h \ - position/effects/side_change.h solving/move_generator.h \ - debugging/measure.h output/plaintext/protocol.h solving/pipe.h \ - debugging/assert.h - +conditions/circe/volage.obj: conditions/circe/volage.c \ + conditions/circe/volage.h solving/machinery/solve.h \ + stipulation/stipulation.h stipulation/goals/goals.h position/board.h \ + utilities/bitmask.h utilities/boolean.h stipulation/slice_type.h \ + stipulation/slice_type.enum.h stipulation/slice_type.enum \ + position/side.h position/side.enum.h position/side.enum pieces/pieces.h \ + output/mode.h output/mode.enum.h output/mode.enum \ + solving/machinery/dispatch.h debugging/trace.h conditions/circe/circe.h \ + stipulation/structure_traversal.h stipulation/slice.h \ + stipulation/slice_structural_type.h \ + stipulation/slice_structural_type.enum.h \ + stipulation/slice_structural_type.enum \ + stipulation/slice_functional_type.h \ + stipulation/slice_functional_type.enum.h \ + stipulation/slice_functional_type.enum \ + stipulation/slice_contextual_type.h \ + stipulation/slice_contextual_type.enum.h \ + stipulation/slice_contextual_type.enum stipulation/traversal.h \ + stipulation/slice_insertion.h solving/move_effect_journal.h \ + position/castling_rights.h solving/ply.h position/pieceid.h \ + solving/machinery/twin.h conditions/circe/rebirth_square_occupied.h \ + conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ + conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ + conditions/circe/relevant_side.h conditions/conditions.h \ + position/position.h position/color.h position/color.enum.h \ + position/color.enum pieces/walks/vectors.h solving/has_solution_type.h \ + solving/has_solution_type.enum.h solving/has_solution_type.enum \ + stipulation/pipe.h position/effects/flags_change.h \ + position/effects/side_change.h solving/move_generator.h \ + debugging/measure.h solving/pipe.h debugging/assert.h conditions/circe/volage.h: - solving/machinery/solve.h: - stipulation/stipulation.h: - stipulation/goals/goals.h: - position/board.h: - utilities/bitmask.h: - utilities/boolean.h: - stipulation/slice_type.h: - stipulation/slice_type.enum.h: - stipulation/slice_type.enum: - position/side.h: - position/side.enum.h: - position/side.enum: - pieces/pieces.h: - output/mode.h: - output/mode.enum.h: - output/mode.enum: - solving/machinery/dispatch.h: - debugging/trace.h: - conditions/circe/circe.h: - stipulation/structure_traversal.h: - stipulation/slice.h: - stipulation/slice_structural_type.h: - stipulation/slice_structural_type.enum.h: - stipulation/slice_structural_type.enum: - stipulation/slice_functional_type.h: - stipulation/slice_functional_type.enum.h: - stipulation/slice_functional_type.enum: - stipulation/slice_contextual_type.h: - stipulation/slice_contextual_type.enum.h: - stipulation/slice_contextual_type.enum: - stipulation/traversal.h: - stipulation/slice_insertion.h: - solving/move_effect_journal.h: - position/castling_rights.h: - solving/ply.h: - position/pieceid.h: - solving/machinery/twin.h: - conditions/circe/rebirth_square_occupied.h: - conditions/circe/reborn_piece.h: - conditions/circe/rebirth_square.h: - conditions/circe/relevant_capture.h: - conditions/circe/relevant_piece.h: - conditions/circe/relevant_side.h: - conditions/conditions.h: - position/position.h: - position/color.h: - position/color.enum.h: - position/color.enum: - pieces/walks/vectors.h: - solving/has_solution_type.h: - solving/has_solution_type.enum.h: - solving/has_solution_type.enum: - stipulation/pipe.h: - position/effects/flags_change.h: - position/effects/side_change.h: - solving/move_generator.h: - debugging/measure.h: - -output/plaintext/protocol.h: - solving/pipe.h: - debugging/assert.h: -conditions/circe/frischauf$(OBJ_SUFFIX): conditions/circe/frischauf.c \ - conditions/circe/frischauf.h solving/machinery/solve.h \ - stipulation/stipulation.h stipulation/goals/goals.h position/board.h \ - utilities/bitmask.h utilities/boolean.h stipulation/slice_type.h \ - stipulation/slice_type.enum.h stipulation/slice_type.enum \ - position/side.h position/side.enum.h position/side.enum \ - pieces/pieces.h output/mode.h output/mode.enum.h output/mode.enum \ - solving/machinery/dispatch.h debugging/trace.h conditions/conditions.h \ - position/position.h position/color.h position/color.enum.h \ - position/color.enum position/pieceid.h pieces/walks/vectors.h \ - position/castling_rights.h conditions/circe/circe.h \ - stipulation/structure_traversal.h stipulation/slice.h \ - stipulation/slice_structural_type.h \ - stipulation/slice_structural_type.enum.h \ - stipulation/slice_structural_type.enum \ - stipulation/slice_functional_type.h \ - stipulation/slice_functional_type.enum.h \ - stipulation/slice_functional_type.enum \ - stipulation/slice_contextual_type.h \ - stipulation/slice_contextual_type.enum.h \ - stipulation/slice_contextual_type.enum stipulation/traversal.h \ - stipulation/slice_insertion.h solving/move_effect_journal.h \ - solving/ply.h solving/machinery/twin.h \ - conditions/circe/rebirth_square_occupied.h \ - conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ - conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ - conditions/circe/relevant_side.h solving/has_solution_type.h \ - solving/has_solution_type.enum.h solving/has_solution_type.enum \ - stipulation/move.h position/effects/flags_change.h solving/pipe.h \ - debugging/assert.h - +conditions/circe/frischauf.obj: conditions/circe/frischauf.c \ + conditions/circe/frischauf.h solving/machinery/solve.h \ + stipulation/stipulation.h stipulation/goals/goals.h position/board.h \ + utilities/bitmask.h utilities/boolean.h stipulation/slice_type.h \ + stipulation/slice_type.enum.h stipulation/slice_type.enum \ + position/side.h position/side.enum.h position/side.enum pieces/pieces.h \ + output/mode.h output/mode.enum.h output/mode.enum \ + solving/machinery/dispatch.h debugging/trace.h conditions/conditions.h \ + position/position.h position/color.h position/color.enum.h \ + position/color.enum position/pieceid.h pieces/walks/vectors.h \ + position/castling_rights.h conditions/circe/circe.h \ + stipulation/structure_traversal.h stipulation/slice.h \ + stipulation/slice_structural_type.h \ + stipulation/slice_structural_type.enum.h \ + stipulation/slice_structural_type.enum \ + stipulation/slice_functional_type.h \ + stipulation/slice_functional_type.enum.h \ + stipulation/slice_functional_type.enum \ + stipulation/slice_contextual_type.h \ + stipulation/slice_contextual_type.enum.h \ + stipulation/slice_contextual_type.enum stipulation/traversal.h \ + stipulation/slice_insertion.h solving/move_effect_journal.h \ + solving/ply.h solving/machinery/twin.h \ + conditions/circe/rebirth_square_occupied.h \ + conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ + conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ + conditions/circe/relevant_side.h solving/has_solution_type.h \ + solving/has_solution_type.enum.h solving/has_solution_type.enum \ + stipulation/move.h position/effects/flags_change.h solving/pipe.h \ + debugging/assert.h conditions/circe/frischauf.h: - solving/machinery/solve.h: - stipulation/stipulation.h: - stipulation/goals/goals.h: - position/board.h: - utilities/bitmask.h: - utilities/boolean.h: - stipulation/slice_type.h: - stipulation/slice_type.enum.h: - stipulation/slice_type.enum: - position/side.h: - position/side.enum.h: - position/side.enum: - pieces/pieces.h: - output/mode.h: - output/mode.enum.h: - output/mode.enum: - solving/machinery/dispatch.h: - debugging/trace.h: - conditions/conditions.h: - position/position.h: - position/color.h: - position/color.enum.h: - position/color.enum: - position/pieceid.h: - pieces/walks/vectors.h: - position/castling_rights.h: - conditions/circe/circe.h: - stipulation/structure_traversal.h: - stipulation/slice.h: - stipulation/slice_structural_type.h: - stipulation/slice_structural_type.enum.h: - stipulation/slice_structural_type.enum: - stipulation/slice_functional_type.h: - stipulation/slice_functional_type.enum.h: - stipulation/slice_functional_type.enum: - stipulation/slice_contextual_type.h: - stipulation/slice_contextual_type.enum.h: - stipulation/slice_contextual_type.enum: - stipulation/traversal.h: - stipulation/slice_insertion.h: - solving/move_effect_journal.h: - solving/ply.h: - solving/machinery/twin.h: - conditions/circe/rebirth_square_occupied.h: - conditions/circe/reborn_piece.h: - conditions/circe/rebirth_square.h: - conditions/circe/relevant_capture.h: - conditions/circe/relevant_piece.h: - conditions/circe/relevant_side.h: - solving/has_solution_type.h: - solving/has_solution_type.enum.h: - solving/has_solution_type.enum: - stipulation/move.h: - position/effects/flags_change.h: - solving/pipe.h: - debugging/assert.h: -conditions/circe/super$(OBJ_SUFFIX): conditions/circe/super.c \ - conditions/circe/super.h solving/machinery/solve.h \ - stipulation/stipulation.h stipulation/goals/goals.h position/board.h \ - utilities/bitmask.h utilities/boolean.h stipulation/slice_type.h \ - stipulation/slice_type.enum.h stipulation/slice_type.enum \ - position/side.h position/side.enum.h position/side.enum \ - pieces/pieces.h output/mode.h output/mode.enum.h output/mode.enum \ - solving/machinery/dispatch.h debugging/trace.h position/position.h \ - position/color.h position/color.enum.h position/color.enum \ - position/pieceid.h pieces/walks/vectors.h position/castling_rights.h \ - conditions/circe/rebirth_avoider.h conditions/circe/circe.h \ - stipulation/structure_traversal.h stipulation/slice.h \ - stipulation/slice_structural_type.h \ - stipulation/slice_structural_type.enum.h \ - stipulation/slice_structural_type.enum \ - stipulation/slice_functional_type.h \ - stipulation/slice_functional_type.enum.h \ - stipulation/slice_functional_type.enum \ - stipulation/slice_contextual_type.h \ - stipulation/slice_contextual_type.enum.h \ - stipulation/slice_contextual_type.enum stipulation/traversal.h \ - stipulation/slice_insertion.h solving/move_effect_journal.h \ - solving/ply.h solving/machinery/twin.h \ - conditions/circe/rebirth_square_occupied.h \ - conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ - conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ - conditions/circe/relevant_side.h conditions/circe/rex_inclusive.h \ - solving/has_solution_type.h solving/has_solution_type.enum.h \ - solving/has_solution_type.enum stipulation/fork.h \ - solving/post_move_iteration.h solving/observation.h \ - solving/temporary_hacks.h solving/fork.h solving/pipe.h \ - debugging/assert.h - +conditions/circe/super.obj: conditions/circe/super.c \ + conditions/circe/super.h solving/machinery/solve.h \ + stipulation/stipulation.h stipulation/goals/goals.h position/board.h \ + utilities/bitmask.h utilities/boolean.h stipulation/slice_type.h \ + stipulation/slice_type.enum.h stipulation/slice_type.enum \ + position/side.h position/side.enum.h position/side.enum pieces/pieces.h \ + output/mode.h output/mode.enum.h output/mode.enum \ + solving/machinery/dispatch.h debugging/trace.h position/position.h \ + position/color.h position/color.enum.h position/color.enum \ + position/pieceid.h pieces/walks/vectors.h position/castling_rights.h \ + conditions/circe/rebirth_avoider.h conditions/circe/circe.h \ + stipulation/structure_traversal.h stipulation/slice.h \ + stipulation/slice_structural_type.h \ + stipulation/slice_structural_type.enum.h \ + stipulation/slice_structural_type.enum \ + stipulation/slice_functional_type.h \ + stipulation/slice_functional_type.enum.h \ + stipulation/slice_functional_type.enum \ + stipulation/slice_contextual_type.h \ + stipulation/slice_contextual_type.enum.h \ + stipulation/slice_contextual_type.enum stipulation/traversal.h \ + stipulation/slice_insertion.h solving/move_effect_journal.h \ + solving/ply.h solving/machinery/twin.h \ + conditions/circe/rebirth_square_occupied.h \ + conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ + conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ + conditions/circe/relevant_side.h conditions/circe/rex_inclusive.h \ + solving/has_solution_type.h solving/has_solution_type.enum.h \ + solving/has_solution_type.enum stipulation/fork.h \ + solving/post_move_iteration.h solving/observation.h \ + solving/temporary_hacks.h solving/fork.h solving/pipe.h \ + debugging/assert.h conditions/circe/super.h: - solving/machinery/solve.h: - stipulation/stipulation.h: - stipulation/goals/goals.h: - position/board.h: - utilities/bitmask.h: - utilities/boolean.h: - stipulation/slice_type.h: - stipulation/slice_type.enum.h: - stipulation/slice_type.enum: - position/side.h: - position/side.enum.h: - position/side.enum: - pieces/pieces.h: - output/mode.h: - output/mode.enum.h: - output/mode.enum: - solving/machinery/dispatch.h: - debugging/trace.h: - position/position.h: - position/color.h: - position/color.enum.h: - position/color.enum: - position/pieceid.h: - pieces/walks/vectors.h: - position/castling_rights.h: - conditions/circe/rebirth_avoider.h: - conditions/circe/circe.h: - stipulation/structure_traversal.h: - stipulation/slice.h: - stipulation/slice_structural_type.h: - stipulation/slice_structural_type.enum.h: - stipulation/slice_structural_type.enum: - stipulation/slice_functional_type.h: - stipulation/slice_functional_type.enum.h: - stipulation/slice_functional_type.enum: - stipulation/slice_contextual_type.h: - stipulation/slice_contextual_type.enum.h: - stipulation/slice_contextual_type.enum: - stipulation/traversal.h: - stipulation/slice_insertion.h: - solving/move_effect_journal.h: - solving/ply.h: - solving/machinery/twin.h: - conditions/circe/rebirth_square_occupied.h: - conditions/circe/reborn_piece.h: - conditions/circe/rebirth_square.h: - conditions/circe/relevant_capture.h: - conditions/circe/relevant_piece.h: - conditions/circe/relevant_side.h: - conditions/circe/rex_inclusive.h: - solving/has_solution_type.h: - solving/has_solution_type.enum.h: - solving/has_solution_type.enum: - stipulation/fork.h: - solving/post_move_iteration.h: - solving/observation.h: - solving/temporary_hacks.h: - solving/fork.h: - solving/pipe.h: - debugging/assert.h: -conditions/circe/capture_fork$(OBJ_SUFFIX): conditions/circe/capture_fork.c \ - conditions/circe/capture_fork.h solving/machinery/solve.h \ - stipulation/stipulation.h stipulation/goals/goals.h position/board.h \ - utilities/bitmask.h utilities/boolean.h stipulation/slice_type.h \ - stipulation/slice_type.enum.h stipulation/slice_type.enum \ - position/side.h position/side.enum.h position/side.enum \ - pieces/pieces.h output/mode.h output/mode.enum.h output/mode.enum \ - solving/machinery/dispatch.h debugging/trace.h \ - conditions/circe/circe.h stipulation/structure_traversal.h \ - stipulation/slice.h stipulation/slice_structural_type.h \ - stipulation/slice_structural_type.enum.h \ - stipulation/slice_structural_type.enum \ - stipulation/slice_functional_type.h \ - stipulation/slice_functional_type.enum.h \ - stipulation/slice_functional_type.enum \ - stipulation/slice_contextual_type.h \ - stipulation/slice_contextual_type.enum.h \ - stipulation/slice_contextual_type.enum stipulation/traversal.h \ - stipulation/slice_insertion.h solving/move_effect_journal.h \ - position/castling_rights.h solving/ply.h position/pieceid.h \ - solving/machinery/twin.h conditions/circe/rebirth_square_occupied.h \ - conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ - conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ - conditions/circe/relevant_side.h conditions/circe/rebirth_avoider.h \ - stipulation/fork.h solving/binary.h debugging/assert.h - +conditions/circe/capture_fork.obj: conditions/circe/capture_fork.c \ + conditions/circe/capture_fork.h solving/machinery/solve.h \ + stipulation/stipulation.h stipulation/goals/goals.h position/board.h \ + utilities/bitmask.h utilities/boolean.h stipulation/slice_type.h \ + stipulation/slice_type.enum.h stipulation/slice_type.enum \ + position/side.h position/side.enum.h position/side.enum pieces/pieces.h \ + output/mode.h output/mode.enum.h output/mode.enum \ + solving/machinery/dispatch.h debugging/trace.h conditions/circe/circe.h \ + stipulation/structure_traversal.h stipulation/slice.h \ + stipulation/slice_structural_type.h \ + stipulation/slice_structural_type.enum.h \ + stipulation/slice_structural_type.enum \ + stipulation/slice_functional_type.h \ + stipulation/slice_functional_type.enum.h \ + stipulation/slice_functional_type.enum \ + stipulation/slice_contextual_type.h \ + stipulation/slice_contextual_type.enum.h \ + stipulation/slice_contextual_type.enum stipulation/traversal.h \ + stipulation/slice_insertion.h solving/move_effect_journal.h \ + position/castling_rights.h solving/ply.h position/pieceid.h \ + solving/machinery/twin.h conditions/circe/rebirth_square_occupied.h \ + conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ + conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ + conditions/circe/relevant_side.h conditions/circe/rebirth_avoider.h \ + stipulation/fork.h solving/binary.h solving/fork.h solving/observation.h \ + pieces/walks/vectors.h solving/temporary_hacks.h debugging/assert.h conditions/circe/capture_fork.h: - solving/machinery/solve.h: - stipulation/stipulation.h: - stipulation/goals/goals.h: - position/board.h: - utilities/bitmask.h: - utilities/boolean.h: - stipulation/slice_type.h: - stipulation/slice_type.enum.h: - stipulation/slice_type.enum: - position/side.h: - position/side.enum.h: - position/side.enum: - pieces/pieces.h: - output/mode.h: - output/mode.enum.h: - output/mode.enum: - solving/machinery/dispatch.h: - debugging/trace.h: - conditions/circe/circe.h: - stipulation/structure_traversal.h: - stipulation/slice.h: - stipulation/slice_structural_type.h: - stipulation/slice_structural_type.enum.h: - stipulation/slice_structural_type.enum: - stipulation/slice_functional_type.h: - stipulation/slice_functional_type.enum.h: - stipulation/slice_functional_type.enum: - stipulation/slice_contextual_type.h: - stipulation/slice_contextual_type.enum.h: - stipulation/slice_contextual_type.enum: - stipulation/traversal.h: - stipulation/slice_insertion.h: - solving/move_effect_journal.h: - position/castling_rights.h: - solving/ply.h: - position/pieceid.h: - solving/machinery/twin.h: - conditions/circe/rebirth_square_occupied.h: - conditions/circe/reborn_piece.h: - conditions/circe/rebirth_square.h: - conditions/circe/relevant_capture.h: - conditions/circe/relevant_piece.h: - conditions/circe/relevant_side.h: - conditions/circe/rebirth_avoider.h: - stipulation/fork.h: - solving/binary.h: - +solving/fork.h: +solving/observation.h: +pieces/walks/vectors.h: +solving/temporary_hacks.h: debugging/assert.h: -conditions/circe/april$(OBJ_SUFFIX): conditions/circe/april.c \ - conditions/circe/april.h conditions/circe/circe.h pieces/pieces.h \ - utilities/boolean.h position/side.h position/side.enum.h \ - position/side.enum position/board.h utilities/bitmask.h \ - solving/machinery/solve.h stipulation/stipulation.h \ - stipulation/goals/goals.h stipulation/slice_type.h \ - stipulation/slice_type.enum.h stipulation/slice_type.enum \ - output/mode.h output/mode.enum.h output/mode.enum \ - solving/machinery/dispatch.h debugging/trace.h \ - stipulation/structure_traversal.h stipulation/slice.h \ - stipulation/slice_structural_type.h \ - stipulation/slice_structural_type.enum.h \ - stipulation/slice_structural_type.enum \ - stipulation/slice_functional_type.h \ - stipulation/slice_functional_type.enum.h \ - stipulation/slice_functional_type.enum \ - stipulation/slice_contextual_type.h \ - stipulation/slice_contextual_type.enum.h \ - stipulation/slice_contextual_type.enum stipulation/traversal.h \ - stipulation/slice_insertion.h solving/move_effect_journal.h \ - position/castling_rights.h solving/ply.h position/pieceid.h \ - solving/machinery/twin.h conditions/circe/rebirth_square_occupied.h \ - conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ - conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ - conditions/circe/relevant_side.h conditions/circe/rebirth_avoider.h \ - solving/has_solution_type.h solving/has_solution_type.enum.h \ - solving/has_solution_type.enum solving/binary.h stipulation/fork.h \ - debugging/assert.h - +conditions/circe/april.obj: conditions/circe/april.c \ + conditions/circe/april.h conditions/circe/circe.h pieces/pieces.h \ + utilities/boolean.h position/side.h position/side.enum.h \ + position/side.enum position/board.h utilities/bitmask.h \ + solving/machinery/solve.h stipulation/stipulation.h \ + stipulation/goals/goals.h stipulation/slice_type.h \ + stipulation/slice_type.enum.h stipulation/slice_type.enum output/mode.h \ + output/mode.enum.h output/mode.enum solving/machinery/dispatch.h \ + debugging/trace.h stipulation/structure_traversal.h stipulation/slice.h \ + stipulation/slice_structural_type.h \ + stipulation/slice_structural_type.enum.h \ + stipulation/slice_structural_type.enum \ + stipulation/slice_functional_type.h \ + stipulation/slice_functional_type.enum.h \ + stipulation/slice_functional_type.enum \ + stipulation/slice_contextual_type.h \ + stipulation/slice_contextual_type.enum.h \ + stipulation/slice_contextual_type.enum stipulation/traversal.h \ + stipulation/slice_insertion.h solving/move_effect_journal.h \ + position/castling_rights.h solving/ply.h position/pieceid.h \ + solving/machinery/twin.h conditions/circe/rebirth_square_occupied.h \ + conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ + conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ + conditions/circe/relevant_side.h conditions/circe/rebirth_avoider.h \ + solving/has_solution_type.h solving/has_solution_type.enum.h \ + solving/has_solution_type.enum solving/binary.h stipulation/fork.h \ + debugging/assert.h conditions/circe/april.h: - conditions/circe/circe.h: - pieces/pieces.h: - utilities/boolean.h: - position/side.h: - position/side.enum.h: - position/side.enum: - position/board.h: - utilities/bitmask.h: - solving/machinery/solve.h: - stipulation/stipulation.h: - stipulation/goals/goals.h: - stipulation/slice_type.h: - stipulation/slice_type.enum.h: - stipulation/slice_type.enum: - output/mode.h: - output/mode.enum.h: - output/mode.enum: - solving/machinery/dispatch.h: - debugging/trace.h: - stipulation/structure_traversal.h: - stipulation/slice.h: - stipulation/slice_structural_type.h: - stipulation/slice_structural_type.enum.h: - stipulation/slice_structural_type.enum: - stipulation/slice_functional_type.h: - stipulation/slice_functional_type.enum.h: - stipulation/slice_functional_type.enum: - stipulation/slice_contextual_type.h: - stipulation/slice_contextual_type.enum.h: - stipulation/slice_contextual_type.enum: - stipulation/traversal.h: - stipulation/slice_insertion.h: - solving/move_effect_journal.h: - position/castling_rights.h: - solving/ply.h: - position/pieceid.h: - solving/machinery/twin.h: - conditions/circe/rebirth_square_occupied.h: - conditions/circe/reborn_piece.h: - conditions/circe/rebirth_square.h: - conditions/circe/relevant_capture.h: - conditions/circe/relevant_piece.h: - conditions/circe/relevant_side.h: - conditions/circe/rebirth_avoider.h: - solving/has_solution_type.h: - solving/has_solution_type.enum.h: - solving/has_solution_type.enum: - solving/binary.h: - stipulation/fork.h: - debugging/assert.h: -conditions/circe/clone$(OBJ_SUFFIX): conditions/circe/clone.c \ - conditions/circe/clone.h solving/machinery/solve.h \ - stipulation/stipulation.h stipulation/goals/goals.h position/board.h \ - utilities/bitmask.h utilities/boolean.h stipulation/slice_type.h \ - stipulation/slice_type.enum.h stipulation/slice_type.enum \ - position/side.h position/side.enum.h position/side.enum \ - pieces/pieces.h output/mode.h output/mode.enum.h output/mode.enum \ - solving/machinery/dispatch.h debugging/trace.h \ - conditions/circe/circe.h stipulation/structure_traversal.h \ - stipulation/slice.h stipulation/slice_structural_type.h \ - stipulation/slice_structural_type.enum.h \ - stipulation/slice_structural_type.enum \ - stipulation/slice_functional_type.h \ - stipulation/slice_functional_type.enum.h \ - stipulation/slice_functional_type.enum \ - stipulation/slice_contextual_type.h \ - stipulation/slice_contextual_type.enum.h \ - stipulation/slice_contextual_type.enum stipulation/traversal.h \ - stipulation/slice_insertion.h solving/move_effect_journal.h \ - position/castling_rights.h solving/ply.h position/pieceid.h \ - solving/machinery/twin.h conditions/circe/rebirth_square_occupied.h \ - conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ - conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ - conditions/circe/relevant_side.h solving/pipe.h debugging/assert.h - +conditions/circe/clone.obj: conditions/circe/clone.c \ + conditions/circe/clone.h solving/machinery/solve.h \ + stipulation/stipulation.h stipulation/goals/goals.h position/board.h \ + utilities/bitmask.h utilities/boolean.h stipulation/slice_type.h \ + stipulation/slice_type.enum.h stipulation/slice_type.enum \ + position/side.h position/side.enum.h position/side.enum pieces/pieces.h \ + output/mode.h output/mode.enum.h output/mode.enum \ + solving/machinery/dispatch.h debugging/trace.h conditions/circe/circe.h \ + stipulation/structure_traversal.h stipulation/slice.h \ + stipulation/slice_structural_type.h \ + stipulation/slice_structural_type.enum.h \ + stipulation/slice_structural_type.enum \ + stipulation/slice_functional_type.h \ + stipulation/slice_functional_type.enum.h \ + stipulation/slice_functional_type.enum \ + stipulation/slice_contextual_type.h \ + stipulation/slice_contextual_type.enum.h \ + stipulation/slice_contextual_type.enum stipulation/traversal.h \ + stipulation/slice_insertion.h solving/move_effect_journal.h \ + position/castling_rights.h solving/ply.h position/pieceid.h \ + solving/machinery/twin.h conditions/circe/rebirth_square_occupied.h \ + conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ + conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ + conditions/circe/relevant_side.h solving/pipe.h debugging/assert.h conditions/circe/clone.h: - solving/machinery/solve.h: - stipulation/stipulation.h: - stipulation/goals/goals.h: - position/board.h: - utilities/bitmask.h: - utilities/boolean.h: - stipulation/slice_type.h: - stipulation/slice_type.enum.h: - stipulation/slice_type.enum: - position/side.h: - position/side.enum.h: - position/side.enum: - pieces/pieces.h: - output/mode.h: - output/mode.enum.h: - output/mode.enum: - solving/machinery/dispatch.h: - debugging/trace.h: - conditions/circe/circe.h: - stipulation/structure_traversal.h: - stipulation/slice.h: - stipulation/slice_structural_type.h: - stipulation/slice_structural_type.enum.h: - stipulation/slice_structural_type.enum: - stipulation/slice_functional_type.h: - stipulation/slice_functional_type.enum.h: - stipulation/slice_functional_type.enum: - stipulation/slice_contextual_type.h: - stipulation/slice_contextual_type.enum.h: - stipulation/slice_contextual_type.enum: - stipulation/traversal.h: - stipulation/slice_insertion.h: - solving/move_effect_journal.h: - position/castling_rights.h: - solving/ply.h: - position/pieceid.h: - solving/machinery/twin.h: - conditions/circe/rebirth_square_occupied.h: - conditions/circe/reborn_piece.h: - conditions/circe/rebirth_square.h: - conditions/circe/relevant_capture.h: - conditions/circe/relevant_piece.h: - conditions/circe/relevant_side.h: - solving/pipe.h: - debugging/assert.h: -conditions/circe/chameleon$(OBJ_SUFFIX): conditions/circe/chameleon.c \ - conditions/circe/chameleon.h conditions/circe/circe.h pieces/pieces.h \ - utilities/boolean.h position/side.h position/side.enum.h \ - position/side.enum position/board.h utilities/bitmask.h \ - solving/machinery/solve.h stipulation/stipulation.h \ - stipulation/goals/goals.h stipulation/slice_type.h \ - stipulation/slice_type.enum.h stipulation/slice_type.enum \ - output/mode.h output/mode.enum.h output/mode.enum \ - solving/machinery/dispatch.h debugging/trace.h \ - stipulation/structure_traversal.h stipulation/slice.h \ - stipulation/slice_structural_type.h \ - stipulation/slice_structural_type.enum.h \ - stipulation/slice_structural_type.enum \ - stipulation/slice_functional_type.h \ - stipulation/slice_functional_type.enum.h \ - stipulation/slice_functional_type.enum \ - stipulation/slice_contextual_type.h \ - stipulation/slice_contextual_type.enum.h \ - stipulation/slice_contextual_type.enum stipulation/traversal.h \ - stipulation/slice_insertion.h solving/move_effect_journal.h \ - position/castling_rights.h solving/ply.h position/pieceid.h \ - solving/machinery/twin.h conditions/circe/rebirth_square_occupied.h \ - conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ - conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ - conditions/circe/relevant_side.h pieces/attributes/chameleon.h \ - pieces/walks/walks.h solving/has_solution_type.h \ - solving/has_solution_type.enum.h solving/has_solution_type.enum \ - stipulation/pipe.h solving/pipe.h debugging/assert.h - +conditions/circe/chameleon.obj: conditions/circe/chameleon.c \ + conditions/circe/chameleon.h conditions/circe/circe.h pieces/pieces.h \ + utilities/boolean.h position/side.h position/side.enum.h \ + position/side.enum position/board.h utilities/bitmask.h \ + solving/machinery/solve.h stipulation/stipulation.h \ + stipulation/goals/goals.h stipulation/slice_type.h \ + stipulation/slice_type.enum.h stipulation/slice_type.enum output/mode.h \ + output/mode.enum.h output/mode.enum solving/machinery/dispatch.h \ + debugging/trace.h stipulation/structure_traversal.h stipulation/slice.h \ + stipulation/slice_structural_type.h \ + stipulation/slice_structural_type.enum.h \ + stipulation/slice_structural_type.enum \ + stipulation/slice_functional_type.h \ + stipulation/slice_functional_type.enum.h \ + stipulation/slice_functional_type.enum \ + stipulation/slice_contextual_type.h \ + stipulation/slice_contextual_type.enum.h \ + stipulation/slice_contextual_type.enum stipulation/traversal.h \ + stipulation/slice_insertion.h solving/move_effect_journal.h \ + position/castling_rights.h solving/ply.h position/pieceid.h \ + solving/machinery/twin.h conditions/circe/rebirth_square_occupied.h \ + conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ + conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ + conditions/circe/relevant_side.h pieces/attributes/chameleon.h \ + pieces/walks/walks.h solving/has_solution_type.h \ + solving/has_solution_type.enum.h solving/has_solution_type.enum \ + stipulation/pipe.h solving/pipe.h debugging/assert.h conditions/circe/chameleon.h: - conditions/circe/circe.h: - pieces/pieces.h: - utilities/boolean.h: - position/side.h: - position/side.enum.h: - position/side.enum: - position/board.h: - utilities/bitmask.h: - solving/machinery/solve.h: - stipulation/stipulation.h: - stipulation/goals/goals.h: - stipulation/slice_type.h: - stipulation/slice_type.enum.h: - stipulation/slice_type.enum: - output/mode.h: - output/mode.enum.h: - output/mode.enum: - solving/machinery/dispatch.h: - debugging/trace.h: - stipulation/structure_traversal.h: - stipulation/slice.h: - stipulation/slice_structural_type.h: - stipulation/slice_structural_type.enum.h: - stipulation/slice_structural_type.enum: - stipulation/slice_functional_type.h: - stipulation/slice_functional_type.enum.h: - stipulation/slice_functional_type.enum: - stipulation/slice_contextual_type.h: - stipulation/slice_contextual_type.enum.h: - stipulation/slice_contextual_type.enum: - stipulation/traversal.h: - stipulation/slice_insertion.h: - solving/move_effect_journal.h: - position/castling_rights.h: - solving/ply.h: - position/pieceid.h: - solving/machinery/twin.h: - conditions/circe/rebirth_square_occupied.h: - conditions/circe/reborn_piece.h: - conditions/circe/rebirth_square.h: - conditions/circe/relevant_capture.h: - conditions/circe/relevant_piece.h: - conditions/circe/relevant_side.h: - pieces/attributes/chameleon.h: - pieces/walks/walks.h: - solving/has_solution_type.h: - solving/has_solution_type.enum.h: - solving/has_solution_type.enum: - stipulation/pipe.h: - solving/pipe.h: - debugging/assert.h: -conditions/circe/double_agents$(OBJ_SUFFIX): conditions/circe/double_agents.c \ - conditions/circe/double_agents.h conditions/circe/circe.h \ - pieces/pieces.h utilities/boolean.h position/side.h \ - position/side.enum.h position/side.enum position/board.h \ - utilities/bitmask.h solving/machinery/solve.h \ - stipulation/stipulation.h stipulation/goals/goals.h \ - stipulation/slice_type.h stipulation/slice_type.enum.h \ - stipulation/slice_type.enum output/mode.h output/mode.enum.h \ - output/mode.enum solving/machinery/dispatch.h debugging/trace.h \ - stipulation/structure_traversal.h stipulation/slice.h \ - stipulation/slice_structural_type.h \ - stipulation/slice_structural_type.enum.h \ - stipulation/slice_structural_type.enum \ - stipulation/slice_functional_type.h \ - stipulation/slice_functional_type.enum.h \ - stipulation/slice_functional_type.enum \ - stipulation/slice_contextual_type.h \ - stipulation/slice_contextual_type.enum.h \ - stipulation/slice_contextual_type.enum stipulation/traversal.h \ - stipulation/slice_insertion.h solving/move_effect_journal.h \ - position/castling_rights.h solving/ply.h position/pieceid.h \ - solving/machinery/twin.h conditions/circe/rebirth_square_occupied.h \ - conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ - conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ - conditions/circe/relevant_side.h solving/has_solution_type.h \ - solving/has_solution_type.enum.h solving/has_solution_type.enum \ - pieces/attributes/neutral/neutral.h position/position.h \ - position/color.h position/color.enum.h position/color.enum \ - pieces/walks/vectors.h position/effects/side_change.h \ - stipulation/pipe.h solving/pipe.h debugging/assert.h - +conditions/circe/double_agents.obj: conditions/circe/double_agents.c \ + conditions/circe/double_agents.h conditions/circe/circe.h \ + pieces/pieces.h utilities/boolean.h position/side.h position/side.enum.h \ + position/side.enum position/board.h utilities/bitmask.h \ + solving/machinery/solve.h stipulation/stipulation.h \ + stipulation/goals/goals.h stipulation/slice_type.h \ + stipulation/slice_type.enum.h stipulation/slice_type.enum output/mode.h \ + output/mode.enum.h output/mode.enum solving/machinery/dispatch.h \ + debugging/trace.h stipulation/structure_traversal.h stipulation/slice.h \ + stipulation/slice_structural_type.h \ + stipulation/slice_structural_type.enum.h \ + stipulation/slice_structural_type.enum \ + stipulation/slice_functional_type.h \ + stipulation/slice_functional_type.enum.h \ + stipulation/slice_functional_type.enum \ + stipulation/slice_contextual_type.h \ + stipulation/slice_contextual_type.enum.h \ + stipulation/slice_contextual_type.enum stipulation/traversal.h \ + stipulation/slice_insertion.h solving/move_effect_journal.h \ + position/castling_rights.h solving/ply.h position/pieceid.h \ + solving/machinery/twin.h conditions/circe/rebirth_square_occupied.h \ + conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ + conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ + conditions/circe/relevant_side.h solving/has_solution_type.h \ + solving/has_solution_type.enum.h solving/has_solution_type.enum \ + pieces/attributes/neutral/neutral.h position/position.h position/color.h \ + position/color.enum.h position/color.enum pieces/walks/vectors.h \ + position/effects/side_change.h stipulation/pipe.h solving/pipe.h \ + debugging/assert.h conditions/circe/double_agents.h: - conditions/circe/circe.h: - pieces/pieces.h: - utilities/boolean.h: - position/side.h: - position/side.enum.h: - position/side.enum: - position/board.h: - utilities/bitmask.h: - solving/machinery/solve.h: - stipulation/stipulation.h: - stipulation/goals/goals.h: - stipulation/slice_type.h: - stipulation/slice_type.enum.h: - stipulation/slice_type.enum: - output/mode.h: - output/mode.enum.h: - output/mode.enum: - solving/machinery/dispatch.h: - debugging/trace.h: - stipulation/structure_traversal.h: - stipulation/slice.h: - stipulation/slice_structural_type.h: - stipulation/slice_structural_type.enum.h: - stipulation/slice_structural_type.enum: - stipulation/slice_functional_type.h: - stipulation/slice_functional_type.enum.h: - stipulation/slice_functional_type.enum: - stipulation/slice_contextual_type.h: - stipulation/slice_contextual_type.enum.h: - stipulation/slice_contextual_type.enum: - stipulation/traversal.h: - stipulation/slice_insertion.h: - solving/move_effect_journal.h: - position/castling_rights.h: - solving/ply.h: - position/pieceid.h: - solving/machinery/twin.h: - conditions/circe/rebirth_square_occupied.h: - conditions/circe/reborn_piece.h: - conditions/circe/rebirth_square.h: - conditions/circe/relevant_capture.h: - conditions/circe/relevant_piece.h: - conditions/circe/relevant_side.h: - solving/has_solution_type.h: - solving/has_solution_type.enum.h: - solving/has_solution_type.enum: - pieces/attributes/neutral/neutral.h: - position/position.h: - position/color.h: - position/color.enum.h: - position/color.enum: - pieces/walks/vectors.h: - position/effects/side_change.h: - stipulation/pipe.h: - solving/pipe.h: - debugging/assert.h: -conditions/circe/couscous$(OBJ_SUFFIX): conditions/circe/couscous.c \ - conditions/circe/couscous.h solving/machinery/solve.h \ - stipulation/stipulation.h stipulation/goals/goals.h position/board.h \ - utilities/bitmask.h utilities/boolean.h stipulation/slice_type.h \ - stipulation/slice_type.enum.h stipulation/slice_type.enum \ - position/side.h position/side.enum.h position/side.enum \ - pieces/pieces.h output/mode.h output/mode.enum.h output/mode.enum \ - solving/machinery/dispatch.h debugging/trace.h position/position.h \ - position/color.h position/color.enum.h position/color.enum \ - position/pieceid.h pieces/walks/vectors.h position/castling_rights.h \ - conditions/circe/circe.h stipulation/structure_traversal.h \ - stipulation/slice.h stipulation/slice_structural_type.h \ - stipulation/slice_structural_type.enum.h \ - stipulation/slice_structural_type.enum \ - stipulation/slice_functional_type.h \ - stipulation/slice_functional_type.enum.h \ - stipulation/slice_functional_type.enum \ - stipulation/slice_contextual_type.h \ - stipulation/slice_contextual_type.enum.h \ - stipulation/slice_contextual_type.enum stipulation/traversal.h \ - stipulation/slice_insertion.h solving/move_effect_journal.h \ - solving/ply.h solving/machinery/twin.h \ - conditions/circe/rebirth_square_occupied.h \ - conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ - conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ - conditions/circe/relevant_side.h position/effects/utils.h \ - solving/pipe.h debugging/assert.h - +conditions/circe/couscous.obj: conditions/circe/couscous.c \ + conditions/circe/couscous.h solving/machinery/solve.h \ + stipulation/stipulation.h stipulation/goals/goals.h position/board.h \ + utilities/bitmask.h utilities/boolean.h stipulation/slice_type.h \ + stipulation/slice_type.enum.h stipulation/slice_type.enum \ + position/side.h position/side.enum.h position/side.enum pieces/pieces.h \ + output/mode.h output/mode.enum.h output/mode.enum \ + solving/machinery/dispatch.h debugging/trace.h position/position.h \ + position/color.h position/color.enum.h position/color.enum \ + position/pieceid.h pieces/walks/vectors.h position/castling_rights.h \ + conditions/circe/circe.h stipulation/structure_traversal.h \ + stipulation/slice.h stipulation/slice_structural_type.h \ + stipulation/slice_structural_type.enum.h \ + stipulation/slice_structural_type.enum \ + stipulation/slice_functional_type.h \ + stipulation/slice_functional_type.enum.h \ + stipulation/slice_functional_type.enum \ + stipulation/slice_contextual_type.h \ + stipulation/slice_contextual_type.enum.h \ + stipulation/slice_contextual_type.enum stipulation/traversal.h \ + stipulation/slice_insertion.h solving/move_effect_journal.h \ + solving/ply.h solving/machinery/twin.h \ + conditions/circe/rebirth_square_occupied.h \ + conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ + conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ + conditions/circe/relevant_side.h position/effects/utils.h solving/pipe.h \ + debugging/assert.h conditions/circe/couscous.h: - solving/machinery/solve.h: - stipulation/stipulation.h: - stipulation/goals/goals.h: - position/board.h: - utilities/bitmask.h: - utilities/boolean.h: - stipulation/slice_type.h: - stipulation/slice_type.enum.h: - stipulation/slice_type.enum: - position/side.h: - position/side.enum.h: - position/side.enum: - pieces/pieces.h: - output/mode.h: - output/mode.enum.h: - output/mode.enum: - solving/machinery/dispatch.h: - debugging/trace.h: - position/position.h: - position/color.h: - position/color.enum.h: - position/color.enum: - position/pieceid.h: - pieces/walks/vectors.h: - position/castling_rights.h: - conditions/circe/circe.h: - stipulation/structure_traversal.h: - stipulation/slice.h: - stipulation/slice_structural_type.h: - stipulation/slice_structural_type.enum.h: - stipulation/slice_structural_type.enum: - stipulation/slice_functional_type.h: - stipulation/slice_functional_type.enum.h: - stipulation/slice_functional_type.enum: - stipulation/slice_contextual_type.h: - stipulation/slice_contextual_type.enum.h: - stipulation/slice_contextual_type.enum: - stipulation/traversal.h: - stipulation/slice_insertion.h: - solving/move_effect_journal.h: - solving/ply.h: - solving/machinery/twin.h: - conditions/circe/rebirth_square_occupied.h: - conditions/circe/reborn_piece.h: - conditions/circe/rebirth_square.h: - conditions/circe/relevant_capture.h: - conditions/circe/relevant_piece.h: - conditions/circe/relevant_side.h: - position/effects/utils.h: - solving/pipe.h: - debugging/assert.h: -conditions/circe/takemake$(OBJ_SUFFIX): conditions/circe/takemake.c \ - conditions/circe/takemake.h solving/machinery/solve.h \ - stipulation/stipulation.h stipulation/goals/goals.h position/board.h \ - utilities/bitmask.h utilities/boolean.h stipulation/slice_type.h \ - stipulation/slice_type.enum.h stipulation/slice_type.enum \ - position/side.h position/side.enum.h position/side.enum \ - pieces/pieces.h output/mode.h output/mode.enum.h output/mode.enum \ - solving/machinery/dispatch.h debugging/trace.h position/position.h \ - position/color.h position/color.enum.h position/color.enum \ - position/pieceid.h pieces/walks/vectors.h position/castling_rights.h \ - conditions/circe/rebirth_avoider.h conditions/circe/circe.h \ - stipulation/structure_traversal.h stipulation/slice.h \ - stipulation/slice_structural_type.h \ - stipulation/slice_structural_type.enum.h \ - stipulation/slice_structural_type.enum \ - stipulation/slice_functional_type.h \ - stipulation/slice_functional_type.enum.h \ - stipulation/slice_functional_type.enum \ - stipulation/slice_contextual_type.h \ - stipulation/slice_contextual_type.enum.h \ - stipulation/slice_contextual_type.enum stipulation/traversal.h \ - stipulation/slice_insertion.h solving/move_effect_journal.h \ - solving/ply.h solving/machinery/twin.h \ - conditions/circe/rebirth_square_occupied.h \ - conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ - conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ - conditions/circe/relevant_side.h conditions/circe/rex_inclusive.h \ - solving/has_solution_type.h solving/has_solution_type.enum.h \ - solving/has_solution_type.enum stipulation/pipe.h stipulation/branch.h \ - stipulation/move.h solving/temporary_hacks.h \ - solving/post_move_iteration.h solving/observation.h solving/fork.h \ - solving/single_piece_move_generator.h solving/move_generator.h \ - debugging/measure.h output/plaintext/protocol.h \ - solving/conditional_pipe.h solving/pipe.h debugging/assert.h - +conditions/circe/takemake.obj: conditions/circe/takemake.c \ + conditions/circe/takemake.h solving/machinery/solve.h \ + stipulation/stipulation.h stipulation/goals/goals.h position/board.h \ + utilities/bitmask.h utilities/boolean.h stipulation/slice_type.h \ + stipulation/slice_type.enum.h stipulation/slice_type.enum \ + position/side.h position/side.enum.h position/side.enum pieces/pieces.h \ + output/mode.h output/mode.enum.h output/mode.enum \ + solving/machinery/dispatch.h debugging/trace.h position/position.h \ + position/color.h position/color.enum.h position/color.enum \ + position/pieceid.h pieces/walks/vectors.h position/castling_rights.h \ + conditions/circe/rebirth_avoider.h conditions/circe/circe.h \ + stipulation/structure_traversal.h stipulation/slice.h \ + stipulation/slice_structural_type.h \ + stipulation/slice_structural_type.enum.h \ + stipulation/slice_structural_type.enum \ + stipulation/slice_functional_type.h \ + stipulation/slice_functional_type.enum.h \ + stipulation/slice_functional_type.enum \ + stipulation/slice_contextual_type.h \ + stipulation/slice_contextual_type.enum.h \ + stipulation/slice_contextual_type.enum stipulation/traversal.h \ + stipulation/slice_insertion.h solving/move_effect_journal.h \ + solving/ply.h solving/machinery/twin.h \ + conditions/circe/rebirth_square_occupied.h \ + conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ + conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ + conditions/circe/relevant_side.h conditions/circe/rex_inclusive.h \ + solving/has_solution_type.h solving/has_solution_type.enum.h \ + solving/has_solution_type.enum stipulation/pipe.h stipulation/branch.h \ + stipulation/move.h solving/temporary_hacks.h \ + solving/post_move_iteration.h solving/observation.h solving/fork.h \ + solving/single_piece_move_generator.h solving/move_generator.h \ + debugging/measure.h solving/conditional_pipe.h solving/pipe.h \ + debugging/assert.h conditions/circe/takemake.h: - solving/machinery/solve.h: - stipulation/stipulation.h: - stipulation/goals/goals.h: - position/board.h: - utilities/bitmask.h: - utilities/boolean.h: - stipulation/slice_type.h: - stipulation/slice_type.enum.h: - stipulation/slice_type.enum: - position/side.h: - position/side.enum.h: - position/side.enum: - pieces/pieces.h: - output/mode.h: - output/mode.enum.h: - output/mode.enum: - solving/machinery/dispatch.h: - debugging/trace.h: - position/position.h: - position/color.h: - position/color.enum.h: - position/color.enum: - position/pieceid.h: - pieces/walks/vectors.h: - position/castling_rights.h: - conditions/circe/rebirth_avoider.h: - conditions/circe/circe.h: - stipulation/structure_traversal.h: - stipulation/slice.h: - stipulation/slice_structural_type.h: - stipulation/slice_structural_type.enum.h: - stipulation/slice_structural_type.enum: - stipulation/slice_functional_type.h: - stipulation/slice_functional_type.enum.h: - stipulation/slice_functional_type.enum: - stipulation/slice_contextual_type.h: - stipulation/slice_contextual_type.enum.h: - stipulation/slice_contextual_type.enum: - stipulation/traversal.h: - stipulation/slice_insertion.h: - solving/move_effect_journal.h: - solving/ply.h: - solving/machinery/twin.h: - conditions/circe/rebirth_square_occupied.h: - conditions/circe/reborn_piece.h: - conditions/circe/rebirth_square.h: - conditions/circe/relevant_capture.h: - conditions/circe/relevant_piece.h: - conditions/circe/relevant_side.h: - conditions/circe/rex_inclusive.h: - solving/has_solution_type.h: - solving/has_solution_type.enum.h: - solving/has_solution_type.enum: - stipulation/pipe.h: - stipulation/branch.h: - stipulation/move.h: - solving/temporary_hacks.h: - solving/post_move_iteration.h: - solving/observation.h: - solving/fork.h: - solving/single_piece_move_generator.h: - solving/move_generator.h: - debugging/measure.h: - -output/plaintext/protocol.h: - solving/conditional_pipe.h: - solving/pipe.h: - debugging/assert.h: -conditions/circe/rex_inclusive$(OBJ_SUFFIX): conditions/circe/rex_inclusive.c \ - conditions/circe/rex_inclusive.h stipulation/stipulation.h \ - stipulation/goals/goals.h position/board.h utilities/bitmask.h \ - utilities/boolean.h stipulation/slice_type.h \ - stipulation/slice_type.enum.h stipulation/slice_type.enum \ - position/side.h position/side.enum.h position/side.enum \ - pieces/pieces.h output/mode.h output/mode.enum.h output/mode.enum \ - conditions/circe/circe.h solving/machinery/solve.h \ - solving/machinery/dispatch.h debugging/trace.h \ - stipulation/structure_traversal.h stipulation/slice.h \ - stipulation/slice_structural_type.h \ - stipulation/slice_structural_type.enum.h \ - stipulation/slice_structural_type.enum \ - stipulation/slice_functional_type.h \ - stipulation/slice_functional_type.enum.h \ - stipulation/slice_functional_type.enum \ - stipulation/slice_contextual_type.h \ - stipulation/slice_contextual_type.enum.h \ - stipulation/slice_contextual_type.enum stipulation/traversal.h \ - stipulation/slice_insertion.h solving/move_effect_journal.h \ - position/castling_rights.h solving/ply.h position/pieceid.h \ - solving/machinery/twin.h conditions/circe/rebirth_square_occupied.h \ - conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ - conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ - conditions/circe/relevant_side.h conditions/circe/rebirth_avoider.h \ - solving/observation.h pieces/walks/vectors.h solving/temporary_hacks.h \ - solving/fork.h stipulation/fork.h solving/binary.h - +conditions/circe/rex_inclusive.obj: conditions/circe/rex_inclusive.c \ + conditions/circe/rex_inclusive.h stipulation/stipulation.h \ + stipulation/goals/goals.h position/board.h utilities/bitmask.h \ + utilities/boolean.h stipulation/slice_type.h \ + stipulation/slice_type.enum.h stipulation/slice_type.enum \ + position/side.h position/side.enum.h position/side.enum pieces/pieces.h \ + output/mode.h output/mode.enum.h output/mode.enum \ + conditions/circe/circe.h solving/machinery/solve.h \ + solving/machinery/dispatch.h debugging/trace.h \ + stipulation/structure_traversal.h stipulation/slice.h \ + stipulation/slice_structural_type.h \ + stipulation/slice_structural_type.enum.h \ + stipulation/slice_structural_type.enum \ + stipulation/slice_functional_type.h \ + stipulation/slice_functional_type.enum.h \ + stipulation/slice_functional_type.enum \ + stipulation/slice_contextual_type.h \ + stipulation/slice_contextual_type.enum.h \ + stipulation/slice_contextual_type.enum stipulation/traversal.h \ + stipulation/slice_insertion.h solving/move_effect_journal.h \ + position/castling_rights.h solving/ply.h position/pieceid.h \ + solving/machinery/twin.h conditions/circe/rebirth_square_occupied.h \ + conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ + conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ + conditions/circe/relevant_side.h conditions/circe/rebirth_avoider.h \ + solving/observation.h pieces/walks/vectors.h solving/temporary_hacks.h \ + solving/fork.h stipulation/fork.h solving/binary.h conditions/circe/rex_inclusive.h: - stipulation/stipulation.h: - stipulation/goals/goals.h: - position/board.h: - utilities/bitmask.h: - utilities/boolean.h: - stipulation/slice_type.h: - stipulation/slice_type.enum.h: - stipulation/slice_type.enum: - position/side.h: - position/side.enum.h: - position/side.enum: - pieces/pieces.h: - output/mode.h: - output/mode.enum.h: - output/mode.enum: - conditions/circe/circe.h: - solving/machinery/solve.h: - solving/machinery/dispatch.h: - debugging/trace.h: - stipulation/structure_traversal.h: - stipulation/slice.h: - stipulation/slice_structural_type.h: - stipulation/slice_structural_type.enum.h: - stipulation/slice_structural_type.enum: - stipulation/slice_functional_type.h: - stipulation/slice_functional_type.enum.h: - stipulation/slice_functional_type.enum: - stipulation/slice_contextual_type.h: - stipulation/slice_contextual_type.enum.h: - stipulation/slice_contextual_type.enum: - stipulation/traversal.h: - stipulation/slice_insertion.h: - solving/move_effect_journal.h: - position/castling_rights.h: - solving/ply.h: - position/pieceid.h: - solving/machinery/twin.h: - conditions/circe/rebirth_square_occupied.h: - conditions/circe/reborn_piece.h: - conditions/circe/rebirth_square.h: - conditions/circe/relevant_capture.h: - conditions/circe/relevant_piece.h: - conditions/circe/relevant_side.h: - conditions/circe/rebirth_avoider.h: - solving/observation.h: - pieces/walks/vectors.h: - solving/temporary_hacks.h: - solving/fork.h: - stipulation/fork.h: - solving/binary.h: -conditions/circe/diametral$(OBJ_SUFFIX): conditions/circe/diametral.c \ - conditions/circe/diametral.h solving/machinery/solve.h \ - stipulation/stipulation.h stipulation/goals/goals.h position/board.h \ - utilities/bitmask.h utilities/boolean.h stipulation/slice_type.h \ - stipulation/slice_type.enum.h stipulation/slice_type.enum \ - position/side.h position/side.enum.h position/side.enum \ - pieces/pieces.h output/mode.h output/mode.enum.h output/mode.enum \ - solving/machinery/dispatch.h debugging/trace.h \ - conditions/circe/circe.h stipulation/structure_traversal.h \ - stipulation/slice.h stipulation/slice_structural_type.h \ - stipulation/slice_structural_type.enum.h \ - stipulation/slice_structural_type.enum \ - stipulation/slice_functional_type.h \ - stipulation/slice_functional_type.enum.h \ - stipulation/slice_functional_type.enum \ - stipulation/slice_contextual_type.h \ - stipulation/slice_contextual_type.enum.h \ - stipulation/slice_contextual_type.enum stipulation/traversal.h \ - stipulation/slice_insertion.h solving/move_effect_journal.h \ - position/castling_rights.h solving/ply.h position/pieceid.h \ - solving/machinery/twin.h conditions/circe/rebirth_square_occupied.h \ - conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ - conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ - conditions/circe/relevant_side.h solving/pipe.h debugging/assert.h - +conditions/circe/diametral.obj: conditions/circe/diametral.c \ + conditions/circe/diametral.h solving/machinery/solve.h \ + stipulation/stipulation.h stipulation/goals/goals.h position/board.h \ + utilities/bitmask.h utilities/boolean.h stipulation/slice_type.h \ + stipulation/slice_type.enum.h stipulation/slice_type.enum \ + position/side.h position/side.enum.h position/side.enum pieces/pieces.h \ + output/mode.h output/mode.enum.h output/mode.enum \ + solving/machinery/dispatch.h debugging/trace.h conditions/circe/circe.h \ + stipulation/structure_traversal.h stipulation/slice.h \ + stipulation/slice_structural_type.h \ + stipulation/slice_structural_type.enum.h \ + stipulation/slice_structural_type.enum \ + stipulation/slice_functional_type.h \ + stipulation/slice_functional_type.enum.h \ + stipulation/slice_functional_type.enum \ + stipulation/slice_contextual_type.h \ + stipulation/slice_contextual_type.enum.h \ + stipulation/slice_contextual_type.enum stipulation/traversal.h \ + stipulation/slice_insertion.h solving/move_effect_journal.h \ + position/castling_rights.h solving/ply.h position/pieceid.h \ + solving/machinery/twin.h conditions/circe/rebirth_square_occupied.h \ + conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ + conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ + conditions/circe/relevant_side.h solving/pipe.h debugging/assert.h conditions/circe/diametral.h: - solving/machinery/solve.h: - stipulation/stipulation.h: - stipulation/goals/goals.h: - position/board.h: - utilities/bitmask.h: - utilities/boolean.h: - stipulation/slice_type.h: - stipulation/slice_type.enum.h: - stipulation/slice_type.enum: - position/side.h: - position/side.enum.h: - position/side.enum: - pieces/pieces.h: - output/mode.h: - output/mode.enum.h: - output/mode.enum: - solving/machinery/dispatch.h: - debugging/trace.h: - conditions/circe/circe.h: - stipulation/structure_traversal.h: - stipulation/slice.h: - stipulation/slice_structural_type.h: - stipulation/slice_structural_type.enum.h: - stipulation/slice_structural_type.enum: - stipulation/slice_functional_type.h: - stipulation/slice_functional_type.enum.h: - stipulation/slice_functional_type.enum: - stipulation/slice_contextual_type.h: - stipulation/slice_contextual_type.enum.h: - stipulation/slice_contextual_type.enum: - stipulation/traversal.h: - stipulation/slice_insertion.h: - solving/move_effect_journal.h: - position/castling_rights.h: - solving/ply.h: - position/pieceid.h: - solving/machinery/twin.h: - conditions/circe/rebirth_square_occupied.h: - conditions/circe/reborn_piece.h: - conditions/circe/rebirth_square.h: - conditions/circe/relevant_capture.h: - conditions/circe/relevant_piece.h: - conditions/circe/relevant_side.h: - solving/pipe.h: - debugging/assert.h: -conditions/circe/mirror$(OBJ_SUFFIX): conditions/circe/mirror.c \ - conditions/circe/mirror.h solving/machinery/solve.h \ - stipulation/stipulation.h stipulation/goals/goals.h position/board.h \ - utilities/bitmask.h utilities/boolean.h stipulation/slice_type.h \ - stipulation/slice_type.enum.h stipulation/slice_type.enum \ - position/side.h position/side.enum.h position/side.enum \ - pieces/pieces.h output/mode.h output/mode.enum.h output/mode.enum \ - solving/machinery/dispatch.h debugging/trace.h \ - conditions/circe/circe.h stipulation/structure_traversal.h \ - stipulation/slice.h stipulation/slice_structural_type.h \ - stipulation/slice_structural_type.enum.h \ - stipulation/slice_structural_type.enum \ - stipulation/slice_functional_type.h \ - stipulation/slice_functional_type.enum.h \ - stipulation/slice_functional_type.enum \ - stipulation/slice_contextual_type.h \ - stipulation/slice_contextual_type.enum.h \ - stipulation/slice_contextual_type.enum stipulation/traversal.h \ - stipulation/slice_insertion.h solving/move_effect_journal.h \ - position/castling_rights.h solving/ply.h position/pieceid.h \ - solving/machinery/twin.h conditions/circe/rebirth_square_occupied.h \ - conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ - conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ - conditions/circe/relevant_side.h stipulation/move.h solving/pipe.h \ - debugging/assert.h - +conditions/circe/mirror.obj: conditions/circe/mirror.c \ + conditions/circe/mirror.h solving/machinery/solve.h \ + stipulation/stipulation.h stipulation/goals/goals.h position/board.h \ + utilities/bitmask.h utilities/boolean.h stipulation/slice_type.h \ + stipulation/slice_type.enum.h stipulation/slice_type.enum \ + position/side.h position/side.enum.h position/side.enum pieces/pieces.h \ + output/mode.h output/mode.enum.h output/mode.enum \ + solving/machinery/dispatch.h debugging/trace.h conditions/circe/circe.h \ + stipulation/structure_traversal.h stipulation/slice.h \ + stipulation/slice_structural_type.h \ + stipulation/slice_structural_type.enum.h \ + stipulation/slice_structural_type.enum \ + stipulation/slice_functional_type.h \ + stipulation/slice_functional_type.enum.h \ + stipulation/slice_functional_type.enum \ + stipulation/slice_contextual_type.h \ + stipulation/slice_contextual_type.enum.h \ + stipulation/slice_contextual_type.enum stipulation/traversal.h \ + stipulation/slice_insertion.h solving/move_effect_journal.h \ + position/castling_rights.h solving/ply.h position/pieceid.h \ + solving/machinery/twin.h conditions/circe/rebirth_square_occupied.h \ + conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ + conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ + conditions/circe/relevant_side.h stipulation/move.h solving/pipe.h \ + debugging/assert.h conditions/circe/mirror.h: - solving/machinery/solve.h: - stipulation/stipulation.h: - stipulation/goals/goals.h: - position/board.h: - utilities/bitmask.h: - utilities/boolean.h: - stipulation/slice_type.h: - stipulation/slice_type.enum.h: - stipulation/slice_type.enum: - position/side.h: - position/side.enum.h: - position/side.enum: - pieces/pieces.h: - output/mode.h: - output/mode.enum.h: - output/mode.enum: - solving/machinery/dispatch.h: - debugging/trace.h: - conditions/circe/circe.h: - stipulation/structure_traversal.h: - stipulation/slice.h: - stipulation/slice_structural_type.h: - stipulation/slice_structural_type.enum.h: - stipulation/slice_structural_type.enum: - stipulation/slice_functional_type.h: - stipulation/slice_functional_type.enum.h: - stipulation/slice_functional_type.enum: - stipulation/slice_contextual_type.h: - stipulation/slice_contextual_type.enum.h: - stipulation/slice_contextual_type.enum: - stipulation/traversal.h: - stipulation/slice_insertion.h: - solving/move_effect_journal.h: - position/castling_rights.h: - solving/ply.h: - position/pieceid.h: - solving/machinery/twin.h: - conditions/circe/rebirth_square_occupied.h: - conditions/circe/reborn_piece.h: - conditions/circe/rebirth_square.h: - conditions/circe/relevant_capture.h: - conditions/circe/relevant_piece.h: - conditions/circe/relevant_side.h: - stipulation/move.h: - solving/pipe.h: - debugging/assert.h: -conditions/circe/rank$(OBJ_SUFFIX): conditions/circe/rank.c conditions/circe/rank.h \ - solving/machinery/solve.h stipulation/stipulation.h \ - stipulation/goals/goals.h position/board.h utilities/bitmask.h \ - utilities/boolean.h stipulation/slice_type.h \ - stipulation/slice_type.enum.h stipulation/slice_type.enum \ - position/side.h position/side.enum.h position/side.enum \ - pieces/pieces.h output/mode.h output/mode.enum.h output/mode.enum \ - solving/machinery/dispatch.h debugging/trace.h \ - conditions/circe/circe.h stipulation/structure_traversal.h \ - stipulation/slice.h stipulation/slice_structural_type.h \ - stipulation/slice_structural_type.enum.h \ - stipulation/slice_structural_type.enum \ - stipulation/slice_functional_type.h \ - stipulation/slice_functional_type.enum.h \ - stipulation/slice_functional_type.enum \ - stipulation/slice_contextual_type.h \ - stipulation/slice_contextual_type.enum.h \ - stipulation/slice_contextual_type.enum stipulation/traversal.h \ - stipulation/slice_insertion.h solving/move_effect_journal.h \ - position/castling_rights.h solving/ply.h position/pieceid.h \ - solving/machinery/twin.h conditions/circe/rebirth_square_occupied.h \ - conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ - conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ - conditions/circe/relevant_side.h solving/pipe.h debugging/assert.h - +conditions/circe/rank.obj: conditions/circe/rank.c \ + conditions/circe/rank.h solving/machinery/solve.h \ + stipulation/stipulation.h stipulation/goals/goals.h position/board.h \ + utilities/bitmask.h utilities/boolean.h stipulation/slice_type.h \ + stipulation/slice_type.enum.h stipulation/slice_type.enum \ + position/side.h position/side.enum.h position/side.enum pieces/pieces.h \ + output/mode.h output/mode.enum.h output/mode.enum \ + solving/machinery/dispatch.h debugging/trace.h conditions/circe/circe.h \ + stipulation/structure_traversal.h stipulation/slice.h \ + stipulation/slice_structural_type.h \ + stipulation/slice_structural_type.enum.h \ + stipulation/slice_structural_type.enum \ + stipulation/slice_functional_type.h \ + stipulation/slice_functional_type.enum.h \ + stipulation/slice_functional_type.enum \ + stipulation/slice_contextual_type.h \ + stipulation/slice_contextual_type.enum.h \ + stipulation/slice_contextual_type.enum stipulation/traversal.h \ + stipulation/slice_insertion.h solving/move_effect_journal.h \ + position/castling_rights.h solving/ply.h position/pieceid.h \ + solving/machinery/twin.h conditions/circe/rebirth_square_occupied.h \ + conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ + conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ + conditions/circe/relevant_side.h solving/pipe.h debugging/assert.h conditions/circe/rank.h: - solving/machinery/solve.h: - stipulation/stipulation.h: - stipulation/goals/goals.h: - position/board.h: - utilities/bitmask.h: - utilities/boolean.h: - stipulation/slice_type.h: - stipulation/slice_type.enum.h: - stipulation/slice_type.enum: - position/side.h: - position/side.enum.h: - position/side.enum: - pieces/pieces.h: - output/mode.h: - output/mode.enum.h: - output/mode.enum: - solving/machinery/dispatch.h: - debugging/trace.h: - conditions/circe/circe.h: - stipulation/structure_traversal.h: - stipulation/slice.h: - stipulation/slice_structural_type.h: - stipulation/slice_structural_type.enum.h: - stipulation/slice_structural_type.enum: - stipulation/slice_functional_type.h: - stipulation/slice_functional_type.enum.h: - stipulation/slice_functional_type.enum: - stipulation/slice_contextual_type.h: - stipulation/slice_contextual_type.enum.h: - stipulation/slice_contextual_type.enum: - stipulation/traversal.h: - stipulation/slice_insertion.h: - solving/move_effect_journal.h: - position/castling_rights.h: - solving/ply.h: - position/pieceid.h: - solving/machinery/twin.h: - conditions/circe/rebirth_square_occupied.h: - conditions/circe/reborn_piece.h: - conditions/circe/rebirth_square.h: - conditions/circe/relevant_capture.h: - conditions/circe/relevant_piece.h: - conditions/circe/relevant_side.h: - solving/pipe.h: - debugging/assert.h: -conditions/circe/antipodes$(OBJ_SUFFIX): conditions/circe/antipodes.c \ - conditions/circe/antipodes.h solving/machinery/solve.h \ - stipulation/stipulation.h stipulation/goals/goals.h position/board.h \ - utilities/bitmask.h utilities/boolean.h stipulation/slice_type.h \ - stipulation/slice_type.enum.h stipulation/slice_type.enum \ - position/side.h position/side.enum.h position/side.enum \ - pieces/pieces.h output/mode.h output/mode.enum.h output/mode.enum \ - solving/machinery/dispatch.h debugging/trace.h \ - conditions/circe/circe.h stipulation/structure_traversal.h \ - stipulation/slice.h stipulation/slice_structural_type.h \ - stipulation/slice_structural_type.enum.h \ - stipulation/slice_structural_type.enum \ - stipulation/slice_functional_type.h \ - stipulation/slice_functional_type.enum.h \ - stipulation/slice_functional_type.enum \ - stipulation/slice_contextual_type.h \ - stipulation/slice_contextual_type.enum.h \ - stipulation/slice_contextual_type.enum stipulation/traversal.h \ - stipulation/slice_insertion.h solving/move_effect_journal.h \ - position/castling_rights.h solving/ply.h position/pieceid.h \ - solving/machinery/twin.h conditions/circe/rebirth_square_occupied.h \ - conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ - conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ - conditions/circe/relevant_side.h solving/pipe.h debugging/assert.h - +conditions/circe/antipodes.obj: conditions/circe/antipodes.c \ + conditions/circe/antipodes.h solving/machinery/solve.h \ + stipulation/stipulation.h stipulation/goals/goals.h position/board.h \ + utilities/bitmask.h utilities/boolean.h stipulation/slice_type.h \ + stipulation/slice_type.enum.h stipulation/slice_type.enum \ + position/side.h position/side.enum.h position/side.enum pieces/pieces.h \ + output/mode.h output/mode.enum.h output/mode.enum \ + solving/machinery/dispatch.h debugging/trace.h conditions/circe/circe.h \ + stipulation/structure_traversal.h stipulation/slice.h \ + stipulation/slice_structural_type.h \ + stipulation/slice_structural_type.enum.h \ + stipulation/slice_structural_type.enum \ + stipulation/slice_functional_type.h \ + stipulation/slice_functional_type.enum.h \ + stipulation/slice_functional_type.enum \ + stipulation/slice_contextual_type.h \ + stipulation/slice_contextual_type.enum.h \ + stipulation/slice_contextual_type.enum stipulation/traversal.h \ + stipulation/slice_insertion.h solving/move_effect_journal.h \ + position/castling_rights.h solving/ply.h position/pieceid.h \ + solving/machinery/twin.h conditions/circe/rebirth_square_occupied.h \ + conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ + conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ + conditions/circe/relevant_side.h solving/pipe.h debugging/assert.h conditions/circe/antipodes.h: - solving/machinery/solve.h: - stipulation/stipulation.h: - stipulation/goals/goals.h: - position/board.h: - utilities/bitmask.h: - utilities/boolean.h: - stipulation/slice_type.h: - stipulation/slice_type.enum.h: - stipulation/slice_type.enum: - position/side.h: - position/side.enum.h: - position/side.enum: - pieces/pieces.h: - output/mode.h: - output/mode.enum.h: - output/mode.enum: - solving/machinery/dispatch.h: - debugging/trace.h: - conditions/circe/circe.h: - stipulation/structure_traversal.h: - stipulation/slice.h: - stipulation/slice_structural_type.h: - stipulation/slice_structural_type.enum.h: - stipulation/slice_structural_type.enum: - stipulation/slice_functional_type.h: - stipulation/slice_functional_type.enum.h: - stipulation/slice_functional_type.enum: - stipulation/slice_contextual_type.h: - stipulation/slice_contextual_type.enum.h: - stipulation/slice_contextual_type.enum: - stipulation/traversal.h: - stipulation/slice_insertion.h: - solving/move_effect_journal.h: - position/castling_rights.h: - solving/ply.h: - position/pieceid.h: - solving/machinery/twin.h: - conditions/circe/rebirth_square_occupied.h: - conditions/circe/reborn_piece.h: - conditions/circe/rebirth_square.h: - conditions/circe/relevant_capture.h: - conditions/circe/relevant_piece.h: - conditions/circe/relevant_side.h: - solving/pipe.h: - debugging/assert.h: -conditions/circe/pwc$(OBJ_SUFFIX): conditions/circe/pwc.c conditions/circe/pwc.h \ - solving/machinery/solve.h stipulation/stipulation.h \ - stipulation/goals/goals.h position/board.h utilities/bitmask.h \ - utilities/boolean.h stipulation/slice_type.h \ - stipulation/slice_type.enum.h stipulation/slice_type.enum \ - position/side.h position/side.enum.h position/side.enum \ - pieces/pieces.h output/mode.h output/mode.enum.h output/mode.enum \ - solving/machinery/dispatch.h debugging/trace.h \ - conditions/circe/circe.h stipulation/structure_traversal.h \ - stipulation/slice.h stipulation/slice_structural_type.h \ - stipulation/slice_structural_type.enum.h \ - stipulation/slice_structural_type.enum \ - stipulation/slice_functional_type.h \ - stipulation/slice_functional_type.enum.h \ - stipulation/slice_functional_type.enum \ - stipulation/slice_contextual_type.h \ - stipulation/slice_contextual_type.enum.h \ - stipulation/slice_contextual_type.enum stipulation/traversal.h \ - stipulation/slice_insertion.h solving/move_effect_journal.h \ - position/castling_rights.h solving/ply.h position/pieceid.h \ - solving/machinery/twin.h conditions/circe/rebirth_square_occupied.h \ - conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ - conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ - conditions/circe/relevant_side.h solving/pipe.h \ - position/effects/piece_movement.h debugging/assert.h - +conditions/circe/pwc.obj: conditions/circe/pwc.c conditions/circe/pwc.h \ + solving/machinery/solve.h stipulation/stipulation.h \ + stipulation/goals/goals.h position/board.h utilities/bitmask.h \ + utilities/boolean.h stipulation/slice_type.h \ + stipulation/slice_type.enum.h stipulation/slice_type.enum \ + position/side.h position/side.enum.h position/side.enum pieces/pieces.h \ + output/mode.h output/mode.enum.h output/mode.enum \ + solving/machinery/dispatch.h debugging/trace.h conditions/circe/circe.h \ + stipulation/structure_traversal.h stipulation/slice.h \ + stipulation/slice_structural_type.h \ + stipulation/slice_structural_type.enum.h \ + stipulation/slice_structural_type.enum \ + stipulation/slice_functional_type.h \ + stipulation/slice_functional_type.enum.h \ + stipulation/slice_functional_type.enum \ + stipulation/slice_contextual_type.h \ + stipulation/slice_contextual_type.enum.h \ + stipulation/slice_contextual_type.enum stipulation/traversal.h \ + stipulation/slice_insertion.h solving/move_effect_journal.h \ + position/castling_rights.h solving/ply.h position/pieceid.h \ + solving/machinery/twin.h conditions/circe/rebirth_square_occupied.h \ + conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ + conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ + conditions/circe/relevant_side.h solving/pipe.h \ + position/effects/piece_movement.h debugging/assert.h conditions/circe/pwc.h: - solving/machinery/solve.h: - stipulation/stipulation.h: - stipulation/goals/goals.h: - position/board.h: - utilities/bitmask.h: - utilities/boolean.h: - stipulation/slice_type.h: - stipulation/slice_type.enum.h: - stipulation/slice_type.enum: - position/side.h: - position/side.enum.h: - position/side.enum: - pieces/pieces.h: - output/mode.h: - output/mode.enum.h: - output/mode.enum: - solving/machinery/dispatch.h: - debugging/trace.h: - conditions/circe/circe.h: - stipulation/structure_traversal.h: - stipulation/slice.h: - stipulation/slice_structural_type.h: - stipulation/slice_structural_type.enum.h: - stipulation/slice_structural_type.enum: - stipulation/slice_functional_type.h: - stipulation/slice_functional_type.enum.h: - stipulation/slice_functional_type.enum: - stipulation/slice_contextual_type.h: - stipulation/slice_contextual_type.enum.h: - stipulation/slice_contextual_type.enum: - stipulation/traversal.h: - stipulation/slice_insertion.h: - solving/move_effect_journal.h: - position/castling_rights.h: - solving/ply.h: - position/pieceid.h: - solving/machinery/twin.h: - conditions/circe/rebirth_square_occupied.h: - conditions/circe/reborn_piece.h: - conditions/circe/rebirth_square.h: - conditions/circe/relevant_capture.h: - conditions/circe/relevant_piece.h: - conditions/circe/relevant_side.h: - solving/pipe.h: - position/effects/piece_movement.h: - debugging/assert.h: -conditions/circe/file$(OBJ_SUFFIX): conditions/circe/file.c conditions/circe/file.h \ - solving/machinery/solve.h stipulation/stipulation.h \ - stipulation/goals/goals.h position/board.h utilities/bitmask.h \ - utilities/boolean.h stipulation/slice_type.h \ - stipulation/slice_type.enum.h stipulation/slice_type.enum \ - position/side.h position/side.enum.h position/side.enum \ - pieces/pieces.h output/mode.h output/mode.enum.h output/mode.enum \ - solving/machinery/dispatch.h debugging/trace.h \ - conditions/circe/circe.h stipulation/structure_traversal.h \ - stipulation/slice.h stipulation/slice_structural_type.h \ - stipulation/slice_structural_type.enum.h \ - stipulation/slice_structural_type.enum \ - stipulation/slice_functional_type.h \ - stipulation/slice_functional_type.enum.h \ - stipulation/slice_functional_type.enum \ - stipulation/slice_contextual_type.h \ - stipulation/slice_contextual_type.enum.h \ - stipulation/slice_contextual_type.enum stipulation/traversal.h \ - stipulation/slice_insertion.h solving/move_effect_journal.h \ - position/castling_rights.h solving/ply.h position/pieceid.h \ - solving/machinery/twin.h conditions/circe/rebirth_square_occupied.h \ - conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ - conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ - conditions/circe/relevant_side.h pieces/walks/classification.h \ - position/position.h position/color.h position/color.enum.h \ - position/color.enum pieces/walks/vectors.h pieces/walks/walks.h \ - solving/pipe.h debugging/assert.h - +conditions/circe/file.obj: conditions/circe/file.c \ + conditions/circe/file.h solving/machinery/solve.h \ + stipulation/stipulation.h stipulation/goals/goals.h position/board.h \ + utilities/bitmask.h utilities/boolean.h stipulation/slice_type.h \ + stipulation/slice_type.enum.h stipulation/slice_type.enum \ + position/side.h position/side.enum.h position/side.enum pieces/pieces.h \ + output/mode.h output/mode.enum.h output/mode.enum \ + solving/machinery/dispatch.h debugging/trace.h conditions/circe/circe.h \ + stipulation/structure_traversal.h stipulation/slice.h \ + stipulation/slice_structural_type.h \ + stipulation/slice_structural_type.enum.h \ + stipulation/slice_structural_type.enum \ + stipulation/slice_functional_type.h \ + stipulation/slice_functional_type.enum.h \ + stipulation/slice_functional_type.enum \ + stipulation/slice_contextual_type.h \ + stipulation/slice_contextual_type.enum.h \ + stipulation/slice_contextual_type.enum stipulation/traversal.h \ + stipulation/slice_insertion.h solving/move_effect_journal.h \ + position/castling_rights.h solving/ply.h position/pieceid.h \ + solving/machinery/twin.h conditions/circe/rebirth_square_occupied.h \ + conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ + conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ + conditions/circe/relevant_side.h pieces/walks/classification.h \ + position/position.h position/color.h position/color.enum.h \ + position/color.enum pieces/walks/vectors.h pieces/walks/walks.h \ + solving/pipe.h debugging/assert.h conditions/circe/file.h: - solving/machinery/solve.h: - stipulation/stipulation.h: - stipulation/goals/goals.h: - position/board.h: - utilities/bitmask.h: - utilities/boolean.h: - stipulation/slice_type.h: - stipulation/slice_type.enum.h: - stipulation/slice_type.enum: - position/side.h: - position/side.enum.h: - position/side.enum: - pieces/pieces.h: - output/mode.h: - output/mode.enum.h: - output/mode.enum: - solving/machinery/dispatch.h: - debugging/trace.h: - conditions/circe/circe.h: - stipulation/structure_traversal.h: - stipulation/slice.h: - stipulation/slice_structural_type.h: - stipulation/slice_structural_type.enum.h: - stipulation/slice_structural_type.enum: - stipulation/slice_functional_type.h: - stipulation/slice_functional_type.enum.h: - stipulation/slice_functional_type.enum: - stipulation/slice_contextual_type.h: - stipulation/slice_contextual_type.enum.h: - stipulation/slice_contextual_type.enum: - stipulation/traversal.h: - stipulation/slice_insertion.h: - solving/move_effect_journal.h: - position/castling_rights.h: - solving/ply.h: - position/pieceid.h: - solving/machinery/twin.h: - conditions/circe/rebirth_square_occupied.h: - conditions/circe/reborn_piece.h: - conditions/circe/rebirth_square.h: - conditions/circe/relevant_capture.h: - conditions/circe/relevant_piece.h: - conditions/circe/relevant_side.h: - pieces/walks/classification.h: - position/position.h: - position/color.h: - position/color.enum.h: - position/color.enum: - pieces/walks/vectors.h: - pieces/walks/walks.h: - solving/pipe.h: - debugging/assert.h: -conditions/circe/diagram$(OBJ_SUFFIX): conditions/circe/diagram.c \ - conditions/circe/diagram.h solving/machinery/solve.h \ - stipulation/stipulation.h stipulation/goals/goals.h position/board.h \ - utilities/bitmask.h utilities/boolean.h stipulation/slice_type.h \ - stipulation/slice_type.enum.h stipulation/slice_type.enum \ - position/side.h position/side.enum.h position/side.enum \ - pieces/pieces.h output/mode.h output/mode.enum.h output/mode.enum \ - solving/machinery/dispatch.h debugging/trace.h \ - conditions/circe/circe.h stipulation/structure_traversal.h \ - stipulation/slice.h stipulation/slice_structural_type.h \ - stipulation/slice_structural_type.enum.h \ - stipulation/slice_structural_type.enum \ - stipulation/slice_functional_type.h \ - stipulation/slice_functional_type.enum.h \ - stipulation/slice_functional_type.enum \ - stipulation/slice_contextual_type.h \ - stipulation/slice_contextual_type.enum.h \ - stipulation/slice_contextual_type.enum stipulation/traversal.h \ - stipulation/slice_insertion.h solving/move_effect_journal.h \ - position/castling_rights.h solving/ply.h position/pieceid.h \ - solving/machinery/twin.h conditions/circe/rebirth_square_occupied.h \ - conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ - conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ - conditions/circe/relevant_side.h solving/pipe.h debugging/assert.h - +conditions/circe/diagram.obj: conditions/circe/diagram.c \ + conditions/circe/diagram.h solving/machinery/solve.h \ + stipulation/stipulation.h stipulation/goals/goals.h position/board.h \ + utilities/bitmask.h utilities/boolean.h stipulation/slice_type.h \ + stipulation/slice_type.enum.h stipulation/slice_type.enum \ + position/side.h position/side.enum.h position/side.enum pieces/pieces.h \ + output/mode.h output/mode.enum.h output/mode.enum \ + solving/machinery/dispatch.h debugging/trace.h conditions/circe/circe.h \ + stipulation/structure_traversal.h stipulation/slice.h \ + stipulation/slice_structural_type.h \ + stipulation/slice_structural_type.enum.h \ + stipulation/slice_structural_type.enum \ + stipulation/slice_functional_type.h \ + stipulation/slice_functional_type.enum.h \ + stipulation/slice_functional_type.enum \ + stipulation/slice_contextual_type.h \ + stipulation/slice_contextual_type.enum.h \ + stipulation/slice_contextual_type.enum stipulation/traversal.h \ + stipulation/slice_insertion.h solving/move_effect_journal.h \ + position/castling_rights.h solving/ply.h position/pieceid.h \ + solving/machinery/twin.h conditions/circe/rebirth_square_occupied.h \ + conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ + conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ + conditions/circe/relevant_side.h solving/pipe.h debugging/assert.h conditions/circe/diagram.h: - solving/machinery/solve.h: - stipulation/stipulation.h: - stipulation/goals/goals.h: - position/board.h: - utilities/bitmask.h: - utilities/boolean.h: - stipulation/slice_type.h: - stipulation/slice_type.enum.h: - stipulation/slice_type.enum: - position/side.h: - position/side.enum.h: - position/side.enum: - pieces/pieces.h: - output/mode.h: - output/mode.enum.h: - output/mode.enum: - solving/machinery/dispatch.h: - debugging/trace.h: - conditions/circe/circe.h: - stipulation/structure_traversal.h: - stipulation/slice.h: - stipulation/slice_structural_type.h: - stipulation/slice_structural_type.enum.h: - stipulation/slice_structural_type.enum: - stipulation/slice_functional_type.h: - stipulation/slice_functional_type.enum.h: - stipulation/slice_functional_type.enum: - stipulation/slice_contextual_type.h: - stipulation/slice_contextual_type.enum.h: - stipulation/slice_contextual_type.enum: - stipulation/traversal.h: - stipulation/slice_insertion.h: - solving/move_effect_journal.h: - position/castling_rights.h: - solving/ply.h: - position/pieceid.h: - solving/machinery/twin.h: - conditions/circe/rebirth_square_occupied.h: - conditions/circe/reborn_piece.h: - conditions/circe/rebirth_square.h: - conditions/circe/relevant_capture.h: - conditions/circe/relevant_piece.h: - conditions/circe/relevant_side.h: - solving/pipe.h: - debugging/assert.h: -conditions/circe/symmetry$(OBJ_SUFFIX): conditions/circe/symmetry.c \ - conditions/circe/symmetry.h solving/machinery/solve.h \ - stipulation/stipulation.h stipulation/goals/goals.h position/board.h \ - utilities/bitmask.h utilities/boolean.h stipulation/slice_type.h \ - stipulation/slice_type.enum.h stipulation/slice_type.enum \ - position/side.h position/side.enum.h position/side.enum \ - pieces/pieces.h output/mode.h output/mode.enum.h output/mode.enum \ - solving/machinery/dispatch.h debugging/trace.h \ - conditions/circe/circe.h stipulation/structure_traversal.h \ - stipulation/slice.h stipulation/slice_structural_type.h \ - stipulation/slice_structural_type.enum.h \ - stipulation/slice_structural_type.enum \ - stipulation/slice_functional_type.h \ - stipulation/slice_functional_type.enum.h \ - stipulation/slice_functional_type.enum \ - stipulation/slice_contextual_type.h \ - stipulation/slice_contextual_type.enum.h \ - stipulation/slice_contextual_type.enum stipulation/traversal.h \ - stipulation/slice_insertion.h solving/move_effect_journal.h \ - position/castling_rights.h solving/ply.h position/pieceid.h \ - solving/machinery/twin.h conditions/circe/rebirth_square_occupied.h \ - conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ - conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ - conditions/circe/relevant_side.h solving/pipe.h debugging/assert.h - +conditions/circe/symmetry.obj: conditions/circe/symmetry.c \ + conditions/circe/symmetry.h solving/machinery/solve.h \ + stipulation/stipulation.h stipulation/goals/goals.h position/board.h \ + utilities/bitmask.h utilities/boolean.h stipulation/slice_type.h \ + stipulation/slice_type.enum.h stipulation/slice_type.enum \ + position/side.h position/side.enum.h position/side.enum pieces/pieces.h \ + output/mode.h output/mode.enum.h output/mode.enum \ + solving/machinery/dispatch.h debugging/trace.h conditions/circe/circe.h \ + stipulation/structure_traversal.h stipulation/slice.h \ + stipulation/slice_structural_type.h \ + stipulation/slice_structural_type.enum.h \ + stipulation/slice_structural_type.enum \ + stipulation/slice_functional_type.h \ + stipulation/slice_functional_type.enum.h \ + stipulation/slice_functional_type.enum \ + stipulation/slice_contextual_type.h \ + stipulation/slice_contextual_type.enum.h \ + stipulation/slice_contextual_type.enum stipulation/traversal.h \ + stipulation/slice_insertion.h solving/move_effect_journal.h \ + position/castling_rights.h solving/ply.h position/pieceid.h \ + solving/machinery/twin.h conditions/circe/rebirth_square_occupied.h \ + conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ + conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ + conditions/circe/relevant_side.h solving/pipe.h debugging/assert.h conditions/circe/symmetry.h: - solving/machinery/solve.h: - stipulation/stipulation.h: - stipulation/goals/goals.h: - position/board.h: - utilities/bitmask.h: - utilities/boolean.h: - stipulation/slice_type.h: - stipulation/slice_type.enum.h: - stipulation/slice_type.enum: - position/side.h: - position/side.enum.h: - position/side.enum: - pieces/pieces.h: - output/mode.h: - output/mode.enum.h: - output/mode.enum: - solving/machinery/dispatch.h: - debugging/trace.h: - conditions/circe/circe.h: - stipulation/structure_traversal.h: - stipulation/slice.h: - stipulation/slice_structural_type.h: - stipulation/slice_structural_type.enum.h: - stipulation/slice_structural_type.enum: - stipulation/slice_functional_type.h: - stipulation/slice_functional_type.enum.h: - stipulation/slice_functional_type.enum: - stipulation/slice_contextual_type.h: - stipulation/slice_contextual_type.enum.h: - stipulation/slice_contextual_type.enum: - stipulation/traversal.h: - stipulation/slice_insertion.h: - solving/move_effect_journal.h: - position/castling_rights.h: - solving/ply.h: - position/pieceid.h: - solving/machinery/twin.h: - conditions/circe/rebirth_square_occupied.h: - conditions/circe/reborn_piece.h: - conditions/circe/rebirth_square.h: - conditions/circe/relevant_capture.h: - conditions/circe/relevant_piece.h: - conditions/circe/relevant_side.h: - solving/pipe.h: - debugging/assert.h: -conditions/circe/verticalmirror$(OBJ_SUFFIX): conditions/circe/verticalmirror.c \ - conditions/circe/verticalmirror.h solving/machinery/solve.h \ - stipulation/stipulation.h stipulation/goals/goals.h position/board.h \ - utilities/bitmask.h utilities/boolean.h stipulation/slice_type.h \ - stipulation/slice_type.enum.h stipulation/slice_type.enum \ - position/side.h position/side.enum.h position/side.enum \ - pieces/pieces.h output/mode.h output/mode.enum.h output/mode.enum \ - solving/machinery/dispatch.h debugging/trace.h \ - conditions/circe/circe.h stipulation/structure_traversal.h \ - stipulation/slice.h stipulation/slice_structural_type.h \ - stipulation/slice_structural_type.enum.h \ - stipulation/slice_structural_type.enum \ - stipulation/slice_functional_type.h \ - stipulation/slice_functional_type.enum.h \ - stipulation/slice_functional_type.enum \ - stipulation/slice_contextual_type.h \ - stipulation/slice_contextual_type.enum.h \ - stipulation/slice_contextual_type.enum stipulation/traversal.h \ - stipulation/slice_insertion.h solving/move_effect_journal.h \ - position/castling_rights.h solving/ply.h position/pieceid.h \ - solving/machinery/twin.h conditions/circe/rebirth_square_occupied.h \ - conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ - conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ - conditions/circe/relevant_side.h solving/pipe.h debugging/assert.h - +conditions/circe/verticalmirror.obj: conditions/circe/verticalmirror.c \ + conditions/circe/verticalmirror.h solving/machinery/solve.h \ + stipulation/stipulation.h stipulation/goals/goals.h position/board.h \ + utilities/bitmask.h utilities/boolean.h stipulation/slice_type.h \ + stipulation/slice_type.enum.h stipulation/slice_type.enum \ + position/side.h position/side.enum.h position/side.enum pieces/pieces.h \ + output/mode.h output/mode.enum.h output/mode.enum \ + solving/machinery/dispatch.h debugging/trace.h conditions/circe/circe.h \ + stipulation/structure_traversal.h stipulation/slice.h \ + stipulation/slice_structural_type.h \ + stipulation/slice_structural_type.enum.h \ + stipulation/slice_structural_type.enum \ + stipulation/slice_functional_type.h \ + stipulation/slice_functional_type.enum.h \ + stipulation/slice_functional_type.enum \ + stipulation/slice_contextual_type.h \ + stipulation/slice_contextual_type.enum.h \ + stipulation/slice_contextual_type.enum stipulation/traversal.h \ + stipulation/slice_insertion.h solving/move_effect_journal.h \ + position/castling_rights.h solving/ply.h position/pieceid.h \ + solving/machinery/twin.h conditions/circe/rebirth_square_occupied.h \ + conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ + conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ + conditions/circe/relevant_side.h solving/pipe.h debugging/assert.h conditions/circe/verticalmirror.h: - solving/machinery/solve.h: - stipulation/stipulation.h: - stipulation/goals/goals.h: - position/board.h: - utilities/bitmask.h: - utilities/boolean.h: - stipulation/slice_type.h: - stipulation/slice_type.enum.h: - stipulation/slice_type.enum: - position/side.h: - position/side.enum.h: - position/side.enum: - pieces/pieces.h: - output/mode.h: - output/mode.enum.h: - output/mode.enum: - solving/machinery/dispatch.h: - debugging/trace.h: - conditions/circe/circe.h: - stipulation/structure_traversal.h: - stipulation/slice.h: - stipulation/slice_structural_type.h: - stipulation/slice_structural_type.enum.h: - stipulation/slice_structural_type.enum: - stipulation/slice_functional_type.h: - stipulation/slice_functional_type.enum.h: - stipulation/slice_functional_type.enum: - stipulation/slice_contextual_type.h: - stipulation/slice_contextual_type.enum.h: - stipulation/slice_contextual_type.enum: - stipulation/traversal.h: - stipulation/slice_insertion.h: - solving/move_effect_journal.h: - position/castling_rights.h: - solving/ply.h: - position/pieceid.h: - solving/machinery/twin.h: - conditions/circe/rebirth_square_occupied.h: - conditions/circe/reborn_piece.h: - conditions/circe/rebirth_square.h: - conditions/circe/relevant_capture.h: - conditions/circe/relevant_piece.h: - conditions/circe/relevant_side.h: - solving/pipe.h: - debugging/assert.h: -conditions/circe/rebirth_avoider$(OBJ_SUFFIX): conditions/circe/rebirth_avoider.c \ - conditions/circe/rebirth_avoider.h stipulation/stipulation.h \ - stipulation/goals/goals.h position/board.h utilities/bitmask.h \ - utilities/boolean.h stipulation/slice_type.h \ - stipulation/slice_type.enum.h stipulation/slice_type.enum \ - position/side.h position/side.enum.h position/side.enum \ - pieces/pieces.h output/mode.h output/mode.enum.h output/mode.enum \ - conditions/circe/circe.h solving/machinery/solve.h \ - solving/machinery/dispatch.h debugging/trace.h \ - stipulation/structure_traversal.h stipulation/slice.h \ - stipulation/slice_structural_type.h \ - stipulation/slice_structural_type.enum.h \ - stipulation/slice_structural_type.enum \ - stipulation/slice_functional_type.h \ - stipulation/slice_functional_type.enum.h \ - stipulation/slice_functional_type.enum \ - stipulation/slice_contextual_type.h \ - stipulation/slice_contextual_type.enum.h \ - stipulation/slice_contextual_type.enum stipulation/traversal.h \ - stipulation/slice_insertion.h solving/move_effect_journal.h \ - position/castling_rights.h solving/ply.h position/pieceid.h \ - solving/machinery/twin.h conditions/circe/rebirth_square_occupied.h \ - conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ - conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ - conditions/circe/relevant_side.h stipulation/proxy.h \ - stipulation/pipe.h stipulation/branch.h stipulation/fork.h \ - stipulation/battle_play/branch.h stipulation/help_play/branch.h \ - debugging/assert.h - +conditions/circe/rebirth_avoider.obj: conditions/circe/rebirth_avoider.c \ + conditions/circe/rebirth_avoider.h stipulation/stipulation.h \ + stipulation/goals/goals.h position/board.h utilities/bitmask.h \ + utilities/boolean.h stipulation/slice_type.h \ + stipulation/slice_type.enum.h stipulation/slice_type.enum \ + position/side.h position/side.enum.h position/side.enum pieces/pieces.h \ + output/mode.h output/mode.enum.h output/mode.enum \ + conditions/circe/circe.h solving/machinery/solve.h \ + solving/machinery/dispatch.h debugging/trace.h \ + stipulation/structure_traversal.h stipulation/slice.h \ + stipulation/slice_structural_type.h \ + stipulation/slice_structural_type.enum.h \ + stipulation/slice_structural_type.enum \ + stipulation/slice_functional_type.h \ + stipulation/slice_functional_type.enum.h \ + stipulation/slice_functional_type.enum \ + stipulation/slice_contextual_type.h \ + stipulation/slice_contextual_type.enum.h \ + stipulation/slice_contextual_type.enum stipulation/traversal.h \ + stipulation/slice_insertion.h solving/move_effect_journal.h \ + position/castling_rights.h solving/ply.h position/pieceid.h \ + solving/machinery/twin.h conditions/circe/rebirth_square_occupied.h \ + conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ + conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ + conditions/circe/relevant_side.h stipulation/proxy.h stipulation/pipe.h \ + stipulation/branch.h stipulation/fork.h stipulation/battle_play/branch.h \ + stipulation/help_play/branch.h debugging/assert.h conditions/circe/rebirth_avoider.h: - stipulation/stipulation.h: - stipulation/goals/goals.h: - position/board.h: - utilities/bitmask.h: - utilities/boolean.h: - stipulation/slice_type.h: - stipulation/slice_type.enum.h: - stipulation/slice_type.enum: - position/side.h: - position/side.enum.h: - position/side.enum: - pieces/pieces.h: - output/mode.h: - output/mode.enum.h: - output/mode.enum: - conditions/circe/circe.h: - solving/machinery/solve.h: - solving/machinery/dispatch.h: - debugging/trace.h: - stipulation/structure_traversal.h: - stipulation/slice.h: - stipulation/slice_structural_type.h: - stipulation/slice_structural_type.enum.h: - stipulation/slice_structural_type.enum: - stipulation/slice_functional_type.h: - stipulation/slice_functional_type.enum.h: - stipulation/slice_functional_type.enum: - stipulation/slice_contextual_type.h: - stipulation/slice_contextual_type.enum.h: - stipulation/slice_contextual_type.enum: - stipulation/traversal.h: - stipulation/slice_insertion.h: - solving/move_effect_journal.h: - position/castling_rights.h: - solving/ply.h: - position/pieceid.h: - solving/machinery/twin.h: - conditions/circe/rebirth_square_occupied.h: - conditions/circe/reborn_piece.h: - conditions/circe/rebirth_square.h: - conditions/circe/relevant_capture.h: - conditions/circe/relevant_piece.h: - conditions/circe/relevant_side.h: - stipulation/proxy.h: - stipulation/pipe.h: - stipulation/branch.h: - stipulation/fork.h: - stipulation/battle_play/branch.h: - stipulation/help_play/branch.h: - debugging/assert.h: -conditions/circe/rebirth_square_occupied$(OBJ_SUFFIX): \ - conditions/circe/rebirth_square_occupied.c \ - conditions/circe/rebirth_square_occupied.h stipulation/stipulation.h \ - stipulation/goals/goals.h position/board.h utilities/bitmask.h \ - utilities/boolean.h stipulation/slice_type.h \ - stipulation/slice_type.enum.h stipulation/slice_type.enum \ - position/side.h position/side.enum.h position/side.enum \ - pieces/pieces.h output/mode.h output/mode.enum.h output/mode.enum \ - conditions/circe/circe.h solving/machinery/solve.h \ - solving/machinery/dispatch.h debugging/trace.h \ - stipulation/structure_traversal.h stipulation/slice.h \ - stipulation/slice_structural_type.h \ - stipulation/slice_structural_type.enum.h \ - stipulation/slice_structural_type.enum \ - stipulation/slice_functional_type.h \ - stipulation/slice_functional_type.enum.h \ - stipulation/slice_functional_type.enum \ - stipulation/slice_contextual_type.h \ - stipulation/slice_contextual_type.enum.h \ - stipulation/slice_contextual_type.enum stipulation/traversal.h \ - stipulation/slice_insertion.h solving/move_effect_journal.h \ - position/castling_rights.h solving/ply.h position/pieceid.h \ - solving/machinery/twin.h conditions/circe/reborn_piece.h \ - conditions/circe/rebirth_square.h conditions/circe/relevant_capture.h \ - conditions/circe/relevant_piece.h conditions/circe/relevant_side.h \ - conditions/circe/rebirth_avoider.h conditions/circe/assassin.h \ - conditions/circe/parachute.h position/position.h position/color.h \ - position/color.enum.h position/color.enum pieces/walks/vectors.h \ - stipulation/pipe.h stipulation/fork.h solving/binary.h \ - debugging/assert.h - +conditions/circe/rebirth_square_occupied.obj: \ + conditions/circe/rebirth_square_occupied.c \ + conditions/circe/rebirth_square_occupied.h stipulation/stipulation.h \ + stipulation/goals/goals.h position/board.h utilities/bitmask.h \ + utilities/boolean.h stipulation/slice_type.h \ + stipulation/slice_type.enum.h stipulation/slice_type.enum \ + position/side.h position/side.enum.h position/side.enum pieces/pieces.h \ + output/mode.h output/mode.enum.h output/mode.enum \ + conditions/circe/circe.h solving/machinery/solve.h \ + solving/machinery/dispatch.h debugging/trace.h \ + stipulation/structure_traversal.h stipulation/slice.h \ + stipulation/slice_structural_type.h \ + stipulation/slice_structural_type.enum.h \ + stipulation/slice_structural_type.enum \ + stipulation/slice_functional_type.h \ + stipulation/slice_functional_type.enum.h \ + stipulation/slice_functional_type.enum \ + stipulation/slice_contextual_type.h \ + stipulation/slice_contextual_type.enum.h \ + stipulation/slice_contextual_type.enum stipulation/traversal.h \ + stipulation/slice_insertion.h solving/move_effect_journal.h \ + position/castling_rights.h solving/ply.h position/pieceid.h \ + solving/machinery/twin.h conditions/circe/reborn_piece.h \ + conditions/circe/rebirth_square.h conditions/circe/relevant_capture.h \ + conditions/circe/relevant_piece.h conditions/circe/relevant_side.h \ + conditions/circe/rebirth_avoider.h conditions/circe/assassin.h \ + conditions/circe/parachute.h position/position.h position/color.h \ + position/color.enum.h position/color.enum pieces/walks/vectors.h \ + stipulation/pipe.h stipulation/fork.h solving/binary.h \ + debugging/assert.h conditions/circe/rebirth_square_occupied.h: - stipulation/stipulation.h: - stipulation/goals/goals.h: - position/board.h: - utilities/bitmask.h: - utilities/boolean.h: - stipulation/slice_type.h: - stipulation/slice_type.enum.h: - stipulation/slice_type.enum: - position/side.h: - position/side.enum.h: - position/side.enum: - pieces/pieces.h: - output/mode.h: - output/mode.enum.h: - output/mode.enum: - conditions/circe/circe.h: - solving/machinery/solve.h: - solving/machinery/dispatch.h: - debugging/trace.h: - stipulation/structure_traversal.h: - stipulation/slice.h: - stipulation/slice_structural_type.h: - stipulation/slice_structural_type.enum.h: - stipulation/slice_structural_type.enum: - stipulation/slice_functional_type.h: - stipulation/slice_functional_type.enum.h: - stipulation/slice_functional_type.enum: - stipulation/slice_contextual_type.h: - stipulation/slice_contextual_type.enum.h: - stipulation/slice_contextual_type.enum: - stipulation/traversal.h: - stipulation/slice_insertion.h: - solving/move_effect_journal.h: - position/castling_rights.h: - solving/ply.h: - position/pieceid.h: - solving/machinery/twin.h: - conditions/circe/reborn_piece.h: - conditions/circe/rebirth_square.h: - conditions/circe/relevant_capture.h: - conditions/circe/relevant_piece.h: - conditions/circe/relevant_side.h: - conditions/circe/rebirth_avoider.h: - conditions/circe/assassin.h: - conditions/circe/parachute.h: - position/position.h: - position/color.h: - position/color.enum.h: - position/color.enum: - pieces/walks/vectors.h: - stipulation/pipe.h: - stipulation/fork.h: - solving/binary.h: - debugging/assert.h: -conditions/circe/parachute$(OBJ_SUFFIX): conditions/circe/parachute.c \ - conditions/circe/parachute.h solving/machinery/solve.h \ - stipulation/stipulation.h stipulation/goals/goals.h position/board.h \ - utilities/bitmask.h utilities/boolean.h stipulation/slice_type.h \ - stipulation/slice_type.enum.h stipulation/slice_type.enum \ - position/side.h position/side.enum.h position/side.enum \ - pieces/pieces.h output/mode.h output/mode.enum.h output/mode.enum \ - solving/machinery/dispatch.h debugging/trace.h \ - solving/move_effect_journal.h position/castling_rights.h solving/ply.h \ - position/pieceid.h position/position.h position/color.h \ - position/color.enum.h position/color.enum pieces/walks/vectors.h \ - position/effects/piece_readdition.h position/effects/piece_removal.h \ - conditions/circe/circe.h stipulation/structure_traversal.h \ - stipulation/slice.h stipulation/slice_structural_type.h \ - stipulation/slice_structural_type.enum.h \ - stipulation/slice_structural_type.enum \ - stipulation/slice_functional_type.h \ - stipulation/slice_functional_type.enum.h \ - stipulation/slice_functional_type.enum \ - stipulation/slice_contextual_type.h \ - stipulation/slice_contextual_type.enum.h \ - stipulation/slice_contextual_type.enum stipulation/traversal.h \ - stipulation/slice_insertion.h solving/machinery/twin.h \ - conditions/circe/rebirth_square_occupied.h \ - conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ - conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ - conditions/circe/relevant_side.h conditions/circe/rebirth_avoider.h \ - conditions/haunted_chess.h position/underworld.h solving/observation.h \ - solving/temporary_hacks.h solving/fork.h solving/check.h \ - debugging/measure.h output/plaintext/protocol.h \ - solving/move_generator.h solving/has_solution_type.h \ - solving/has_solution_type.enum.h solving/has_solution_type.enum \ - stipulation/pipe.h stipulation/fork.h stipulation/move.h \ - solving/pipe.h debugging/assert.h - +conditions/circe/parachute.obj: conditions/circe/parachute.c \ + conditions/circe/parachute.h solving/machinery/solve.h \ + stipulation/stipulation.h stipulation/goals/goals.h position/board.h \ + utilities/bitmask.h utilities/boolean.h stipulation/slice_type.h \ + stipulation/slice_type.enum.h stipulation/slice_type.enum \ + position/side.h position/side.enum.h position/side.enum pieces/pieces.h \ + output/mode.h output/mode.enum.h output/mode.enum \ + solving/machinery/dispatch.h debugging/trace.h \ + solving/move_effect_journal.h position/castling_rights.h solving/ply.h \ + position/pieceid.h position/position.h position/color.h \ + position/color.enum.h position/color.enum pieces/walks/vectors.h \ + position/effects/piece_readdition.h position/effects/piece_removal.h \ + conditions/circe/circe.h stipulation/structure_traversal.h \ + stipulation/slice.h stipulation/slice_structural_type.h \ + stipulation/slice_structural_type.enum.h \ + stipulation/slice_structural_type.enum \ + stipulation/slice_functional_type.h \ + stipulation/slice_functional_type.enum.h \ + stipulation/slice_functional_type.enum \ + stipulation/slice_contextual_type.h \ + stipulation/slice_contextual_type.enum.h \ + stipulation/slice_contextual_type.enum stipulation/traversal.h \ + stipulation/slice_insertion.h solving/machinery/twin.h \ + conditions/circe/rebirth_square_occupied.h \ + conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ + conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ + conditions/circe/relevant_side.h conditions/circe/rebirth_avoider.h \ + conditions/haunted_chess.h position/underworld.h solving/observation.h \ + solving/temporary_hacks.h solving/fork.h solving/check.h \ + debugging/measure.h solving/move_generator.h solving/has_solution_type.h \ + solving/has_solution_type.enum.h solving/has_solution_type.enum \ + stipulation/pipe.h stipulation/fork.h stipulation/move.h solving/pipe.h \ + debugging/assert.h conditions/circe/parachute.h: - solving/machinery/solve.h: - stipulation/stipulation.h: - stipulation/goals/goals.h: - position/board.h: - utilities/bitmask.h: - utilities/boolean.h: - stipulation/slice_type.h: - stipulation/slice_type.enum.h: - stipulation/slice_type.enum: - position/side.h: - position/side.enum.h: - position/side.enum: - pieces/pieces.h: - output/mode.h: - output/mode.enum.h: - output/mode.enum: - solving/machinery/dispatch.h: - debugging/trace.h: - solving/move_effect_journal.h: - position/castling_rights.h: - solving/ply.h: - position/pieceid.h: - position/position.h: - position/color.h: - position/color.enum.h: - position/color.enum: - pieces/walks/vectors.h: - position/effects/piece_readdition.h: - position/effects/piece_removal.h: - conditions/circe/circe.h: - stipulation/structure_traversal.h: - stipulation/slice.h: - stipulation/slice_structural_type.h: - stipulation/slice_structural_type.enum.h: - stipulation/slice_structural_type.enum: - stipulation/slice_functional_type.h: - stipulation/slice_functional_type.enum.h: - stipulation/slice_functional_type.enum: - stipulation/slice_contextual_type.h: - stipulation/slice_contextual_type.enum.h: - stipulation/slice_contextual_type.enum: - stipulation/traversal.h: - stipulation/slice_insertion.h: - solving/machinery/twin.h: - conditions/circe/rebirth_square_occupied.h: - conditions/circe/reborn_piece.h: - conditions/circe/rebirth_square.h: - conditions/circe/relevant_capture.h: - conditions/circe/relevant_piece.h: - conditions/circe/relevant_side.h: - conditions/circe/rebirth_avoider.h: - conditions/haunted_chess.h: - position/underworld.h: - solving/observation.h: - solving/temporary_hacks.h: - solving/fork.h: - solving/check.h: - debugging/measure.h: - -output/plaintext/protocol.h: - solving/move_generator.h: - solving/has_solution_type.h: - solving/has_solution_type.enum.h: - solving/has_solution_type.enum: - stipulation/pipe.h: - stipulation/fork.h: - stipulation/move.h: - solving/pipe.h: - debugging/assert.h: -conditions/circe/einstein$(OBJ_SUFFIX): conditions/circe/einstein.c \ - conditions/circe/einstein.h solving/machinery/solve.h \ - stipulation/stipulation.h stipulation/goals/goals.h position/board.h \ - utilities/bitmask.h utilities/boolean.h stipulation/slice_type.h \ - stipulation/slice_type.enum.h stipulation/slice_type.enum \ - position/side.h position/side.enum.h position/side.enum \ - pieces/pieces.h output/mode.h output/mode.enum.h output/mode.enum \ - solving/machinery/dispatch.h debugging/trace.h \ - conditions/einstein/einstein.h conditions/circe/circe.h \ - stipulation/structure_traversal.h stipulation/slice.h \ - stipulation/slice_structural_type.h \ - stipulation/slice_structural_type.enum.h \ - stipulation/slice_structural_type.enum \ - stipulation/slice_functional_type.h \ - stipulation/slice_functional_type.enum.h \ - stipulation/slice_functional_type.enum \ - stipulation/slice_contextual_type.h \ - stipulation/slice_contextual_type.enum.h \ - stipulation/slice_contextual_type.enum stipulation/traversal.h \ - stipulation/slice_insertion.h solving/move_effect_journal.h \ - position/castling_rights.h solving/ply.h position/pieceid.h \ - solving/machinery/twin.h conditions/circe/rebirth_square_occupied.h \ - conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ - conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ - conditions/circe/relevant_side.h solving/pipe.h debugging/assert.h - +conditions/circe/einstein.obj: conditions/circe/einstein.c \ + conditions/circe/einstein.h solving/machinery/solve.h \ + stipulation/stipulation.h stipulation/goals/goals.h position/board.h \ + utilities/bitmask.h utilities/boolean.h stipulation/slice_type.h \ + stipulation/slice_type.enum.h stipulation/slice_type.enum \ + position/side.h position/side.enum.h position/side.enum pieces/pieces.h \ + output/mode.h output/mode.enum.h output/mode.enum \ + solving/machinery/dispatch.h debugging/trace.h \ + conditions/einstein/einstein.h conditions/circe/circe.h \ + stipulation/structure_traversal.h stipulation/slice.h \ + stipulation/slice_structural_type.h \ + stipulation/slice_structural_type.enum.h \ + stipulation/slice_structural_type.enum \ + stipulation/slice_functional_type.h \ + stipulation/slice_functional_type.enum.h \ + stipulation/slice_functional_type.enum \ + stipulation/slice_contextual_type.h \ + stipulation/slice_contextual_type.enum.h \ + stipulation/slice_contextual_type.enum stipulation/traversal.h \ + stipulation/slice_insertion.h solving/move_effect_journal.h \ + position/castling_rights.h solving/ply.h position/pieceid.h \ + solving/machinery/twin.h conditions/circe/rebirth_square_occupied.h \ + conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ + conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ + conditions/circe/relevant_side.h solving/pipe.h debugging/assert.h conditions/circe/einstein.h: - solving/machinery/solve.h: - stipulation/stipulation.h: - stipulation/goals/goals.h: - position/board.h: - utilities/bitmask.h: - utilities/boolean.h: - stipulation/slice_type.h: - stipulation/slice_type.enum.h: - stipulation/slice_type.enum: - position/side.h: - position/side.enum.h: - position/side.enum: - pieces/pieces.h: - output/mode.h: - output/mode.enum.h: - output/mode.enum: - solving/machinery/dispatch.h: - debugging/trace.h: - conditions/einstein/einstein.h: - conditions/circe/circe.h: - stipulation/structure_traversal.h: - stipulation/slice.h: - stipulation/slice_structural_type.h: - stipulation/slice_structural_type.enum.h: - stipulation/slice_structural_type.enum: - stipulation/slice_functional_type.h: - stipulation/slice_functional_type.enum.h: - stipulation/slice_functional_type.enum: - stipulation/slice_contextual_type.h: - stipulation/slice_contextual_type.enum.h: - stipulation/slice_contextual_type.enum: - stipulation/traversal.h: - stipulation/slice_insertion.h: - solving/move_effect_journal.h: - position/castling_rights.h: - solving/ply.h: - position/pieceid.h: - solving/machinery/twin.h: - conditions/circe/rebirth_square_occupied.h: - conditions/circe/reborn_piece.h: - conditions/circe/rebirth_square.h: - conditions/circe/relevant_capture.h: - conditions/circe/relevant_piece.h: - conditions/circe/relevant_side.h: - solving/pipe.h: - debugging/assert.h: -conditions/circe/reborn_piece$(OBJ_SUFFIX): conditions/circe/reborn_piece.c \ - conditions/circe/reborn_piece.h solving/machinery/solve.h \ - stipulation/stipulation.h stipulation/goals/goals.h position/board.h \ - utilities/bitmask.h utilities/boolean.h stipulation/slice_type.h \ - stipulation/slice_type.enum.h stipulation/slice_type.enum \ - position/side.h position/side.enum.h position/side.enum \ - pieces/pieces.h output/mode.h output/mode.enum.h output/mode.enum \ - solving/machinery/dispatch.h debugging/trace.h \ - conditions/circe/circe.h stipulation/structure_traversal.h \ - stipulation/slice.h stipulation/slice_structural_type.h \ - stipulation/slice_structural_type.enum.h \ - stipulation/slice_structural_type.enum \ - stipulation/slice_functional_type.h \ - stipulation/slice_functional_type.enum.h \ - stipulation/slice_functional_type.enum \ - stipulation/slice_contextual_type.h \ - stipulation/slice_contextual_type.enum.h \ - stipulation/slice_contextual_type.enum stipulation/traversal.h \ - stipulation/slice_insertion.h solving/move_effect_journal.h \ - position/castling_rights.h solving/ply.h position/pieceid.h \ - solving/machinery/twin.h conditions/circe/rebirth_square_occupied.h \ - conditions/circe/rebirth_square.h conditions/circe/relevant_capture.h \ - conditions/circe/relevant_piece.h conditions/circe/relevant_side.h \ - position/position.h position/color.h position/color.enum.h \ - position/color.enum pieces/walks/vectors.h position/effects/utils.h \ - stipulation/pipe.h solving/pipe.h debugging/assert.h - +conditions/circe/reborn_piece.obj: conditions/circe/reborn_piece.c \ + conditions/circe/reborn_piece.h solving/machinery/solve.h \ + stipulation/stipulation.h stipulation/goals/goals.h position/board.h \ + utilities/bitmask.h utilities/boolean.h stipulation/slice_type.h \ + stipulation/slice_type.enum.h stipulation/slice_type.enum \ + position/side.h position/side.enum.h position/side.enum pieces/pieces.h \ + output/mode.h output/mode.enum.h output/mode.enum \ + solving/machinery/dispatch.h debugging/trace.h conditions/circe/circe.h \ + stipulation/structure_traversal.h stipulation/slice.h \ + stipulation/slice_structural_type.h \ + stipulation/slice_structural_type.enum.h \ + stipulation/slice_structural_type.enum \ + stipulation/slice_functional_type.h \ + stipulation/slice_functional_type.enum.h \ + stipulation/slice_functional_type.enum \ + stipulation/slice_contextual_type.h \ + stipulation/slice_contextual_type.enum.h \ + stipulation/slice_contextual_type.enum stipulation/traversal.h \ + stipulation/slice_insertion.h solving/move_effect_journal.h \ + position/castling_rights.h solving/ply.h position/pieceid.h \ + solving/machinery/twin.h conditions/circe/rebirth_square_occupied.h \ + conditions/circe/rebirth_square.h conditions/circe/relevant_capture.h \ + conditions/circe/relevant_piece.h conditions/circe/relevant_side.h \ + position/position.h position/color.h position/color.enum.h \ + position/color.enum pieces/walks/vectors.h position/effects/utils.h \ + stipulation/pipe.h solving/pipe.h debugging/assert.h conditions/circe/reborn_piece.h: - solving/machinery/solve.h: - stipulation/stipulation.h: - stipulation/goals/goals.h: - position/board.h: - utilities/bitmask.h: - utilities/boolean.h: - stipulation/slice_type.h: - stipulation/slice_type.enum.h: - stipulation/slice_type.enum: - position/side.h: - position/side.enum.h: - position/side.enum: - pieces/pieces.h: - output/mode.h: - output/mode.enum.h: - output/mode.enum: - solving/machinery/dispatch.h: - debugging/trace.h: - conditions/circe/circe.h: - stipulation/structure_traversal.h: - stipulation/slice.h: - stipulation/slice_structural_type.h: - stipulation/slice_structural_type.enum.h: - stipulation/slice_structural_type.enum: - stipulation/slice_functional_type.h: - stipulation/slice_functional_type.enum.h: - stipulation/slice_functional_type.enum: - stipulation/slice_contextual_type.h: - stipulation/slice_contextual_type.enum.h: - stipulation/slice_contextual_type.enum: - stipulation/traversal.h: - stipulation/slice_insertion.h: - solving/move_effect_journal.h: - position/castling_rights.h: - solving/ply.h: - position/pieceid.h: - solving/machinery/twin.h: - conditions/circe/rebirth_square_occupied.h: - conditions/circe/rebirth_square.h: - conditions/circe/relevant_capture.h: - conditions/circe/relevant_piece.h: - conditions/circe/relevant_side.h: - position/position.h: - position/color.h: - position/color.enum.h: - position/color.enum: - pieces/walks/vectors.h: - position/effects/utils.h: - stipulation/pipe.h: - solving/pipe.h: - debugging/assert.h: -conditions/circe/rebirth_square$(OBJ_SUFFIX): conditions/circe/rebirth_square.c \ - conditions/circe/rebirth_square.h utilities/boolean.h \ - stipulation/slice_type.h stipulation/slice_type.enum.h \ - stipulation/slice_type.enum stipulation/stipulation.h \ - stipulation/goals/goals.h position/board.h utilities/bitmask.h \ - position/side.h position/side.enum.h position/side.enum \ - pieces/pieces.h output/mode.h output/mode.enum.h output/mode.enum \ - conditions/circe/circe.h solving/machinery/solve.h \ - solving/machinery/dispatch.h debugging/trace.h \ - stipulation/structure_traversal.h stipulation/slice.h \ - stipulation/slice_structural_type.h \ - stipulation/slice_structural_type.enum.h \ - stipulation/slice_structural_type.enum \ - stipulation/slice_functional_type.h \ - stipulation/slice_functional_type.enum.h \ - stipulation/slice_functional_type.enum \ - stipulation/slice_contextual_type.h \ - stipulation/slice_contextual_type.enum.h \ - stipulation/slice_contextual_type.enum stipulation/traversal.h \ - stipulation/slice_insertion.h solving/move_effect_journal.h \ - position/castling_rights.h solving/ply.h position/pieceid.h \ - solving/machinery/twin.h conditions/circe/rebirth_square_occupied.h \ - conditions/circe/reborn_piece.h conditions/circe/relevant_capture.h \ - conditions/circe/relevant_piece.h conditions/circe/relevant_side.h \ - stipulation/pipe.h debugging/assert.h - +conditions/circe/rebirth_square.obj: conditions/circe/rebirth_square.c \ + conditions/circe/rebirth_square.h utilities/boolean.h \ + stipulation/slice_type.h stipulation/slice_type.enum.h \ + stipulation/slice_type.enum stipulation/stipulation.h \ + stipulation/goals/goals.h position/board.h utilities/bitmask.h \ + position/side.h position/side.enum.h position/side.enum pieces/pieces.h \ + output/mode.h output/mode.enum.h output/mode.enum \ + conditions/circe/circe.h solving/machinery/solve.h \ + solving/machinery/dispatch.h debugging/trace.h \ + stipulation/structure_traversal.h stipulation/slice.h \ + stipulation/slice_structural_type.h \ + stipulation/slice_structural_type.enum.h \ + stipulation/slice_structural_type.enum \ + stipulation/slice_functional_type.h \ + stipulation/slice_functional_type.enum.h \ + stipulation/slice_functional_type.enum \ + stipulation/slice_contextual_type.h \ + stipulation/slice_contextual_type.enum.h \ + stipulation/slice_contextual_type.enum stipulation/traversal.h \ + stipulation/slice_insertion.h solving/move_effect_journal.h \ + position/castling_rights.h solving/ply.h position/pieceid.h \ + solving/machinery/twin.h conditions/circe/rebirth_square_occupied.h \ + conditions/circe/reborn_piece.h conditions/circe/relevant_capture.h \ + conditions/circe/relevant_piece.h conditions/circe/relevant_side.h \ + stipulation/pipe.h debugging/assert.h conditions/circe/rebirth_square.h: - utilities/boolean.h: - stipulation/slice_type.h: - stipulation/slice_type.enum.h: - stipulation/slice_type.enum: - stipulation/stipulation.h: - stipulation/goals/goals.h: - position/board.h: - utilities/bitmask.h: - position/side.h: - position/side.enum.h: - position/side.enum: - pieces/pieces.h: - output/mode.h: - output/mode.enum.h: - output/mode.enum: - conditions/circe/circe.h: - solving/machinery/solve.h: - solving/machinery/dispatch.h: - debugging/trace.h: - stipulation/structure_traversal.h: - stipulation/slice.h: - stipulation/slice_structural_type.h: - stipulation/slice_structural_type.enum.h: - stipulation/slice_structural_type.enum: - stipulation/slice_functional_type.h: - stipulation/slice_functional_type.enum.h: - stipulation/slice_functional_type.enum: - stipulation/slice_contextual_type.h: - stipulation/slice_contextual_type.enum.h: - stipulation/slice_contextual_type.enum: - stipulation/traversal.h: - stipulation/slice_insertion.h: - solving/move_effect_journal.h: - position/castling_rights.h: - solving/ply.h: - position/pieceid.h: - solving/machinery/twin.h: - conditions/circe/rebirth_square_occupied.h: - conditions/circe/reborn_piece.h: - conditions/circe/relevant_capture.h: - conditions/circe/relevant_piece.h: - conditions/circe/relevant_side.h: - stipulation/pipe.h: - debugging/assert.h: -conditions/circe/relevant_capture$(OBJ_SUFFIX): conditions/circe/relevant_capture.c \ - conditions/circe/relevant_capture.h stipulation/stipulation.h \ - stipulation/goals/goals.h position/board.h utilities/bitmask.h \ - utilities/boolean.h stipulation/slice_type.h \ - stipulation/slice_type.enum.h stipulation/slice_type.enum \ - position/side.h position/side.enum.h position/side.enum \ - pieces/pieces.h output/mode.h output/mode.enum.h output/mode.enum \ - solving/ply.h conditions/circe/circe.h solving/machinery/solve.h \ - solving/machinery/dispatch.h debugging/trace.h \ - stipulation/structure_traversal.h stipulation/slice.h \ - stipulation/slice_structural_type.h \ - stipulation/slice_structural_type.enum.h \ - stipulation/slice_structural_type.enum \ - stipulation/slice_functional_type.h \ - stipulation/slice_functional_type.enum.h \ - stipulation/slice_functional_type.enum \ - stipulation/slice_contextual_type.h \ - stipulation/slice_contextual_type.enum.h \ - stipulation/slice_contextual_type.enum stipulation/traversal.h \ - stipulation/slice_insertion.h solving/move_effect_journal.h \ - position/castling_rights.h position/pieceid.h solving/machinery/twin.h \ - conditions/circe/rebirth_square_occupied.h \ - conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ - conditions/circe/relevant_piece.h conditions/circe/relevant_side.h \ - stipulation/pipe.h solving/pipe.h debugging/assert.h - +conditions/circe/relevant_capture.obj: \ + conditions/circe/relevant_capture.c conditions/circe/relevant_capture.h \ + stipulation/stipulation.h stipulation/goals/goals.h position/board.h \ + utilities/bitmask.h utilities/boolean.h stipulation/slice_type.h \ + stipulation/slice_type.enum.h stipulation/slice_type.enum \ + position/side.h position/side.enum.h position/side.enum pieces/pieces.h \ + output/mode.h output/mode.enum.h output/mode.enum solving/ply.h \ + conditions/circe/circe.h solving/machinery/solve.h \ + solving/machinery/dispatch.h debugging/trace.h \ + stipulation/structure_traversal.h stipulation/slice.h \ + stipulation/slice_structural_type.h \ + stipulation/slice_structural_type.enum.h \ + stipulation/slice_structural_type.enum \ + stipulation/slice_functional_type.h \ + stipulation/slice_functional_type.enum.h \ + stipulation/slice_functional_type.enum \ + stipulation/slice_contextual_type.h \ + stipulation/slice_contextual_type.enum.h \ + stipulation/slice_contextual_type.enum stipulation/traversal.h \ + stipulation/slice_insertion.h solving/move_effect_journal.h \ + position/castling_rights.h position/pieceid.h solving/machinery/twin.h \ + conditions/circe/rebirth_square_occupied.h \ + conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ + conditions/circe/relevant_piece.h conditions/circe/relevant_side.h \ + stipulation/pipe.h solving/pipe.h debugging/assert.h conditions/circe/relevant_capture.h: - stipulation/stipulation.h: - stipulation/goals/goals.h: - position/board.h: - utilities/bitmask.h: - utilities/boolean.h: - stipulation/slice_type.h: - stipulation/slice_type.enum.h: - stipulation/slice_type.enum: - position/side.h: - position/side.enum.h: - position/side.enum: - pieces/pieces.h: - output/mode.h: - output/mode.enum.h: - output/mode.enum: - solving/ply.h: - conditions/circe/circe.h: - solving/machinery/solve.h: - solving/machinery/dispatch.h: - debugging/trace.h: - stipulation/structure_traversal.h: - stipulation/slice.h: - stipulation/slice_structural_type.h: - stipulation/slice_structural_type.enum.h: - stipulation/slice_structural_type.enum: - stipulation/slice_functional_type.h: - stipulation/slice_functional_type.enum.h: - stipulation/slice_functional_type.enum: - stipulation/slice_contextual_type.h: - stipulation/slice_contextual_type.enum.h: - stipulation/slice_contextual_type.enum: - stipulation/traversal.h: - stipulation/slice_insertion.h: - solving/move_effect_journal.h: - position/castling_rights.h: - position/pieceid.h: - solving/machinery/twin.h: - conditions/circe/rebirth_square_occupied.h: - conditions/circe/reborn_piece.h: - conditions/circe/rebirth_square.h: - conditions/circe/relevant_piece.h: - conditions/circe/relevant_side.h: - stipulation/pipe.h: - solving/pipe.h: - debugging/assert.h: -conditions/circe/relevant_piece$(OBJ_SUFFIX): conditions/circe/relevant_piece.c \ - conditions/circe/relevant_piece.h stipulation/stipulation.h \ - stipulation/goals/goals.h position/board.h utilities/bitmask.h \ - utilities/boolean.h stipulation/slice_type.h \ - stipulation/slice_type.enum.h stipulation/slice_type.enum \ - position/side.h position/side.enum.h position/side.enum \ - pieces/pieces.h output/mode.h output/mode.enum.h output/mode.enum \ - conditions/circe/circe.h solving/machinery/solve.h \ - solving/machinery/dispatch.h debugging/trace.h \ - stipulation/structure_traversal.h stipulation/slice.h \ - stipulation/slice_structural_type.h \ - stipulation/slice_structural_type.enum.h \ - stipulation/slice_structural_type.enum \ - stipulation/slice_functional_type.h \ - stipulation/slice_functional_type.enum.h \ - stipulation/slice_functional_type.enum \ - stipulation/slice_contextual_type.h \ - stipulation/slice_contextual_type.enum.h \ - stipulation/slice_contextual_type.enum stipulation/traversal.h \ - stipulation/slice_insertion.h solving/move_effect_journal.h \ - position/castling_rights.h solving/ply.h position/pieceid.h \ - solving/machinery/twin.h conditions/circe/rebirth_square_occupied.h \ - conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ - conditions/circe/relevant_capture.h conditions/circe/relevant_side.h \ - stipulation/pipe.h solving/pipe.h debugging/assert.h - +conditions/circe/relevant_piece.obj: conditions/circe/relevant_piece.c \ + conditions/circe/relevant_piece.h stipulation/stipulation.h \ + stipulation/goals/goals.h position/board.h utilities/bitmask.h \ + utilities/boolean.h stipulation/slice_type.h \ + stipulation/slice_type.enum.h stipulation/slice_type.enum \ + position/side.h position/side.enum.h position/side.enum pieces/pieces.h \ + output/mode.h output/mode.enum.h output/mode.enum \ + conditions/circe/circe.h solving/machinery/solve.h \ + solving/machinery/dispatch.h debugging/trace.h \ + stipulation/structure_traversal.h stipulation/slice.h \ + stipulation/slice_structural_type.h \ + stipulation/slice_structural_type.enum.h \ + stipulation/slice_structural_type.enum \ + stipulation/slice_functional_type.h \ + stipulation/slice_functional_type.enum.h \ + stipulation/slice_functional_type.enum \ + stipulation/slice_contextual_type.h \ + stipulation/slice_contextual_type.enum.h \ + stipulation/slice_contextual_type.enum stipulation/traversal.h \ + stipulation/slice_insertion.h solving/move_effect_journal.h \ + position/castling_rights.h solving/ply.h position/pieceid.h \ + solving/machinery/twin.h conditions/circe/rebirth_square_occupied.h \ + conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ + conditions/circe/relevant_capture.h conditions/circe/relevant_side.h \ + stipulation/pipe.h solving/pipe.h debugging/assert.h conditions/circe/relevant_piece.h: - stipulation/stipulation.h: - stipulation/goals/goals.h: - position/board.h: - utilities/bitmask.h: - utilities/boolean.h: - stipulation/slice_type.h: - stipulation/slice_type.enum.h: - stipulation/slice_type.enum: - position/side.h: - position/side.enum.h: - position/side.enum: - pieces/pieces.h: - output/mode.h: - output/mode.enum.h: - output/mode.enum: - conditions/circe/circe.h: - solving/machinery/solve.h: - solving/machinery/dispatch.h: - debugging/trace.h: - stipulation/structure_traversal.h: - stipulation/slice.h: - stipulation/slice_structural_type.h: - stipulation/slice_structural_type.enum.h: - stipulation/slice_structural_type.enum: - stipulation/slice_functional_type.h: - stipulation/slice_functional_type.enum.h: - stipulation/slice_functional_type.enum: - stipulation/slice_contextual_type.h: - stipulation/slice_contextual_type.enum.h: - stipulation/slice_contextual_type.enum: - stipulation/traversal.h: - stipulation/slice_insertion.h: - solving/move_effect_journal.h: - position/castling_rights.h: - solving/ply.h: - position/pieceid.h: - solving/machinery/twin.h: - conditions/circe/rebirth_square_occupied.h: - conditions/circe/reborn_piece.h: - conditions/circe/rebirth_square.h: - conditions/circe/relevant_capture.h: - conditions/circe/relevant_side.h: - stipulation/pipe.h: - solving/pipe.h: - debugging/assert.h: -conditions/circe/relevant_side$(OBJ_SUFFIX): conditions/circe/relevant_side.c \ - conditions/circe/relevant_side.h utilities/boolean.h \ - stipulation/stipulation.h stipulation/goals/goals.h position/board.h \ - utilities/bitmask.h stipulation/slice_type.h \ - stipulation/slice_type.enum.h stipulation/slice_type.enum \ - position/side.h position/side.enum.h position/side.enum \ - pieces/pieces.h output/mode.h output/mode.enum.h output/mode.enum \ - conditions/circe/circe.h solving/machinery/solve.h \ - solving/machinery/dispatch.h debugging/trace.h \ - stipulation/structure_traversal.h stipulation/slice.h \ - stipulation/slice_structural_type.h \ - stipulation/slice_structural_type.enum.h \ - stipulation/slice_structural_type.enum \ - stipulation/slice_functional_type.h \ - stipulation/slice_functional_type.enum.h \ - stipulation/slice_functional_type.enum \ - stipulation/slice_contextual_type.h \ - stipulation/slice_contextual_type.enum.h \ - stipulation/slice_contextual_type.enum stipulation/traversal.h \ - stipulation/slice_insertion.h solving/move_effect_journal.h \ - position/castling_rights.h solving/ply.h position/pieceid.h \ - solving/machinery/twin.h conditions/circe/rebirth_square_occupied.h \ - conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ - conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ - stipulation/pipe.h debugging/assert.h - +conditions/circe/relevant_side.obj: conditions/circe/relevant_side.c \ + conditions/circe/relevant_side.h utilities/boolean.h \ + stipulation/stipulation.h stipulation/goals/goals.h position/board.h \ + utilities/bitmask.h stipulation/slice_type.h \ + stipulation/slice_type.enum.h stipulation/slice_type.enum \ + position/side.h position/side.enum.h position/side.enum pieces/pieces.h \ + output/mode.h output/mode.enum.h output/mode.enum \ + conditions/circe/circe.h solving/machinery/solve.h \ + solving/machinery/dispatch.h debugging/trace.h \ + stipulation/structure_traversal.h stipulation/slice.h \ + stipulation/slice_structural_type.h \ + stipulation/slice_structural_type.enum.h \ + stipulation/slice_structural_type.enum \ + stipulation/slice_functional_type.h \ + stipulation/slice_functional_type.enum.h \ + stipulation/slice_functional_type.enum \ + stipulation/slice_contextual_type.h \ + stipulation/slice_contextual_type.enum.h \ + stipulation/slice_contextual_type.enum stipulation/traversal.h \ + stipulation/slice_insertion.h solving/move_effect_journal.h \ + position/castling_rights.h solving/ply.h position/pieceid.h \ + solving/machinery/twin.h conditions/circe/rebirth_square_occupied.h \ + conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ + conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ + stipulation/pipe.h debugging/assert.h conditions/circe/relevant_side.h: - utilities/boolean.h: - stipulation/stipulation.h: - stipulation/goals/goals.h: - position/board.h: - utilities/bitmask.h: - stipulation/slice_type.h: - stipulation/slice_type.enum.h: - stipulation/slice_type.enum: - position/side.h: - position/side.enum.h: - position/side.enum: - pieces/pieces.h: - output/mode.h: - output/mode.enum.h: - output/mode.enum: - conditions/circe/circe.h: - solving/machinery/solve.h: - solving/machinery/dispatch.h: - debugging/trace.h: - stipulation/structure_traversal.h: - stipulation/slice.h: - stipulation/slice_structural_type.h: - stipulation/slice_structural_type.enum.h: - stipulation/slice_structural_type.enum: - stipulation/slice_functional_type.h: - stipulation/slice_functional_type.enum.h: - stipulation/slice_functional_type.enum: - stipulation/slice_contextual_type.h: - stipulation/slice_contextual_type.enum.h: - stipulation/slice_contextual_type.enum: - stipulation/traversal.h: - stipulation/slice_insertion.h: - solving/move_effect_journal.h: - position/castling_rights.h: - solving/ply.h: - position/pieceid.h: - solving/machinery/twin.h: - conditions/circe/rebirth_square_occupied.h: - conditions/circe/reborn_piece.h: - conditions/circe/rebirth_square.h: - conditions/circe/relevant_capture.h: - conditions/circe/relevant_piece.h: - stipulation/pipe.h: - debugging/assert.h: -conditions/circe/glasgow$(OBJ_SUFFIX): conditions/circe/glasgow.c \ - conditions/circe/glasgow.h solving/machinery/solve.h \ - stipulation/stipulation.h stipulation/goals/goals.h position/board.h \ - utilities/bitmask.h utilities/boolean.h stipulation/slice_type.h \ - stipulation/slice_type.enum.h stipulation/slice_type.enum \ - position/side.h position/side.enum.h position/side.enum \ - pieces/pieces.h output/mode.h output/mode.enum.h output/mode.enum \ - solving/machinery/dispatch.h debugging/trace.h \ - conditions/circe/circe.h stipulation/structure_traversal.h \ - stipulation/slice.h stipulation/slice_structural_type.h \ - stipulation/slice_structural_type.enum.h \ - stipulation/slice_structural_type.enum \ - stipulation/slice_functional_type.h \ - stipulation/slice_functional_type.enum.h \ - stipulation/slice_functional_type.enum \ - stipulation/slice_contextual_type.h \ - stipulation/slice_contextual_type.enum.h \ - stipulation/slice_contextual_type.enum stipulation/traversal.h \ - stipulation/slice_insertion.h solving/move_effect_journal.h \ - position/castling_rights.h solving/ply.h position/pieceid.h \ - solving/machinery/twin.h conditions/circe/rebirth_square_occupied.h \ - conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ - conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ - conditions/circe/relevant_side.h solving/has_solution_type.h \ - solving/has_solution_type.enum.h solving/has_solution_type.enum \ - stipulation/move.h stipulation/pipe.h solving/pipe.h \ - debugging/assert.h - +conditions/circe/glasgow.obj: conditions/circe/glasgow.c \ + conditions/circe/glasgow.h solving/machinery/solve.h \ + stipulation/stipulation.h stipulation/goals/goals.h position/board.h \ + utilities/bitmask.h utilities/boolean.h stipulation/slice_type.h \ + stipulation/slice_type.enum.h stipulation/slice_type.enum \ + position/side.h position/side.enum.h position/side.enum pieces/pieces.h \ + output/mode.h output/mode.enum.h output/mode.enum \ + solving/machinery/dispatch.h debugging/trace.h conditions/circe/circe.h \ + stipulation/structure_traversal.h stipulation/slice.h \ + stipulation/slice_structural_type.h \ + stipulation/slice_structural_type.enum.h \ + stipulation/slice_structural_type.enum \ + stipulation/slice_functional_type.h \ + stipulation/slice_functional_type.enum.h \ + stipulation/slice_functional_type.enum \ + stipulation/slice_contextual_type.h \ + stipulation/slice_contextual_type.enum.h \ + stipulation/slice_contextual_type.enum stipulation/traversal.h \ + stipulation/slice_insertion.h solving/move_effect_journal.h \ + position/castling_rights.h solving/ply.h position/pieceid.h \ + solving/machinery/twin.h conditions/circe/rebirth_square_occupied.h \ + conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ + conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ + conditions/circe/relevant_side.h solving/has_solution_type.h \ + solving/has_solution_type.enum.h solving/has_solution_type.enum \ + stipulation/move.h stipulation/pipe.h solving/pipe.h debugging/assert.h conditions/circe/glasgow.h: - solving/machinery/solve.h: - stipulation/stipulation.h: - stipulation/goals/goals.h: - position/board.h: - utilities/bitmask.h: - utilities/boolean.h: - stipulation/slice_type.h: - stipulation/slice_type.enum.h: - stipulation/slice_type.enum: - position/side.h: - position/side.enum.h: - position/side.enum: - pieces/pieces.h: - output/mode.h: - output/mode.enum.h: - output/mode.enum: - solving/machinery/dispatch.h: - debugging/trace.h: - conditions/circe/circe.h: - stipulation/structure_traversal.h: - stipulation/slice.h: - stipulation/slice_structural_type.h: - stipulation/slice_structural_type.enum.h: - stipulation/slice_structural_type.enum: - stipulation/slice_functional_type.h: - stipulation/slice_functional_type.enum.h: - stipulation/slice_functional_type.enum: - stipulation/slice_contextual_type.h: - stipulation/slice_contextual_type.enum.h: - stipulation/slice_contextual_type.enum: - stipulation/traversal.h: - stipulation/slice_insertion.h: - solving/move_effect_journal.h: - position/castling_rights.h: - solving/ply.h: - position/pieceid.h: - solving/machinery/twin.h: - conditions/circe/rebirth_square_occupied.h: - conditions/circe/reborn_piece.h: - conditions/circe/rebirth_square.h: - conditions/circe/relevant_capture.h: - conditions/circe/relevant_piece.h: - conditions/circe/relevant_side.h: - solving/has_solution_type.h: - solving/has_solution_type.enum.h: - solving/has_solution_type.enum: - stipulation/move.h: - stipulation/pipe.h: - solving/pipe.h: - debugging/assert.h: -conditions/circe/capture_square$(OBJ_SUFFIX): conditions/circe/capture_square.c \ - conditions/circe/capture_square.h solving/machinery/solve.h \ - stipulation/stipulation.h stipulation/goals/goals.h position/board.h \ - utilities/bitmask.h utilities/boolean.h stipulation/slice_type.h \ - stipulation/slice_type.enum.h stipulation/slice_type.enum \ - position/side.h position/side.enum.h position/side.enum \ - pieces/pieces.h output/mode.h output/mode.enum.h output/mode.enum \ - solving/machinery/dispatch.h debugging/trace.h \ - conditions/circe/circe.h stipulation/structure_traversal.h \ - stipulation/slice.h stipulation/slice_structural_type.h \ - stipulation/slice_structural_type.enum.h \ - stipulation/slice_structural_type.enum \ - stipulation/slice_functional_type.h \ - stipulation/slice_functional_type.enum.h \ - stipulation/slice_functional_type.enum \ - stipulation/slice_contextual_type.h \ - stipulation/slice_contextual_type.enum.h \ - stipulation/slice_contextual_type.enum stipulation/traversal.h \ - stipulation/slice_insertion.h solving/move_effect_journal.h \ - position/castling_rights.h solving/ply.h position/pieceid.h \ - solving/machinery/twin.h conditions/circe/rebirth_square_occupied.h \ - conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ - conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ - conditions/circe/relevant_side.h solving/pipe.h debugging/assert.h - +conditions/circe/capture_square.obj: conditions/circe/capture_square.c \ + conditions/circe/capture_square.h solving/machinery/solve.h \ + stipulation/stipulation.h stipulation/goals/goals.h position/board.h \ + utilities/bitmask.h utilities/boolean.h stipulation/slice_type.h \ + stipulation/slice_type.enum.h stipulation/slice_type.enum \ + position/side.h position/side.enum.h position/side.enum pieces/pieces.h \ + output/mode.h output/mode.enum.h output/mode.enum \ + solving/machinery/dispatch.h debugging/trace.h conditions/circe/circe.h \ + stipulation/structure_traversal.h stipulation/slice.h \ + stipulation/slice_structural_type.h \ + stipulation/slice_structural_type.enum.h \ + stipulation/slice_structural_type.enum \ + stipulation/slice_functional_type.h \ + stipulation/slice_functional_type.enum.h \ + stipulation/slice_functional_type.enum \ + stipulation/slice_contextual_type.h \ + stipulation/slice_contextual_type.enum.h \ + stipulation/slice_contextual_type.enum stipulation/traversal.h \ + stipulation/slice_insertion.h solving/move_effect_journal.h \ + position/castling_rights.h solving/ply.h position/pieceid.h \ + solving/machinery/twin.h conditions/circe/rebirth_square_occupied.h \ + conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ + conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ + conditions/circe/relevant_side.h solving/pipe.h debugging/assert.h conditions/circe/capture_square.h: - solving/machinery/solve.h: - stipulation/stipulation.h: - stipulation/goals/goals.h: - position/board.h: - utilities/bitmask.h: - utilities/boolean.h: - stipulation/slice_type.h: - stipulation/slice_type.enum.h: - stipulation/slice_type.enum: - position/side.h: - position/side.enum.h: - position/side.enum: - pieces/pieces.h: - output/mode.h: - output/mode.enum.h: - output/mode.enum: - solving/machinery/dispatch.h: - debugging/trace.h: - conditions/circe/circe.h: - stipulation/structure_traversal.h: - stipulation/slice.h: - stipulation/slice_structural_type.h: - stipulation/slice_structural_type.enum.h: - stipulation/slice_structural_type.enum: - stipulation/slice_functional_type.h: - stipulation/slice_functional_type.enum.h: - stipulation/slice_functional_type.enum: - stipulation/slice_contextual_type.h: - stipulation/slice_contextual_type.enum.h: - stipulation/slice_contextual_type.enum: - stipulation/traversal.h: - stipulation/slice_insertion.h: - solving/move_effect_journal.h: - position/castling_rights.h: - solving/ply.h: - position/pieceid.h: - solving/machinery/twin.h: - conditions/circe/rebirth_square_occupied.h: - conditions/circe/reborn_piece.h: - conditions/circe/rebirth_square.h: - conditions/circe/relevant_capture.h: - conditions/circe/relevant_piece.h: - conditions/circe/relevant_side.h: - solving/pipe.h: - debugging/assert.h: diff --git a/input/commandline.c b/input/commandline.c index 3427f8944..32911e5ee 100644 --- a/input/commandline.c +++ b/input/commandline.c @@ -18,21 +18,24 @@ static int parseCommandlineOptions(int argc, char *argv[]) while (idx set to 0 now and to default value later */ - hash_max_number_storable_positions = 0; + hash_max_kilo_storable_positions = 0; } idx++; continue; } - else if (idx+1>CHAR_BIT); + *bp++ = (byte)(removedspec&ByteMask); + } + } + else + *bp++ = (byte)0; + } + + if (circe_variant.relevant_capture==circe_relevant_capture_lastcapture) + { + ply ply_last_capture; + + move_effect_journal_index_type const base = move_effect_journal_base[nbply]; + move_effect_journal_index_type const capture = base+move_effect_journal_index_offset_capture; + + TraceValue("%u",nbply); + TraceValue("%u",move_effect_journal[capture].type); + TraceEOL(); + + if (move_effect_journal[capture].type==move_effect_piece_removal) + ply_last_capture = nbply; + else + ply_last_capture = find_last_capture(); + + if (ply_last_capture!=ply_nil) + { + move_effect_journal_index_type const base = move_effect_journal_base[ply_last_capture]; + move_effect_journal_index_type const capture = base+move_effect_journal_index_offset_capture; + + if (one_byte_hash) + *bp++ = (byte)move_effect_journal[capture].u.piece_removal.flags + (byte)(piece_nbr[move_effect_journal[capture].u.piece_removal.walk] << (CHAR_BIT/2)); + else + { + unsigned int i; + *bp++ = (byte)move_effect_journal[capture].u.piece_removal.walk; + for (i = 0; i>(CHAR_BIT*i)) & ByteMask); + } + + { + int const row = move_effect_journal[capture].u.piece_removal.on/onerow; + int const col = move_effect_journal[capture].u.piece_removal.on%onerow; + *bp++ = (byte)((row<<(CHAR_BIT/2))+col); + } + } + } + + if (min_length>slack_length+1) + { + assert(validity_value<=(1<<2*CHAR_BIT)); + *bp++ = (byte)(validity_value); + *bp++ = (byte)(validity_value>>CHAR_BIT); + } + + { + unsigned int i; + + for (i = en_passant_top[nbply-1]+1; i<=en_passant_top[nbply]; ++i) + *bp++ = (byte)(en_passant_multistep_over[i] - square_a1); + } + + *bp++ = (byte)being_solved.castling_rights; /* Castling_Flag */ + + if (CondFlag[BGL]) { + memcpy(bp, &BGL_values[White], sizeof BGL_values[White]); + bp += sizeof BGL_values[White]; + memcpy(bp, &BGL_values[Black], sizeof BGL_values[Black]); + bp += sizeof BGL_values[Black]; + } + + if (CondFlag[disparate]) + { + move_effect_journal_index_type const top = move_effect_journal_base[nbply]; + move_effect_journal_index_type const movement = top+move_effect_journal_index_offset_movement; + *bp++ = (byte)move_effect_journal[movement].u.piece_movement.moving; + *bp++ = (byte)trait[nbply]; + } + + if (CondFlag[fuddled_men]) + { + memcpy(bp, &fuddled, sizeof fuddled); + bp += sizeof fuddled; + } + + TraceFunctionExit(__func__); + TraceFunctionResultEnd(); + return bp; +} /* CommonEncode */ + +static byte *SmallEncodePiece(byte *bp, + byte row, byte col, + piece_walk_type pienam, Flags pspec) +{ + *bp++= (byte)((row<<(CHAR_BIT/2))+col); + if (one_byte_hash) + *bp++ = (byte)pspec + (byte)(piece_nbr[pienam] << (CHAR_BIT/2)); + else + { + unsigned int i; + *bp++ = (byte)pienam; + for (i = 0; i>(CHAR_BIT*i)) & ByteMask); + } + + return bp; +} + static void ProofLargeEncodePiece(byte **bp, unsigned int row, unsigned int col, piece_walk_type p, Flags flags) { - **bp = p; + **bp = (byte)p; ++*bp; **bp = flags&COLOURFLAGS; @@ -1250,8 +1452,8 @@ static void ProofEncode(stip_length_type min_length, stip_length_type validity_v square s = (underworld[gi].on - nr_of_slack_rows_below_board*onerow - nr_of_slack_files_left_of_board); - unsigned int const row = s/onerow; - unsigned int const col = s%onerow; + byte const row = (byte)(s/onerow); + byte const col = (byte)(s%onerow); bp = SmallEncodePiece(bp, row,col, underworld[gi].walk,underworld[gi].flags); @@ -1389,237 +1591,64 @@ static unsigned int TellSmallEncodePosLeng(void) return result; } /* TellSmallEncodePosLeng */ -byte *CommonEncode(byte *bp, - stip_length_type min_length, - stip_length_type validity_value) +static byte *LargeEncodePiece(byte *bp, byte *position, + int row, int col, + piece_walk_type pienam, Flags pspec) +{ + if (one_byte_hash) + *bp++ = (byte)pspec + (byte)(piece_nbr[pienam] << (CHAR_BIT/2)); + else + { + unsigned int i; + *bp++ = (byte)pienam; + for (i = 0; i>(CHAR_BIT*i)) & ByteMask); + } + + assert((position[row]&BIT(col))==0); + position[row] |= BIT(col); + + return bp; +} + +static void LargeEncode(stip_length_type min_length, + stip_length_type validity_value) { + HashBuffer *hb = &hashBuffers[nbply]; + byte *position = hb->cmv.Data; + byte *bp = position+nr_rows_on_board; + int row, col; + square a_square = square_a1; + underworld_index_type gi; + TraceFunctionEntry(__func__); TraceFunctionParamListEnd(); - if (CondFlag[messigny]) + /* clear the bits for storing the position of pieces */ + memset(position,0,nr_rows_on_board); + + for (row=0; row>CHAR_BIT); - *bp++ = (byte)(removedspec&ByteMask); - } - } - else - *bp++ = (byte)0; - } - - if (circe_variant.relevant_capture==circe_relevant_capture_lastcapture) - { - ply ply_last_capture; - - move_effect_journal_index_type const base = move_effect_journal_base[nbply]; - move_effect_journal_index_type const capture = base+move_effect_journal_index_offset_capture; - - TraceValue("%u",nbply); - TraceValue("%u",move_effect_journal[capture].type); - TraceEOL(); - - if (move_effect_journal[capture].type==move_effect_piece_removal) - ply_last_capture = nbply; - else - ply_last_capture = find_last_capture(); - - if (ply_last_capture!=ply_nil) - { - move_effect_journal_index_type const base = move_effect_journal_base[ply_last_capture]; - move_effect_journal_index_type const capture = base+move_effect_journal_index_offset_capture; - - if (one_byte_hash) - *bp++ = (byte)move_effect_journal[capture].u.piece_removal.flags + (piece_nbr[move_effect_journal[capture].u.piece_removal.walk] << (CHAR_BIT/2)); - else - { - unsigned int i; - *bp++ = move_effect_journal[capture].u.piece_removal.walk; - for (i = 0; i>(CHAR_BIT*i)) & ByteMask); - } - - { - int const row = move_effect_journal[capture].u.piece_removal.on/onerow; - int const col = move_effect_journal[capture].u.piece_removal.on%onerow; - *bp++ = (byte)((row<<(CHAR_BIT/2))+col); - } - } - } - - if (min_length>slack_length+1) - { - assert(validity_value<=(1<<2*CHAR_BIT)); - *bp++ = (byte)(validity_value); - *bp++ = (byte)(validity_value>>CHAR_BIT); - } - - { - unsigned int i; - - for (i = en_passant_top[nbply-1]+1; i<=en_passant_top[nbply]; ++i) - *bp++ = (byte)(en_passant_multistep_over[i] - square_a1); - } - - *bp++ = being_solved.castling_rights; /* Castling_Flag */ - - if (CondFlag[BGL]) { - memcpy(bp, &BGL_values[White], sizeof BGL_values[White]); - bp += sizeof BGL_values[White]; - memcpy(bp, &BGL_values[Black], sizeof BGL_values[Black]); - bp += sizeof BGL_values[Black]; - } - - if (CondFlag[disparate]) - { - move_effect_journal_index_type const top = move_effect_journal_base[nbply]; - move_effect_journal_index_type const movement = top+move_effect_journal_index_offset_movement; - *bp++ = (byte)move_effect_journal[movement].u.piece_movement.moving; - *bp++ = trait[nbply]; - } - - if (CondFlag[fuddled_men]) - { - memcpy(bp, &fuddled, sizeof fuddled); - bp += sizeof fuddled; - } - - TraceFunctionExit(__func__); - TraceFunctionResultEnd(); - return bp; -} /* CommonEncode */ - -static byte *LargeEncodePiece(byte *bp, byte *position, - int row, int col, - piece_walk_type pienam, Flags pspec) -{ - if (one_byte_hash) - *bp++ = (byte)pspec + (piece_nbr[pienam] << (CHAR_BIT/2)); - else - { - unsigned int i; - *bp++ = pienam; - for (i = 0; i>(CHAR_BIT*i)) & ByteMask); - } - - assert((position[row]&BIT(col))==0); - position[row] |= BIT(col); - - return bp; -} - -static void LargeEncode(stip_length_type min_length, - stip_length_type validity_value) -{ - HashBuffer *hb = &hashBuffers[nbply]; - byte *position = hb->cmv.Data; - byte *bp = position+nr_rows_on_board; - int row, col; - square a_square = square_a1; - underworld_index_type gi; - - TraceFunctionEntry(__func__); - TraceFunctionParamListEnd(); - - /* clear the bits for storing the position of pieces */ - memset(position,0,nr_rows_on_board); - - for (row=0; row>(CHAR_BIT*i)) & ByteMask); - } - - return bp; -} - static void SmallEncode(stip_length_type min_length, stip_length_type validity_value) { HashBuffer *hb = &hashBuffers[nbply]; byte *bp = hb->cmv.Data; square a_square = square_a1; - int row; - int col; + byte row; + byte col; underworld_index_type gi; TraceFunctionEntry(__func__); @@ -1685,8 +1696,8 @@ static void SmallEncode(stip_length_type min_length, square s = (underworld[gi].on - nr_of_slack_rows_below_board*onerow - nr_of_slack_files_left_of_board); - row = s/onerow; - col = s%onerow; + byte const row = (byte)(s/onerow); + byte const col = (byte)(s%onerow); bp = SmallEncodePiece(bp, row,col, underworld[gi].walk,underworld[gi].flags); @@ -1741,6 +1752,10 @@ static void init_elements(hashElement_union_t *hue) TraceFunctionResultEnd(); } +#if defined(TESTHASH) +static unsigned long allocCounter = 0; +#endif + /* (attempt to) allocate a hash table element - compress the current * hash table if necessary; exit()s if allocation is not possible * in spite of compression @@ -1773,6 +1788,18 @@ static dhtElement *allocDHTelement(dhtConstValue hb) result = dhtEnterElement(pyhash,hb,template_element.d.Data); } +#if defined(FXF) +#if defined(TESTHASH) + if (++allocCounter==10000000) + { + allocCounter = 0; + puts("\n allocDHTelement():"); + printf("key count: %lu\n",dhtKeyCount(pyhash)); + fxfInfo(stdout); + } +#endif +#endif /*FXF*/ + if (result==dhtNilElement) { fputs("Sorry, cannot enter more hashelements " @@ -1860,7 +1887,11 @@ static boolean is_proofgame(slice_index si) */ boolean is_hashtable_allocated(void) { +#if defined(FXF) return fxfInitialised(); +#else + return hashtable_kilos>0; +#endif } /* Initialise the hashing machinery for the current stipulation @@ -1927,11 +1958,17 @@ static void inithash(slice_index si) bytes_per_piece = one_byte_hash ? 1 : 1+bytes_per_spec; +#if defined(TESTHASH) + printf("one_byte_hash:%u bytes_per_piece:%u\n",one_byte_hash,bytes_per_piece); +#endif + if (is_proofgame(si)) { encode = ProofEncode; - if (hashtable_kilos>0 && hash_max_number_storable_positions==0) - hash_max_number_storable_positions= hashtable_kilos/(24+sizeof(char *)+1); +#if defined(FXF) + if (hashtable_kilos>0 && hash_max_kilo_storable_positions==ULONG_MAX) + hash_max_kilo_storable_positions= hashtable_kilos/(24+sizeof(char *)+1); +#endif } else { @@ -1940,25 +1977,29 @@ static void inithash(slice_index si) if (Small<=Large) { encode = SmallEncode; - if (hashtable_kilos>0 && hash_max_number_storable_positions==0) - hash_max_number_storable_positions= hashtable_kilos/(Small+sizeof(char *)+1); +#if defined(FXF) + if (hashtable_kilos>0 && hash_max_kilo_storable_positions==ULONG_MAX) + hash_max_kilo_storable_positions= hashtable_kilos/(Small+sizeof(char *)+1); +#endif } else { encode = LargeEncode; - if (hashtable_kilos>0 && hash_max_number_storable_positions==0) - hash_max_number_storable_positions= hashtable_kilos/(Large+sizeof(char *)+1); - } +#if defined(FXF) + + if (hashtable_kilos>0 && hash_max_kilo_storable_positions==ULONG_MAX) + hash_max_kilo_storable_positions= hashtable_kilos/(Large+sizeof(char *)+1); +#endif + } } #if defined(FXF) - ifTESTHASH(printf("MaxPositions: %lu\n", hash_max_number_storable_positions)); assert(hashtable_kilos/1024=min_length); + + TraceFunctionExit(__func__); + TraceFunctionResult("%u",result); + TraceFunctionResultEnd(); + return result; +} + +static stip_length_type hash_value_to_solve_result(slice_index si, + hash_value_type value) +{ + stip_length_type const min_length = SLICE_U(si).branch.min_length; + stip_length_type const result = value*2+min_length; + + TraceFunctionEntry(__func__); + TraceFunctionParam("%u",si); + TraceFunctionParam("%u",value); + TraceFunctionParamListEnd(); + + TraceFunctionExit(__func__); + TraceFunctionResult("%u",result); + TraceFunctionResultEnd(); + return result; +} + +/* Remember that the current position has a solution in a + * number of half-moves + * @param si index of slice where the current position was reached + */ +static void addtohash_help_solved(slice_index si) +{ + HashBuffer * const hb = &hashBuffers[nbply]; + stip_length_type const min_length = SLICE_U(si).branch.min_length; + + TraceFunctionEntry(__func__); + TraceFunctionParam("%u",si); + TraceFunctionParamListEnd(); + + TraceValue("%u",min_length);TraceEOL(); + + if (solve_result>=min_length) + { + /* (ab)use 1 bit of the extra byte added in in_hash_help for distinguishing + * between solved and not_solved: */ + hb->cmv.Data[hashBuffers[nbply].cmv.Leng-1] += (byte)2; + set_value_help(find_or_add_help_elmt(hb), + si, + solve_result_to_hash_value(si,solve_result)); + hb->cmv.Data[hashBuffers[nbply].cmv.Leng-1] -= (byte)2; + } + + TraceFunctionExit(__func__); + TraceFunctionResultEnd(); + +#if defined(HASHRATE) + if (dhtKeyCount(pyhash)%1000 == 0) + HashStats(3, "\n"); +#endif /*HASHRATE*/ +} + +static hashElement_union_t const *find_help_elmt_solved(HashBuffer *hb) +{ + TraceFunctionEntry(__func__); + TraceFunctionParam("%p",hb); + TraceFunctionParamListEnd(); + + /* (ab)use 1 bit of the extra byte added in in_hash_help for distinguishing + * between solved and not_solved: */ + hb->cmv.Data[hb->cmv.Leng-1] += (byte)2; + + { + dhtElement const * const he = dhtLookupElement(pyhash,hb); + hashElement_union_t const * const result = (he==dhtNilElement + ? 0 + : (hashElement_union_t const *)he); + + hb->cmv.Data[hb->cmv.Leng-1] -= (byte)2; + + TraceFunctionExit(__func__); + TraceFunctionResult("%p",result); + TraceFunctionResultEnd(); + return result; + } +} + +static boolean is_position_known_to_be_solved(HashBuffer *hb, slice_index si) +{ + boolean result; + hashElement_union_t const *hue_solved; + + TraceFunctionEntry(__func__); + TraceFunctionParam("%p",hb); + TraceFunctionParam("%u",si); + TraceFunctionParamListEnd(); + + hue_solved = find_help_elmt_solved(hb); + + if (hue_solved==0) + result = false; + else + { + hash_value_type const value = get_value_help(hue_solved,si); + stip_length_type const known_result = hash_value_to_solve_result(si,value); + + if (known_result<=solve_nr_remaining) + result = true; + else + result = false; + } + + TraceFunctionExit(__func__); + TraceFunctionResult("%u",result); + TraceFunctionResultEnd(); + return result; +} + +/* Remember that the current position does not have a solution in a + * number of half-moves + * @param si index of slice where the current position was reached + */ +static void addtohash_help_not_solved(slice_index si) +{ + HashBuffer const * const hb = &hashBuffers[nbply]; + + TraceFunctionEntry(__func__); + TraceFunctionParam("%u",si); + TraceFunctionParamListEnd(); + + set_value_help(find_or_add_help_elmt(hb), + si, + solve_result_to_hash_value(si,solve_result)); + + TraceFunctionExit(__func__); + TraceFunctionResultEnd(); + +#if defined(HASHRATE) + if (dhtKeyCount(pyhash)%1000 == 0) + HashStats(3, "\n"); +#endif /*HASHRATE*/ +} + +static hashElement_union_t const *find_help_elmt_not_solved(HashBuffer *hb) +{ + TraceFunctionEntry(__func__); + TraceFunctionParam("%p",hb); + TraceFunctionParamListEnd(); + + { + dhtElement const *he = dhtLookupElement(pyhash,hb); + hashElement_union_t const * const result = (he==dhtNilElement + ? 0 + : (hashElement_union_t const *)he); + + TraceFunctionExit(__func__); + TraceFunctionResult("%p",result); + TraceFunctionResultEnd(); + return result; + } +} + +static boolean is_position_known_not_to_be_solved(HashBuffer *hb, slice_index si) +{ + boolean result; + hashElement_union_t const *hue_not_solved; + + TraceFunctionEntry(__func__); + TraceFunctionParam("%p",hb); + TraceFunctionParam("%u",si); + TraceFunctionParamListEnd(); + + hue_not_solved = find_help_elmt_not_solved(hb); + + if (hue_not_solved==0) + result = false; + else + { + hash_value_type const value = get_value_help(hue_not_solved,si); + result = hash_value_to_solve_result(si,value)>solve_nr_remaining; + } + + TraceFunctionExit(__func__); + TraceFunctionResult("%u",result); + TraceFunctionResultEnd(); + return result; +} + /* Look up whether the current position in the hash table to find out * if it has a solution in a number of half-moves * @param si index slice where current position was reached @@ -2455,32 +2715,35 @@ void attack_hashed_tester_solve(slice_index si) static boolean inhash_help(slice_index si) { boolean result; - HashBuffer *hb = &hashBuffers[nbply]; - dhtElement const *he; + HashBuffer * const hb = &hashBuffers[nbply]; stip_length_type const validity_value = (solve_nr_remaining-1)/2+1; + stip_length_type const min_length = SLICE_U(si).branch.min_length; TraceFunctionEntry(__func__); TraceFunctionParam("%u",si); TraceFunctionParamListEnd(); - /* In help play, we encode all positions as if the stipulation were exact. - * This is necessary to avoid ruling out some solutions with intermediate - * positions that are solvable in, say, m moves but not in m+1. This only - * makes a difference in problems with short cooks, but not printing all - * solutions is confusing and if we measure, the price that we are paying - * is smaller than one might think. TM - */ - (*encode)(solve_nr_remaining,validity_value); + TraceValue("%u",min_length);TraceEOL(); + + (*encode)(min_length,validity_value); + + /* Create a difference between odd and even numbers of moves. + * A solution for h#n isn't necessarily a solution for h#n.5 */ + assert(hb->cmv.Lengcmv.Data[hashBuffers[nbply].cmv.Leng] = (byte)(min_length%2); + ++hb->cmv.Leng; ifHASHRATE(use_all++); - he = dhtLookupElement(pyhash,hb); - if (he==dhtNilElement) - result = false; - else if (get_value_help((hashElement_union_t const *)he,si)==1) + if (is_position_known_not_to_be_solved(hb,si)) { - ifHASHRATE(use_pos++); - result = true; + if (is_position_known_to_be_solved(hb,si)) + result = false; + else + { + ifHASHRATE(use_pos++); + result = true; + } } else result = false; @@ -2491,35 +2754,38 @@ static boolean inhash_help(slice_index si) return result; } -/* Remember that the current position does not have a solution in a - * number of half-moves - * @param si index of slice where the current position was reached - */ -static void addtohash_help(slice_index si) +static void help_hashed_solve_impl(slice_index si, slice_index base) { - HashBuffer const * const hb = &hashBuffers[nbply]; - dhtElement *he; - hashElement_union_t * hue; - TraceFunctionEntry(__func__); TraceFunctionParam("%u",si); + TraceFunctionParam("%u",base); TraceFunctionParamListEnd(); - he = dhtLookupElement(pyhash,hb); - if (he==dhtNilElement) - hue = (hashElement_union_t *)allocDHTelement(hb); + TraceValue("%u",solve_nr_remaining); TraceEOL(); + + assert(solve_nr_remaining>=next_move_has_solution); + + if (inhash_help(base)) + solve_result = MOVE_HAS_NOT_SOLVED_LENGTH(); else - hue = (hashElement_union_t *)he; + { + if (SLICE_U(base).branch.min_length>slack_length+1) + { + SLICE_U(base).branch.min_length -= 2; + pipe_solve_delegate(si); + SLICE_U(base).branch.min_length += 2; + } + else + pipe_solve_delegate(si); - set_value_help(hue,si,1); + if (solve_result>MOVE_HAS_SOLVED_LENGTH()) + addtohash_help_not_solved(base); + else + addtohash_help_solved(base); + } TraceFunctionExit(__func__); TraceFunctionResultEnd(); - -#if defined(HASHRATE) - if (dhtKeyCount(pyhash)%1000 == 0) - HashStats(3, "\n"); -#endif /*HASHRATE*/ } /* Try to solve in solve_nr_remaining half-moves. @@ -2544,30 +2810,8 @@ void help_hashed_solve(slice_index si) TraceValue("%u",solve_nr_remaining); TraceEOL(); - assert(solve_nr_remaining>=next_move_has_solution); - if (is_table_uncompressed || solve_nr_remaining>next_move_has_solution) - { - if (inhash_help(si)) - solve_result = MOVE_HAS_NOT_SOLVED_LENGTH(); - else - { - if (SLICE_U(si).branch.min_length>slack_length+1) - { - SLICE_U(si).branch.min_length -= 2; - pipe_solve_delegate(si); - SLICE_U(si).branch.min_length += 2; - } - else - pipe_solve_delegate(si); - - TraceValue("%u",solve_result); - TraceValue("%u",MOVE_HAS_NOT_SOLVED_LENGTH()); - TraceEOL(); - if (solve_result==MOVE_HAS_NOT_SOLVED_LENGTH()) - addtohash_help(si); - } - } + help_hashed_solve_impl(si,si); else pipe_solve_delegate(si); @@ -2596,24 +2840,7 @@ void help_hashed_tester_solve(slice_index si) TraceFunctionParam("%u",si); TraceFunctionParamListEnd(); - assert(solve_nr_remaining>=next_move_has_solution); - - if (inhash_help(base)) - solve_result = MOVE_HAS_NOT_SOLVED_LENGTH(); - else - { - if (SLICE_U(base).branch.min_length>slack_length+1) - { - SLICE_U(base).branch.min_length -= 2; - pipe_solve_delegate(si); - SLICE_U(base).branch.min_length += 2; - } - else - pipe_solve_delegate(si); - - if (solve_result>MOVE_HAS_SOLVED_LENGTH()) - addtohash_help(base); - } + help_hashed_solve_impl(si,base); TraceFunctionExit(__func__); TraceFunctionResultEnd(); diff --git a/optimisations/hash.h b/optimisations/hash.h index 2e977a546..d370c87e0 100644 --- a/optimisations/hash.h +++ b/optimisations/hash.h @@ -36,7 +36,9 @@ typedef union extern HashBuffer hashBuffers[maxply+1]; -extern unsigned long hash_max_number_storable_positions; +#if defined(FXF) +extern unsigned long hash_max_kilo_storable_positions; +#endif /* exported functions */ void check_hash_assumptions(void); @@ -59,14 +61,6 @@ void HashStats(unsigned int level, char const *trailer); void IncHashRateLevel(void); void DecHashRateLevel(void); -byte *CommonEncode(byte *bp, - stip_length_type min_length, - stip_length_type validity_value); - -byte *SmallEncodePiece(byte *bp, - int row, int col, - piece_walk_type p, Flags pspec); - /* Try to solve in solve_nr_remaining half-moves. * @param si slice index * @note assigns solve_result the length of solution found and written, i.e.: diff --git a/scripts/checkAgain.sh b/scripts/checkAgain.sh index 85b929af0..1e3a2a2b6 100755 --- a/scripts/checkAgain.sh +++ b/scripts/checkAgain.sh @@ -34,12 +34,10 @@ shift $((OPTIND-1)) # remove parsed options and args from $@ list SCRIPTDIR=$(dirname $0) POPEYEDIR=${SCRIPTDIR}/.. -. ${SCRIPTDIR}/parallelTester.lib - # command to be invoked in parallel -_cmd="${POPEYEDIR}/py -maxmem 1G -maxtrace 0 -regression" -#_cmd="WINEPREFIX=~/.wine ${POPEYEDIR}/pywin32.exe -maxmem 1G -maxtrace 0 -regression" -#_cmd="WINEPREFIX=~/.wine64 ${POPEYEDIR}/pywin64.exe -maxmem 1G -maxtrace 0 -regression" +CMD="${POPEYEDIR}/py -maxmem 1G -maxtrace 0 -regression" +#CMD="WINEPREFIX=~/.wine ${POPEYEDIR}/pywin32.exe -maxmem 1G -maxtrace 0 -regression" +#CMD="WINEPREFIX=~/.wine64 ${POPEYEDIR}/pywin64.exe -maxmem 1G -maxtrace 0 -regression" # number of processors CORES_AVAILABLE=$(nproc --all) @@ -51,9 +49,7 @@ then exit 1 fi -PMAX=$CORES_REQUESTED - -(for f in *.tst +INPUTS=$(for f in *.tst do # only true if *.tst isn't expanded because there is no matching file if [ -f $f ] @@ -91,4 +87,7 @@ do stem=`echo $f | sed -e 's/[.]out$//'` echo ${POPEYEDIR}/BEISPIEL/$stem.inp fi -done) | dispatchWork +done) + +parallel -j $CORES_REQUESTED $CMD -- $INPUTS + diff --git a/scripts/parallelTester.lib b/scripts/parallelTester.lib deleted file mode 100644 index a1a5bb7a5..000000000 --- a/scripts/parallelTester.lib +++ /dev/null @@ -1,188 +0,0 @@ -#!/bin/bash -# ----------------------------------------------------------------------------- -# -# Script for effectively testing Popeye using its example files on a multi-core -# Unix-ish machine. -# -# This is based on a script by Bernhard Bablok published in Linux Magazine -# March 2009. -# Cf. ftp://ftp.linux-magazin.com/pub/listings/magazine/100/Bash-Skripte/workDispatcher -# -# ----------------------------------------------------------------------------- -# -# The functions in this file support parallel processing of commands (useful -# for multi-core computers). -# Note that the implementation is not perfect. -# -# TODOs: -# - trap signals and cleanup control-directory -# -# Caveats: -# - SIGKILLing the dispatcher leaves orphaned workers (but see note about -# TMOUT below) -# -# ----------------------------------------------------------------------------- -# **** Usage **** -# -# Instead of: -# -# for item in "$@"; do -# doSomething "$item" -# done -# -# code: -# -# source path-to-this-file -# _cmd="doSomething" -# -# for item in "$@"; do -# echo "$item" -# done | dispatchWork -# -# or: -# -# source path-to-this-file -# dispatchWork -c "doSomething" "$@" -# -# * Set DEBUG=1 to see what is going on. -# * Set PMAX=number of workers (defaults to number of processors in your system) -# * With TMOUT=n the workers time out after n seconds -# (TMOUT is a standard feature of read) -# -# ----------------------------------------------------------------------------- -# $Author: thomasmaeder $ -# $Revision: 1.3 $ -# -# License: GPL2 -# ----------------------------------------------------------------------------- - -: ${DEBUG:=0} -: ${_cmd:=echo} -: ${PMAX:=`ls -1d /sys/devices/system/cpu/cpu* | wc -l`} - -# Process a single item (internal function) ----------------------------------- - -processWorkItem() { - [ $DEBUG -eq 1 ] && echo "info: worker ($1) - executing $_cmd $2" >&2 - eval $_cmd \"$2\" -} - -# The worker-process (internal function) -------------------------------------- - -processWorkItems() { - local line workerFifo="$1" dispatcherFifo="$2" id="$3" fd - let fd=id+4 - exec 3<>"$dispatcherFifo" - while ! echo "$id" >&3; do - [ $DEBUG -eq 1 ] && \ - echo "warning: worker($id) - could not write idle-state" >&2 - sleep 1 - done - [ $DEBUG -eq 1 ] && \ - echo "info: worker($id) - wrote idle-state" >&2 - while true; do - [ $DEBUG -eq 1 ] && echo "info: worker($id) - waiting for work" >&2 - read -r -u $fd line - if [ $? -ne 0 ]; then - [ $DEBUG -eq 1 ] && echo "info: worker($id) - received eof" >&2 - break - fi - [ $DEBUG -eq 1 ] && echo "info: worker($id) - processing: \"$line\"" >&2 - if [ "$line" = "EOF" ]; then - break - else - processWorkItem "$id" "$line" - while ! echo "$id" >&3; do - [ $DEBUG -eq 1 ] && \ - echo "warning: worker($id) - could not write idle-state" >&2 - sleep 1 - done - [ $DEBUG -eq 1 ] && \ - echo "info: worker($id) - wrote idle-state" >&2 - fi - done - [ $DEBUG -eq 1 ] && echo "info: worker($id) - removing workerFifo" >&2 - rm -f "$workerFifo" -} - -# Start all workers (internal function) --------------------------------------- - -startWorker() { - local i fd fifo - for (( i=0; i&2 - workerFifo="$controlDir/worker-$i" - mkfifo "$workerFifo" - let fd=i+4 - eval exec $fd\<\> "$workerFifo" - processWorkItems "$workerFifo" "$dispatcherFifo" "$i" & - CPID=$! - [ $DEBUG -eq 1 ] && echo "info: dispatcher - PID of worker($i): $CPID" >&2 - cpidList="$cpidList $CPID" - done -} - -# Stop all workers (internal function) ---------------------------------------- - -stopWorker() { - local i fifo - for (( i=0; i&2 - echo "EOF" > "$fifo" - done - wait $cpidList -} - -# The dispatcher -------------------------------------------------------------- - -dispatchWork() { - local OPTIND=1 - while getopts ":c:t:" opt; do - case $opt in - c) _cmd="$OPTARG";; - t) TMOUT="$OPTARG";; - esac - done - shift $((OPTIND-1)) - - local idleId dispatcherFifo controlDir=`mktemp -d` - - # create control-directory and start worker-processes - - [ $DEBUG -eq 1 ] && echo "info: dispatcher - created control-dir $controlDir" >&2 - dispatcherFifo="$controlDir/dispatcher" - mkfifo "$dispatcherFifo" - exec 3<>"$dispatcherFifo" - - startWorker - - # main loop: read and dispatch arguments - - if tty -s; then - for line in "$@"; do - [ $DEBUG -eq 1 ] && echo "info: dispatcher - processing: \"$line\"" >&2 - read -u 3 idleId - [ $DEBUG -eq 1 ] && \ - echo "info: dispatcher - dispatching \"$line\" to worker($idleId)" >&2 - echo "$line" >> "$controlDir/worker-$idleId" - done - else - while read -r -u 0 line; do - [ $DEBUG -eq 1 ] && echo "info: dispatcher - processing: \"$line\"" >&2 - read -u 3 idleId - [ $DEBUG -eq 1 ] && \ - echo "info: dispatcher - dispatching \"$line\" to worker($idleId)" >&2 - echo "$line" >> "$controlDir/worker-$idleId" - done - fi - - # stop worker-processes and remove control-directory - - stopWorker - - [ $DEBUG -eq 1 ] && echo "info: dispatcher - removing dispatcherFifo" >&2 - rm -f "$dispatcherFifo" - [ $DEBUG -eq 1 ] && echo "info: dispatcher - removing control-dir $controlDir" >&2 - rm -fr "$controlDir" -} diff --git a/scripts/parallelTester.sh b/scripts/parallelTester.sh index 1e510b09c..04d807920 100755 --- a/scripts/parallelTester.sh +++ b/scripts/parallelTester.sh @@ -35,12 +35,10 @@ shift $((OPTIND-1)) # remove parsed options and args from $@ list SCRIPTDIR=$(dirname $0) POPEYEDIR=${SCRIPTDIR}/.. -. ${SCRIPTDIR}/parallelTester.lib - # command to be invoked in parallel -_cmd="${POPEYEDIR}/py -maxmem 1G -maxtrace 0 -regression" -#_cmd="WINEPREFIX=~/.wine wine ${POPEYEDIR}/pywin32.exe -maxmem 1G -maxtrace 0 -regression" -#_cmd="WINEPREFIX=~/.wine64 wine64 ${POPEYEDIR}/pywin64.exe -maxmem 1G -maxtrace 0 -regression" +CMD="${POPEYEDIR}/py -maxmem 1G -maxtrace 0 -regression" +#CMD="WINEPREFIX=~/.wine wine ${POPEYEDIR}/pywin32.exe -maxmem 1G -maxtrace 0 -regression" +#CMD="WINEPREFIX=~/.wine64 wine64 ${POPEYEDIR}/pywin64.exe -maxmem 1G -maxtrace 0 -regression" # number of processors CORES_AVAILABLE=$(nproc --all) @@ -52,19 +50,15 @@ then exit 1 fi -PMAX=$CORES_REQUESTED - #DEBUG=1 -# create and dispatch jobs -for item in ${POPEYEDIR}/TESTS/*.inp ${POPEYEDIR}/REGRESSIONS/*.inp ${POPEYEDIR}/EXAMPLES/*inp ${POPEYEDIR}/BEISPIEL/*inp; do - echo "$item" -done | dispatchWork +INPUTS="${POPEYEDIR}/TESTS/*.inp ${POPEYEDIR}/REGRESSIONS/*.inp ${POPEYEDIR}/EXAMPLES/*inp ${POPEYEDIR}/BEISPIEL/*inp" +# create and dispatch jobs if [ $ALL ] then - for item in ${POPEYEDIR}/EXAMPLES/lengthy/*inp ${POPEYEDIR}/BEISPIEL/lengthy/*inp; do - echo "$item" - done | dispatchWork + INPUTS+="${POPEYEDIR}/EXAMPLES/lengthy/*inp ${POPEYEDIR}/BEISPIEL/lengthy/*inp" fi +parallel -j $CORES_REQUESTED $CMD -- $INPUTS + diff --git a/solving/machinery/depend b/solving/machinery/depend index de84073df..ba64bc712 100644 --- a/solving/machinery/depend +++ b/solving/machinery/depend @@ -1,2236 +1,1335 @@ -solving/machinery/solvers$(OBJ_SUFFIX): solving/machinery/solvers.c \ - solving/machinery/solvers.h stipulation/stipulation.h \ - stipulation/goals/goals.h position/board.h utilities/bitmask.h \ - utilities/boolean.h stipulation/slice_type.h \ - stipulation/slice_type.enum.h stipulation/slice_type.enum \ - position/side.h position/side.enum.h position/side.enum \ - pieces/pieces.h output/mode.h output/mode.enum.h output/mode.enum \ - solving/machinery/twin.h solving/move_effect_journal.h \ - solving/machinery/solve.h solving/machinery/dispatch.h \ - debugging/trace.h position/castling_rights.h solving/ply.h \ - position/pieceid.h options/options.h conditions/conditions.h \ - position/position.h position/color.h position/color.enum.h \ - position/color.enum pieces/walks/vectors.h retro/retro.h \ - solving/selfcheck_guard.h solving/has_solution_type.h \ - solving/has_solution_type.enum.h solving/has_solution_type.enum \ - solving/check.h debugging/measure.h output/plaintext/protocol.h \ - pieces/attributes/total_invisible.h \ - pieces/attributes/total_invisible/goal_validation.h \ - pieces/walks/pawns/promotion.h stipulation/slice_insertion.h \ - stipulation/structure_traversal.h stipulation/slice.h \ - stipulation/slice_structural_type.h \ - stipulation/slice_structural_type.enum.h \ - stipulation/slice_structural_type.enum \ - stipulation/slice_functional_type.h \ - stipulation/slice_functional_type.enum.h \ - stipulation/slice_functional_type.enum \ - stipulation/slice_contextual_type.h \ - stipulation/slice_contextual_type.enum.h \ - stipulation/slice_contextual_type.enum stipulation/traversal.h \ - stipulation/proxy.h stipulation/pipe.h solving/observation.h \ - solving/temporary_hacks.h solving/fork.h output/plaintext/message.h \ - output/message.h input/plaintext/language.h conditions/annan.h \ - conditions/bicaptures.h conditions/bgl.h conditions/bolero.h \ - conditions/breton.h conditions/dister.h conditions/mummer.h \ - conditions/role_exchange.h conditions/facetoface.h \ - conditions/fuddled_men.h conditions/koeko/contact_grid.h \ - conditions/koeko/koeko.h conditions/koeko/anti.h \ - conditions/koeko/new.h conditions/exclusive.h utilities/table.h \ - conditions/republican.h conditions/blackchecks.h \ - conditions/influencer.h conditions/extinction.h conditions/madrasi.h \ - conditions/partial_paralysis.h conditions/maff/immobility_tester.h \ - conditions/owu/immobility_tester.h conditions/ohneschach.h \ - conditions/pointreflection.h conditions/singlebox/type1.h \ - conditions/singlebox/type2.h pieces/walks/pawns/promotee_sequence.h \ - conditions/singlebox/type3.h conditions/patience.h \ - conditions/isardam.h conditions/leffie.h conditions/masand.h \ - conditions/disparate.h conditions/dynasty.h conditions/eiffel.h \ - conditions/ultraschachzwang/legality_tester.h conditions/sat.h \ - conditions/oscillating_kings.h conditions/messigny.h \ - conditions/actuated_revolving_centre.h \ - conditions/actuated_revolving_board.h conditions/circe/circe.h \ - conditions/circe/rebirth_square_occupied.h \ - conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ - conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ - conditions/circe/relevant_side.h conditions/circe/rex_inclusive.h \ - conditions/circe/rebirth_avoider.h conditions/circe/kamikaze.h \ - conditions/anticirce/anticirce.h conditions/anticirce/magic_square.h \ - conditions/sentinelles.h conditions/snek.h conditions/duellists.h \ - conditions/haunted_chess.h position/underworld.h \ - conditions/ghost_chess.h conditions/kobul.h conditions/andernach.h \ - conditions/antiandernach.h conditions/darkside.h \ - conditions/chameleon_pursuit.h conditions/norsk.h conditions/protean.h \ - conditions/einstein/einstein.h conditions/einstein/reverse.h \ - conditions/einstein/anti.h conditions/einstein/en_passant.h \ - conditions/traitor.h conditions/volage.h conditions/magic_square.h \ - conditions/tibet.h conditions/degradierung.h \ - conditions/marscirce/phantom.h conditions/marscirce/marscirce.h \ - solving/move_generator.h conditions/marscirce/anti.h \ - conditions/marscirce/plus.h conditions/line_chameleon.h \ - conditions/haan.h conditions/castling_chess.h \ - conditions/exchange_castling.h conditions/transmuting_kings/super.h \ - conditions/transmuting_kings/reflective_kings.h \ - conditions/amu/attack_counter.h conditions/imitator.h \ - conditions/football.h conditions/woozles.h conditions/immune.h \ - conditions/provocateurs.h conditions/lortap.h conditions/patrol.h \ - conditions/nocapture.h conditions/nopromotion.h conditions/geneva.h \ - conditions/monochrome.h conditions/bichrome.h conditions/edgemover.h \ - conditions/grid.h conditions/take_and_make.h \ - conditions/make_and_take.h conditions/superguards.h \ - conditions/central.h conditions/beamten.h conditions/brunner.h \ - conditions/wormhole.h conditions/transmuting_kings/transmuting_kings.h \ - conditions/transmuting_kings/vaulting_kings.h conditions/backhome.h \ - conditions/vogtlaender.h conditions/bicolores.h conditions/antikings.h \ - conditions/follow_my_leader.h conditions/alphabetic.h \ - conditions/forced_squares.h conditions/synchronous.h \ - conditions/must_capture.h conditions/lostpieces.h \ - conditions/series_capture.h conditions/pepo.h conditions/cast.h \ - conditions/multicaptures.h conditions/transmissionmenace.h \ - conditions/powertransfer.h platform/maxtime.h \ - conditions/shielded_kings.h solving/end_of_branch_tester.h \ - solving/dead_end.h stipulation/constraint.h solving/moves_traversal.h \ - stipulation/goals/immobile/reached_tester.h \ - stipulation/goals/kiss/reached_tester.h stipulation/branch.h \ - stipulation/fork.h stipulation/move.h solving/duplex.h solving/pipe.h \ - solving/king_capture_avoider.h solving/testers.h \ - solving/find_shortest.h solving/for_each_move.h \ - solving/battle_play/try.h solving/battle_play/threat.h \ - solving/battle_play/continuation.h solving/battle_play/setplay.h \ - solving/battle_play/min_length_guard.h solving/boolean/and.h \ - solving/goals/prerequisite_guards.h solving/trivial_end_filter.h \ - solving/avoid_unsolvable.h solving/play_suppressor.h \ - solving/castling.h solving/machinery/intro.h \ - pieces/walks/pawns/en_passant.h solving/post_move_iteration.h \ - pieces/attributes/magic.h pieces/attributes/paralysing/paralysing.h \ - pieces/attributes/kamikaze/kamikaze.h \ - pieces/attributes/neutral/neutral.h pieces/attributes/neutral/half.h \ - pieces/attributes/hurdle_colour_changing.h \ - pieces/attributes/chameleon.h pieces/attributes/jigger.h \ - pieces/attributes/uncapturable.h pieces/attributes/bul.h \ - pieces/walks/hunters.h conditions/amu/mate_filter.h \ - conditions/circe/goal_filters.h \ - conditions/ultraschachzwang/goal_filter.h \ - options/no_short_variations/no_short_variations.h optimisations/hash.h \ - DHT/dhtbcmem.h optimisations/intelligent/intelligent.h \ - optimisations/intelligent/piece_usage.h \ - optimisations/intelligent/piece_usage.enum.h \ - optimisations/intelligent/piece_usage.enum optimisations/keepmating.h \ - optimisations/killer_move/killer_move.h \ - optimisations/ohneschach/non_checking_first.h \ - optimisations/ohneschach/redundant_immobility_tests.h \ - optimisations/ohneschach/immobility_tests_help.h options/maxtime.h \ - options/degenerate_tree.h options/maxthreatlength.h \ - options/maxflightsquares.h options/nontrivial.h options/movenumbers.h \ - options/nullmoves.h \ - optimisations/count_nr_opponent_moves/move_generator.h \ - optimisations/orthodox_mating_moves/orthodox_mating_moves_generation.h \ - optimisations/intelligent/limit_nr_solutions_per_target.h \ - optimisations/goals/remove_non_reachers.h \ - optimisations/detect_retraction.h optimisations/observation.h \ - debugging/assert.h - +solving/machinery/solvers.obj: solving/machinery/solvers.c \ + solving/machinery/solvers.h stipulation/stipulation.h \ + stipulation/goals/goals.h position/board.h utilities/bitmask.h \ + utilities/boolean.h stipulation/slice_type.h \ + stipulation/slice_type.enum.h stipulation/slice_type.enum \ + position/side.h position/side.enum.h position/side.enum pieces/pieces.h \ + output/mode.h output/mode.enum.h output/mode.enum \ + solving/machinery/twin.h solving/move_effect_journal.h \ + solving/machinery/solve.h solving/machinery/dispatch.h debugging/trace.h \ + position/castling_rights.h solving/ply.h position/pieceid.h \ + options/options.h conditions/conditions.h position/position.h \ + position/color.h position/color.enum.h position/color.enum \ + pieces/walks/vectors.h retro/retro.h solving/selfcheck_guard.h \ + solving/has_solution_type.h solving/has_solution_type.enum.h \ + solving/has_solution_type.enum solving/check.h debugging/measure.h \ + pieces/attributes/total_invisible.h \ + pieces/attributes/total_invisible/goal_validation.h \ + pieces/walks/pawns/promotion.h stipulation/slice_insertion.h \ + stipulation/structure_traversal.h stipulation/slice.h \ + stipulation/slice_structural_type.h \ + stipulation/slice_structural_type.enum.h \ + stipulation/slice_structural_type.enum \ + stipulation/slice_functional_type.h \ + stipulation/slice_functional_type.enum.h \ + stipulation/slice_functional_type.enum \ + stipulation/slice_contextual_type.h \ + stipulation/slice_contextual_type.enum.h \ + stipulation/slice_contextual_type.enum stipulation/traversal.h \ + stipulation/proxy.h stipulation/pipe.h solving/observation.h \ + solving/temporary_hacks.h solving/fork.h output/plaintext/message.h \ + output/message.h input/plaintext/language.h conditions/annan.h \ + conditions/bicaptures.h conditions/bgl.h conditions/bolero.h \ + conditions/breton.h conditions/dister.h conditions/mummer.h \ + conditions/role_exchange.h conditions/facetoface.h \ + conditions/fuddled_men.h conditions/koeko/contact_grid.h \ + conditions/koeko/koeko.h conditions/koeko/anti.h conditions/koeko/new.h \ + conditions/exclusive.h utilities/table.h conditions/republican.h \ + conditions/blackchecks.h conditions/influencer.h conditions/extinction.h \ + conditions/madrasi.h conditions/partial_paralysis.h \ + conditions/maff/immobility_tester.h conditions/owu/immobility_tester.h \ + conditions/ohneschach.h conditions/pointreflection.h \ + conditions/singlebox/type1.h conditions/singlebox/type2.h \ + pieces/walks/pawns/promotee_sequence.h conditions/singlebox/type3.h \ + conditions/patience.h conditions/isardam.h conditions/leffie.h \ + conditions/masand.h conditions/disparate.h conditions/dynasty.h \ + conditions/eiffel.h conditions/ultraschachzwang/legality_tester.h \ + conditions/sat.h conditions/oscillating_kings.h conditions/messigny.h \ + conditions/actuated_revolving_centre.h \ + conditions/actuated_revolving_board.h conditions/circe/circe.h \ + conditions/circe/rebirth_square_occupied.h \ + conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ + conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ + conditions/circe/relevant_side.h conditions/circe/rex_inclusive.h \ + conditions/circe/rebirth_avoider.h conditions/circe/kamikaze.h \ + conditions/anticirce/anticirce.h conditions/anticirce/magic_square.h \ + conditions/sentinelles.h conditions/snek.h conditions/duellists.h \ + conditions/haunted_chess.h position/underworld.h \ + conditions/ghost_chess.h conditions/kobul.h conditions/andernach.h \ + conditions/antiandernach.h conditions/darkside.h \ + conditions/chameleon_pursuit.h conditions/norsk.h conditions/protean.h \ + conditions/einstein/einstein.h conditions/einstein/reverse.h \ + conditions/einstein/anti.h conditions/einstein/en_passant.h \ + conditions/traitor.h conditions/volage.h conditions/magic_square.h \ + conditions/tibet.h conditions/degradierung.h \ + conditions/marscirce/phantom.h conditions/marscirce/marscirce.h \ + solving/move_generator.h conditions/marscirce/anti.h \ + conditions/marscirce/plus.h conditions/line_chameleon.h \ + conditions/haan.h conditions/castling_chess.h \ + conditions/exchange_castling.h conditions/transmuting_kings/super.h \ + conditions/transmuting_kings/reflective_kings.h \ + conditions/amu/attack_counter.h conditions/imitator.h \ + conditions/football.h conditions/woozles.h conditions/immune.h \ + conditions/provocateurs.h conditions/lortap.h conditions/patrol.h \ + conditions/nocapture.h conditions/nopromotion.h conditions/geneva.h \ + conditions/monochrome.h conditions/bichrome.h conditions/edgemover.h \ + conditions/grid.h conditions/take_and_make.h conditions/make_and_take.h \ + conditions/superguards.h conditions/central.h conditions/beamten.h \ + conditions/brunner.h conditions/wormhole.h \ + conditions/transmuting_kings/transmuting_kings.h \ + conditions/transmuting_kings/vaulting_kings.h conditions/backhome.h \ + conditions/vogtlaender.h conditions/bicolores.h conditions/antikings.h \ + conditions/follow_my_leader.h conditions/alphabetic.h \ + conditions/forced_squares.h conditions/synchronous.h \ + conditions/must_capture.h conditions/lostpieces.h \ + conditions/series_capture.h conditions/pepo.h conditions/cast.h \ + conditions/multicaptures.h conditions/transmissionmenace.h \ + conditions/powertransfer.h platform/maxtime.h \ + conditions/shielded_kings.h solving/end_of_branch_tester.h \ + solving/dead_end.h stipulation/constraint.h solving/moves_traversal.h \ + stipulation/goals/immobile/reached_tester.h \ + stipulation/goals/kiss/reached_tester.h stipulation/branch.h \ + stipulation/fork.h stipulation/move.h solving/duplex.h solving/pipe.h \ + solving/king_capture_avoider.h solving/testers.h solving/find_shortest.h \ + solving/for_each_move.h solving/battle_play/try.h \ + solving/battle_play/threat.h solving/battle_play/continuation.h \ + solving/battle_play/setplay.h solving/battle_play/min_length_guard.h \ + solving/boolean/and.h solving/goals/prerequisite_guards.h \ + solving/trivial_end_filter.h solving/avoid_unsolvable.h \ + solving/play_suppressor.h solving/castling.h solving/machinery/intro.h \ + pieces/walks/pawns/en_passant.h solving/post_move_iteration.h \ + pieces/attributes/magic.h pieces/attributes/paralysing/paralysing.h \ + pieces/attributes/kamikaze/kamikaze.h \ + pieces/attributes/neutral/neutral.h pieces/attributes/neutral/half.h \ + pieces/attributes/hurdle_colour_changing.h pieces/attributes/chameleon.h \ + pieces/attributes/jigger.h pieces/attributes/uncapturable.h \ + pieces/attributes/bul.h pieces/walks/hunters.h \ + conditions/amu/mate_filter.h conditions/circe/goal_filters.h \ + conditions/ultraschachzwang/goal_filter.h \ + options/no_short_variations/no_short_variations.h optimisations/hash.h \ + DHT/dhtbcmem.h optimisations/intelligent/intelligent.h \ + optimisations/intelligent/piece_usage.h \ + optimisations/intelligent/piece_usage.enum.h \ + optimisations/intelligent/piece_usage.enum optimisations/keepmating.h \ + optimisations/killer_move/killer_move.h \ + optimisations/ohneschach/non_checking_first.h \ + optimisations/ohneschach/redundant_immobility_tests.h \ + optimisations/ohneschach/immobility_tests_help.h options/maxtime.h \ + options/degenerate_tree.h options/maxthreatlength.h \ + options/maxflightsquares.h options/nontrivial.h options/movenumbers.h \ + options/nullmoves.h \ + optimisations/count_nr_opponent_moves/move_generator.h \ + optimisations/orthodox_mating_moves/orthodox_mating_moves_generation.h \ + optimisations/intelligent/limit_nr_solutions_per_target.h \ + optimisations/goals/remove_non_reachers.h \ + optimisations/detect_retraction.h optimisations/observation.h \ + debugging/assert.h solving/machinery/solvers.h: - stipulation/stipulation.h: - stipulation/goals/goals.h: - position/board.h: - utilities/bitmask.h: - utilities/boolean.h: - stipulation/slice_type.h: - stipulation/slice_type.enum.h: - stipulation/slice_type.enum: - position/side.h: - position/side.enum.h: - position/side.enum: - pieces/pieces.h: - output/mode.h: - output/mode.enum.h: - output/mode.enum: - solving/machinery/twin.h: - solving/move_effect_journal.h: - solving/machinery/solve.h: - solving/machinery/dispatch.h: - debugging/trace.h: - position/castling_rights.h: - solving/ply.h: - position/pieceid.h: - options/options.h: - conditions/conditions.h: - position/position.h: - position/color.h: - position/color.enum.h: - position/color.enum: - pieces/walks/vectors.h: - retro/retro.h: - solving/selfcheck_guard.h: - solving/has_solution_type.h: - solving/has_solution_type.enum.h: - solving/has_solution_type.enum: - solving/check.h: - debugging/measure.h: - -output/plaintext/protocol.h: - pieces/attributes/total_invisible.h: - pieces/attributes/total_invisible/goal_validation.h: - pieces/walks/pawns/promotion.h: - stipulation/slice_insertion.h: - stipulation/structure_traversal.h: - stipulation/slice.h: - stipulation/slice_structural_type.h: - stipulation/slice_structural_type.enum.h: - stipulation/slice_structural_type.enum: - stipulation/slice_functional_type.h: - stipulation/slice_functional_type.enum.h: - stipulation/slice_functional_type.enum: - stipulation/slice_contextual_type.h: - stipulation/slice_contextual_type.enum.h: - stipulation/slice_contextual_type.enum: - stipulation/traversal.h: - stipulation/proxy.h: - stipulation/pipe.h: - solving/observation.h: - solving/temporary_hacks.h: - solving/fork.h: - output/plaintext/message.h: - output/message.h: - input/plaintext/language.h: - conditions/annan.h: - conditions/bicaptures.h: - conditions/bgl.h: - conditions/bolero.h: - conditions/breton.h: - conditions/dister.h: - conditions/mummer.h: - conditions/role_exchange.h: - conditions/facetoface.h: - conditions/fuddled_men.h: - conditions/koeko/contact_grid.h: - conditions/koeko/koeko.h: - conditions/koeko/anti.h: - conditions/koeko/new.h: - conditions/exclusive.h: - utilities/table.h: - conditions/republican.h: - conditions/blackchecks.h: - conditions/influencer.h: - conditions/extinction.h: - conditions/madrasi.h: - conditions/partial_paralysis.h: - conditions/maff/immobility_tester.h: - conditions/owu/immobility_tester.h: - conditions/ohneschach.h: - conditions/pointreflection.h: - conditions/singlebox/type1.h: - conditions/singlebox/type2.h: - pieces/walks/pawns/promotee_sequence.h: - conditions/singlebox/type3.h: - conditions/patience.h: - conditions/isardam.h: - conditions/leffie.h: - conditions/masand.h: - conditions/disparate.h: - conditions/dynasty.h: - conditions/eiffel.h: - conditions/ultraschachzwang/legality_tester.h: - conditions/sat.h: - conditions/oscillating_kings.h: - conditions/messigny.h: - conditions/actuated_revolving_centre.h: - conditions/actuated_revolving_board.h: - conditions/circe/circe.h: - conditions/circe/rebirth_square_occupied.h: - conditions/circe/reborn_piece.h: - conditions/circe/rebirth_square.h: - conditions/circe/relevant_capture.h: - conditions/circe/relevant_piece.h: - conditions/circe/relevant_side.h: - conditions/circe/rex_inclusive.h: - conditions/circe/rebirth_avoider.h: - conditions/circe/kamikaze.h: - conditions/anticirce/anticirce.h: - conditions/anticirce/magic_square.h: - conditions/sentinelles.h: - conditions/snek.h: - conditions/duellists.h: - conditions/haunted_chess.h: - position/underworld.h: - conditions/ghost_chess.h: - conditions/kobul.h: - conditions/andernach.h: - conditions/antiandernach.h: - conditions/darkside.h: - conditions/chameleon_pursuit.h: - conditions/norsk.h: - conditions/protean.h: - conditions/einstein/einstein.h: - conditions/einstein/reverse.h: - conditions/einstein/anti.h: - conditions/einstein/en_passant.h: - conditions/traitor.h: - conditions/volage.h: - conditions/magic_square.h: - conditions/tibet.h: - conditions/degradierung.h: - conditions/marscirce/phantom.h: - conditions/marscirce/marscirce.h: - solving/move_generator.h: - conditions/marscirce/anti.h: - conditions/marscirce/plus.h: - conditions/line_chameleon.h: - conditions/haan.h: - conditions/castling_chess.h: - conditions/exchange_castling.h: - conditions/transmuting_kings/super.h: - conditions/transmuting_kings/reflective_kings.h: - conditions/amu/attack_counter.h: - conditions/imitator.h: - conditions/football.h: - conditions/woozles.h: - conditions/immune.h: - conditions/provocateurs.h: - conditions/lortap.h: - conditions/patrol.h: - conditions/nocapture.h: - conditions/nopromotion.h: - conditions/geneva.h: - conditions/monochrome.h: - conditions/bichrome.h: - conditions/edgemover.h: - conditions/grid.h: - conditions/take_and_make.h: - conditions/make_and_take.h: - conditions/superguards.h: - conditions/central.h: - conditions/beamten.h: - conditions/brunner.h: - conditions/wormhole.h: - conditions/transmuting_kings/transmuting_kings.h: - conditions/transmuting_kings/vaulting_kings.h: - conditions/backhome.h: - conditions/vogtlaender.h: - conditions/bicolores.h: - conditions/antikings.h: - conditions/follow_my_leader.h: - conditions/alphabetic.h: - conditions/forced_squares.h: - conditions/synchronous.h: - conditions/must_capture.h: - conditions/lostpieces.h: - conditions/series_capture.h: - conditions/pepo.h: - conditions/cast.h: - conditions/multicaptures.h: - conditions/transmissionmenace.h: - conditions/powertransfer.h: - platform/maxtime.h: - conditions/shielded_kings.h: - solving/end_of_branch_tester.h: - solving/dead_end.h: - stipulation/constraint.h: - solving/moves_traversal.h: - stipulation/goals/immobile/reached_tester.h: - stipulation/goals/kiss/reached_tester.h: - stipulation/branch.h: - stipulation/fork.h: - stipulation/move.h: - solving/duplex.h: - solving/pipe.h: - solving/king_capture_avoider.h: - solving/testers.h: - solving/find_shortest.h: - solving/for_each_move.h: - solving/battle_play/try.h: - solving/battle_play/threat.h: - solving/battle_play/continuation.h: - solving/battle_play/setplay.h: - solving/battle_play/min_length_guard.h: - solving/boolean/and.h: - solving/goals/prerequisite_guards.h: - solving/trivial_end_filter.h: - solving/avoid_unsolvable.h: - solving/play_suppressor.h: - solving/castling.h: - solving/machinery/intro.h: - pieces/walks/pawns/en_passant.h: - solving/post_move_iteration.h: - pieces/attributes/magic.h: - pieces/attributes/paralysing/paralysing.h: - pieces/attributes/kamikaze/kamikaze.h: - pieces/attributes/neutral/neutral.h: - pieces/attributes/neutral/half.h: - pieces/attributes/hurdle_colour_changing.h: - pieces/attributes/chameleon.h: - pieces/attributes/jigger.h: - pieces/attributes/uncapturable.h: - pieces/attributes/bul.h: - pieces/walks/hunters.h: - conditions/amu/mate_filter.h: - conditions/circe/goal_filters.h: - conditions/ultraschachzwang/goal_filter.h: - options/no_short_variations/no_short_variations.h: - optimisations/hash.h: - DHT/dhtbcmem.h: - optimisations/intelligent/intelligent.h: - optimisations/intelligent/piece_usage.h: - optimisations/intelligent/piece_usage.enum.h: - optimisations/intelligent/piece_usage.enum: - optimisations/keepmating.h: - optimisations/killer_move/killer_move.h: - optimisations/ohneschach/non_checking_first.h: - optimisations/ohneschach/redundant_immobility_tests.h: - optimisations/ohneschach/immobility_tests_help.h: - options/maxtime.h: - options/degenerate_tree.h: - options/maxthreatlength.h: - options/maxflightsquares.h: - options/nontrivial.h: - options/movenumbers.h: - options/nullmoves.h: - optimisations/count_nr_opponent_moves/move_generator.h: - optimisations/orthodox_mating_moves/orthodox_mating_moves_generation.h: - optimisations/intelligent/limit_nr_solutions_per_target.h: - optimisations/goals/remove_non_reachers.h: - optimisations/detect_retraction.h: - optimisations/observation.h: - debugging/assert.h: -solving/machinery/solve$(OBJ_SUFFIX): solving/machinery/solve.c \ - solving/machinery/solve.h stipulation/stipulation.h \ - stipulation/goals/goals.h position/board.h utilities/bitmask.h \ - utilities/boolean.h stipulation/slice_type.h \ - stipulation/slice_type.enum.h stipulation/slice_type.enum \ - position/side.h position/side.enum.h position/side.enum \ - pieces/pieces.h output/mode.h output/mode.enum.h output/mode.enum \ - solving/machinery/dispatch.h debugging/trace.h \ - solving/machinery/slack_length.h solving/has_solution_type.h \ - solving/has_solution_type.enum.h solving/has_solution_type.enum \ - debugging/measure.h output/plaintext/protocol.h debugging/assert.h - +solving/machinery/solve.obj: solving/machinery/solve.c \ + solving/machinery/solve.h stipulation/stipulation.h \ + stipulation/goals/goals.h position/board.h utilities/bitmask.h \ + utilities/boolean.h stipulation/slice_type.h \ + stipulation/slice_type.enum.h stipulation/slice_type.enum \ + position/side.h position/side.enum.h position/side.enum pieces/pieces.h \ + output/mode.h output/mode.enum.h output/mode.enum \ + solving/machinery/dispatch.h debugging/trace.h \ + solving/machinery/slack_length.h solving/has_solution_type.h \ + solving/has_solution_type.enum.h solving/has_solution_type.enum \ + debugging/measure.h debugging/assert.h solving/machinery/solve.h: - stipulation/stipulation.h: - stipulation/goals/goals.h: - position/board.h: - utilities/bitmask.h: - utilities/boolean.h: - stipulation/slice_type.h: - stipulation/slice_type.enum.h: - stipulation/slice_type.enum: - position/side.h: - position/side.enum.h: - position/side.enum: - pieces/pieces.h: - output/mode.h: - output/mode.enum.h: - output/mode.enum: - solving/machinery/dispatch.h: - debugging/trace.h: - solving/machinery/slack_length.h: - solving/has_solution_type.h: - solving/has_solution_type.enum.h: - solving/has_solution_type.enum: - debugging/measure.h: - -output/plaintext/protocol.h: - debugging/assert.h: -solving/machinery/twin$(OBJ_SUFFIX): solving/machinery/twin.c \ - solving/machinery/twin.h stipulation/stipulation.h \ - stipulation/goals/goals.h position/board.h utilities/bitmask.h \ - utilities/boolean.h stipulation/slice_type.h \ - stipulation/slice_type.enum.h stipulation/slice_type.enum \ - position/side.h position/side.enum.h position/side.enum \ - pieces/pieces.h output/mode.h output/mode.enum.h output/mode.enum \ - solving/move_effect_journal.h solving/machinery/solve.h \ - solving/machinery/dispatch.h debugging/trace.h \ - position/castling_rights.h solving/ply.h position/pieceid.h \ - pieces/attributes/magic.h pieces/attributes/neutral/neutral.h \ - position/position.h position/color.h position/color.enum.h \ - position/color.enum pieces/walks/vectors.h \ - pieces/attributes/total_invisible.h \ - pieces/attributes/total_invisible/goal_validation.h \ - pieces/walks/walks.h pieces/walks/classification.h \ - pieces/walks/pawns/promotee_sequence.h pieces/walks/pawns/en_passant.h \ - solving/observation.h solving/temporary_hacks.h solving/fork.h \ - pieces/walks/orphan.h position/underworld.h \ - position/effects/king_square.h position/effects/flags_change.h \ - conditions/conditions.h conditions/alphabetic.h conditions/mummer.h \ - conditions/anticirce/anticirce.h conditions/circe/circe.h \ - stipulation/structure_traversal.h stipulation/slice.h \ - stipulation/slice_structural_type.h \ - stipulation/slice_structural_type.enum.h \ - stipulation/slice_structural_type.enum \ - stipulation/slice_functional_type.h \ - stipulation/slice_functional_type.enum.h \ - stipulation/slice_functional_type.enum \ - stipulation/slice_contextual_type.h \ - stipulation/slice_contextual_type.enum.h \ - stipulation/slice_contextual_type.enum stipulation/traversal.h \ - stipulation/slice_insertion.h \ - conditions/circe/rebirth_square_occupied.h \ - conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ - conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ - conditions/circe/relevant_side.h conditions/blackchecks.h \ - conditions/cast.h conditions/dister.h conditions/duellists.h \ - conditions/exclusive.h utilities/table.h conditions/follow_my_leader.h \ - conditions/football.h conditions/forced_squares.h conditions/geneva.h \ - conditions/imitator.h conditions/immune.h conditions/isardam.h \ - conditions/marscirce/marscirce.h solving/move_generator.h \ - debugging/measure.h output/plaintext/protocol.h \ - conditions/marscirce/anti.h conditions/marscirce/phantom.h \ - conditions/must_capture.h conditions/republican.h \ - conditions/sentinelles.h conditions/singlebox/type1.h \ - conditions/synchronous.h conditions/transmuting_kings/super.h \ - conditions/transmuting_kings/transmuting_kings.h \ - conditions/transmuting_kings/vaulting_kings.h \ - conditions/multicaptures.h options/options.h \ - optimisations/count_nr_opponent_moves/move_generator.h \ - optimisations/killer_move/killer_move.h \ - optimisations/orthodox_mating_moves/orthodox_mating_moves_generation.h \ - output/plaintext/message.h output/message.h input/plaintext/language.h \ - solving/castling.h solving/duplex.h solving/has_solution_type.h \ - solving/has_solution_type.enum.h solving/has_solution_type.enum \ - solving/moves_traversal.h solving/proofgames.h \ - solving/king_capture_avoider.h \ - solving/find_square_observer_tracking_back_from_target.h \ - solving/pipe.h stipulation/branch.h stipulation/proxy.h \ - stipulation/pipe.h debugging/assert.h - +solving/machinery/twin.obj: solving/machinery/twin.c \ + solving/machinery/twin.h stipulation/stipulation.h \ + stipulation/goals/goals.h position/board.h utilities/bitmask.h \ + utilities/boolean.h stipulation/slice_type.h \ + stipulation/slice_type.enum.h stipulation/slice_type.enum \ + position/side.h position/side.enum.h position/side.enum pieces/pieces.h \ + output/mode.h output/mode.enum.h output/mode.enum \ + solving/move_effect_journal.h solving/machinery/solve.h \ + solving/machinery/dispatch.h debugging/trace.h \ + position/castling_rights.h solving/ply.h position/pieceid.h \ + pieces/attributes/magic.h pieces/attributes/neutral/neutral.h \ + position/position.h position/color.h position/color.enum.h \ + position/color.enum pieces/walks/vectors.h \ + pieces/attributes/total_invisible.h \ + pieces/attributes/total_invisible/goal_validation.h pieces/walks/walks.h \ + pieces/walks/classification.h pieces/walks/pawns/promotee_sequence.h \ + pieces/walks/pawns/en_passant.h solving/observation.h \ + solving/temporary_hacks.h solving/fork.h pieces/walks/orphan.h \ + position/underworld.h position/effects/king_square.h \ + position/effects/flags_change.h conditions/conditions.h \ + conditions/alphabetic.h conditions/mummer.h \ + conditions/anticirce/anticirce.h conditions/circe/circe.h \ + stipulation/structure_traversal.h stipulation/slice.h \ + stipulation/slice_structural_type.h \ + stipulation/slice_structural_type.enum.h \ + stipulation/slice_structural_type.enum \ + stipulation/slice_functional_type.h \ + stipulation/slice_functional_type.enum.h \ + stipulation/slice_functional_type.enum \ + stipulation/slice_contextual_type.h \ + stipulation/slice_contextual_type.enum.h \ + stipulation/slice_contextual_type.enum stipulation/traversal.h \ + stipulation/slice_insertion.h conditions/circe/rebirth_square_occupied.h \ + conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ + conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ + conditions/circe/relevant_side.h conditions/blackchecks.h \ + conditions/cast.h conditions/dister.h conditions/duellists.h \ + conditions/exclusive.h utilities/table.h conditions/follow_my_leader.h \ + conditions/football.h conditions/forced_squares.h conditions/geneva.h \ + conditions/imitator.h conditions/immune.h conditions/isardam.h \ + conditions/marscirce/marscirce.h solving/move_generator.h \ + debugging/measure.h conditions/marscirce/anti.h \ + conditions/marscirce/phantom.h conditions/must_capture.h \ + conditions/republican.h conditions/sentinelles.h \ + conditions/singlebox/type1.h conditions/synchronous.h \ + conditions/transmuting_kings/super.h \ + conditions/transmuting_kings/transmuting_kings.h \ + conditions/transmuting_kings/vaulting_kings.h conditions/multicaptures.h \ + options/options.h optimisations/count_nr_opponent_moves/move_generator.h \ + optimisations/killer_move/killer_move.h \ + optimisations/orthodox_mating_moves/orthodox_mating_moves_generation.h \ + output/plaintext/message.h output/message.h input/plaintext/language.h \ + solving/castling.h solving/duplex.h solving/has_solution_type.h \ + solving/has_solution_type.enum.h solving/has_solution_type.enum \ + solving/moves_traversal.h solving/proofgames.h \ + solving/king_capture_avoider.h \ + solving/find_square_observer_tracking_back_from_target.h solving/pipe.h \ + stipulation/branch.h stipulation/proxy.h stipulation/pipe.h \ + debugging/assert.h solving/machinery/twin.h: - stipulation/stipulation.h: - stipulation/goals/goals.h: - position/board.h: - utilities/bitmask.h: - utilities/boolean.h: - stipulation/slice_type.h: - stipulation/slice_type.enum.h: - stipulation/slice_type.enum: - position/side.h: - position/side.enum.h: - position/side.enum: - pieces/pieces.h: - output/mode.h: - output/mode.enum.h: - output/mode.enum: - solving/move_effect_journal.h: - solving/machinery/solve.h: - solving/machinery/dispatch.h: - debugging/trace.h: - position/castling_rights.h: - solving/ply.h: - position/pieceid.h: - pieces/attributes/magic.h: - pieces/attributes/neutral/neutral.h: - position/position.h: - position/color.h: - position/color.enum.h: - position/color.enum: - pieces/walks/vectors.h: - pieces/attributes/total_invisible.h: - pieces/attributes/total_invisible/goal_validation.h: - pieces/walks/walks.h: - pieces/walks/classification.h: - pieces/walks/pawns/promotee_sequence.h: - pieces/walks/pawns/en_passant.h: - solving/observation.h: - solving/temporary_hacks.h: - solving/fork.h: - pieces/walks/orphan.h: - position/underworld.h: - position/effects/king_square.h: - position/effects/flags_change.h: - conditions/conditions.h: - conditions/alphabetic.h: - conditions/mummer.h: - conditions/anticirce/anticirce.h: - conditions/circe/circe.h: - stipulation/structure_traversal.h: - stipulation/slice.h: - stipulation/slice_structural_type.h: - stipulation/slice_structural_type.enum.h: - stipulation/slice_structural_type.enum: - stipulation/slice_functional_type.h: - stipulation/slice_functional_type.enum.h: - stipulation/slice_functional_type.enum: - stipulation/slice_contextual_type.h: - stipulation/slice_contextual_type.enum.h: - stipulation/slice_contextual_type.enum: - stipulation/traversal.h: - stipulation/slice_insertion.h: - conditions/circe/rebirth_square_occupied.h: - conditions/circe/reborn_piece.h: - conditions/circe/rebirth_square.h: - conditions/circe/relevant_capture.h: - conditions/circe/relevant_piece.h: - conditions/circe/relevant_side.h: - conditions/blackchecks.h: - conditions/cast.h: - conditions/dister.h: - conditions/duellists.h: - conditions/exclusive.h: - utilities/table.h: - conditions/follow_my_leader.h: - conditions/football.h: - conditions/forced_squares.h: - conditions/geneva.h: - conditions/imitator.h: - conditions/immune.h: - conditions/isardam.h: - conditions/marscirce/marscirce.h: - solving/move_generator.h: - debugging/measure.h: - -output/plaintext/protocol.h: - conditions/marscirce/anti.h: - conditions/marscirce/phantom.h: - conditions/must_capture.h: - conditions/republican.h: - conditions/sentinelles.h: - conditions/singlebox/type1.h: - conditions/synchronous.h: - conditions/transmuting_kings/super.h: - conditions/transmuting_kings/transmuting_kings.h: - conditions/transmuting_kings/vaulting_kings.h: - conditions/multicaptures.h: - options/options.h: - optimisations/count_nr_opponent_moves/move_generator.h: - optimisations/killer_move/killer_move.h: - optimisations/orthodox_mating_moves/orthodox_mating_moves_generation.h: - output/plaintext/message.h: - output/message.h: - input/plaintext/language.h: - solving/castling.h: - solving/duplex.h: - solving/has_solution_type.h: - solving/has_solution_type.enum.h: - solving/has_solution_type.enum: - solving/moves_traversal.h: - solving/proofgames.h: - solving/king_capture_avoider.h: - solving/find_square_observer_tracking_back_from_target.h: - solving/pipe.h: - stipulation/branch.h: - stipulation/proxy.h: - stipulation/pipe.h: - debugging/assert.h: -solving/machinery/intro$(OBJ_SUFFIX): solving/machinery/intro.c \ - solving/machinery/intro.h stipulation/stipulation.h \ - stipulation/goals/goals.h position/board.h utilities/bitmask.h \ - utilities/boolean.h stipulation/slice_type.h \ - stipulation/slice_type.enum.h stipulation/slice_type.enum \ - position/side.h position/side.enum.h position/side.enum \ - pieces/pieces.h output/mode.h output/mode.enum.h output/mode.enum \ - stipulation/branch.h stipulation/structure_traversal.h \ - stipulation/slice.h stipulation/slice_structural_type.h \ - stipulation/slice_structural_type.enum.h \ - stipulation/slice_structural_type.enum \ - stipulation/slice_functional_type.h \ - stipulation/slice_functional_type.enum.h \ - stipulation/slice_functional_type.enum \ - stipulation/slice_contextual_type.h \ - stipulation/slice_contextual_type.enum.h \ - stipulation/slice_contextual_type.enum stipulation/traversal.h \ - solving/battle_play/attack_adapter.h solving/machinery/solve.h \ - solving/machinery/dispatch.h debugging/trace.h \ - solving/battle_play/defense_adapter.h solving/help_play/adapter.h \ - debugging/assert.h debugging/measure.h output/plaintext/protocol.h - +solving/machinery/intro.obj: solving/machinery/intro.c \ + solving/machinery/intro.h stipulation/stipulation.h \ + stipulation/goals/goals.h position/board.h utilities/bitmask.h \ + utilities/boolean.h stipulation/slice_type.h \ + stipulation/slice_type.enum.h stipulation/slice_type.enum \ + position/side.h position/side.enum.h position/side.enum pieces/pieces.h \ + output/mode.h output/mode.enum.h output/mode.enum stipulation/branch.h \ + stipulation/structure_traversal.h stipulation/slice.h \ + stipulation/slice_structural_type.h \ + stipulation/slice_structural_type.enum.h \ + stipulation/slice_structural_type.enum \ + stipulation/slice_functional_type.h \ + stipulation/slice_functional_type.enum.h \ + stipulation/slice_functional_type.enum \ + stipulation/slice_contextual_type.h \ + stipulation/slice_contextual_type.enum.h \ + stipulation/slice_contextual_type.enum stipulation/traversal.h \ + solving/battle_play/attack_adapter.h solving/machinery/solve.h \ + solving/machinery/dispatch.h debugging/trace.h \ + solving/battle_play/defense_adapter.h solving/help_play/adapter.h \ + debugging/assert.h debugging/measure.h solving/machinery/intro.h: - stipulation/stipulation.h: - stipulation/goals/goals.h: - position/board.h: - utilities/bitmask.h: - utilities/boolean.h: - stipulation/slice_type.h: - stipulation/slice_type.enum.h: - stipulation/slice_type.enum: - position/side.h: - position/side.enum.h: - position/side.enum: - pieces/pieces.h: - output/mode.h: - output/mode.enum.h: - output/mode.enum: - stipulation/branch.h: - stipulation/structure_traversal.h: - stipulation/slice.h: - stipulation/slice_structural_type.h: - stipulation/slice_structural_type.enum.h: - stipulation/slice_structural_type.enum: - stipulation/slice_functional_type.h: - stipulation/slice_functional_type.enum.h: - stipulation/slice_functional_type.enum: - stipulation/slice_contextual_type.h: - stipulation/slice_contextual_type.enum.h: - stipulation/slice_contextual_type.enum: - stipulation/traversal.h: - solving/battle_play/attack_adapter.h: - solving/machinery/solve.h: - solving/machinery/dispatch.h: - debugging/trace.h: - solving/battle_play/defense_adapter.h: - solving/help_play/adapter.h: - debugging/assert.h: - debugging/measure.h: - -output/plaintext/protocol.h: -solving/machinery/dispatch$(OBJ_SUFFIX): solving/machinery/dispatch.c \ - solving/machinery/dispatch.h stipulation/stipulation.h \ - stipulation/goals/goals.h position/board.h utilities/bitmask.h \ - utilities/boolean.h stipulation/slice_type.h \ - stipulation/slice_type.enum.h stipulation/slice_type.enum \ - position/side.h position/side.enum.h position/side.enum \ - pieces/pieces.h output/mode.h output/mode.enum.h output/mode.enum \ - conditions/amu/mate_filter.h solving/machinery/solve.h \ - debugging/trace.h conditions/amu/attack_counter.h solving/ply.h \ - conditions/anticirce/cheylan.h conditions/anticirce/magic_square.h \ - conditions/anticirce/clone.h conditions/anticirce/couscous.h \ - conditions/bgl.h solving/move_effect_journal.h \ - position/castling_rights.h position/pieceid.h conditions/bicaptures.h \ - conditions/blackchecks.h conditions/mummer.h conditions/bolero.h \ - conditions/breton.h conditions/role_exchange.h \ - conditions/koeko/koeko.h conditions/koeko/contact_grid.h \ - conditions/koeko/anti.h conditions/koeko/new.h \ - conditions/circe/antipodes.h conditions/circe/chameleon.h \ - conditions/circe/circe.h stipulation/structure_traversal.h \ - stipulation/slice.h stipulation/slice_structural_type.h \ - stipulation/slice_structural_type.enum.h \ - stipulation/slice_structural_type.enum \ - stipulation/slice_functional_type.h \ - stipulation/slice_functional_type.enum.h \ - stipulation/slice_functional_type.enum \ - stipulation/slice_contextual_type.h \ - stipulation/slice_contextual_type.enum.h \ - stipulation/slice_contextual_type.enum stipulation/traversal.h \ - stipulation/slice_insertion.h solving/machinery/twin.h \ - conditions/circe/rebirth_square_occupied.h \ - conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ - conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ - conditions/circe/relevant_side.h conditions/circe/diametral.h \ - conditions/circe/verticalmirror.h \ - conditions/circe/circuit_by_rebirth_special.h conditions/circe/clone.h \ - conditions/circe/couscous.h conditions/circe/diagram.h \ - conditions/circe/einstein.h \ - conditions/circe/exchange_by_rebirth_special.h conditions/circe/file.h \ - conditions/circe/frischauf.h conditions/circe/glasgow.h \ - conditions/circe/steingewinn_filter.h conditions/circe/assassin.h \ - conditions/circe/super.h conditions/circe/april.h \ - conditions/circe/takemake.h conditions/circe/mirror.h \ - conditions/circe/pwc.h conditions/circe/rank.h \ - conditions/circe/symmetry.h conditions/circe/rex_inclusive.h \ - conditions/circe/parachute.h conditions/darkside.h \ - conditions/exclusive.h utilities/table.h position/position.h \ - position/color.h position/color.enum.h position/color.enum \ - pieces/walks/vectors.h conditions/extinction.h \ - conditions/fuddled_men.h conditions/influencer.h \ - conditions/ohneschach.h conditions/maff/immobility_tester.h \ - conditions/owu/immobility_tester.h conditions/provocateurs.h \ - conditions/lortap.h conditions/patrol.h conditions/monochrome.h \ - solving/move_generator.h debugging/measure.h \ - output/plaintext/protocol.h conditions/bichrome.h \ - conditions/transmissionmenace.h conditions/powertransfer.h \ - conditions/ultraschachzwang/legality_tester.h \ - conditions/singlebox/type1.h conditions/conditions.h \ - conditions/singlebox/type2.h pieces/walks/pawns/promotee_sequence.h \ - conditions/singlebox/type3.h solving/observation.h \ - solving/temporary_hacks.h solving/fork.h conditions/snek.h \ - conditions/patience.h conditions/isardam.h conditions/leffie.h \ - conditions/sat.h conditions/dynasty.h conditions/masand.h \ - conditions/messigny.h conditions/oscillating_kings.h \ - conditions/actuated_revolving_centre.h \ - conditions/actuated_revolving_board.h conditions/republican.h \ - conditions/circe/capture_fork.h conditions/circe/cage.h \ - conditions/circe/double_agents.h conditions/circe/kamikaze.h \ - conditions/circe/parrain.h conditions/circe/volage.h \ - conditions/anticirce/anticirce.h conditions/sentinelles.h \ - conditions/duellists.h conditions/haunted_chess.h \ - position/underworld.h conditions/ghost_chess.h conditions/kobul.h \ - conditions/andernach.h conditions/antiandernach.h \ - conditions/bicolores.h conditions/chameleon_pursuit.h \ - conditions/norsk.h conditions/protean.h conditions/einstein/einstein.h \ - conditions/einstein/reverse.h conditions/einstein/anti.h \ - conditions/einstein/en_passant.h conditions/traitor.h \ - conditions/volage.h conditions/magic_square.h conditions/tibet.h \ - conditions/degradierung.h conditions/marscirce/marscirce.h \ - conditions/marscirce/phantom.h conditions/marscirce/anti.h \ - conditions/line_chameleon.h conditions/haan.h \ - conditions/castling_chess.h conditions/exchange_castling.h \ - conditions/transmuting_kings/super.h conditions/imitator.h \ - conditions/football.h conditions/woozles.h conditions/nocapture.h \ - conditions/nopromotion.h conditions/geneva.h conditions/edgemover.h \ - conditions/grid.h conditions/take_and_make.h \ - conditions/make_and_take.h conditions/superguards.h \ - conditions/wormhole.h conditions/backhome.h \ - conditions/shielded_kings.h conditions/annan.h \ - conditions/pointreflection.h conditions/beamten.h conditions/central.h \ - conditions/disparate.h conditions/eiffel.h conditions/facetoface.h \ - conditions/madrasi.h conditions/partial_paralysis.h \ - conditions/marscirce/plus.h \ - conditions/transmuting_kings/transmuting_kings.h \ - conditions/transmuting_kings/reflective_kings.h \ - conditions/transmuting_kings/vaulting_kings.h conditions/lostpieces.h \ - conditions/series_capture.h conditions/pepo.h conditions/cast.h \ - conditions/multicaptures.h optimisations/orthodox_check_directions.h \ - optimisations/hash.h DHT/dhtbcmem.h optimisations/keepmating.h \ - optimisations/count_nr_opponent_moves/opponent_moves_counter.h \ - optimisations/count_nr_opponent_moves/prioriser.h \ - optimisations/goals/castling/filter.h \ - optimisations/goals/enpassant/filter.h \ - optimisations/goals/enpassant/remove_non_reachers.h \ - optimisations/goals/castling/remove_non_reachers.h \ - optimisations/goals/chess81/remove_non_reachers.h \ - optimisations/goals/capture/remove_non_reachers.h \ - optimisations/goals/target/remove_non_reachers.h \ - optimisations/detect_retraction.h \ - optimisations/intelligent/duplicate_avoider.h \ - optimisations/intelligent/limit_nr_solutions_per_target.h \ - optimisations/intelligent/guard_flights.h \ - optimisations/intelligent/block_flights.h \ - optimisations/intelligent/filter.h \ - optimisations/intelligent/mate/finish.h \ - optimisations/intelligent/mate/goalreachable_guard.h \ - optimisations/intelligent/moves_left.h \ - optimisations/intelligent/proof.h \ - optimisations/intelligent/stalemate/finish.h \ - optimisations/intelligent/stalemate/goalreachable_guard.h \ - optimisations/intelligent/stalemate/immobilise_black.h \ - optimisations/killer_move/collector.h \ - optimisations/killer_move/final_defense_move.h \ - optimisations/killer_move/prioriser.h \ - optimisations/orthodox_mating_moves/orthodox_mating_move_generator.h \ - optimisations/orthodox_mating_moves/king_contact_move_generator.h \ - optimisations/orthodox_square_observation.h \ - optimisations/ohneschach/non_checking_first.h \ - optimisations/ohneschach/stop_if_check.h optimisations/observation.h \ - solving/incomplete.h options/maxsolutions/guard.h \ - options/maxsolutions/initialiser.h options/maxtime.h \ - platform/maxtime.h options/movenumbers.h options/degenerate_tree.h \ - options/nontrivial.h options/maxthreatlength.h \ - options/maxflightsquares.h options/maxsolutions/maxsolutions.h \ - options/movenumbers/restart_guard_intelligent.h \ - options/no_short_variations/no_short_variations_attacker_filter.h \ - options/stoponshortsolutions/stoponshortsolutions.h \ - options/stoponshortsolutions/filter.h options/quodlibet.h \ - options/goal_is_end.h options/nullmoves.h input/commandline.h \ - input/plaintext/plaintext.h input/plaintext/problem.h \ - input/plaintext/twin.h input/plaintext/token.h \ - input/plaintext/language.h input/plaintext/option.h \ - input/plaintext/condition.h output/output.h \ - output/plaintext/plaintext.h output/plaintext/end_of_phase_writer.h \ - output/plaintext/ohneschach_detect_undecidable_goal.h \ - output/plaintext/illegal_selfcheck_writer.h \ - output/plaintext/goal_writer.h output/plaintext/constraint_writer.h \ - output/plaintext/position.h output/plaintext/move_inversion_counter.h \ - output/plaintext/line/line_writer.h \ - output/plaintext/line/end_of_intro_series_marker.h \ - output/plaintext/line/refuting_variation_writer.h \ - output/plaintext/line/exclusive.h \ - output/plaintext/tree/end_of_solution_writer.h \ - output/plaintext/tree/check_writer.h \ - output/plaintext/tree/key_writer.h output/plaintext/tree/move_writer.h \ - output/plaintext/tree/refutation_writer.h \ - output/plaintext/tree/refuting_variation_writer.h \ - output/plaintext/tree/threat_writer.h \ - output/plaintext/tree/try_writer.h \ - output/plaintext/tree/zugzwang_writer.h \ - output/plaintext/tree/exclusive.h stipulation/pipe.h \ - output/plaintext/message.h output/message.h \ - output/plaintext/twinning.h output/plaintext/problem.h \ - output/latex/latex.h output/latex/problem.h output/latex/twinning.h \ - output/latex/line/line_writer.h output/latex/goal_writer.h \ - output/latex/constraint_writer.h output/latex/tree/check_writer.h \ - output/latex/tree/key_writer.h output/latex/tree/move_writer.h \ - output/latex/tree/refutation_writer.h \ - output/latex/tree/refuting_variation_writer.h \ - output/latex/tree/threat_writer.h output/latex/tree/try_writer.h \ - output/latex/tree/zugzwang_writer.h \ - pieces/attributes/paralysing/paralysing.h \ - pieces/attributes/paralysing/mate_filter.h \ - pieces/attributes/paralysing/stalemate_special.h \ - pieces/attributes/paralysing/remove_captures.h \ - pieces/attributes/neutral/half.h \ - pieces/attributes/hurdle_colour_changing.h pieces/attributes/magic.h \ - pieces/attributes/chameleon.h pieces/attributes/jigger.h \ - pieces/attributes/total_invisible.h \ - pieces/attributes/total_invisible/goal_validation.h \ - pieces/attributes/total_invisible/move_generation.h \ - pieces/attributes/total_invisible/revelations.h \ - pieces/attributes/total_invisible/move_player.h \ - pieces/attributes/total_invisible/uninterceptable_check.h \ - pieces/attributes/total_invisible/decisions.h \ - output/plaintext/pieces.h solving/has_solution_type.h \ - solving/has_solution_type.enum.h solving/has_solution_type.enum \ - pieces/attributes/total_invisible/replay_fleshed_out.h \ - pieces/attributes/uncapturable.h pieces/attributes/kamikaze/kamikaze.h \ - pieces/attributes/bul.h pieces/walks/generate_moves.h \ - pieces/walks/pawns/en_passant.h pieces/walks/pawns/promotion.h \ - pieces/walks/hoppers.h position/effects/king_square.h retro/retro.h \ - stipulation/proxy.h stipulation/whitetoplay.h \ - stipulation/battle_play/branch.h solving/machinery/slack_length.h \ - solving/avoid_unsolvable.h solving/battle_play/attack_adapter.h \ - solving/battle_play/defense_adapter.h \ - solving/battle_play/continuation.h \ - solving/battle_play/min_length_guard.h \ - solving/battle_play/min_length_optimiser.h \ - solving/battle_play/threat.h solving/battle_play/try.h \ - solving/help_play/adapter.h solving/boolean/or.h solving/boolean/and.h \ - solving/boolean/not.h solving/castling.h solving/duplex.h \ - solving/capture_counter.h solving/find_by_increasing_length.h \ - solving/find_move.h solving/find_shortest.h \ - solving/find_square_observer_tracking_back_from_target.h \ - solving/for_each_move.h solving/fork_on_remaining.h \ - solving/if_then_else.h solving/king_move_generator.h \ - solving/legal_move_counter.h solving/move_inverter.h \ - solving/move_played.h solving/move_player.h \ - solving/non_king_move_generator.h solving/play_suppressor.h \ - solving/single_piece_move_generator.h solving/trivial_end_filter.h \ - solving/selfcheck_guard.h solving/post_move_iteration.h \ - solving/king_capture_avoider.h solving/recursion_stopper.h \ - solving/proofgames.h solving/constraint.h solving/dead_end.h \ - solving/dummy_move.h solving/end_of_branch_goal.h \ - solving/end_of_branch.h solving/setplay_fork.h solving/goals/any.h \ - solving/goals/capture.h solving/goals/castling.h \ - solving/goals/chess81.h solving/goals/check.h solving/goals/circuit.h \ - solving/goals/circuit_by_rebirth.h solving/goals/countermate.h \ - solving/goals/doublemate.h solving/goals/enpassant.h \ - solving/goals/exchange.h solving/goals/exchange_by_rebirth.h \ - solving/goals/immobile.h solving/goals/king_capture.h \ - solving/goals/kiss.h solving/goals/notcheck.h \ - solving/goals/proofgame.h solving/goals/steingewinn.h \ - solving/goals/target.h solving/goals/prerequisite_optimiser.h \ - solving/goals/reached_tester.h solving/pipe.h \ - solving/machinery/solvers.h solving/zeroposition.h debugging/assert.h \ - platform/platform.h platform/maxmem.h platform/timer.h \ - pieces/attributes/total_invisible/consumption.h - +solving/machinery/dispatch.obj: solving/machinery/dispatch.c \ + solving/machinery/dispatch.h stipulation/stipulation.h \ + stipulation/goals/goals.h position/board.h utilities/bitmask.h \ + utilities/boolean.h stipulation/slice_type.h \ + stipulation/slice_type.enum.h stipulation/slice_type.enum \ + position/side.h position/side.enum.h position/side.enum pieces/pieces.h \ + output/mode.h output/mode.enum.h output/mode.enum \ + conditions/amu/mate_filter.h solving/machinery/solve.h debugging/trace.h \ + conditions/amu/attack_counter.h solving/ply.h \ + conditions/anticirce/cheylan.h conditions/anticirce/magic_square.h \ + conditions/anticirce/clone.h conditions/anticirce/couscous.h \ + conditions/bgl.h solving/move_effect_journal.h \ + position/castling_rights.h position/pieceid.h conditions/bicaptures.h \ + conditions/blackchecks.h conditions/mummer.h conditions/bolero.h \ + conditions/breton.h conditions/role_exchange.h conditions/koeko/koeko.h \ + conditions/koeko/contact_grid.h conditions/koeko/anti.h \ + conditions/koeko/new.h conditions/circe/antipodes.h \ + conditions/circe/chameleon.h conditions/circe/circe.h \ + stipulation/structure_traversal.h stipulation/slice.h \ + stipulation/slice_structural_type.h \ + stipulation/slice_structural_type.enum.h \ + stipulation/slice_structural_type.enum \ + stipulation/slice_functional_type.h \ + stipulation/slice_functional_type.enum.h \ + stipulation/slice_functional_type.enum \ + stipulation/slice_contextual_type.h \ + stipulation/slice_contextual_type.enum.h \ + stipulation/slice_contextual_type.enum stipulation/traversal.h \ + stipulation/slice_insertion.h solving/machinery/twin.h \ + conditions/circe/rebirth_square_occupied.h \ + conditions/circe/reborn_piece.h conditions/circe/rebirth_square.h \ + conditions/circe/relevant_capture.h conditions/circe/relevant_piece.h \ + conditions/circe/relevant_side.h conditions/circe/diametral.h \ + conditions/circe/verticalmirror.h \ + conditions/circe/circuit_by_rebirth_special.h conditions/circe/clone.h \ + conditions/circe/couscous.h conditions/circe/diagram.h \ + conditions/circe/einstein.h \ + conditions/circe/exchange_by_rebirth_special.h conditions/circe/file.h \ + conditions/circe/frischauf.h conditions/circe/glasgow.h \ + conditions/circe/steingewinn_filter.h conditions/circe/assassin.h \ + conditions/circe/super.h conditions/circe/april.h \ + conditions/circe/takemake.h conditions/circe/mirror.h \ + conditions/circe/pwc.h conditions/circe/rank.h \ + conditions/circe/symmetry.h conditions/circe/rex_inclusive.h \ + conditions/circe/parachute.h conditions/circe/capture_square.h \ + conditions/darkside.h conditions/exclusive.h utilities/table.h \ + position/position.h position/color.h position/color.enum.h \ + position/color.enum pieces/walks/vectors.h conditions/extinction.h \ + conditions/fuddled_men.h conditions/influencer.h conditions/ohneschach.h \ + conditions/maff/immobility_tester.h conditions/owu/immobility_tester.h \ + conditions/provocateurs.h conditions/lortap.h conditions/patrol.h \ + conditions/monochrome.h solving/move_generator.h debugging/measure.h \ + conditions/bichrome.h conditions/transmissionmenace.h \ + conditions/powertransfer.h conditions/ultraschachzwang/legality_tester.h \ + conditions/singlebox/type1.h conditions/conditions.h \ + conditions/singlebox/type2.h pieces/walks/pawns/promotee_sequence.h \ + conditions/singlebox/type3.h solving/observation.h \ + solving/temporary_hacks.h solving/fork.h conditions/snek.h \ + conditions/patience.h conditions/isardam.h conditions/leffie.h \ + conditions/sat.h conditions/dynasty.h conditions/masand.h \ + conditions/messigny.h conditions/oscillating_kings.h \ + conditions/actuated_revolving_centre.h \ + conditions/actuated_revolving_board.h conditions/republican.h \ + conditions/circe/capture_fork.h conditions/circe/cage.h \ + conditions/circe/double_agents.h conditions/circe/kamikaze.h \ + conditions/circe/parrain.h conditions/circe/volage.h \ + conditions/anticirce/anticirce.h conditions/sentinelles.h \ + conditions/duellists.h conditions/haunted_chess.h position/underworld.h \ + conditions/ghost_chess.h conditions/kobul.h conditions/andernach.h \ + conditions/antiandernach.h conditions/bicolores.h \ + conditions/chameleon_pursuit.h conditions/norsk.h conditions/protean.h \ + conditions/einstein/einstein.h conditions/einstein/reverse.h \ + conditions/einstein/anti.h conditions/einstein/en_passant.h \ + conditions/traitor.h conditions/volage.h conditions/magic_square.h \ + conditions/tibet.h conditions/degradierung.h \ + conditions/marscirce/marscirce.h conditions/marscirce/phantom.h \ + conditions/marscirce/anti.h conditions/line_chameleon.h \ + conditions/haan.h conditions/castling_chess.h \ + conditions/exchange_castling.h conditions/transmuting_kings/super.h \ + conditions/imitator.h conditions/football.h conditions/woozles.h \ + conditions/nocapture.h conditions/nopromotion.h conditions/geneva.h \ + conditions/edgemover.h conditions/grid.h conditions/take_and_make.h \ + conditions/make_and_take.h conditions/superguards.h \ + conditions/wormhole.h conditions/backhome.h conditions/shielded_kings.h \ + conditions/annan.h conditions/pointreflection.h conditions/beamten.h \ + conditions/central.h conditions/disparate.h conditions/eiffel.h \ + conditions/facetoface.h conditions/madrasi.h \ + conditions/partial_paralysis.h conditions/marscirce/plus.h \ + conditions/transmuting_kings/transmuting_kings.h \ + conditions/transmuting_kings/reflective_kings.h \ + conditions/transmuting_kings/vaulting_kings.h conditions/lostpieces.h \ + conditions/series_capture.h conditions/pepo.h conditions/cast.h \ + conditions/multicaptures.h optimisations/orthodox_check_directions.h \ + optimisations/hash.h DHT/dhtbcmem.h optimisations/keepmating.h \ + optimisations/count_nr_opponent_moves/opponent_moves_counter.h \ + optimisations/count_nr_opponent_moves/prioriser.h \ + optimisations/goals/castling/filter.h \ + optimisations/goals/enpassant/filter.h \ + optimisations/goals/enpassant/remove_non_reachers.h \ + optimisations/goals/castling/remove_non_reachers.h \ + optimisations/goals/chess81/remove_non_reachers.h \ + optimisations/goals/capture/remove_non_reachers.h \ + optimisations/goals/target/remove_non_reachers.h \ + optimisations/detect_retraction.h \ + optimisations/intelligent/duplicate_avoider.h \ + optimisations/intelligent/limit_nr_solutions_per_target.h \ + optimisations/intelligent/guard_flights.h \ + optimisations/intelligent/block_flights.h \ + optimisations/intelligent/filter.h \ + optimisations/intelligent/mate/finish.h \ + optimisations/intelligent/mate/goalreachable_guard.h \ + optimisations/intelligent/moves_left.h optimisations/intelligent/proof.h \ + optimisations/intelligent/stalemate/finish.h \ + optimisations/intelligent/stalemate/goalreachable_guard.h \ + optimisations/intelligent/stalemate/immobilise_black.h \ + optimisations/killer_move/collector.h \ + optimisations/killer_move/final_defense_move.h \ + optimisations/killer_move/prioriser.h \ + optimisations/orthodox_mating_moves/orthodox_mating_move_generator.h \ + optimisations/orthodox_mating_moves/king_contact_move_generator.h \ + optimisations/orthodox_square_observation.h \ + optimisations/ohneschach/non_checking_first.h \ + optimisations/ohneschach/stop_if_check.h optimisations/observation.h \ + solving/incomplete.h options/maxsolutions/guard.h \ + options/maxsolutions/initialiser.h options/maxtime.h platform/maxtime.h \ + options/movenumbers.h options/degenerate_tree.h options/nontrivial.h \ + options/maxthreatlength.h options/maxflightsquares.h \ + options/maxsolutions/maxsolutions.h \ + options/movenumbers/restart_guard_intelligent.h \ + options/no_short_variations/no_short_variations_attacker_filter.h \ + options/stoponshortsolutions/stoponshortsolutions.h \ + options/stoponshortsolutions/filter.h options/quodlibet.h \ + options/goal_is_end.h options/nullmoves.h input/commandline.h \ + input/plaintext/plaintext.h input/plaintext/problem.h \ + input/plaintext/twin.h input/plaintext/token.h \ + input/plaintext/language.h input/plaintext/option.h \ + input/plaintext/condition.h output/output.h output/plaintext/plaintext.h \ + output/plaintext/end_of_phase_writer.h \ + output/plaintext/ohneschach_detect_undecidable_goal.h \ + output/plaintext/illegal_selfcheck_writer.h \ + output/plaintext/goal_writer.h output/plaintext/constraint_writer.h \ + output/plaintext/position.h output/plaintext/move_inversion_counter.h \ + output/plaintext/line/line_writer.h \ + output/plaintext/line/end_of_intro_series_marker.h \ + output/plaintext/line/refuting_variation_writer.h \ + output/plaintext/line/exclusive.h \ + output/plaintext/tree/end_of_solution_writer.h \ + output/plaintext/tree/check_writer.h output/plaintext/tree/key_writer.h \ + output/plaintext/tree/move_writer.h \ + output/plaintext/tree/refutation_writer.h \ + output/plaintext/tree/refuting_variation_writer.h \ + output/plaintext/tree/threat_writer.h output/plaintext/tree/try_writer.h \ + output/plaintext/tree/zugzwang_writer.h \ + output/plaintext/tree/exclusive.h stipulation/pipe.h \ + output/plaintext/message.h output/message.h output/plaintext/twinning.h \ + output/plaintext/problem.h output/latex/latex.h output/latex/problem.h \ + output/latex/twinning.h output/latex/line/line_writer.h \ + output/latex/goal_writer.h output/latex/constraint_writer.h \ + output/latex/tree/check_writer.h output/latex/tree/key_writer.h \ + output/latex/tree/move_writer.h output/latex/tree/refutation_writer.h \ + output/latex/tree/refuting_variation_writer.h \ + output/latex/tree/threat_writer.h output/latex/tree/try_writer.h \ + output/latex/tree/zugzwang_writer.h \ + pieces/attributes/paralysing/paralysing.h \ + pieces/attributes/paralysing/mate_filter.h \ + pieces/attributes/paralysing/stalemate_special.h \ + pieces/attributes/paralysing/remove_captures.h \ + pieces/attributes/neutral/half.h \ + pieces/attributes/hurdle_colour_changing.h pieces/attributes/magic.h \ + pieces/attributes/chameleon.h pieces/attributes/jigger.h \ + pieces/attributes/total_invisible.h \ + pieces/attributes/total_invisible/goal_validation.h \ + pieces/attributes/total_invisible/move_generation.h \ + pieces/attributes/total_invisible/revelations.h \ + pieces/attributes/total_invisible/move_player.h \ + pieces/attributes/total_invisible/uninterceptable_check.h \ + pieces/attributes/total_invisible/decisions.h output/plaintext/pieces.h \ + solving/has_solution_type.h solving/has_solution_type.enum.h \ + solving/has_solution_type.enum \ + pieces/attributes/total_invisible/replay_fleshed_out.h \ + pieces/attributes/uncapturable.h pieces/attributes/kamikaze/kamikaze.h \ + pieces/attributes/bul.h pieces/walks/generate_moves.h \ + pieces/walks/pawns/en_passant.h pieces/walks/pawns/promotion.h \ + pieces/walks/hoppers.h position/effects/king_square.h retro/retro.h \ + stipulation/proxy.h stipulation/whitetoplay.h \ + stipulation/battle_play/branch.h solving/machinery/slack_length.h \ + solving/avoid_unsolvable.h solving/battle_play/attack_adapter.h \ + solving/battle_play/defense_adapter.h solving/battle_play/continuation.h \ + solving/battle_play/min_length_guard.h \ + solving/battle_play/min_length_optimiser.h solving/battle_play/threat.h \ + solving/battle_play/try.h solving/help_play/adapter.h \ + solving/boolean/or.h solving/boolean/and.h solving/boolean/not.h \ + solving/castling.h solving/duplex.h solving/capture_counter.h \ + solving/find_by_increasing_length.h solving/find_move.h \ + solving/find_shortest.h \ + solving/find_square_observer_tracking_back_from_target.h \ + solving/for_each_move.h solving/fork_on_remaining.h \ + solving/if_then_else.h solving/king_move_generator.h \ + solving/legal_move_counter.h solving/move_inverter.h \ + solving/move_played.h solving/move_player.h \ + solving/non_king_move_generator.h solving/play_suppressor.h \ + solving/single_piece_move_generator.h solving/trivial_end_filter.h \ + solving/selfcheck_guard.h solving/post_move_iteration.h \ + solving/king_capture_avoider.h solving/recursion_stopper.h \ + solving/proofgames.h solving/constraint.h solving/dead_end.h \ + solving/dummy_move.h solving/end_of_branch_goal.h \ + solving/end_of_branch.h solving/setplay_fork.h solving/goals/any.h \ + solving/goals/capture.h solving/goals/castling.h solving/goals/chess81.h \ + solving/goals/check.h solving/goals/circuit.h \ + solving/goals/circuit_by_rebirth.h solving/goals/countermate.h \ + solving/goals/doublemate.h solving/goals/enpassant.h \ + solving/goals/exchange.h solving/goals/exchange_by_rebirth.h \ + solving/goals/immobile.h solving/goals/king_capture.h \ + solving/goals/kiss.h solving/goals/notcheck.h solving/goals/proofgame.h \ + solving/goals/steingewinn.h solving/goals/target.h \ + solving/goals/prerequisite_optimiser.h solving/goals/reached_tester.h \ + solving/pipe.h solving/machinery/solvers.h solving/zeroposition.h \ + debugging/assert.h platform/platform.h platform/maxmem.h \ + platform/timer.h pieces/attributes/total_invisible/consumption.h solving/machinery/dispatch.h: - stipulation/stipulation.h: - stipulation/goals/goals.h: - position/board.h: - utilities/bitmask.h: - utilities/boolean.h: - stipulation/slice_type.h: - stipulation/slice_type.enum.h: - stipulation/slice_type.enum: - position/side.h: - position/side.enum.h: - position/side.enum: - pieces/pieces.h: - output/mode.h: - output/mode.enum.h: - output/mode.enum: - conditions/amu/mate_filter.h: - solving/machinery/solve.h: - debugging/trace.h: - conditions/amu/attack_counter.h: - solving/ply.h: - conditions/anticirce/cheylan.h: - conditions/anticirce/magic_square.h: - conditions/anticirce/clone.h: - conditions/anticirce/couscous.h: - conditions/bgl.h: - solving/move_effect_journal.h: - position/castling_rights.h: - position/pieceid.h: - conditions/bicaptures.h: - conditions/blackchecks.h: - conditions/mummer.h: - conditions/bolero.h: - conditions/breton.h: - conditions/role_exchange.h: - conditions/koeko/koeko.h: - conditions/koeko/contact_grid.h: - conditions/koeko/anti.h: - conditions/koeko/new.h: - conditions/circe/antipodes.h: - conditions/circe/chameleon.h: - conditions/circe/circe.h: - stipulation/structure_traversal.h: - stipulation/slice.h: - stipulation/slice_structural_type.h: - stipulation/slice_structural_type.enum.h: - stipulation/slice_structural_type.enum: - stipulation/slice_functional_type.h: - stipulation/slice_functional_type.enum.h: - stipulation/slice_functional_type.enum: - stipulation/slice_contextual_type.h: - stipulation/slice_contextual_type.enum.h: - stipulation/slice_contextual_type.enum: - stipulation/traversal.h: - stipulation/slice_insertion.h: - solving/machinery/twin.h: - conditions/circe/rebirth_square_occupied.h: - conditions/circe/reborn_piece.h: - conditions/circe/rebirth_square.h: - conditions/circe/relevant_capture.h: - conditions/circe/relevant_piece.h: - conditions/circe/relevant_side.h: - conditions/circe/diametral.h: - conditions/circe/verticalmirror.h: - conditions/circe/circuit_by_rebirth_special.h: - conditions/circe/clone.h: - conditions/circe/couscous.h: - conditions/circe/diagram.h: - conditions/circe/einstein.h: - conditions/circe/exchange_by_rebirth_special.h: - conditions/circe/file.h: - conditions/circe/frischauf.h: - conditions/circe/glasgow.h: - conditions/circe/steingewinn_filter.h: - conditions/circe/assassin.h: - conditions/circe/super.h: - conditions/circe/april.h: - conditions/circe/takemake.h: - conditions/circe/mirror.h: - conditions/circe/pwc.h: - conditions/circe/rank.h: - conditions/circe/symmetry.h: - conditions/circe/rex_inclusive.h: - conditions/circe/parachute.h: - +conditions/circe/capture_square.h: conditions/darkside.h: - conditions/exclusive.h: - utilities/table.h: - position/position.h: - position/color.h: - position/color.enum.h: - position/color.enum: - pieces/walks/vectors.h: - conditions/extinction.h: - conditions/fuddled_men.h: - conditions/influencer.h: - conditions/ohneschach.h: - conditions/maff/immobility_tester.h: - conditions/owu/immobility_tester.h: - conditions/provocateurs.h: - conditions/lortap.h: - conditions/patrol.h: - conditions/monochrome.h: - solving/move_generator.h: - debugging/measure.h: - -output/plaintext/protocol.h: - conditions/bichrome.h: - conditions/transmissionmenace.h: - conditions/powertransfer.h: - conditions/ultraschachzwang/legality_tester.h: - conditions/singlebox/type1.h: - conditions/conditions.h: - conditions/singlebox/type2.h: - pieces/walks/pawns/promotee_sequence.h: - conditions/singlebox/type3.h: - solving/observation.h: - solving/temporary_hacks.h: - solving/fork.h: - conditions/snek.h: - conditions/patience.h: - conditions/isardam.h: - conditions/leffie.h: - conditions/sat.h: - conditions/dynasty.h: - conditions/masand.h: - conditions/messigny.h: - conditions/oscillating_kings.h: - conditions/actuated_revolving_centre.h: - conditions/actuated_revolving_board.h: - conditions/republican.h: - conditions/circe/capture_fork.h: - conditions/circe/cage.h: - conditions/circe/double_agents.h: - conditions/circe/kamikaze.h: - conditions/circe/parrain.h: - conditions/circe/volage.h: - conditions/anticirce/anticirce.h: - conditions/sentinelles.h: - conditions/duellists.h: - conditions/haunted_chess.h: - position/underworld.h: - conditions/ghost_chess.h: - conditions/kobul.h: - conditions/andernach.h: - conditions/antiandernach.h: - conditions/bicolores.h: - conditions/chameleon_pursuit.h: - conditions/norsk.h: - conditions/protean.h: - conditions/einstein/einstein.h: - conditions/einstein/reverse.h: - conditions/einstein/anti.h: - conditions/einstein/en_passant.h: - conditions/traitor.h: - conditions/volage.h: - conditions/magic_square.h: - conditions/tibet.h: - conditions/degradierung.h: - conditions/marscirce/marscirce.h: - conditions/marscirce/phantom.h: - conditions/marscirce/anti.h: - conditions/line_chameleon.h: - conditions/haan.h: - conditions/castling_chess.h: - conditions/exchange_castling.h: - conditions/transmuting_kings/super.h: - conditions/imitator.h: - conditions/football.h: - conditions/woozles.h: - conditions/nocapture.h: - conditions/nopromotion.h: - conditions/geneva.h: - conditions/edgemover.h: - conditions/grid.h: - conditions/take_and_make.h: - conditions/make_and_take.h: - conditions/superguards.h: - conditions/wormhole.h: - conditions/backhome.h: - conditions/shielded_kings.h: - conditions/annan.h: - conditions/pointreflection.h: - conditions/beamten.h: - conditions/central.h: - conditions/disparate.h: - conditions/eiffel.h: - conditions/facetoface.h: - conditions/madrasi.h: - conditions/partial_paralysis.h: - conditions/marscirce/plus.h: - conditions/transmuting_kings/transmuting_kings.h: - conditions/transmuting_kings/reflective_kings.h: - conditions/transmuting_kings/vaulting_kings.h: - conditions/lostpieces.h: - conditions/series_capture.h: - conditions/pepo.h: - conditions/cast.h: - conditions/multicaptures.h: - optimisations/orthodox_check_directions.h: - optimisations/hash.h: - DHT/dhtbcmem.h: - optimisations/keepmating.h: - optimisations/count_nr_opponent_moves/opponent_moves_counter.h: - optimisations/count_nr_opponent_moves/prioriser.h: - optimisations/goals/castling/filter.h: - optimisations/goals/enpassant/filter.h: - optimisations/goals/enpassant/remove_non_reachers.h: - optimisations/goals/castling/remove_non_reachers.h: - optimisations/goals/chess81/remove_non_reachers.h: - optimisations/goals/capture/remove_non_reachers.h: - optimisations/goals/target/remove_non_reachers.h: - optimisations/detect_retraction.h: - optimisations/intelligent/duplicate_avoider.h: - optimisations/intelligent/limit_nr_solutions_per_target.h: - optimisations/intelligent/guard_flights.h: - optimisations/intelligent/block_flights.h: - optimisations/intelligent/filter.h: - optimisations/intelligent/mate/finish.h: - optimisations/intelligent/mate/goalreachable_guard.h: - optimisations/intelligent/moves_left.h: - optimisations/intelligent/proof.h: - optimisations/intelligent/stalemate/finish.h: - optimisations/intelligent/stalemate/goalreachable_guard.h: - optimisations/intelligent/stalemate/immobilise_black.h: - optimisations/killer_move/collector.h: - optimisations/killer_move/final_defense_move.h: - optimisations/killer_move/prioriser.h: - optimisations/orthodox_mating_moves/orthodox_mating_move_generator.h: - optimisations/orthodox_mating_moves/king_contact_move_generator.h: - optimisations/orthodox_square_observation.h: - optimisations/ohneschach/non_checking_first.h: - optimisations/ohneschach/stop_if_check.h: - optimisations/observation.h: - solving/incomplete.h: - options/maxsolutions/guard.h: - options/maxsolutions/initialiser.h: - options/maxtime.h: - platform/maxtime.h: - options/movenumbers.h: - options/degenerate_tree.h: - options/nontrivial.h: - options/maxthreatlength.h: - options/maxflightsquares.h: - options/maxsolutions/maxsolutions.h: - options/movenumbers/restart_guard_intelligent.h: - options/no_short_variations/no_short_variations_attacker_filter.h: - options/stoponshortsolutions/stoponshortsolutions.h: - options/stoponshortsolutions/filter.h: - options/quodlibet.h: - options/goal_is_end.h: - options/nullmoves.h: - input/commandline.h: - input/plaintext/plaintext.h: - input/plaintext/problem.h: - input/plaintext/twin.h: - input/plaintext/token.h: - input/plaintext/language.h: - input/plaintext/option.h: - input/plaintext/condition.h: - output/output.h: - output/plaintext/plaintext.h: - output/plaintext/end_of_phase_writer.h: - output/plaintext/ohneschach_detect_undecidable_goal.h: - output/plaintext/illegal_selfcheck_writer.h: - output/plaintext/goal_writer.h: - output/plaintext/constraint_writer.h: - output/plaintext/position.h: - output/plaintext/move_inversion_counter.h: - output/plaintext/line/line_writer.h: - output/plaintext/line/end_of_intro_series_marker.h: - output/plaintext/line/refuting_variation_writer.h: - output/plaintext/line/exclusive.h: - output/plaintext/tree/end_of_solution_writer.h: - output/plaintext/tree/check_writer.h: - output/plaintext/tree/key_writer.h: - output/plaintext/tree/move_writer.h: - output/plaintext/tree/refutation_writer.h: - output/plaintext/tree/refuting_variation_writer.h: - output/plaintext/tree/threat_writer.h: - output/plaintext/tree/try_writer.h: - output/plaintext/tree/zugzwang_writer.h: - output/plaintext/tree/exclusive.h: - stipulation/pipe.h: - output/plaintext/message.h: - output/message.h: - output/plaintext/twinning.h: - output/plaintext/problem.h: - output/latex/latex.h: - output/latex/problem.h: - output/latex/twinning.h: - output/latex/line/line_writer.h: - output/latex/goal_writer.h: - output/latex/constraint_writer.h: - output/latex/tree/check_writer.h: - output/latex/tree/key_writer.h: - output/latex/tree/move_writer.h: - output/latex/tree/refutation_writer.h: - output/latex/tree/refuting_variation_writer.h: - output/latex/tree/threat_writer.h: - output/latex/tree/try_writer.h: - output/latex/tree/zugzwang_writer.h: - pieces/attributes/paralysing/paralysing.h: - pieces/attributes/paralysing/mate_filter.h: - pieces/attributes/paralysing/stalemate_special.h: - pieces/attributes/paralysing/remove_captures.h: - pieces/attributes/neutral/half.h: - pieces/attributes/hurdle_colour_changing.h: - pieces/attributes/magic.h: - pieces/attributes/chameleon.h: - pieces/attributes/jigger.h: - pieces/attributes/total_invisible.h: - pieces/attributes/total_invisible/goal_validation.h: - pieces/attributes/total_invisible/move_generation.h: - pieces/attributes/total_invisible/revelations.h: - pieces/attributes/total_invisible/move_player.h: - pieces/attributes/total_invisible/uninterceptable_check.h: - pieces/attributes/total_invisible/decisions.h: - output/plaintext/pieces.h: - solving/has_solution_type.h: - solving/has_solution_type.enum.h: - solving/has_solution_type.enum: - pieces/attributes/total_invisible/replay_fleshed_out.h: - pieces/attributes/uncapturable.h: - pieces/attributes/kamikaze/kamikaze.h: - pieces/attributes/bul.h: - pieces/walks/generate_moves.h: - pieces/walks/pawns/en_passant.h: - pieces/walks/pawns/promotion.h: - pieces/walks/hoppers.h: - position/effects/king_square.h: - retro/retro.h: - stipulation/proxy.h: - stipulation/whitetoplay.h: - stipulation/battle_play/branch.h: - solving/machinery/slack_length.h: - solving/avoid_unsolvable.h: - solving/battle_play/attack_adapter.h: - solving/battle_play/defense_adapter.h: - solving/battle_play/continuation.h: - solving/battle_play/min_length_guard.h: - solving/battle_play/min_length_optimiser.h: - solving/battle_play/threat.h: - solving/battle_play/try.h: - solving/help_play/adapter.h: - solving/boolean/or.h: - solving/boolean/and.h: - solving/boolean/not.h: - solving/castling.h: - solving/duplex.h: - solving/capture_counter.h: - solving/find_by_increasing_length.h: - solving/find_move.h: - solving/find_shortest.h: - solving/find_square_observer_tracking_back_from_target.h: - solving/for_each_move.h: - solving/fork_on_remaining.h: - solving/if_then_else.h: - solving/king_move_generator.h: - solving/legal_move_counter.h: - solving/move_inverter.h: - solving/move_played.h: - solving/move_player.h: - solving/non_king_move_generator.h: - solving/play_suppressor.h: - solving/single_piece_move_generator.h: - solving/trivial_end_filter.h: - solving/selfcheck_guard.h: - solving/post_move_iteration.h: - solving/king_capture_avoider.h: - solving/recursion_stopper.h: - solving/proofgames.h: - solving/constraint.h: - solving/dead_end.h: - solving/dummy_move.h: - solving/end_of_branch_goal.h: - solving/end_of_branch.h: - solving/setplay_fork.h: - solving/goals/any.h: - solving/goals/capture.h: - solving/goals/castling.h: - solving/goals/chess81.h: - solving/goals/check.h: - solving/goals/circuit.h: - solving/goals/circuit_by_rebirth.h: - solving/goals/countermate.h: - solving/goals/doublemate.h: - solving/goals/enpassant.h: - solving/goals/exchange.h: - solving/goals/exchange_by_rebirth.h: - solving/goals/immobile.h: - solving/goals/king_capture.h: - solving/goals/kiss.h: - solving/goals/notcheck.h: - solving/goals/proofgame.h: - solving/goals/steingewinn.h: - solving/goals/target.h: - solving/goals/prerequisite_optimiser.h: - solving/goals/reached_tester.h: - solving/pipe.h: - solving/machinery/solvers.h: - solving/zeroposition.h: - debugging/assert.h: - platform/platform.h: - platform/maxmem.h: - platform/timer.h: - pieces/attributes/total_invisible/consumption.h: -solving/machinery/slack_length$(OBJ_SUFFIX): solving/machinery/slack_length.c \ - solving/machinery/slack_length.h stipulation/stipulation.h \ - stipulation/goals/goals.h position/board.h utilities/bitmask.h \ - utilities/boolean.h stipulation/slice_type.h \ - stipulation/slice_type.enum.h stipulation/slice_type.enum \ - position/side.h position/side.enum.h position/side.enum \ - pieces/pieces.h output/mode.h output/mode.enum.h output/mode.enum \ - solving/has_solution_type.h solving/has_solution_type.enum.h \ - solving/has_solution_type.enum solving/pipe.h \ - solving/machinery/solve.h solving/machinery/dispatch.h \ - debugging/trace.h stipulation/structure_traversal.h \ - stipulation/slice.h stipulation/slice_structural_type.h \ - stipulation/slice_structural_type.enum.h \ - stipulation/slice_structural_type.enum \ - stipulation/slice_functional_type.h \ - stipulation/slice_functional_type.enum.h \ - stipulation/slice_functional_type.enum \ - stipulation/slice_contextual_type.h \ - stipulation/slice_contextual_type.enum.h \ - stipulation/slice_contextual_type.enum stipulation/traversal.h \ - debugging/assert.h - +solving/machinery/slack_length.obj: solving/machinery/slack_length.c \ + solving/machinery/slack_length.h stipulation/stipulation.h \ + stipulation/goals/goals.h position/board.h utilities/bitmask.h \ + utilities/boolean.h stipulation/slice_type.h \ + stipulation/slice_type.enum.h stipulation/slice_type.enum \ + position/side.h position/side.enum.h position/side.enum pieces/pieces.h \ + output/mode.h output/mode.enum.h output/mode.enum \ + solving/has_solution_type.h solving/has_solution_type.enum.h \ + solving/has_solution_type.enum solving/pipe.h solving/machinery/solve.h \ + solving/machinery/dispatch.h debugging/trace.h \ + stipulation/structure_traversal.h stipulation/slice.h \ + stipulation/slice_structural_type.h \ + stipulation/slice_structural_type.enum.h \ + stipulation/slice_structural_type.enum \ + stipulation/slice_functional_type.h \ + stipulation/slice_functional_type.enum.h \ + stipulation/slice_functional_type.enum \ + stipulation/slice_contextual_type.h \ + stipulation/slice_contextual_type.enum.h \ + stipulation/slice_contextual_type.enum stipulation/traversal.h \ + debugging/assert.h solving/machinery/slack_length.h: - stipulation/stipulation.h: - stipulation/goals/goals.h: - position/board.h: - utilities/bitmask.h: - utilities/boolean.h: - stipulation/slice_type.h: - stipulation/slice_type.enum.h: - stipulation/slice_type.enum: - position/side.h: - position/side.enum.h: - position/side.enum: - pieces/pieces.h: - output/mode.h: - output/mode.enum.h: - output/mode.enum: - solving/has_solution_type.h: - solving/has_solution_type.enum.h: - solving/has_solution_type.enum: - solving/pipe.h: - solving/machinery/solve.h: - solving/machinery/dispatch.h: - debugging/trace.h: - stipulation/structure_traversal.h: - stipulation/slice.h: - stipulation/slice_structural_type.h: - stipulation/slice_structural_type.enum.h: - stipulation/slice_structural_type.enum: - stipulation/slice_functional_type.h: - stipulation/slice_functional_type.enum.h: - stipulation/slice_functional_type.enum: - stipulation/slice_contextual_type.h: - stipulation/slice_contextual_type.enum.h: - stipulation/slice_contextual_type.enum: - stipulation/traversal.h: - debugging/assert.h: diff --git a/solving/machinery/dispatch.c b/solving/machinery/dispatch.c index 53c513394..603187d30 100644 --- a/solving/machinery/dispatch.c +++ b/solving/machinery/dispatch.c @@ -40,6 +40,7 @@ #include "conditions/circe/symmetry.h" #include "conditions/circe/rex_inclusive.h" #include "conditions/circe/parachute.h" +#include "conditions/circe/capture_square.h" #include "conditions/circe/rebirth_square_occupied.h" #include "conditions/circe/relevant_piece.h" #include "conditions/darkside.h"