EGTB idea and question

Discussion of chess software programming and technical issues.

Moderator: Ras

jwes
Posts: 778
Joined: Sat Jul 01, 2006 7:11 am

EGTB idea and question

Post by jwes »

If you limit the depth at which you probe egtb tables, it may be a good idea to also probe pv nodes at any depth. I think it will reduce some horizon effects.
Also, does anyone have a test suite for testing egtb probing?
User avatar
michiguel
Posts: 6401
Joined: Thu Mar 09, 2006 8:30 pm
Location: Chicago, Illinois, USA

Re: EGTB idea and question

Post by michiguel »

jwes wrote:If you limit the depth at which you probe egtb tables, it may be a good idea to also probe pv nodes at any depth. I think it will reduce some horizon effects.
That is what I am doing right now.
Also, does anyone have a test suite for testing egtb probing?
To test whether the EGTBs are working (debugging) or if they are effective in solving problems faster?

Miguel
PS: I can provide the first one.
Dann Corbit
Posts: 12792
Joined: Wed Mar 08, 2006 8:57 pm
Location: Redmond, WA USA

Re: EGTB idea and question

Post by Dann Corbit »

jwes wrote:If you limit the depth at which you probe egtb tables, it may be a good idea to also probe pv nodes at any depth. I think it will reduce some horizon effects.
Also, does anyone have a test suite for testing egtb probing?
Here is a test suite for the direct lookups (along with solution depth for verification):

Code: Select all

8/8/8/3B4/3B4/3k4/3B4/3K4 w - -  dm 16;     id  "KBBBK";
8/8/7b/8/8/5k2/2B5/1B1KB3 w - -  dm 26;     id  "KBBBKB";
8/8/8/8/8/1kn5/1B2B3/3K3B w - -  dm 78;     id  "KBBBKN";
8/8/5B2/8/8/8/4pkB1/3K3B w - -  dm 74;      id  "KBBBKP";
8/8/8/8/6B1/5B2/5k1q/B2K4 w - -  dm 24;     id  "KBBBKQ";
6B1/8/8/6r1/8/7k/7B/K5B1 w - -  dm 75;      id  "KBBBKR";
8/8/8/8/7B/8/3k4/K2B4 w - -  dm 19;         id  "KBBK";
8/8/8/2B5/8/8/3k4/K1b4B w - -  dm 22;       id  "KBBKB";
8/8/8/8/8/4k3/7B/1Kb3bB w - -  dm 23;       id  "KBBKBB";
8/8/k7/8/8/4B3/6n1/1BK4b w - -  dm 90;      id  "KBBKBN";
8/8/8/5k2/B5b1/1p2B3/3K4/8 w - -  dm 75;    id  "KBBKBP";
7B/6n1/8/6k1/6B1/8/8/K7 w - -  dm 78;       id  "KBBKN";
4n3/8/8/B7/8/3K4/8/n1kB4 w - -  dm 106;     id  "KBBKNN";
K7/8/8/k7/Bp6/7n/7B/8 w - -  dm 131;        id  "KBBKNP";
8/8/8/8/4k1B1/1p2B3/2K5/8 w - -  dm 74;     id  "KBBKP";
B7/B7/8/5p2/8/2p5/1K1k4/8 w - -  dm 104;    id  "KBBKPP";
8/8/8/1q4B1/8/3k4/6B1/K7 w - -  dm 21;      id  "KBBKQ";
8/8/8/8/8/4k3/7B/1Kb3qB w - -  dm 23;       id  "KBBKQB";
8/8/8/5q2/1n6/B2k4/B7/2K5 w - -  dm 80;     id  "KBBKQN";
8/8/8/5k2/B5q1/1p2B3/3K4/8 w - -  dm 75;    id  "KBBKQP";
8/3q4/8/8/BB6/8/3q4/K1k5 w - -  dm 21;      id  "KBBKQQ";
4r3/8/8/8/3q4/8/8/k1K3BB w - -  dm 23;      id  "KBBKQR";
4r3/8/8/8/8/8/8/k1K3BB w - -  dm 23;        id  "KBBKR";
8/8/8/8/8/4k3/7B/1Kb3rB w - -  dm 23;       id  "KBBKRB";
8/8/8/8/5n1B/3k3B/1r6/2K5 w - -  dm 80;     id  "KBBKRN";
8/8/8/2k5/6B1/1p2r3/8/3KB3 w - -  dm 76;    id  "KBBKRP";
4r3/8/8/8/3r4/8/8/k1K3BB w - -  dm 23;      id  "KBBKRR";
8/8/8/8/8/B7/5Bk1/K6N w - -  dm 33;         id  "KBBNK";
8/8/B7/2N4B/3k4/8/8/1K1b4 w - -  dm 53;     id  "KBBNKB";
8/8/8/8/8/8/1B4NB/2Kn3k w - -  dm 108;      id  "KBBNKN";
8/8/3K4/8/8/kB1B4/1p6/N7 w - -  dm 103;     id  "KBBNKP";
8/q7/8/8/8/2k3BB/1N6/1K6 w - -  dm 39;      id  "KBBNKQ";
N7/1r4B1/8/8/8/7B/8/K1k5 w - -  dm 85;      id  "KBBNKR";
4B3/6P1/7k/8/8/8/K7/1B6 w - -  dm 30;       id  "KBBPK";
b7/8/6B1/3K4/8/8/2P5/Bk6 w - -  dm 54;      id  "KBBPKB";
8/6n1/B3P3/8/2K5/8/7k/3B4 w - -  dm 105;    id  "KBBPKN";
8/8/K6P/6B1/8/4B3/1p4k1/8 w - -  dm 97;     id  "KBBPKP";
8/P1qB3k/4B3/8/8/8/K7/8 w - -  dm 98;       id  "KBBPKQ";
2B5/4Br2/K1k5/8/8/8/6P1/8 w - -  dm 180;    id  "KBBPKR";
8/8/8/8/8/8/b7/k1K1B3 w - -  dm 1;          id  "KBKB";
8/8/8/8/8/8/b7/k1K1b1B1 w - -  dm 2;        id  "KBKBB";
8/8/8/8/2n5/8/b7/k1K1B3 w - -  dm 2;        id  "KBKBN";
8/8/8/8/8/8/p7/kbBK4 w - -  dm 3;           id  "KBKBP";
8/8/8/8/8/8/n1K5/k1B5 w - -  dm 1;          id  "KBKN";
8/8/8/8/8/8/n1K5/knB5 w - -  dm 1;          id  "KBKNN";
1B6/8/8/8/8/8/p7/k2K2n1 w - -  dm 9;        id  "KBKNP";
8/8/8/8/8/8/p7/k1K1B3 w - -  dm 1;          id  "KBKP";
8/8/8/1p6/8/8/p7/k2KB3 w - -  dm 4;         id  "KBKPP";
8/8/8/8/8/8/b3q3/k1K1B3 w - -  dm 2;        id  "KBKQB";
8/8/8/8/8/8/n1K5/k1B1q3 w - -  dm 1;        id  "KBKQN";
8/8/8/8/8/8/p3q3/k1K1B3 w - -  dm 2;        id  "KBKQP";
8/8/8/8/8/8/b2r3B/k1K5 w - -  dm 2;         id  "KBKRB";
8/8/8/8/8/8/n1K5/k1Br4 w - -  dm 1;         id  "KBKRN";
8/8/8/8/8/8/p2r3B/k1K5 w - -  dm 2;         id  "KBKRP";
8/8/7N/8/8/8/8/K1k1B3 w - -  dm 33;         id  "KBNK";
8/7B/8/4N3/8/8/3k4/K1b5 w - -  dm 39;       id  "KBNKB";
6B1/7b/8/8/6N1/3k4/8/1Kb5 w - -  dm 40;     id  "KBNKBB";
8/8/8/8/8/6B1/1n6/1Kb1N2k w - -  dm 107;    id  "KBNKBN";
8/8/3b4/2K5/1p6/8/k7/5B1N w - -  dm 105;    id  "KBNKBP";
8/8/8/8/8/8/1n5B/2K1N2k w - -  dm 107;      id  "KBNKN";
8/8/8/8/8/6B1/1n6/1Kn1N2k w - -  dm 107;    id  "KBNKNN";
k7/6p1/8/1n1K4/8/5N2/8/4B3 w - -  dm 128;   id  "KBNKNP";
8/8/3K4/8/8/1p6/k7/5B1N w - -  dm 104;      id  "KBNKP";
k1K5/7p/6NB/8/8/5p2/8/8 w - -  dm 124;      id  "KBNKPP";
8/8/8/2q5/3B4/8/3N4/K3k3 w - -  dm 36;      id  "KBNKQ";
6B1/7q/8/8/6N1/3k4/8/1Kb5 w - -  dm 40;     id  "KBNKQB";
8/8/8/8/8/6B1/1n6/1Kq1N2k w - -  dm 107;    id  "KBNKQN";
8/8/3q4/2K5/1p6/8/k7/5B1N w - -  dm 105;    id  "KBNKQP";
8/8/8/8/3N4/1q6/7B/K1kq4 w - -  dm 36;      id  "KBNKQQ";
8/8/8/8/3N4/1r6/7B/K1kq4 w - -  dm 36;      id  "KBNKQR";
8/8/8/2r5/3B4/8/3N4/K3k3 w - -  dm 36;      id  "KBNKR";
6B1/7r/8/8/6N1/3k4/8/1Kb5 w - -  dm 40;     id  "KBNKRB";
8/8/8/8/8/6B1/1n6/1Kr1N2k w - -  dm 107;    id  "KBNKRN";
8/8/3r4/2K5/1p6/8/k7/5B1N w - -  dm 105;    id  "KBNKRP";
8/8/8/8/3N4/1r6/7B/K1kr4 w - -  dm 36;      id  "KBNKRR";
8/8/8/6N1/6kB/6N1/8/K7 w - -  dm 34;        id  "KBNNK";
5N2/8/3b4/8/8/8/8/K1Bk3N w - -  dm 53;      id  "KBNNKB";
4k2N/3N4/2n5/8/8/3K4/2B5/8 w - -  dm 109;   id  "KBNNKN";
8/8/8/p3kB2/1K3N2/8/8/7N w - -  dm 108;     id  "KBNNKP";
8/8/1B6/8/2q3N1/2N5/8/K1k5 w - -  dm 39;    id  "KBNNKQ";
4B3/8/5r2/8/3N1N2/8/3K4/7k w - -  dm 56;    id  "KBNNKR";
K1k5/2P5/8/7B/8/8/8/N7 w - -  dm 33;        id  "KBNPK";
8/8/8/8/7b/8/1K1k1P2/N5B1 w - -  dm 70;     id  "KBNPKB";
5n2/8/8/2KN4/8/7k/B6P/8 w - -  dm 111;      id  "KBNPKN";
8/8/3K4/8/8/1P6/1pk5/5B1N w - -  dm 103;    id  "KBNPKP";
3N4/3P4/2K5/8/1k1q4/8/7B/8 w - -  dm 113;   id  "KBNPKQ";
3k4/8/r7/7N/8/8/K4BP1/8 w - -  dm 141;      id  "KBNPKR";
8/3P4/KBk5/8/8/8/8/8 w - -  dm 31;          id  "KBPK";
8/8/6B1/8/2P5/8/2K5/k4b2 w - -  dm 51;      id  "KBPKB";
1n6/3P4/8/8/1K6/7B/8/k7 w - -  dm 100;      id  "KBPKN";
8/7p/8/8/8/1B6/K6P/2k5 w - -  dm 67;        id  "KBPKP";
8/3P1q2/2k5/6B1/8/8/8/K7 w - -  dm 35;      id  "KBPKQ";
6bq/3P4/1k6/8/K7/8/8/5B2 w - -  dm 58;      id  "KBPKQB";
3q4/2P5/7B/6n1/3K4/8/k7/8 w - -  dm 102;    id  "KBPKQN";
8/7p/8/8/8/q7/K6P/2k4B w - -  dm 68;        id  "KBPKQP";
8/P7/2k5/8/4q3/5q2/8/KB6 w - -  dm 35;      id  "KBPKQQ";
2q5/kP6/2K5/3r4/8/8/B7/8 w - -  dm 49;      id  "KBPKQR";
8/r1k5/5P2/3K4/B7/8/8/8 w - -  dm 45;       id  "KBPKR";
8/5P2/8/Bb1r4/8/8/4k3/1K6 w - -  dm 71;     id  "KBPKRB";
3r4/2P5/7B/6n1/3K4/8/k7/8 w - -  dm 102;    id  "KBPKRN";
K7/8/4B2P/8/5p2/4r3/2k5/8 w - -  dm 104;    id  "KBPKRP";
8/r3P3/8/8/8/1r6/B7/2K3k1 w - -  dm 106;    id  "KBPKRR";
B7/1K6/8/8/8/3k3P/7P/8 w - -  dm 25;        id  "KBPPK";
1k6/8/8/1P4B1/8/1K6/4P3/7b w - -  dm 82;    id  "KBPPKB";
8/7P/6k1/5n2/3K3B/8/7P/8 w - -  dm 105;     id  "KBPPKN";
8/8/8/7B/4p2P/K2k3P/8/8 w - -  dm 151;      id  "KBPPKP";
8/5B1P/8/8/3k4/7P/4q3/1K6 w - -  dm 158;    id  "KBPPKQ";
8/4P3/1r6/8/5B2/8/P7/K2k4 w - -  dm 149;    id  "KBPPKR";
8/8/8/8/8/8/b7/k1K1N3 w - -  dm 1;          id  "KNKB";
8/8/8/8/8/N7/b7/k1K1b3 w - -  dm 1;         id  "KNKBB";
8/8/8/8/b7/kn6/8/NK6 w - -  dm 1;           id  "KNKBN";
8/8/8/b7/8/p7/3N4/k1K5 w - -  dm 8;         id  "KNKBP";
8/8/8/8/8/8/n1K5/k1N5 w - -  dm 1;          id  "KNKN";
8/8/8/8/n7/kn6/8/NK6 w - -  dm 1;           id  "KNKNN";
8/8/8/8/pn6/8/N7/k1K5 w - -  dm 7;          id  "KNKNP";
8/8/8/8/p7/8/N7/k1K5 w - -  dm 7;           id  "KNKP";
8/p1p5/8/8/8/8/8/kNK5 w - -  dm 17;         id  "KNKPP";
8/8/8/8/8/8/b1q5/k1K1N3 w - -  dm 1;        id  "KNKQB";
8/8/8/8/q7/kn6/8/NK6 w - -  dm 1;           id  "KNKQN";
8/8/8/q7/8/p7/3N4/k1K5 w - -  dm 8;         id  "KNKQP";
8/8/8/8/8/8/2rN4/K1kq4 w - -  dm 1;         id  "KNKQR";
8/8/8/8/8/8/r2N4/k1K5 w - -  dm 1;          id  "KNKR";
8/8/8/8/8/8/2rN4/K1kb4 w - -  dm 1;         id  "KNKRB";
8/8/8/8/8/8/2rN4/K1kn4 w - -  dm 1;         id  "KNKRN";
8/8/8/8/3N4/p7/3r4/k1K5 w - -  dm 8;        id  "KNKRP";
8/8/8/8/8/8/2rN4/K1kr4 w - -  dm 1;         id  "KNKRR";
8/8/8/8/8/4N3/3N4/K1k5 w - -  dm 1;         id  "KNNK";
8/8/8/8/1N6/8/1b6/k1NK4 w - -  dm 4;        id  "KNNKB";
8/8/8/8/8/3N4/k7/bNK3b1 w - -  dm 4;        id  "KNNKBB";
7n/8/8/4b3/8/3N4/k7/1NK5 w - -  dm 10;      id  "KNNKBN";
7n/8/8/8/8/8/2NK4/1kN5 w - -  dm 7;         id  "KNNKN";
7n/8/8/8/2N5/8/4N3/knK5 w - -  dm 9;        id  "KNNKNN";
1N6/8/p7/8/8/8/2k1N3/K7 w - -  dm 115;      id  "KNNKP";
8/8/8/8/8/4N3/3N4/K1k1q3 w - -  dm 1;       id  "KNNKQ";
8/8/8/8/1N6/1q6/1b6/k1NK4 w - -  dm 4;      id  "KNNKQB";
7n/8/8/8/2N5/1q6/8/k1NK4 w - -  dm 7;       id  "KNNKQN";
8/8/8/8/8/4N3/3N4/K1k1qq2 w - -  dm 1;      id  "KNNKQQ";
8/8/8/8/3N4/r7/2q5/k1K1N3 w - -  dm 3;      id  "KNNKQR";
8/8/8/8/3N4/r7/8/k1K1N3 w - -  dm 3;        id  "KNNKR";
8/8/8/8/1N6/1r6/1b6/1k1K1N2 w - -  dm 5;    id  "KNNKRB";
7n/8/8/4r3/8/8/3N4/kNK5 w - -  dm 7;        id  "KNNKRN";
8/8/8/8/3N4/r7/2r5/k1K1N3 w - -  dm 3;      id  "KNNKRR";
8/8/8/8/8/8/N4k2/KN4N1 w - -  dm 21;        id  "KNNNK";
6bN/8/8/8/8/1N6/2k5/K6N w - -  dm 96;       id  "KNNNKB";
7N/N7/1k6/8/8/8/2K1n3/1N6 w - -  dm 90;     id  "KNNNKN";
8/p7/8/8/8/4NN2/K3k3/7N w - -  dm 109;      id  "KNNNKP";
8/8/8/8/2NN3q/8/8/K1k3N1 w - -  dm 24;      id  "KNNNKQ";
8/8/8/6r1/8/8/5N2/KNk3N1 w - -  dm 25;      id  "KNNNKR";
N1N5/8/8/8/8/4k2P/8/K7 w - -  dm 28;        id  "KNNPK";
1b6/8/2k5/3N4/8/6N1/3P4/K7 w - -  dm 80;    id  "KNNPKB";
N2n4/1P6/k7/4N3/3K4/8/8/8 w - -  dm 92;     id  "KNNPKN";
1N6/8/p7/8/2Pk4/8/8/1K4N1 w - -  dm 114;    id  "KNNPKP";
3K4/6P1/q3k3/8/8/8/8/2N2N2 w - -  dm 75;    id  "KNNPKQ";
8/8/4PN2/K7/8/7N/1r6/1k6 w - -  dm 66;      id  "KNNPKR";
8/7N/8/8/8/5k2/7P/K7 w - -  dm 27;          id  "KNPK";
8/8/8/8/2K5/b7/1k5P/2N5 w - -  dm 43;       id  "KNPKB";
k7/3P4/2n5/K7/8/8/3N4/8 w - -  dm 97;       id  "KNPKN";
N7/8/K7/8/4p3/8/6P1/k7 w - -  dm 57;        id  "KNPKP";
8/4P3/8/N1K5/k7/8/7q/8 w - -  dm 41;        id  "KNPKQ";
1N6/8/8/PK6/3r4/3k4/8/8 w - -  dm 44;       id  "KNPKR";
7N/K5k1/8/8/8/6P1/6P1/8 w - -  dm 32;       id  "KNPPK";
8/8/N1b5/8/k7/8/2P1P3/K7 w - -  dm 88;      id  "KNPPKB";
7N/8/8/5k2/8/1P6/1P6/1K4n1 w - -  dm 93;    id  "KNPPKN";
8/8/4NP2/8/1K6/3P4/p6k/8 w - -  dm 131;     id  "KNPPKP";
8/5P2/4N3/8/8/K2P4/7k/6q1 w - -  dm 130;    id  "KNPPKQ";
8/k1PN1r2/8/8/8/1P6/8/K7 w - -  dm 97;      id  "KNPPKR";
8/8/8/1k6/8/8/K5P1/8 w - -  dm 28;          id  "KPK";
8/8/8/k7/8/b7/K5P1/8 w - -  dm 29;          id  "KPKB";
8/8/7P/8/4k3/b7/8/1K3b2 w - -  dm 83;       id  "KPKBB";
8/8/3P4/8/8/2k5/8/1K2n2b w - -  dm 55;      id  "KPKBN";
3K4/8/1P6/8/6p1/8/4b3/7k w - -  dm 51;      id  "KPKBP";
8/8/8/k7/8/n7/K5P1/8 w - -  dm 29;          id  "KPKN";
8/8/7P/8/4n3/1k6/8/3K3n w - -  dm 74;       id  "KPKNN";
8/3K4/8/6p1/P7/8/6n1/7k w - -  dm 58;       id  "KPKNP";
2K5/k7/7p/8/8/8/6P1/8 w - -  dm 33;         id  "KPKP";
8/8/7P/3K4/5p2/4p3/8/7k w - -  dm 43;       id  "KPKPP";
8/8/8/k7/8/q7/K5P1/8 w - -  dm 29;          id  "KPKQ";
qk6/6P1/6b1/1K6/8/8/8/8 w - -  dm 24;       id  "KPKQB";
8/n7/8/1k1q4/3K3P/8/8/8 w - -  dm 29;       id  "KPKQN";
k1q5/2K5/7p/8/8/8/6P1/8 w - -  dm 34;       id  "KPKQP";
qk4q1/5P2/8/1K6/8/8/8/8 w - -  dm 13;       id  "KPKQQ";
8/2P2k2/3q4/2K2r2/8/8/8/8 w - -  dm 43;     id  "KPKQR";
8/5k2/2PK4/5r2/8/8/8/8 w - -  dm 43;        id  "KPKR";
8/4P3/b7/r7/8/8/8/1K4k1 w - -  dm 70;       id  "KPKRB";
1n6/1K1P4/8/8/8/8/4r3/1k6 w - -  dm 68;     id  "KPKRN";
K7/7P/4r3/8/5p2/8/2k5/8 w - -  dm 103;      id  "KPKRP";
3K4/4P3/1r2k3/8/8/8/8/7r w - -  dm 50;      id  "KPKRR";
8/8/8/8/8/2k3P1/6P1/K7 w - -  dm 32;        id  "KPPK";
8/6P1/7k/8/6P1/1K6/8/1b6 w - -  dm 43;      id  "KPPKB";
8/8/8/P6P/K1k5/8/4b3/4n3 w - -  dm 61;      id  "KPPKBN";
3n4/5P2/8/8/3K2P1/8/k7/8 w - -  dm 50;      id  "KPPKN";
8/8/8/8/1p2P3/4P3/1k6/3K4 w - -  dm 127;    id  "KPPKP";
8/8/2p4P/5P2/1k6/4p3/K7/8 w - -  dm 141;    id  "KPPKPP";
8/4P3/7q/8/8/8/k1K1P3/8 w - -  dm 124;      id  "KPPKQ";
3K4/8/8/4P3/8/2r5/5P2/2k5 w - -  dm 54;     id  "KPPKR";
K7/8/8/8/2k3P1/6P1/6P1/8 w - -  dm 33;      id  "KPPPK";
8/4k1P1/8/3K4/8/8/2bP3P/8 w - -  dm 78;     id  "KPPPKB";
8/5P2/2n1k3/8/3K4/1P6/1P6/8 w - -  dm 87;   id  "KPPPKN";
8/7k/2P5/1K6/8/5p1P/P7/8 w - -  dm 171;     id  "KPPPKP";
6k1/P7/8/8/3q4/7P/P1K5/8 w - -  dm 178;     id  "KPPPKQ";
8/2P5/2P1r3/k7/8/2K5/5P2/8 w - -  dm 70;    id  "KPPPKR";
8/8/8/8/8/1B6/Q1B1k3/K7 w - -  dm 6;        id  "KQBBK";
8/8/4B1b1/8/8/k2K4/8/1Q2B3 w - -  dm 23;    id  "KQBBKB";
8/1B6/3Q4/1n6/3K4/8/2kB4/8 w - -  dm 76;    id  "KQBBKN";
8/8/8/8/8/4Q3/1pkB3B/K7 w - -  dm 79;       id  "KQBBKP";
8/6k1/4B3/8/6B1/3q4/8/1K5Q w - -  dm 96;    id  "KQBBKQ";
8/7B/8/7k/5Q2/8/1B6/Kr6 w - -  dm 40;       id  "KQBBKR";
8/5B2/5k2/8/8/8/8/KQ6 w - -  dm 8;          id  "KQBK";
8/8/8/4k3/3b4/8/5Q2/K3B3 w - -  dm 17;      id  "KQBKB";
8/1Q6/8/8/2bb4/3B4/3k4/K7 w - -  dm 81;     id  "KQBKBB";
8/8/8/8/3b4/1Q6/3kn3/K2B4 w - -  dm 53;     id  "KQBKBN";
5B2/8/1K6/8/2k5/8/7p/Q5b1 w - -  dm 58;     id  "KQBKBP";
8/8/8/8/8/2kB4/1n2Q3/3K4 w - -  dm 21;      id  "KQBKN";
8/7Q/8/B3n1k1/8/1n6/8/K7 w - -  dm 69;      id  "KQBKNN";
8/6Q1/8/3n4/1K3B2/8/1pk5/8 w - -  dm 63;    id  "KQBKNP";
8/Q7/2K3k1/8/8/8/7p/2B5 w - -  dm 32;       id  "KQBKP";
8/8/8/3K4/8/8/p2Q1B1p/5k2 w - -  dm 46;     id  "KQBKPP";
7q/8/8/k7/8/7B/3K4/4Q3 w - -  dm 33;        id  "KQBKQ";
7q/1B5b/8/8/7Q/3k4/8/3K4 w - -  dm 58;      id  "KQBKQB";
Q7/8/7q/8/2B5/3K4/n7/2k5 w - -  dm 42;      id  "KQBKQN";
q7/p7/8/7k/QB6/8/8/3K4 w - -  dm 63;        id  "KQBKQP";
8/8/7q/8/8/qQ1K4/B7/2k5 w - -  dm 34;       id  "KQBKQQ";
7q/4B2r/8/8/8/8/1Q6/3K3k w - -  dm 49;      id  "KQBKQR";
8/7B/8/7k/5Q2/8/8/Kr6 w - -  dm 40;         id  "KQBKR";
8/b7/6Q1/8/8/5B2/3k4/K1r5 w - -  dm 72;     id  "KQBKRB";
8/2B1r3/6Q1/2k5/8/5n2/3K4/8 w - -  dm 69;   id  "KQBKRN";
8/Q7/8/K4rp1/5B2/8/6k1/8 w - -  dm 105;     id  "KQBKRP";
3r4/6Q1/5B2/8/8/5k2/2Kr4/8 w - -  dm 107;   id  "KQBKRR";
8/8/8/8/4N3/3kB3/Q7/K7 w - -  dm 7;         id  "KQBNK";
8/Q7/3B4/8/3K4/8/4Nb2/1k6 w - -  dm 39;     id  "KQBNKB";
8/8/8/8/2Q5/n5B1/8/1K2N2k w - -  dm 107;    id  "KQBNKN";
Q3B3/N7/8/8/8/8/1p6/K1k5 w - -  dm 73;      id  "KQBNKP";
7q/8/8/8/5B1N/2K4k/5Q2/8 w - -  dm 84;      id  "KQBNKQ";
8/8/8/4B3/8/5N2/7Q/K1r2k2 w - -  dm 44;     id  "KQBNKR";
8/8/8/8/8/8/k1PK4/2QB4 w - -  dm 9;         id  "KQBPK";
8/8/2B5/8/b7/1KP5/2Q5/k7 w - -  dm 51;      id  "KQBPKB";
8/8/8/2K5/k7/3n1P1B/8/4Q3 w - -  dm 91;     id  "KQBPKN";
3B4/8/8/8/8/4P1Q1/1p6/K1k5 w - -  dm 112;   id  "KQBPKP";
8/5B1Q/8/8/3k4/6qP/8/1K6 w - -  dm 158;     id  "KQBPKQ";
8/8/2P2k2/8/8/r1K4Q/7B/8 w - -  dm 43;      id  "KQBPKR";
8/8/8/5k2/8/8/1Q6/K7 w - -  dm 10;          id  "KQK";
8/6Q1/8/4b3/3k4/8/8/K7 w - -  dm 17;        id  "KQKB";
8/1Q6/8/8/2bb4/8/3k4/K7 w - -  dm 81;       id  "KQKBB";
8/8/8/8/3b4/1Q6/3kn3/K7 w - -  dm 53;       id  "KQKBN";
3K4/8/8/8/8/1Q6/4b1pk/8 w - -  dm 50;       id  "KQKBP";
8/8/8/8/8/2k5/2n5/KQ6 w - -  dm 21;         id  "KQKN";
8/8/8/8/4n2Q/3k4/8/3K3n w - -  dm 72;       id  "KQKNN";
8/7Q/8/K7/8/8/3p4/n1k5 w - -  dm 55;        id  "KQKNP";
3Q4/3K4/8/8/8/3k4/3p4/8 w - -  dm 28;       id  "KQKP";
8/8/8/2K5/5p2/8/1Q2pk2/8 w - -  dm 41;      id  "KQKPP";
8/8/8/8/8/8/8/qk1K2Q1 w - -  dm 13;         id  "KQKQ";
8/2b5/8/8/8/8/k2K1Q2/q7 w - -  dm 24;       id  "KQKQB";
3q4/2n5/8/8/8/8/6Q1/k2K4 w - -  dm 24;      id  "KQKQN";
2Qq4/2K5/8/8/8/8/4p3/2k5 w - -  dm 29;      id  "KQKQP";
8/8/8/8/8/8/3q4/qk1K2Q1 w - -  dm 13;       id  "KQKQQ";
8/8/6q1/8/8/8/2krQ3/K7 w - -  dm 38;        id  "KQKQR";
8/8/8/8/2r5/8/2k5/K6Q w - -  dm 35;         id  "KQKR";
8/4Q3/b7/r7/8/8/8/K5k1 w - -  dm 70;        id  "KQKRB";
8/5Q2/8/n7/8/4k3/8/3K2r1 w - -  dm 69;      id  "KQKRN";
8/Q7/K7/5r2/5p2/8/6k1/8 w - -  dm 104;      id  "KQKRP";
4r3/8/5Q2/8/5r2/1k6/8/1K6 w - -  dm 49;     id  "KQKRR";
8/8/5k2/8/8/8/8/KN4Q1 w - -  dm 9;          id  "KQNK";
8/8/8/4b3/8/8/N1k5/K4Q2 w - -  dm 17;       id  "KQNKB";
8/8/8/3k4/4bb2/8/8/QKN5 w - -  dm 82;       id  "KQNKBB";
8/8/8/2N5/3b4/1Q6/3kn3/K7 w - -  dm 53;     id  "KQNKBN";
2K5/8/8/8/6b1/1Q6/4N1pk/8 w - -  dm 51;     id  "KQNKBP";
8/8/8/8/3N4/2k5/1n2Q3/3K4 w - -  dm 21;     id  "KQNKN";
8/8/3Q4/8/2N1k3/n7/3n4/1K6 w - -  dm 68;    id  "KQNKNN";
8/8/8/2k5/2nN4/5Q2/1p1K4/8 w - -  dm 66;    id  "KQNKNP";
8/8/2K4N/8/8/5Q2/p1k5/8 w - -  dm 30;       id  "KQNKP";
8/4k3/2p1N3/1K6/8/8/4Q2p/8 w - -  dm 63;    id  "KQNKPP";
6q1/8/8/Q7/8/2K5/8/3Nk3 w - -  dm 41;       id  "KQNKQ";
6Q1/b7/8/3N4/8/8/k2K4/7q w - -  dm 44;      id  "KQNKQB";
6q1/n7/8/Q7/8/2K5/8/3Nk3 w - -  dm 43;      id  "KQNKQN";
8/2K1k3/2p5/1N6/8/8/1Q6/7q w - -  dm 65;    id  "KQNKQP";
6q1/8/8/Q7/8/2qK4/8/1N1k4 w - -  dm 42;     id  "KQNKQQ";
1r6/8/8/7k/8/5N2/2K1Q3/q7 w - -  dm 53;     id  "KQNKQR";
k7/2Q5/8/8/8/8/3r4/1N1K4 w - -  dm 38;      id  "KQNKR";
5Q2/8/8/r4b2/8/5k2/5N2/1K6 w - -  dm 71;    id  "KQNKRB";
8/8/8/Q7/6N1/6rk/n7/2K5 w - -  dm 69;       id  "KQNKRN";
8/K4r2/8/5N2/5p2/8/6k1/Q7 w - -  dm 103;    id  "KQNKRP";
3r2r1/8/k7/8/8/8/3K4/1Q4N1 w - -  dm 174;   id  "KQNKRR";
N7/N7/8/8/8/5k2/8/K1Q5 w - -  dm 8;         id  "KQNNK";
8/1N6/8/7N/3bk3/8/1Q6/K7 w - -  dm 17;      id  "KQNNKB";
8/N7/8/8/8/2k5/2nN4/KQ6 w - -  dm 13;       id  "KQNNKN";
8/8/8/1p6/QK6/5N2/8/4N2k w - -  dm 92;      id  "KQNNKP";
2N2N2/8/8/8/8/q4k2/8/3K2Q1 w - -  dm 74;    id  "KQNNKQ";
k7/2Q5/8/8/5N2/3r4/8/1N1K4 w - -  dm 39;    id  "KQNNKR";
NQ6/8/8/8/4k3/8/1P6/K7 w - -  dm 9;         id  "KQNPK";
8/8/8/8/1N6/4b3/7P/k1K3Q1 w - -  dm 42;     id  "KQNPKB";
8/K7/2n5/4Q3/8/8/P7/5k1N w - -  dm 61;      id  "KQNPKN";
8/8/8/8/5Q2/4P3/1pN5/K1k5 w - -  dm 115;    id  "KQNPKP";
K3q3/3N4/8/8/8/k3P3/4Q3/8 w - -  dm 133;    id  "KQNPKQ";
K7/r7/3P4/8/8/3N2Q1/8/7k w - -  dm 45;      id  "KQNPKR";
8/8/8/3k4/8/4P3/8/K1Q5 w - -  dm 10;        id  "KQPK";
8/8/k7/8/1Q6/2K5/6P1/4b3 w - -  dm 28;      id  "KQPKB";
8/8/7P/8/4k3/3b4/3b4/1KQ5 w - -  dm 84;     id  "KQPKBB";
1K6/3n4/2k3P1/4Q3/8/8/5b2/8 w - -  dm 56;   id  "KQPKBN";
4b3/8/8/Q7/8/1k2P3/1p6/2K5 w - -  dm 126;   id  "KQPKBP";
8/Q7/2n5/1k6/3K4/8/7P/8 w - -  dm 30;       id  "KQPKN";
8/2n5/8/K7/1Pn5/8/2k5/7Q w - -  dm 80;      id  "KQPKNN";
4n3/8/8/8/8/3QP3/kp6/2K5 w - -  dm 125;     id  "KQPKNP";
8/8/8/8/3P2Q1/8/1p6/K1k5 w - -  dm 105;     id  "KQPKP";
2k5/2p5/1K6/7P/7Q/8/6p1/8 w - -  dm 141;    id  "KQPKPP";
4Q3/8/7q/8/8/8/k3P3/2K5 w - -  dm 124;      id  "KQPKQ";
4b3/8/8/8/6Q1/k1K1P3/5q2/8 w - -  dm 128;   id  "KQPKQB";
4n1Q1/8/8/8/2K5/4P3/k4q2/8 w - -  dm 128;   id  "KQPKQN";
8/3q4/2p4P/8/7Q/1k6/8/K7 w - -  dm 151;     id  "KQPKQP";
2Q5/8/7q/8/8/4P3/3q4/k1K5 w - -  dm 124;    id  "KQPKQQ";
4r3/8/8/8/8/4P3/1k1K1Q2/1q6 w - -  dm 126;  id  "KQPKQR";
8/8/P7/3k4/r7/8/8/KQ6 w - -  dm 37;         id  "KQPKR";
8/1kb5/8/8/3r4/8/4P3/2K1Q3 w - -  dm 155;   id  "KQPKRB";
8/2n5/8/8/1K3r2/Q7/2kP4/8 w - -  dm 110;    id  "KQPKRN";
8/8/8/1K6/2Q5/1r2P3/1k4p1/8 w - -  dm 126;  id  "KQPKRP";
8/3P2k1/8/3K4/8/8/r4r2/5Q2 w - -  dm 165;   id  "KQPKRR";
8/8/8/8/8/3kP3/3P4/K1Q5 w - -  dm 9;        id  "KQPPK";
8/8/8/8/1k6/2b3P1/1K4P1/Q7 w - -  dm 34;    id  "KQPPKB";
8/8/8/8/8/3KP3/Q5P1/2n1k3 w - -  dm 44;     id  "KQPPKN";
8/8/8/Q7/8/8/1Pp1P3/1k1K4 w - -  dm 123;    id  "KQPPKP";
8/4k3/8/Q7/8/7P/P7/q1K5 w - -  dm 182;      id  "KQPPKQ";
Kr6/8/8/2P5/8/3P4/5Q2/7k w - -  dm 54;      id  "KQPPKR";
3Q3Q/8/8/8/3B4/8/4k3/K7 w - -  dm 4;        id  "KQQBK";
3Q4/8/8/8/8/2b5/Q1B5/K1k5 w - -  dm 14;     id  "KQQBKB";
8/8/8/8/2kB3Q/5Q2/3n4/1K6 w - -  dm 16;     id  "KQQBKN";
3Q4/Q7/8/8/2B5/8/1p6/K1k5 w - -  dm 30;     id  "KQQBKP";
6Q1/8/5B2/8/8/8/3k4/QK1q4 w - -  dm 40;     id  "KQQBKQ";
8/8/8/8/8/6Q1/5Q2/K1r1B2k w - -  dm 42;     id  "KQQBKR";
1Q6/Q7/8/8/8/5k2/8/K7 w - -  dm 4;          id  "KQQK";
8/8/8/8/8/3k1b2/8/2QKQ3 w - -  dm 15;       id  "KQQKB";
8/8/3Q4/8/4k3/1b2b3/8/3KQ3 w - -  dm 81;    id  "KQQKBB";
8/8/8/8/8/1kn5/4Q1Q1/1K3b2 w - -  dm 48;    id  "KQQKBN";
8/Q7/8/8/4b3/1k6/5p2/QK6 w - -  dm 51;      id  "KQQKBP";
8/8/8/4k3/2Q5/n7/3Q4/1K6 w - -  dm 19;      id  "KQQKN";
8/7Q/8/Q3n1k1/8/1n6/8/K7 w - -  dm 69;      id  "KQQKNN";
8/8/8/8/7Q/2k5/2pnQ3/1K6 w - -  dm 60;      id  "KQQKNP";
8/8/8/3Q4/7Q/2k5/1p6/K7 w - -  dm 22;       id  "KQQKP";
6Q1/8/8/8/8/8/1pkp2Q1/K7 w - -  dm 40;      id  "KQQKPP";
1Q6/Q7/8/8/8/8/2k5/K4q2 w - -  dm 30;       id  "KQQKQ";
8/8/1k6/2q5/6Q1/b7/8/2K4Q w - -  dm 71;     id  "KQQKQB";
7n/8/8/8/1k6/8/7Q/q1K3Q1 w - -  dm 60;      id  "KQQKQN";
QQ6/8/8/8/1K4q1/8/4p3/2k5 w - -  dm 60;     id  "KQQKQP";
8/7k/8/1q1q4/8/8/8/K4QQ1 w - -  dm 50;      id  "KQQKQQ";
Q5Q1/1r6/2k4q/8/8/8/8/1K6 w - -  dm 69;     id  "KQQKQR";
8/8/8/6Q1/5Q2/7k/r7/K7 w - -  dm 35;        id  "KQQKR";
5Q2/8/8/Q7/8/r2b4/4k3/1K6 w - -  dm 70;     id  "KQQKRB";
8/8/8/8/1n3k2/1Q6/Q7/1K4r1 w - -  dm 66;    id  "KQQKRN";
8/8/1pk5/K7/8/8/Qr6/4Q3 w - -  dm 97;       id  "KQQKRP";
4Q3/8/7Q/8/8/2rk4/8/2K1r3 w - -  dm 48;     id  "KQQKRR";
1Q6/2N5/1Q6/8/8/8/4k3/K7 w - -  dm 4;       id  "KQQNK";
3Q4/8/8/8/8/2b5/Q1N5/K1k5 w - -  dm 14;     id  "KQQNKB";
N6Q/8/8/8/4k3/1n6/3Q4/K7 w - -  dm 13;      id  "KQQNKN";
8/Q7/2Q5/2N5/8/8/1p6/K1k5 w - -  dm 37;     id  "KQQNKP";
4Q3/8/2N5/8/k7/8/7Q/q1K5 w - -  dm 45;      id  "KQQNKQ";
7N/8/8/8/8/6Q1/5Q2/K1r4k w - -  dm 46;      id  "KQQNKR";
3Q4/3Q4/8/8/8/3P4/8/K1k5 w - -  dm 4;       id  "KQQPK";
8/8/8/4b3/5Q2/1P1k4/Q7/K7 w - -  dm 16;     id  "KQQPKB";
8/8/8/P2Q4/1Q6/8/2n5/K1k5 w - -  dm 24;     id  "KQQPKN";
8/8/8/Q7/6Q1/8/1p1P4/K1k5 w - -  dm 109;    id  "KQQPKP";
k1K1q3/8/8/8/8/8/6P1/5Q1Q w - -  dm 122;    id  "KQQPKQ";
k7/P5Q1/Q7/8/8/8/r7/K7 w - -  dm 46;        id  "KQQPKR";
8/8/1Q6/Q7/1Q6/8/8/K4k2 w - -  dm 3;        id  "KQQQK";
5Q2/8/8/8/3b4/5Q2/Q7/K1k5 w - -  dm 5;      id  "KQQQKB";
Q7/8/Q7/8/1Q6/8/2n5/K1k5 w - -  dm 8;       id  "KQQQKN";
k7/5Q2/8/4Q3/8/8/1p1Q4/2K5 w - -  dm 26;    id  "KQQQKP";
1Q6/Q7/8/8/3q4/8/2k5/K4Q2 w - -  dm 31;     id  "KQQQKQ";
8/8/8/1Q6/2Q5/k7/3r2Q1/3K4 w - -  dm 37;    id  "KQQQKR";
8/8/8/8/4k3/8/1K6/QR1Q4 w - -  dm 4;        id  "KQQRK";
8/8/8/8/5R2/2k1b3/8/1QKQ4 w - -  dm 14;     id  "KQQRKB";
8/R7/8/3Q4/1Q6/8/2n5/K1k5 w - -  dm 32;     id  "KQQRKN";
7R/8/8/1Q6/7Q/2k5/3p4/2K5 w - -  dm 37;     id  "KQQRKP";
8/8/8/q7/3Q4/6k1/8/KR5Q w - -  dm 68;       id  "KQQRKQ";
8/8/8/1Q6/2Q5/k7/3r2R1/3K4 w - -  dm 37;    id  "KQQRKR";
1Q6/8/8/8/3B4/3k4/2R5/K7 w - -  dm 5;       id  "KQRBK";
8/8/8/8/8/2kb4/Q7/RKB5 w - -  dm 27;        id  "KQRBKB";
8/6Bk/4Q3/2R5/5n2/3K4/8/8 w - -  dm 34;     id  "KQRBKN";
Q7/R7/8/1B6/8/8/1p6/K1k5 w - -  dm 56;      id  "KQRBKP";
8/7R/8/1B6/8/q7/5k2/K6Q w - -  dm 67;       id  "KQRBKQ";
3Q4/k7/4R3/8/8/8/6B1/rK6 w - -  dm 68;      id  "KQRBKR";
8/8/8/8/3k4/2R5/8/K6Q w - -  dm 6;          id  "KQRK";
8/8/8/5b2/8/R2K4/6k1/1Q6 w - -  dm 29;      id  "KQRKB";
5R2/8/7b/8/4k3/3b4/8/QK6 w - -  dm 81;      id  "KQRKBB";
8/8/8/1R6/3b4/1Q6/3kn3/K7 w - -  dm 53;     id  "KQRKBN";
2K5/4k3/8/8/5R2/7b/2p4Q/8 w - -  dm 81;     id  "KQRKBP";
8/2R5/8/8/7k/4n3/6Q1/3K4 w - -  dm 40;      id  "KQRKN";
8/7Q/8/R3n1k1/8/1n6/8/K7 w - -  dm 69;      id  "KQRKNN";
8/5R2/8/K7/8/1n6/2p4Q/1k6 w - -  dm 69;     id  "KQRKNP";
8/Q7/R7/8/8/8/1p6/K1k5 w - -  dm 40;        id  "KQRKP";
8/8/4QR2/8/8/4p3/1pk5/K7 w - -  dm 97;      id  "KQRKPP";
8/8/8/8/q7/6k1/8/KR5Q w - -  dm 67;         id  "KQRKQ";
R7/8/1k6/8/3q4/8/8/bK4Q1 w - -  dm 89;      id  "KQRKQB";
8/4nq2/8/k7/8/8/4Q3/3K2R1 w - -  dm 83;     id  "KQRKQN";
2QR4/8/2K5/4q3/8/4p3/5k2/8 w - -  dm 103;   id  "KQRKQP";
q3Q3/8/5q2/8/8/8/3k4/1K5R w - -  dm 80;     id  "KQRKQQ";
4q3/7R/8/4r2Q/8/4k3/8/2K5 w - -  dm 117;    id  "KQRKQR";
8/8/8/8/3RQ3/2k5/8/K4r2 w - -  dm 34;       id  "KQRKR";
8/R7/6Q1/8/3b4/8/1K1k4/5r2 w - -  dm 71;    id  "KQRKRB";
8/8/8/Q7/5R2/4k3/n7/2K3r1 w - -  dm 67;     id  "KQRKRN";
8/1K6/3Q3R/1r6/k7/8/4p3/8 w - -  dm 113;    id  "KQRKRP";
R7/7Q/8/8/8/8/8/2rKr1k1 w - -  dm 57;       id  "KQRKRR";
Q7/N7/8/8/8/8/3k4/K1R5 w - -  dm 5;         id  "KQRNK";
8/8/8/4b3/5Q2/3kN3/7R/K7 w - -  dm 27;      id  "KQRNKB";
8/8/8/RN3Q2/1k6/4n3/2K5/8 w - -  dm 33;     id  "KQRNKN";
4Q2R/8/8/8/8/8/1p6/K1k3N1 w - -  dm 49;     id  "KQRNKP";
8/6NR/8/8/8/2q5/5k2/K6Q w - -  dm 77;       id  "KQRNKQ";
8/8/8/8/1R6/1Q6/2Kr1N2/k7 w - -  dm 44;     id  "KQRNKR";
6Q1/8/8/8/8/8/6Pk/K5R1 w - -  dm 7;         id  "KQRPK";
8/8/4Q3/3b4/8/8/K1kP4/R7 w - -  dm 67;      id  "KQRPKB";
8/7R/8/8/4Q3/6kP/3n4/1K6 w - -  dm 51;      id  "KQRPKN";
5Q1R/8/8/8/8/8/1p2P3/K1k5 w - -  dm 124;    id  "KQRPKP";
8/4R3/8/8/8/K1q1P1Q1/8/k7 w - -  dm 127;    id  "KQRPKQ";
2k5/8/8/6R1/8/8/6P1/r1K2Q2 w - -  dm 75;    id  "KQRPKR";
5Q2/5R2/8/8/8/3k4/4R3/K7 w - -  dm 4;       id  "KQRRK";
8/8/8/8/6b1/3k4/8/2RKQR2 w - -  dm 18;      id  "KQRRKB";
8/R7/8/3R4/1Q6/8/2n5/K1k5 w - -  dm 32;     id  "KQRRKN";
8/R7/8/3Q4/5R2/2k5/1p6/K7 w - -  dm 45;     id  "KQRRKP";
8/8/8/q7/1R6/6k1/8/KR5Q w - -  dm 67;       id  "KQRRKQ";
7k/1R6/8/5QR1/8/r7/8/K7 w - -  dm 41;       id  "KQRRKR";
8/8/8/8/3B4/3k4/2RB4/K7 w - -  dm 12;       id  "KRBBK";
8/b7/8/8/3K4/8/BBk5/R7 w - -  dm 29;        id  "KRBBKB";
8/8/8/8/8/1nk5/3RB3/K1B5 w - -  dm 78;      id  "KRBBKN";
8/8/8/8/8/8/4p1RB/3K1k1B w - -  dm 76;      id  "KRBBKP";
4R1B1/1q6/5B2/k7/8/3K4/8/8 w - -  dm 53;    id  "KRBBKQ";
1k6/R7/8/B6B/8/8/3K4/r7 w - -  dm 70;       id  "KRBBKR";
8/8/8/8/3B4/3k4/2R5/K7 w - -  dm 16;        id  "KRBK";
8/8/8/8/8/3R4/6k1/3K1bB1 w - -  dm 30;      id  "KRBKB";
7k/4R2B/8/8/8/3K2bb/8/8 w - -  dm 92;       id  "KRBKBB";
B7/8/8/4b3/8/1R6/3kn3/K7 w - -  dm 112;     id  "KRBKBN";
8/8/8/8/8/K7/1pkb4/3R3B w - -  dm 101;      id  "KRBKBP";
8/2R5/8/8/7k/4n3/6B1/3K4 w - -  dm 40;      id  "KRBKN";
8/8/8/8/2n2k2/2n5/5BR1/1K6 w - -  dm 238;   id  "KRBKNN";
8/8/2R5/3B4/k7/3np3/K7/8 w - -  dm 229;     id  "KRBKNP";
8/8/8/8/8/1R1K4/kB1p4/8 w - -  dm 28;       id  "KRBKP";
8/8/8/8/7B/4k3/K1p1pR2/8 w - -  dm 208;     id  "KRBKPP";
1q6/8/8/8/8/8/8/k1KR2B1 w - -  dm 21;       id  "KRBKQ";
8/8/8/8/2R5/B7/5k2/3K1bq1 w - -  dm 32;     id  "KRBKQB";
8/8/8/5n2/B7/3R4/2K3k1/7q w - -  dm 42;     id  "KRBKQN";
1R6/8/B7/3q4/8/2K5/1p6/7k w - -  dm 38;     id  "KRBKQP";
1q6/8/8/8/3B4/2R1q3/8/k1K5 w - -  dm 21;    id  "KRBKQQ";
8/4B3/8/6R1/r7/3q4/2K5/k7 w - -  dm 65;     id  "KRBKQR";
8/3B4/8/1R6/5r2/8/3K4/5k2 w - -  dm 65;     id  "KRBKR";
2R5/8/8/B7/7b/3r4/8/k1K5 w - -  dm 65;      id  "KRBKRB";
8/7n/8/4R3/8/k2KB3/8/3r4 w - -  dm 68;      id  "KRBKRN";
k2r4/8/8/Kp6/8/8/4B3/7R w - -  dm 77;       id  "KRBKRP";
2r5/8/B7/2R5/7r/3K4/8/5k2 w - -  dm 67;     id  "KRBKRR";
8/8/8/8/8/8/6kB/K5NR w - -  dm 29;          id  "KRBNK";
8/8/8/R7/Nb6/8/3K4/k5B1 w - -  dm 39;       id  "KRBNKB";
8/8/8/8/2R5/n5B1/8/1K2N2k w - -  dm 107;    id  "KRBNKN";
R3B3/N7/8/8/8/3K4/6p1/1k6 w - -  dm 122;    id  "KRBNKP";
R3B3/8/8/1N6/8/3K4/8/1k4q1 w - -  dm 121;   id  "KRBNKQ";
8/8/8/4R3/5r1B/8/Nk1K4/8 w - -  dm 68;      id  "KRBNKR";
8/8/8/8/BR6/kP6/8/K7 w - -  dm 16;          id  "KRBPK";
7b/8/8/8/8/5k2/1K1P4/RB6 w - -  dm 71;      id  "KRBPKB";
8/8/8/2K5/k7/3n1P1B/8/4R3 w - -  dm 91;     id  "KRBPKN";
8/8/4P3/8/R2K4/B7/3p4/7k w - -  dm 120;     id  "KRBPKP";
8/7q/1R1P4/8/8/7B/3K4/k7 w - -  dm 127;     id  "KRBPKQ";
8/8/1B6/1k6/R7/2r5/6P1/K7 w - -  dm 76;     id  "KRBPKR";
8/8/8/8/8/2k5/1R6/K7 w - -  dm 16;          id  "KRK";
8/8/8/8/8/2R5/8/3K1bk1 w - -  dm 29;        id  "KRKB";
8/8/8/b1R5/8/3K4/8/1k4b1 w - -  dm 31;      id  "KRKBB";
8/5R2/8/8/k7/4b3/3K1n2/8 w - -  dm 41;      id  "KRKBN";
8/6bp/8/8/k1K5/8/8/2R5 w - -  dm 39;        id  "KRKBP";
8/2R5/8/8/7k/3K4/8/4n3 w - -  dm 40;        id  "KRKN";
8/5R2/8/8/k7/4n3/3K1n2/8 w - -  dm 41;      id  "KRKNN";
2K4k/7p/8/8/8/8/3R4/n7 w - -  dm 67;        id  "KRKNP";
8/8/K7/3p4/8/3k4/4R3/8 w - -  dm 26;        id  "KRKP";
2K5/8/3pR3/5p2/7k/8/8/8 w - -  dm 40;       id  "KRKPP";
8/8/8/8/8/1R6/6q1/K1k5 w - -  dm 19;        id  "KRKQ";
8/8/8/8/Rq6/3K4/8/1k4b1 w - -  dm 30;       id  "KRKQB";
8/5R2/8/8/k7/4q3/3K1n2/8 w - -  dm 41;      id  "KRKQN";
7R/8/8/k7/8/q7/Kp6/8 w - -  dm 33;          id  "KRKQP";
8/8/8/8/8/8/1R4q1/Kqk5 w - -  dm 19;        id  "KRKQQ";
8/8/R2q4/8/8/3k4/1r6/K7 w - -  dm 20;       id  "KRKQR";
8/8/8/8/8/1R6/6r1/K1k5 w - -  dm 19;        id  "KRKR";
8/8/8/8/Rr6/3K4/8/1k4b1 w - -  dm 30;       id  "KRKRB";
8/5R2/8/8/k7/4r3/3K1n2/8 w - -  dm 41;      id  "KRKRN";
7R/8/8/k7/8/r7/Kp6/8 w - -  dm 33;          id  "KRKRP";
8/8/R2r4/8/8/3k4/1r6/K7 w - -  dm 20;       id  "KRKRR";
8/8/8/8/3N4/3k4/2R5/K7 w - -  dm 16;        id  "KRNK";
8/8/8/8/4b3/8/2R5/3K1Nk1 w - -  dm 31;      id  "KRNKB";
8/7R/4b3/8/4k3/5b2/8/K6N w - -  dm 152;     id  "KRNKBB";
NbR5/8/n7/8/8/8/8/2K2k2 w - -  dm 209;      id  "KRNKBN";
8/8/7R/3kN3/1K6/8/5p1b/8 w - -  dm 194;     id  "KRNKBP";
8/8/8/8/RN6/1k6/8/3K1n2 w - -  dm 37;       id  "KRNKN";
6k1/5n2/8/8/8/5n2/1RK5/1N6 w - -  dm 262;   id  "KRNKNN";
8/8/8/8/7k/8/1R2p2N/1K1n4 w - -  dm 252;    id  "KRNKNP";
8/8/8/4R3/8/2k3N1/3p4/K7 w - -  dm 29;      id  "KRNKP";
8/2K5/R6N/8/8/2p5/5p2/3k4 w - -  dm 188;    id  "KRNKPP";
8/8/8/8/R7/6q1/5N2/K1k5 w - -  dm 20;       id  "KRNKQ";
8/8/8/8/4b3/8/2RN3k/3K1q2 w - -  dm 32;     id  "KRNKQB";
8/8/8/n7/2R4q/8/3k4/1K2N3 w - -  dm 42;     id  "KRNKQN";
8/8/8/4R3/8/3p2q1/3k3N/K7 w - -  dm 31;     id  "KRNKQP";
8/8/8/8/R1q5/6q1/5N2/K1k5 w - -  dm 20;     id  "KRNKQQ";
8/8/8/8/N2K4/8/R7/q1k1r3 w - -  dm 37;      id  "KRNKQR";
8/8/8/8/N2K4/R7/8/2k1r3 w - -  dm 37;       id  "KRNKR";
8/8/8/8/r7/8/3K4/kNRb4 w - -  dm 37;        id  "KRNKRB";
7n/8/5R2/8/3r4/8/8/k2K3N w - -  dm 52;      id  "KRNKRN";
k7/8/1K4p1/8/r7/8/3N4/3R4 w - -  dm 52;     id  "KRNKRP";
8/8/8/8/N2K4/8/R7/r1k1r3 w - -  dm 37;      id  "KRNKRR";
8/5NR1/5kN1/8/8/8/8/K7 w - -  dm 15;        id  "KRNNK";
8/8/8/8/8/3K4/5kNR/1b4N1 w - -  dm 30;      id  "KRNNKB";
8/8/8/2n5/8/6kN/3K2NR/8 w - -  dm 34;       id  "KRNNKN";
RN6/Nk6/p7/8/8/8/K7/8 w - -  dm 107;        id  "KRNNKP";
3q4/N6R/8/N7/8/k7/2K5/8 w - -  dm 33;       id  "KRNNKQ";
8/8/8/6N1/8/1r6/6RN/K6k w - -  dm 42;       id  "KRNNKR";
6k1/6NR/7P/8/8/8/8/K7 w - -  dm 17;         id  "KRNPK";
8/8/8/8/4b3/1k2PN2/8/1KR5 w - -  dm 71;     id  "KRNPKB";
1k6/R7/2nP4/K5N1/8/8/8/8 w - -  dm 88;      id  "KRNPKN";
2N5/8/3K4/3P4/4k3/6R1/5p2/8 w - -  dm 121;  id  "KRNPKP";
7q/8/1NK5/4P3/1R6/8/8/k7 w - -  dm 123;     id  "KRNPKQ";
8/7N/8/8/8/2k5/4r2P/K2R4 w - -  dm 85;      id  "KRNPKR";
8/8/1R6/2kP4/8/8/8/K7 w - -  dm 16;         id  "KRPK";
8/8/R7/8/8/1k1P4/6b1/K7 w - -  dm 73;       id  "KRPKB";
8/8/3k2P1/1b6/8/8/K1R5/3b4 w - -  dm 136;   id  "KRPKBB";
8/1P6/8/n7/2K5/1b1R4/8/6k1 w - -  dm 204;   id  "KRPKBN";
8/3R2P1/7k/8/8/8/5p2/K5b1 w - -  dm 166;    id  "KRPKBP";
8/5n2/8/8/8/7k/7P/3K3R w - -  dm 54;        id  "KRPKN";
8/1P1k4/2R5/n7/1n6/K7/8/8 w - -  dm 253;    id  "KRPKNN";
4n3/6P1/5k2/8/8/8/1p1K4/R7 w - -  dm 198;   id  "KRPKNP";
R7/P7/8/K7/8/8/pk6/8 w - -  dm 56;          id  "KRPKP";
8/2K3R1/8/3p4/8/4pP2/4k3/8 w - -  dm 103;   id  "KRPKPP";
8/P1k5/8/8/8/1q6/R7/K7 w - -  dm 68;        id  "KRPKQ";
bK6/6P1/8/2q5/8/1k6/8/R7 w - -  dm 90;      id  "KRPKQB";
n7/1P6/7k/8/6R1/8/q7/2K5 w - -  dm 79;      id  "KRPKQN";
3R4/2P5/2K5/4q3/6k1/4p3/8/8 w - -  dm 104;  id  "KRPKQP";
8/P7/5q2/8/8/5k2/KR6/7q w - -  dm 80;       id  "KRPKQQ";
6R1/5P2/8/2k1r2q/8/K7/8/8 w - -  dm 118;    id  "KRPKQR";
k7/8/8/8/8/4R3/6P1/1K5r w - -  dm 74;       id  "KRPKR";
8/2R5/8/8/2br1k2/8/1PK5/8 w - -  dm 76;     id  "KRPKRB";
8/8/3n3k/8/8/8/rP1R4/3K4 w - -  dm 75;      id  "KRPKRN";
8/7P/1K5R/8/1r1k4/8/4p3/8 w - -  dm 116;    id  "KRPKRP";
8/8/3r3k/8/8/8/rP1R4/3K4 w - -  dm 75;      id  "KRPKRR";
8/8/8/8/2kP4/8/1R1P4/K7 w - -  dm 15;       id  "KRPPK";
7b/8/8/8/1R6/3P4/2kP4/K7 w - -  dm 70;      id  "KRPPKB";
8/4R3/8/K1k1P3/2n5/4P3/8/8 w - -  dm 54;    id  "KRPPKN";
8/k1P5/8/8/1R5P/8/7p/3K4 w - -  dm 211;     id  "KRPPKP";
8/k1P5/8/8/1R5P/8/K7/7q w - -  dm 216;      id  "KRPPKQ";
8/8/8/8/1k6/3r2P1/7P/K6R w - -  dm 95;      id  "KRPPKR";
8/6R1/6Bk/6R1/8/8/8/K7 w - -  dm 10;        id  "KRRBK";
7b/8/3R4/4RB2/5k2/8/8/K7 w - -  dm 28;      id  "KRRBKB";
8/6Bk/4R3/2R5/5n2/3K4/8/8 w - -  dm 34;     id  "KRRBKN";
8/8/8/7R/8/8/1p6/K1k3BR w - -  dm 73;       id  "KRRBKP";
8/7B/8/k7/8/8/1R6/1RK1q3 w - -  dm 90;      id  "KRRBKQ";
8/1B6/8/5R2/7R/8/8/K1r3k1 w - -  dm 69;     id  "KRRBKR";
8/8/8/8/8/3k4/2R5/KR6 w - -  dm 7;          id  "KRRK";
8/7R/1R6/8/4b3/8/2K5/5k2 w - -  dm 29;      id  "KRRKB";
8/8/1b6/3b4/4R3/8/5k2/K6R w - -  dm 45;     id  "KRRKBB";
4n1b1/8/8/8/2R5/8/4R3/1K1k4 w - -  dm 44;   id  "KRRKBN";
8/5R2/8/8/k2K4/1R3b2/3p4/8 w - -  dm 43;    id  "KRRKBP";
8/2R5/8/8/7k/4n3/6R1/3K4 w - -  dm 40;      id  "KRRKN";
8/2R5/8/8/2n4k/3n4/2R5/2K5 w - -  dm 43;    id  "KRRKNN";
8/7k/8/6Rp/3K4/5n2/R7/8 w - -  dm 66;       id  "KRRKNP";
8/8/6R1/8/8/8/4p1R1/3K1k2 w - -  dm 33;     id  "KRRKP";
8/8/k7/p7/1K6/3R4/2p1R3/8 w - -  dm 48;     id  "KRRKPP";
k2q4/7R/8/8/8/8/8/2K3R1 w - -  dm 29;       id  "KRRKQ";
8/R7/8/8/8/8/2RK1k2/5bq1 w - -  dm 34;      id  "KRRKQB";
7k/1n6/8/8/8/q7/2KR4/4R3 w - -  dm 43;      id  "KRRKQN";
5k1q/R2R4/3p4/8/8/8/8/K7 w - -  dm 45;      id  "KRRKQP";
8/8/8/8/8/RRq5/7q/K1k5 w - -  dm 29;        id  "KRRKQQ";
8/k7/8/8/1q6/5rR1/8/1RK5 w - -  dm 33;      id  "KRRKQR";
k7/6R1/8/8/1R6/2r5/8/2K5 w - -  dm 31;      id  "KRRKR";
3b4/r7/8/8/4R3/8/k7/2K3R1 w - -  dm 67;     id  "KRRKRB";
r7/8/8/6n1/8/1k6/3RR3/2K5 w - -  dm 89;     id  "KRRKRN";
8/8/8/K7/8/kpR5/2R5/7r w - -  dm 80;        id  "KRRKRP";
1R6/rR1r4/k7/8/8/8/2K5/8 w - -  dm 40;      id  "KRRKRR";
8/8/6R1/6Nk/6R1/8/8/K7 w - -  dm 10;        id  "KRRNK";
5R2/6b1/8/8/8/R7/6k1/K6N w - -  dm 28;      id  "KRRNKB";
8/8/8/RN3R2/1k6/4n3/2K5/8 w - -  dm 33;     id  "KRRNKN";
7N/8/8/2R5/8/R7/4p3/3K1k2 w - -  dm 89;     id  "KRRNKP";
5R1N/8/5R2/8/7k/q7/8/K7 w - -  dm 108;      id  "KRRNKQ";
7k/5R2/5N2/8/8/6R1/8/K4r2 w - -  dm 45;     id  "KRRNKR";
8/K7/8/8/5k2/4RPR1/8/8 w - -  dm 14;        id  "KRRPK";
7b/8/8/8/8/3R4/2kP4/KR6 w - -  dm 70;       id  "KRRPKB";
8/RK6/3n4/3k4/2R5/4P3/8/8 w - -  dm 54;     id  "KRRPKN";
8/7k/8/8/PR3R2/8/p7/3K4 w - -  dm 218;      id  "KRRPKP";
q7/7k/8/6R1/8/8/2P2R2/K7 w - -  dm 253;     id  "KRRPKQ";
1R6/k7/8/8/6R1/8/6P1/1K2r3 w - -  dm 75;    id  "KRRPKR";
8/8/8/8/4k3/5R2/R7/RK6 w - -  dm 5;         id  "KRRRK";
8/2R5/8/4b3/5R2/4k3/7R/K7 w - -  dm 18;     id  "KRRRKB";
8/R7/8/3R4/1R6/8/2n5/K1k5 w - -  dm 32;     id  "KRRRKN";
7R/8/5R2/8/8/5R2/1pk5/K7 w - -  dm 46;      id  "KRRRKP";
1R4R1/8/8/7R/q7/8/5k2/3K4 w - -  dm 69;     id  "KRRRKQ";
8/8/4R1R1/5k2/7R/8/r7/K7 w - -  dm 33;      id  "KRRRKR";
Data source is:
http://kirill-kryukov.com/chess/longest ... ates.shtml
jwes
Posts: 778
Joined: Sat Jul 01, 2006 7:11 am

Re: EGTB idea and question

Post by jwes »

michiguel wrote:
jwes wrote:If you limit the depth at which you probe egtb tables, it may be a good idea to also probe pv nodes at any depth. I think it will reduce some horizon effects.
That is what I am doing right now.
Also, does anyone have a test suite for testing egtb probing?
To test whether the EGTBs are working (debugging) or if they are effective in solving problems faster?

Miguel
PS: I can provide the first one.
I was looking for the second one.
Dann Corbit
Posts: 12792
Joined: Wed Mar 08, 2006 8:57 pm
Location: Redmond, WA USA

Re: EGTB idea and question

Post by Dann Corbit »

jwes wrote:
michiguel wrote:
jwes wrote:If you limit the depth at which you probe egtb tables, it may be a good idea to also probe pv nodes at any depth. I think it will reduce some horizon effects.
That is what I am doing right now.
Also, does anyone have a test suite for testing egtb probing?
To test whether the EGTBs are working (debugging) or if they are effective in solving problems faster?

Miguel
PS: I can provide the first one.
I was looking for the second one.
This file has positions that exercise EGTB files from immediate lookup to deeper search lookup:
http://cap.connx.com/epd/pawntest.epd.bz2

P.S.
Some of the solutions are wrong. I really must update it.