-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathzobrist.py
1092 lines (1088 loc) · 63.8 KB
/
zobrist.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
__all__ = ['HASH_CODE', 'EMPTY_BOARD']
from gotypes import Player, Point
HASH_CODE = {
(Point(row=1, col=1), Player.black): 4378341227901775340,
(Point(row=1, col=1), Player.white): 658013963213337992,
(Point(row=1, col=1), None): 7741252385486250606,
(Point(row=1, col=2), Player.black): 3737483680906995813,
(Point(row=1, col=2), Player.white): 4855185602262571309,
(Point(row=1, col=2), None): 3273517167394971888,
(Point(row=1, col=3), Player.black): 5290454530834161923,
(Point(row=1, col=3), Player.white): 4524304259588577502,
(Point(row=1, col=3), None): 2116208675190800771,
(Point(row=1, col=4), Player.black): 1045697411841871660,
(Point(row=1, col=4), Player.white): 4085204030152631755,
(Point(row=1, col=4), None): 5928094433736548099,
(Point(row=1, col=5), Player.black): 7352065778815541291,
(Point(row=1, col=5), Player.white): 2665606820493555801,
(Point(row=1, col=5), None): 8148183878661783501,
(Point(row=1, col=6), Player.black): 2083426413017938217,
(Point(row=1, col=6), Player.white): 8517006624034270239,
(Point(row=1, col=6), None): 5194706789538919256,
(Point(row=1, col=7), Player.black): 5518341232998019591,
(Point(row=1, col=7), Player.white): 8242000124665333330,
(Point(row=1, col=7), None): 37661919893876822,
(Point(row=1, col=8), Player.black): 5968978963503981146,
(Point(row=1, col=8), Player.white): 6206079182363680773,
(Point(row=1, col=8), None): 4449754747431324725,
(Point(row=1, col=9), Player.black): 7516387272392130509,
(Point(row=1, col=9), Player.white): 6674686733953722679,
(Point(row=1, col=9), None): 4786357649223738262,
(Point(row=1, col=10), Player.black): 7766067965153166037,
(Point(row=1, col=10), Player.white): 2922918244472234141,
(Point(row=1, col=10), None): 1386771603631638546,
(Point(row=1, col=11), Player.black): 5921290811101075421,
(Point(row=1, col=11), Player.white): 104413897468383918,
(Point(row=1, col=11), None): 5819081400005183055,
(Point(row=1, col=12), Player.black): 308826003722691128,
(Point(row=1, col=12), Player.white): 7347729742407426942,
(Point(row=1, col=12), None): 2841191870378221783,
(Point(row=1, col=13), Player.black): 6190931047998837474,
(Point(row=1, col=13), Player.white): 5137584336965807288,
(Point(row=1, col=13), None): 6152134046690352769,
(Point(row=1, col=14), Player.black): 8879828848790767468,
(Point(row=1, col=14), Player.white): 2799890770599363235,
(Point(row=1, col=14), None): 5335971457646935090,
(Point(row=1, col=15), Player.black): 1997625051926722137,
(Point(row=1, col=15), Player.white): 2491796538195178825,
(Point(row=1, col=15), None): 1978531579101141559,
(Point(row=1, col=16), Player.black): 8665933293800622485,
(Point(row=1, col=16), Player.white): 5467369346798014258,
(Point(row=1, col=16), None): 3486564991193916158,
(Point(row=1, col=17), Player.black): 7188237446271760544,
(Point(row=1, col=17), Player.white): 8513335737087101685,
(Point(row=1, col=17), None): 2145353002335538967,
(Point(row=1, col=18), Player.black): 2217529215965351759,
(Point(row=1, col=18), Player.white): 5763931689217140233,
(Point(row=1, col=18), None): 7418197291804775338,
(Point(row=1, col=19), Player.black): 93052453855449458,
(Point(row=1, col=19), Player.white): 5647127327173059830,
(Point(row=1, col=19), None): 2461637649759572496,
(Point(row=2, col=1), Player.black): 2641947109992720409,
(Point(row=2, col=1), Player.white): 322896123284399359,
(Point(row=2, col=1), None): 1280936707284967853,
(Point(row=2, col=2), Player.black): 1100990249357797909,
(Point(row=2, col=2), Player.white): 2099678233711006746,
(Point(row=2, col=2), None): 1925411994069427460,
(Point(row=2, col=3), Player.black): 3324409408858017049,
(Point(row=2, col=3), Player.white): 6593908046165579356,
(Point(row=2, col=3), None): 6217230308068357572,
(Point(row=2, col=4), Player.black): 146836050891740643,
(Point(row=2, col=4), Player.white): 425771386757212660,
(Point(row=2, col=4), None): 3753756628373838748,
(Point(row=2, col=5), Player.black): 3524052919520657689,
(Point(row=2, col=5), Player.white): 8699125400625327183,
(Point(row=2, col=5), None): 8354640755448521786,
(Point(row=2, col=6), Player.black): 7996308695910951082,
(Point(row=2, col=6), Player.white): 2928006169306871391,
(Point(row=2, col=6), None): 4890289139504856222,
(Point(row=2, col=7), Player.black): 2073565387057609549,
(Point(row=2, col=7), Player.white): 9009929100532439213,
(Point(row=2, col=7), None): 1562571682319883340,
(Point(row=2, col=8), Player.black): 4852138987948955548,
(Point(row=2, col=8), Player.white): 287832005956966201,
(Point(row=2, col=8), None): 2973804036862095329,
(Point(row=2, col=9), Player.black): 960764433458181648,
(Point(row=2, col=9), Player.white): 5057851009999517268,
(Point(row=2, col=9), None): 7121801854726927295,
(Point(row=2, col=10), Player.black): 926428248360737854,
(Point(row=2, col=10), Player.white): 2593336882716575005,
(Point(row=2, col=10), None): 9106859403627929110,
(Point(row=2, col=11), Player.black): 8025733147283981940,
(Point(row=2, col=11), Player.white): 7433983694090106580,
(Point(row=2, col=11), None): 5904261639454207166,
(Point(row=2, col=12), Player.black): 2041858345587729625,
(Point(row=2, col=12), Player.white): 1604058090424058148,
(Point(row=2, col=12), None): 2130917664343133804,
(Point(row=2, col=13), Player.black): 4455577653472917973,
(Point(row=2, col=13), Player.white): 4216480563106577005,
(Point(row=2, col=13), None): 4889820186525425622,
(Point(row=2, col=14), Player.black): 3968871078897831731,
(Point(row=2, col=14), Player.white): 1530051418710743334,
(Point(row=2, col=14), None): 3618886974231114522,
(Point(row=2, col=15), Player.black): 3073991007733666815,
(Point(row=2, col=15), Player.white): 7741634536612846136,
(Point(row=2, col=15), None): 3027888734686421992,
(Point(row=2, col=16), Player.black): 2436995149621174446,
(Point(row=2, col=16), Player.white): 307288296043336535,
(Point(row=2, col=16), None): 332536255129148984,
(Point(row=2, col=17), Player.black): 8391260227597907145,
(Point(row=2, col=17), Player.white): 5197742677897838233,
(Point(row=2, col=17), None): 951489544739114664,
(Point(row=2, col=18), Player.black): 8555364480978057087,
(Point(row=2, col=18), Player.white): 4344083957713813572,
(Point(row=2, col=18), None): 2243067546154262527,
(Point(row=2, col=19), Player.black): 3890990416785044881,
(Point(row=2, col=19), Player.white): 597305905646478373,
(Point(row=2, col=19), None): 49671227488648377,
(Point(row=3, col=1), Player.black): 2368862334949587345,
(Point(row=3, col=1), Player.white): 3125144032809075980,
(Point(row=3, col=1), None): 1431457295794114845,
(Point(row=3, col=2), Player.black): 8830835582968822811,
(Point(row=3, col=2), Player.white): 8208576108628989453,
(Point(row=3, col=2), None): 4851694730831809849,
(Point(row=3, col=3), Player.black): 85052651101286374,
(Point(row=3, col=3), Player.white): 3417842095553007489,
(Point(row=3, col=3), None): 1926249685415643797,
(Point(row=3, col=4), Player.black): 7090341349560577915,
(Point(row=3, col=4), Player.white): 5189057188076747898,
(Point(row=3, col=4), None): 8028208798977379217,
(Point(row=3, col=5), Player.black): 1227313540936464047,
(Point(row=3, col=5), Player.white): 7011601676806347513,
(Point(row=3, col=5), None): 156511642713154872,
(Point(row=3, col=6), Player.black): 2801525651734015146,
(Point(row=3, col=6), Player.white): 465912712820602582,
(Point(row=3, col=6), None): 3072925638386466132,
(Point(row=3, col=7), Player.black): 6174188695042576668,
(Point(row=3, col=7), Player.white): 3918924034559501758,
(Point(row=3, col=7), None): 2615606765793043803,
(Point(row=3, col=8), Player.black): 2241052714755248157,
(Point(row=3, col=8), Player.white): 6122082146187930195,
(Point(row=3, col=8), None): 2113964670446869549,
(Point(row=3, col=9), Player.black): 7855616527582319328,
(Point(row=3, col=9), Player.white): 4917857207433124480,
(Point(row=3, col=9), None): 6589452919450778983,
(Point(row=3, col=10), Player.black): 4932096169893822911,
(Point(row=3, col=10), Player.white): 7810771223994304355,
(Point(row=3, col=10), None): 8261725241679145780,
(Point(row=3, col=11), Player.black): 588089070323539594,
(Point(row=3, col=11), Player.white): 5165790504012259941,
(Point(row=3, col=11), None): 75508788133860464,
(Point(row=3, col=12), Player.black): 1983109671184036450,
(Point(row=3, col=12), Player.white): 5170805677495681423,
(Point(row=3, col=12), None): 5407542945732653013,
(Point(row=3, col=13), Player.black): 4466401874016930652,
(Point(row=3, col=13), Player.white): 2727627542645200430,
(Point(row=3, col=13), None): 5354965587358102131,
(Point(row=3, col=14), Player.black): 2214849435667118450,
(Point(row=3, col=14), Player.white): 8477933426865275128,
(Point(row=3, col=14), None): 6590134558427650770,
(Point(row=3, col=15), Player.black): 7628357314160021880,
(Point(row=3, col=15), Player.white): 3557168340083621954,
(Point(row=3, col=15), None): 5929818794842961197,
(Point(row=3, col=16), Player.black): 5430610515477735745,
(Point(row=3, col=16), Player.white): 4762082039020747170,
(Point(row=3, col=16), None): 8680512380260982697,
(Point(row=3, col=17), Player.black): 315075462241139413,
(Point(row=3, col=17), Player.white): 3381392577344209315,
(Point(row=3, col=17), None): 3407292033032696451,
(Point(row=3, col=18), Player.black): 1657286965211349752,
(Point(row=3, col=18), Player.white): 5554200530214531708,
(Point(row=3, col=18), None): 2224172294148737044,
(Point(row=3, col=19), Player.black): 2629315390088195979,
(Point(row=3, col=19), Player.white): 4430572177558741876,
(Point(row=3, col=19), None): 632261897875750382,
(Point(row=4, col=1), Player.black): 8955668776840321266,
(Point(row=4, col=1), Player.white): 1033029119343859364,
(Point(row=4, col=1), None): 4416249408263886623,
(Point(row=4, col=2), Player.black): 1571062386893967459,
(Point(row=4, col=2), Player.white): 8116784166060120427,
(Point(row=4, col=2), None): 2370587655610232507,
(Point(row=4, col=3), Player.black): 474082618066606656,
(Point(row=4, col=3), Player.white): 1304393050358644257,
(Point(row=4, col=3), None): 8192789816706916201,
(Point(row=4, col=4), Player.black): 1843766297626812322,
(Point(row=4, col=4), Player.white): 379457990696038484,
(Point(row=4, col=4), None): 2980171800234277609,
(Point(row=4, col=5), Player.black): 2664590812935372426,
(Point(row=4, col=5), Player.white): 7629535821766718220,
(Point(row=4, col=5), None): 9105414528145135152,
(Point(row=4, col=6), Player.black): 8665263350915855426,
(Point(row=4, col=6), Player.white): 343919176265277438,
(Point(row=4, col=6), None): 3401650414137330459,
(Point(row=4, col=7), Player.black): 4786885037555914154,
(Point(row=4, col=7), Player.white): 2635632650893241799,
(Point(row=4, col=7), None): 5262820107879176807,
(Point(row=4, col=8), Player.black): 1367651828037780809,
(Point(row=4, col=8), Player.white): 7077172605213796642,
(Point(row=4, col=8), None): 6296162753882060796,
(Point(row=4, col=9), Player.black): 9076867532066544113,
(Point(row=4, col=9), Player.white): 4170153033367239354,
(Point(row=4, col=9), None): 4264208427754658387,
(Point(row=4, col=10), Player.black): 4469528060891910781,
(Point(row=4, col=10), Player.white): 2233381845505124373,
(Point(row=4, col=10), None): 5707422019922249062,
(Point(row=4, col=11), Player.black): 4807470549993801813,
(Point(row=4, col=11), Player.white): 5683722697558094056,
(Point(row=4, col=11), None): 772932807496722550,
(Point(row=4, col=12), Player.black): 752090306685168548,
(Point(row=4, col=12), Player.white): 6041318875262244425,
(Point(row=4, col=12), None): 3442289702853906220,
(Point(row=4, col=13), Player.black): 965194065339388533,
(Point(row=4, col=13), Player.white): 8374626829089852942,
(Point(row=4, col=13), None): 7662145625006547457,
(Point(row=4, col=14), Player.black): 3269647796285155482,
(Point(row=4, col=14), Player.white): 3804809078384432550,
(Point(row=4, col=14), None): 480802299002459751,
(Point(row=4, col=15), Player.black): 7607027741151095672,
(Point(row=4, col=15), Player.white): 8565902221689719054,
(Point(row=4, col=15), None): 6776287725681482306,
(Point(row=4, col=16), Player.black): 1205163756632920828,
(Point(row=4, col=16), Player.white): 7407328507976545510,
(Point(row=4, col=16), None): 4920630138208590206,
(Point(row=4, col=17), Player.black): 5516877554941879730,
(Point(row=4, col=17), Player.white): 1830142280594690732,
(Point(row=4, col=17), None): 4530716365497571798,
(Point(row=4, col=18), Player.black): 8304102249777788915,
(Point(row=4, col=18), Player.white): 5060219983596374534,
(Point(row=4, col=18), None): 8416047905748079216,
(Point(row=4, col=19), Player.black): 7724036168550062724,
(Point(row=4, col=19), Player.white): 4585974273381296329,
(Point(row=4, col=19), None): 8409621057190196395,
(Point(row=5, col=1), Player.black): 7492644198014590887,
(Point(row=5, col=1), Player.white): 7617807548888402806,
(Point(row=5, col=1), None): 6531876855390159522,
(Point(row=5, col=2), Player.black): 6976854768767644398,
(Point(row=5, col=2), Player.white): 4718689018600676836,
(Point(row=5, col=2), None): 2827132743204830175,
(Point(row=5, col=3), Player.black): 1995754954255418051,
(Point(row=5, col=3), Player.white): 4166743964682624390,
(Point(row=5, col=3), None): 6261566181728138382,
(Point(row=5, col=4), Player.black): 8344075456198432074,
(Point(row=5, col=4), Player.white): 8146338036965700886,
(Point(row=5, col=4), None): 7931550010366695486,
(Point(row=5, col=5), Player.black): 8816159540093493316,
(Point(row=5, col=5), Player.white): 6907463153201329851,
(Point(row=5, col=5), None): 4321240934531332205,
(Point(row=5, col=6), Player.black): 3717791026569999014,
(Point(row=5, col=6), Player.white): 1306560438195069046,
(Point(row=5, col=6), None): 1055050659056203670,
(Point(row=5, col=7), Player.black): 4011009088779012728,
(Point(row=5, col=7), Player.white): 1552507316133106367,
(Point(row=5, col=7), None): 5234188664062831657,
(Point(row=5, col=8), Player.black): 1426307961384253521,
(Point(row=5, col=8), Player.white): 5452919085173251278,
(Point(row=5, col=8), None): 5251157316279154324,
(Point(row=5, col=9), Player.black): 2688181424550849002,
(Point(row=5, col=9), Player.white): 5556326865431380991,
(Point(row=5, col=9), None): 2893290823469328423,
(Point(row=5, col=10), Player.black): 8337944135126851711,
(Point(row=5, col=10), Player.white): 7137191876500120792,
(Point(row=5, col=10), None): 7856134039053061919,
(Point(row=5, col=11), Player.black): 7204919304771379947,
(Point(row=5, col=11), Player.white): 8369186392527027429,
(Point(row=5, col=11), None): 3302780155709920318,
(Point(row=5, col=12), Player.black): 1123849220403707154,
(Point(row=5, col=12), Player.white): 3992209693376486435,
(Point(row=5, col=12), None): 4685314688511391068,
(Point(row=5, col=13), Player.black): 6994361767308815545,
(Point(row=5, col=13), Player.white): 9210458129043303198,
(Point(row=5, col=13), None): 4262610251230619991,
(Point(row=5, col=14), Player.black): 8836592873701471963,
(Point(row=5, col=14), Player.white): 3061653960744279328,
(Point(row=5, col=14), None): 5699125798615327661,
(Point(row=5, col=15), Player.black): 4521053284944998284,
(Point(row=5, col=15), Player.white): 8347489772197269434,
(Point(row=5, col=15), None): 3830456245757130371,
(Point(row=5, col=16), Player.black): 4494875511054998878,
(Point(row=5, col=16), Player.white): 5090222045788685335,
(Point(row=5, col=16), None): 7700520166171183292,
(Point(row=5, col=17), Player.black): 8824514483659212519,
(Point(row=5, col=17), Player.white): 8263902004429421373,
(Point(row=5, col=17), None): 3073213525090332601,
(Point(row=5, col=18), Player.black): 6804281724183832339,
(Point(row=5, col=18), Player.white): 3847998479743083293,
(Point(row=5, col=18), None): 4743136077542891309,
(Point(row=5, col=19), Player.black): 4117638022747467814,
(Point(row=5, col=19), Player.white): 4951961634196935437,
(Point(row=5, col=19), None): 2249540273860648468,
(Point(row=6, col=1), Player.black): 3896139978530993954,
(Point(row=6, col=1), Player.white): 6110842524465569555,
(Point(row=6, col=1), None): 6852932328496374423,
(Point(row=6, col=2), Player.black): 7138945383483198507,
(Point(row=6, col=2), Player.white): 9128677971433337675,
(Point(row=6, col=2), None): 2155502321755870523,
(Point(row=6, col=3), Player.black): 7044054170530492162,
(Point(row=6, col=3), Player.white): 8827697125067083097,
(Point(row=6, col=3), None): 3819434679488218703,
(Point(row=6, col=4), Player.black): 6955120586217495184,
(Point(row=6, col=4), Player.white): 3314561669758653482,
(Point(row=6, col=4), None): 2705477801478602677,
(Point(row=6, col=5), Player.black): 5325006143925969333,
(Point(row=6, col=5), Player.white): 6207645469912827157,
(Point(row=6, col=5), None): 3891574846463796582,
(Point(row=6, col=6), Player.black): 530470617391649777,
(Point(row=6, col=6), Player.white): 3540567435781155555,
(Point(row=6, col=6), None): 8585872632788912809,
(Point(row=6, col=7), Player.black): 8209704557307328766,
(Point(row=6, col=7), Player.white): 7878009153991038267,
(Point(row=6, col=7), None): 4607923365135367228,
(Point(row=6, col=8), Player.black): 977135527260575349,
(Point(row=6, col=8), Player.white): 2938914035506120524,
(Point(row=6, col=8), None): 4690641342885901761,
(Point(row=6, col=9), Player.black): 7309367550157768001,
(Point(row=6, col=9), Player.white): 8231985411649345058,
(Point(row=6, col=9), None): 1484099575027296287,
(Point(row=6, col=10), Player.black): 8214823707300963997,
(Point(row=6, col=10), Player.white): 3369141028272815963,
(Point(row=6, col=10), None): 8361533043732500110,
(Point(row=6, col=11), Player.black): 5217897577486846465,
(Point(row=6, col=11), Player.white): 412008924938033926,
(Point(row=6, col=11), None): 3405170043506183019,
(Point(row=6, col=12), Player.black): 8408199911433481693,
(Point(row=6, col=12), Player.white): 2352710920817745129,
(Point(row=6, col=12), None): 6259331573831935462,
(Point(row=6, col=13), Player.black): 1703544954950078165,
(Point(row=6, col=13), Player.white): 5686824353603723337,
(Point(row=6, col=13), None): 1016311944523371852,
(Point(row=6, col=14), Player.black): 1528716990870693564,
(Point(row=6, col=14), Player.white): 302990662775850010,
(Point(row=6, col=14), None): 7988263878819585489,
(Point(row=6, col=15), Player.black): 5673396176139283582,
(Point(row=6, col=15), Player.white): 7436949768620235436,
(Point(row=6, col=15), None): 405673918670286707,
(Point(row=6, col=16), Player.black): 5488937253931329311,
(Point(row=6, col=16), Player.white): 1440091961394449260,
(Point(row=6, col=16), None): 6965068848798500678,
(Point(row=6, col=17), Player.black): 9032207270754898351,
(Point(row=6, col=17), Player.white): 815497525842704018,
(Point(row=6, col=17), None): 6108035841163713948,
(Point(row=6, col=18), Player.black): 6676890375360372614,
(Point(row=6, col=18), Player.white): 3385032144877119386,
(Point(row=6, col=18), None): 1633755544660300723,
(Point(row=6, col=19), Player.black): 6860322941288132856,
(Point(row=6, col=19), Player.white): 1148687769437286847,
(Point(row=6, col=19), None): 3331369894899493099,
(Point(row=7, col=1), Player.black): 5734834062860527494,
(Point(row=7, col=1), Player.white): 7082692484799002586,
(Point(row=7, col=1), None): 625388857853949117,
(Point(row=7, col=2), Player.black): 2873145754122673478,
(Point(row=7, col=2), Player.white): 3588967254374403327,
(Point(row=7, col=2), None): 8422632530024543874,
(Point(row=7, col=3), Player.black): 6567644736239170049,
(Point(row=7, col=3), Player.white): 6327601622197457863,
(Point(row=7, col=3), None): 5759200790136552048,
(Point(row=7, col=4), Player.black): 4596993351291610512,
(Point(row=7, col=4), Player.white): 7387699705336826163,
(Point(row=7, col=4), None): 8503350811883719265,
(Point(row=7, col=5), Player.black): 6050362027746300039,
(Point(row=7, col=5), Player.white): 6326481539183733873,
(Point(row=7, col=5), None): 1863300983657231114,
(Point(row=7, col=6), Player.black): 366581940319970474,
(Point(row=7, col=6), Player.white): 1478931426778369993,
(Point(row=7, col=6), None): 328664033026109910,
(Point(row=7, col=7), Player.black): 5664800789295010721,
(Point(row=7, col=7), Player.white): 8727803395526593811,
(Point(row=7, col=7), None): 7554333468804226054,
(Point(row=7, col=8), Player.black): 2987828550261214995,
(Point(row=7, col=8), Player.white): 5687126818725215718,
(Point(row=7, col=8), None): 848366086306568178,
(Point(row=7, col=9), Player.black): 3244736952768638018,
(Point(row=7, col=9), Player.white): 8581057455242680105,
(Point(row=7, col=9), None): 6114271545036501952,
(Point(row=7, col=10), Player.black): 299130011216844582,
(Point(row=7, col=10), Player.white): 25364513410452454,
(Point(row=7, col=10), None): 5480550504522441883,
(Point(row=7, col=11), Player.black): 1485370635195063592,
(Point(row=7, col=11), Player.white): 5512759986564770568,
(Point(row=7, col=11), None): 4371647577250131303,
(Point(row=7, col=12), Player.black): 7277253417449648231,
(Point(row=7, col=12), Player.white): 1414229877648886730,
(Point(row=7, col=12), None): 1277425376537015943,
(Point(row=7, col=13), Player.black): 4753895699296405882,
(Point(row=7, col=13), Player.white): 3784099296318774853,
(Point(row=7, col=13), None): 1424680376944007037,
(Point(row=7, col=14), Player.black): 7765226435701177758,
(Point(row=7, col=14), Player.white): 1960075623057223699,
(Point(row=7, col=14), None): 5770457343437961715,
(Point(row=7, col=15), Player.black): 2799248618686274903,
(Point(row=7, col=15), Player.white): 277641657766396534,
(Point(row=7, col=15), None): 5804225753030834068,
(Point(row=7, col=16), Player.black): 5499445023313003257,
(Point(row=7, col=16), Player.white): 6299153291385453245,
(Point(row=7, col=16), None): 6989663540256886787,
(Point(row=7, col=17), Player.black): 5744710982807854273,
(Point(row=7, col=17), Player.white): 2301453874101399174,
(Point(row=7, col=17), None): 2567447415225304441,
(Point(row=7, col=18), Player.black): 8885160243182814592,
(Point(row=7, col=18), Player.white): 612711127095508859,
(Point(row=7, col=18), None): 5928466418436701798,
(Point(row=7, col=19), Player.black): 2221773345618516282,
(Point(row=7, col=19), Player.white): 3289108693962870450,
(Point(row=7, col=19), None): 2152508418627037708,
(Point(row=8, col=1), Player.black): 3757595895435145457,
(Point(row=8, col=1), Player.white): 1114077521681520195,
(Point(row=8, col=1), None): 4376265322145719507,
(Point(row=8, col=2), Player.black): 5723866530391063377,
(Point(row=8, col=2), Player.white): 4552713774772216109,
(Point(row=8, col=2), None): 5047831221282512235,
(Point(row=8, col=3), Player.black): 3379095977372801686,
(Point(row=8, col=3), Player.white): 4609419470878598392,
(Point(row=8, col=3), None): 3801209142911615205,
(Point(row=8, col=4), Player.black): 1484818142065082732,
(Point(row=8, col=4), Player.white): 7745061865229731044,
(Point(row=8, col=4), None): 3414538856426829261,
(Point(row=8, col=5), Player.black): 545594025294186275,
(Point(row=8, col=5), Player.white): 2034349533080404009,
(Point(row=8, col=5), None): 6481252495730126480,
(Point(row=8, col=6), Player.black): 5729628546807187980,
(Point(row=8, col=6), Player.white): 1303337256712269044,
(Point(row=8, col=6), None): 991021388001907310,
(Point(row=8, col=7), Player.black): 5693522296560854085,
(Point(row=8, col=7), Player.white): 1248046906687818885,
(Point(row=8, col=7), None): 6783864099967894560,
(Point(row=8, col=8), Player.black): 1738238658562436352,
(Point(row=8, col=8), Player.white): 8191765633174403557,
(Point(row=8, col=8), None): 462462095470159200,
(Point(row=8, col=9), Player.black): 1740511849514474753,
(Point(row=8, col=9), Player.white): 3958645881307812762,
(Point(row=8, col=9), None): 3960130967331528161,
(Point(row=8, col=10), Player.black): 1488211310246808239,
(Point(row=8, col=10), Player.white): 9220931959077473029,
(Point(row=8, col=10), None): 1189718599002492100,
(Point(row=8, col=11), Player.black): 3376246593830878855,
(Point(row=8, col=11), Player.white): 1038491357008105934,
(Point(row=8, col=11), None): 8088050361191708142,
(Point(row=8, col=12), Player.black): 4952451129855068831,
(Point(row=8, col=12), Player.white): 7557497300489758690,
(Point(row=8, col=12), None): 7729632796547052266,
(Point(row=8, col=13), Player.black): 924261087514734301,
(Point(row=8, col=13), Player.white): 5206164547708332130,
(Point(row=8, col=13), None): 3552969048764907945,
(Point(row=8, col=14), Player.black): 8719335462432271152,
(Point(row=8, col=14), Player.white): 1857112335520924678,
(Point(row=8, col=14), None): 1326070827413630768,
(Point(row=8, col=15), Player.black): 9045809097282017323,
(Point(row=8, col=15), Player.white): 8071348866089006943,
(Point(row=8, col=15), None): 1824629138492180875,
(Point(row=8, col=16), Player.black): 4096941836176560360,
(Point(row=8, col=16), Player.white): 5609755805254478457,
(Point(row=8, col=16), None): 7650687561199608706,
(Point(row=8, col=17), Player.black): 8298590400749472800,
(Point(row=8, col=17), Player.white): 7234259579003017801,
(Point(row=8, col=17), None): 8049765194677926320,
(Point(row=8, col=18), Player.black): 820574996604700700,
(Point(row=8, col=18), Player.white): 7832945834457440688,
(Point(row=8, col=18), None): 4827535669025547835,
(Point(row=8, col=19), Player.black): 5188707936969995459,
(Point(row=8, col=19), Player.white): 1143998893301405412,
(Point(row=8, col=19), None): 7938772994347054808,
(Point(row=9, col=1), Player.black): 546084500420037856,
(Point(row=9, col=1), Player.white): 2132511307792721367,
(Point(row=9, col=1), None): 3927851803396242153,
(Point(row=9, col=2), Player.black): 5611426331915893760,
(Point(row=9, col=2), Player.white): 7896184986022885840,
(Point(row=9, col=2), None): 865888865334252112,
(Point(row=9, col=3), Player.black): 7908833309556911825,
(Point(row=9, col=3), Player.white): 677549679592786648,
(Point(row=9, col=3), None): 2045508696518428482,
(Point(row=9, col=4), Player.black): 2559533079034628296,
(Point(row=9, col=4), Player.white): 754863325173556974,
(Point(row=9, col=4), None): 8740485221655507928,
(Point(row=9, col=5), Player.black): 7350077968395724555,
(Point(row=9, col=5), Player.white): 7926067068517761801,
(Point(row=9, col=5), None): 1796681072567227137,
(Point(row=9, col=6), Player.black): 8640614940582681468,
(Point(row=9, col=6), Player.white): 2033153861454248149,
(Point(row=9, col=6), None): 8523386322059387220,
(Point(row=9, col=7), Player.black): 2183467966170115164,
(Point(row=9, col=7), Player.white): 6270749665840587277,
(Point(row=9, col=7), None): 5983113804725677573,
(Point(row=9, col=8), Player.black): 8759823073548413331,
(Point(row=9, col=8), Player.white): 5919950236107072041,
(Point(row=9, col=8), None): 1718529071110936127,
(Point(row=9, col=9), Player.black): 3444010590441213774,
(Point(row=9, col=9), Player.white): 125669236310627216,
(Point(row=9, col=9), None): 2249058230857309084,
(Point(row=9, col=10), Player.black): 8801596608728051862,
(Point(row=9, col=10), Player.white): 9044278097953268188,
(Point(row=9, col=10), None): 3118407244264995051,
(Point(row=9, col=11), Player.black): 3449371223931144336,
(Point(row=9, col=11), Player.white): 3901587505475275862,
(Point(row=9, col=11), None): 812832834754120175,
(Point(row=9, col=12), Player.black): 3535403290497049738,
(Point(row=9, col=12), Player.white): 728837834254851952,
(Point(row=9, col=12), None): 6001809288111321077,
(Point(row=9, col=13), Player.black): 2590698937736099954,
(Point(row=9, col=13), Player.white): 1098372277062652154,
(Point(row=9, col=13), None): 1431121528026858922,
(Point(row=9, col=14), Player.black): 1801499280730013146,
(Point(row=9, col=14), Player.white): 5865364707678234722,
(Point(row=9, col=14), None): 8867342493551129890,
(Point(row=9, col=15), Player.black): 2195003154931711482,
(Point(row=9, col=15), Player.white): 7651311923356230058,
(Point(row=9, col=15), None): 1162299401834432925,
(Point(row=9, col=16), Player.black): 2029758928037837479,
(Point(row=9, col=16), Player.white): 2304715639303937065,
(Point(row=9, col=16), None): 6224186379593924228,
(Point(row=9, col=17), Player.black): 5123278301965832342,
(Point(row=9, col=17), Player.white): 7755694115665630501,
(Point(row=9, col=17), None): 3143663988457594618,
(Point(row=9, col=18), Player.black): 5198417332189488492,
(Point(row=9, col=18), Player.white): 4769413841244040859,
(Point(row=9, col=18), None): 293469774294580919,
(Point(row=9, col=19), Player.black): 8593050538142339682,
(Point(row=9, col=19), Player.white): 3621860594140570630,
(Point(row=9, col=19), None): 3535149558891802861,
(Point(row=10, col=1), Player.black): 1926547438397544056,
(Point(row=10, col=1), Player.white): 4369172533341002863,
(Point(row=10, col=1), None): 8458299064454617788,
(Point(row=10, col=2), Player.black): 239987759737202065,
(Point(row=10, col=2), Player.white): 7152742749250793312,
(Point(row=10, col=2), None): 7170674768472088288,
(Point(row=10, col=3), Player.black): 5709938232437255429,
(Point(row=10, col=3), Player.white): 4590844792137381702,
(Point(row=10, col=3), None): 6329417307111859592,
(Point(row=10, col=4), Player.black): 6845396597518509032,
(Point(row=10, col=4), Player.white): 7997977578057842820,
(Point(row=10, col=4), None): 3633317128012886683,
(Point(row=10, col=5), Player.black): 1290912304238473428,
(Point(row=10, col=5), Player.white): 1925214633475908639,
(Point(row=10, col=5), None): 2458418647779954317,
(Point(row=10, col=6), Player.black): 4653540441411584403,
(Point(row=10, col=6), Player.white): 7322885650322273093,
(Point(row=10, col=6), None): 3817681338077557711,
(Point(row=10, col=7), Player.black): 5997283225022054533,
(Point(row=10, col=7), Player.white): 4071341400302866695,
(Point(row=10, col=7), None): 7750571574319413700,
(Point(row=10, col=8), Player.black): 501873493885718321,
(Point(row=10, col=8), Player.white): 5448955523525845828,
(Point(row=10, col=8), None): 8139216285263186292,
(Point(row=10, col=9), Player.black): 754341418766457098,
(Point(row=10, col=9), Player.white): 83979704175011254,
(Point(row=10, col=9), None): 2519963707562032576,
(Point(row=10, col=10), Player.black): 1448758941275494520,
(Point(row=10, col=10), Player.white): 7399783493230090348,
(Point(row=10, col=10), None): 865991095400351178,
(Point(row=10, col=11), Player.black): 6701728475296500816,
(Point(row=10, col=11), Player.white): 5615228814979769713,
(Point(row=10, col=11), None): 1546298112268255147,
(Point(row=10, col=12), Player.black): 9102160269233377573,
(Point(row=10, col=12), Player.white): 1911464049327370167,
(Point(row=10, col=12), None): 932267717390506341,
(Point(row=10, col=13), Player.black): 8457544019744230880,
(Point(row=10, col=13), Player.white): 4412645249481258871,
(Point(row=10, col=13), None): 4729148791244377903,
(Point(row=10, col=14), Player.black): 468819980137395669,
(Point(row=10, col=14), Player.white): 7034535673783465786,
(Point(row=10, col=14), None): 6700797370226298247,
(Point(row=10, col=15), Player.black): 8299963855752594751,
(Point(row=10, col=15), Player.white): 6888023125326057031,
(Point(row=10, col=15), None): 7599306853637304715,
(Point(row=10, col=16), Player.black): 7249854199347666123,
(Point(row=10, col=16), Player.white): 1496885805951342519,
(Point(row=10, col=16), None): 1643103933689014538,
(Point(row=10, col=17), Player.black): 2378698194840365350,
(Point(row=10, col=17), Player.white): 4975454025343754897,
(Point(row=10, col=17), None): 2238479407003735997,
(Point(row=10, col=18), Player.black): 4081611469884368263,
(Point(row=10, col=18), Player.white): 8100679924378722403,
(Point(row=10, col=18), None): 8434663955613197862,
(Point(row=10, col=19), Player.black): 3083067268753917898,
(Point(row=10, col=19), Player.white): 8499980648337702300,
(Point(row=10, col=19), None): 486599467506386718,
(Point(row=11, col=1), Player.black): 5191936512353180376,
(Point(row=11, col=1), Player.white): 2617493332943477792,
(Point(row=11, col=1), None): 295773052182841228,
(Point(row=11, col=2), Player.black): 8735914086717493800,
(Point(row=11, col=2), Player.white): 4145472488178931355,
(Point(row=11, col=2), None): 5079038047797472994,
(Point(row=11, col=3), Player.black): 6394511295943969434,
(Point(row=11, col=3), Player.white): 9082758894841291804,
(Point(row=11, col=3), None): 8347756054791309511,
(Point(row=11, col=4), Player.black): 4129890565500312533,
(Point(row=11, col=4), Player.white): 1004448412457907798,
(Point(row=11, col=4), None): 3590042085853339270,
(Point(row=11, col=5), Player.black): 6847383054202061237,
(Point(row=11, col=5), Player.white): 679520147910726489,
(Point(row=11, col=5), None): 6266303805836793045,
(Point(row=11, col=6), Player.black): 7281572590338251405,
(Point(row=11, col=6), Player.white): 3370029828741949448,
(Point(row=11, col=6), None): 3724535284294280952,
(Point(row=11, col=7), Player.black): 2754955153953309221,
(Point(row=11, col=7), Player.white): 64085819390925774,
(Point(row=11, col=7), None): 4125476932480380585,
(Point(row=11, col=8), Player.black): 6256993484414283512,
(Point(row=11, col=8), Player.white): 8662577652949752258,
(Point(row=11, col=8), None): 4849223035157821585,
(Point(row=11, col=9), Player.black): 2534686267725647918,
(Point(row=11, col=9), Player.white): 8911783471756600237,
(Point(row=11, col=9), None): 4497993152670685505,
(Point(row=11, col=10), Player.black): 4345309899289279022,
(Point(row=11, col=10), Player.white): 8652226752315642556,
(Point(row=11, col=10), None): 2010897787626264669,
(Point(row=11, col=11), Player.black): 16395348613429924,
(Point(row=11, col=11), Player.white): 2547369728242111125,
(Point(row=11, col=11), None): 1142533697360253729,
(Point(row=11, col=12), Player.black): 2015201676727734262,
(Point(row=11, col=12), Player.white): 4852205878691730628,
(Point(row=11, col=12), None): 1254832843674727698,
(Point(row=11, col=13), Player.black): 2044314288106194318,
(Point(row=11, col=13), Player.white): 7035079217345834786,
(Point(row=11, col=13), None): 4347945449892274084,
(Point(row=11, col=14), Player.black): 1173655521042370175,
(Point(row=11, col=14), Player.white): 6636489973116417265,
(Point(row=11, col=14), None): 1750991514497385477,
(Point(row=11, col=15), Player.black): 5513070062369492925,
(Point(row=11, col=15), Player.white): 6576138775327705524,
(Point(row=11, col=15), None): 7555391705058016759,
(Point(row=11, col=16), Player.black): 7026735315835899384,
(Point(row=11, col=16), Player.white): 6900259553473556666,
(Point(row=11, col=16), None): 1945236692757189756,
(Point(row=11, col=17), Player.black): 914599633376283318,
(Point(row=11, col=17), Player.white): 4149543797893315236,
(Point(row=11, col=17), None): 8510659437818556166,
(Point(row=11, col=18), Player.black): 1759513787091850207,
(Point(row=11, col=18), Player.white): 1690636448711544533,
(Point(row=11, col=18), None): 7993748550221695784,
(Point(row=11, col=19), Player.black): 8622145867922855874,
(Point(row=11, col=19), Player.white): 4839009709195221321,
(Point(row=11, col=19), None): 5571781714589180226,
(Point(row=12, col=1), Player.black): 1273961167448344898,
(Point(row=12, col=1), Player.white): 6629750337134142144,
(Point(row=12, col=1), None): 354290481725342797,
(Point(row=12, col=2), Player.black): 1779594079774414830,
(Point(row=12, col=2), Player.white): 5746959803412993693,
(Point(row=12, col=2), None): 5025734924077384004,
(Point(row=12, col=3), Player.black): 8853662393676363526,
(Point(row=12, col=3), Player.white): 1484947732728151719,
(Point(row=12, col=3), None): 7376830221344643917,
(Point(row=12, col=4), Player.black): 6816535217279541696,
(Point(row=12, col=4), Player.white): 5585515862373806858,
(Point(row=12, col=4), None): 9055586050388945927,
(Point(row=12, col=5), Player.black): 4799054070617995634,
(Point(row=12, col=5), Player.white): 5201797994624014237,
(Point(row=12, col=5), None): 5553039829904558532,
(Point(row=12, col=6), Player.black): 9127224004845917046,
(Point(row=12, col=6), Player.white): 8451904407263430469,
(Point(row=12, col=6), None): 3801075459394532303,
(Point(row=12, col=7), Player.black): 8829689079805801893,
(Point(row=12, col=7), Player.white): 7454265975207341148,
(Point(row=12, col=7), None): 8694617695513145115,
(Point(row=12, col=8), Player.black): 4674231472804890970,
(Point(row=12, col=8), Player.white): 2841797177579197122,
(Point(row=12, col=8), None): 4732269278277493925,
(Point(row=12, col=9), Player.black): 3970493302807605930,
(Point(row=12, col=9), Player.white): 3391587191182920776,
(Point(row=12, col=9), None): 1102275308098554008,
(Point(row=12, col=10), Player.black): 4657390444923269540,
(Point(row=12, col=10), Player.white): 5133876389295371084,
(Point(row=12, col=10), None): 1725782517254866177,
(Point(row=12, col=11), Player.black): 6143635671554555147,
(Point(row=12, col=11), Player.white): 4986838286758015152,
(Point(row=12, col=11), None): 7782369966288654081,
(Point(row=12, col=12), Player.black): 4061919974559971016,
(Point(row=12, col=12), Player.white): 8979637549499209605,
(Point(row=12, col=12), None): 2957413305709779189,
(Point(row=12, col=13), Player.black): 6172053575194560230,
(Point(row=12, col=13), Player.white): 2941055851746370096,
(Point(row=12, col=13), None): 8684987060310642436,
(Point(row=12, col=14), Player.black): 5220596400629012167,
(Point(row=12, col=14), Player.white): 2048840611262639210,
(Point(row=12, col=14), None): 4429198287656232434,
(Point(row=12, col=15), Player.black): 5365687580630798354,
(Point(row=12, col=15), Player.white): 2092358023527144900,
(Point(row=12, col=15), None): 2904655216278111358,
(Point(row=12, col=16), Player.black): 4563931792224670130,
(Point(row=12, col=16), Player.white): 2036732834586205478,
(Point(row=12, col=16), None): 3791610038555091314,
(Point(row=12, col=17), Player.black): 2433471147074444299,
(Point(row=12, col=17), Player.white): 638533650324290621,
(Point(row=12, col=17), None): 1135897965123523156,
(Point(row=12, col=18), Player.black): 4109452739849653353,
(Point(row=12, col=18), Player.white): 1556957576714713446,
(Point(row=12, col=18), None): 5436747398233480519,
(Point(row=12, col=19), Player.black): 5330986120967458373,
(Point(row=12, col=19), Player.white): 390420762558638760,
(Point(row=12, col=19), None): 1695171928876616375,
(Point(row=13, col=1), Player.black): 6808229658839987941,
(Point(row=13, col=1), Player.white): 1687296111246051784,
(Point(row=13, col=1), None): 4329928949178968410,
(Point(row=13, col=2), Player.black): 3082629018916471593,
(Point(row=13, col=2), Player.white): 7494764924512055689,
(Point(row=13, col=2), None): 7453513313317864231,
(Point(row=13, col=3), Player.black): 8879145756428057365,
(Point(row=13, col=3), Player.white): 316978535572772890,
(Point(row=13, col=3), None): 7638034309591568222,
(Point(row=13, col=4), Player.black): 1342500672276924318,
(Point(row=13, col=4), Player.white): 7935548572602307146,
(Point(row=13, col=4), None): 3484875480360262047,
(Point(row=13, col=5), Player.black): 4657798473830814601,
(Point(row=13, col=5), Player.white): 5508670716064240120,
(Point(row=13, col=5), None): 8361466930530810495,
(Point(row=13, col=6), Player.black): 1065492038946497723,
(Point(row=13, col=6), Player.white): 4119228244470945786,
(Point(row=13, col=6), None): 8672519231600206731,
(Point(row=13, col=7), Player.black): 1257259241212843108,
(Point(row=13, col=7), Player.white): 1081669920558038041,
(Point(row=13, col=7), None): 8071520305203101031,
(Point(row=13, col=8), Player.black): 1384701925435008766,
(Point(row=13, col=8), Player.white): 5366316342707981460,
(Point(row=13, col=8), None): 761772887459614154,
(Point(row=13, col=9), Player.black): 4238034547752557268,
(Point(row=13, col=9), Player.white): 8142209008201043471,
(Point(row=13, col=9), None): 6208063147643424070,
(Point(row=13, col=10), Player.black): 2144471890249128046,
(Point(row=13, col=10), Player.white): 3324758906643371910,
(Point(row=13, col=10), None): 3964585710674093699,
(Point(row=13, col=11), Player.black): 1671567851980750122,
(Point(row=13, col=11), Player.white): 1549971848057922304,
(Point(row=13, col=11), None): 7186664634454932694,
(Point(row=13, col=12), Player.black): 5774537619653903139,
(Point(row=13, col=12), Player.white): 5089464583775981862,
(Point(row=13, col=12), None): 2822243480646830242,
(Point(row=13, col=13), Player.black): 648817643788789673,
(Point(row=13, col=13), Player.white): 1346394724047015142,
(Point(row=13, col=13), None): 3453025070558278637,
(Point(row=13, col=14), Player.black): 1786017465365115407,
(Point(row=13, col=14), Player.white): 1028617661954168911,
(Point(row=13, col=14), None): 3406080439316364624,
(Point(row=13, col=15), Player.black): 2900425525761458086,
(Point(row=13, col=15), Player.white): 4237061030782586902,
(Point(row=13, col=15), None): 3263072709481936507,
(Point(row=13, col=16), Player.black): 566662069963093085,
(Point(row=13, col=16), Player.white): 1233715920227282763,
(Point(row=13, col=16), None): 1865237022068463615,
(Point(row=13, col=17), Player.black): 1156036714921646817,
(Point(row=13, col=17), Player.white): 7556503193277350106,
(Point(row=13, col=17), None): 8270015210402075514,
(Point(row=13, col=18), Player.black): 753923553705522346,
(Point(row=13, col=18), Player.white): 7344690918189633013,
(Point(row=13, col=18), None): 4278497586349490728,
(Point(row=13, col=19), Player.black): 910310773254741644,
(Point(row=13, col=19), Player.white): 1212749825176668742,
(Point(row=13, col=19), None): 4388716234502457120,
(Point(row=14, col=1), Player.black): 5282873839332760771,
(Point(row=14, col=1), Player.white): 117152869205213276,
(Point(row=14, col=1), None): 6839132161584694910,
(Point(row=14, col=2), Player.black): 5935837291027241687,
(Point(row=14, col=2), Player.white): 1738208997372619299,
(Point(row=14, col=2), None): 603071451313649711,
(Point(row=14, col=3), Player.black): 8373078493498372500,
(Point(row=14, col=3), Player.white): 471953109035578079,
(Point(row=14, col=3), None): 3129686109158200359,
(Point(row=14, col=4), Player.black): 3876388286321518557,
(Point(row=14, col=4), Player.white): 6146817499190266738,
(Point(row=14, col=4), None): 3257323305688262381,
(Point(row=14, col=5), Player.black): 1331539330388181449,
(Point(row=14, col=5), Player.white): 6660193065551020209,
(Point(row=14, col=5), None): 2260602918876778334,
(Point(row=14, col=6), Player.black): 4737457572537421014,
(Point(row=14, col=6), Player.white): 6505854297857247753,
(Point(row=14, col=6), None): 1764566531432574215,
(Point(row=14, col=7), Player.black): 8066611293010575681,
(Point(row=14, col=7), Player.white): 5907973227874184512,
(Point(row=14, col=7), None): 3208101089760575311,
(Point(row=14, col=8), Player.black): 3665768177968253138,
(Point(row=14, col=8), Player.white): 7772534440650093036,
(Point(row=14, col=8), None): 486899060680017219,
(Point(row=14, col=9), Player.black): 4813193340898411552,
(Point(row=14, col=9), Player.white): 1143613892077597806,
(Point(row=14, col=9), None): 1755424519558422206,
(Point(row=14, col=10), Player.black): 1549514311106321128,
(Point(row=14, col=10), Player.white): 930707790372072885,
(Point(row=14, col=10), None): 5948228229381743901,
(Point(row=14, col=11), Player.black): 5653204952428223161,
(Point(row=14, col=11), Player.white): 8201605287385325155,
(Point(row=14, col=11), None): 7302498353300580543,
(Point(row=14, col=12), Player.black): 7004120749357828732,
(Point(row=14, col=12), Player.white): 4292545130735835253,
(Point(row=14, col=12), None): 6957589373466661932,
(Point(row=14, col=13), Player.black): 8542502682669515505,
(Point(row=14, col=13), Player.white): 3219176872021581250,
(Point(row=14, col=13), None): 1623397560108708240,
(Point(row=14, col=14), Player.black): 6942205998965856601,
(Point(row=14, col=14), Player.white): 5868054399782233313,
(Point(row=14, col=14), None): 100578043497825192,
(Point(row=14, col=15), Player.black): 2485746549549197764,
(Point(row=14, col=15), Player.white): 109799798123545162,
(Point(row=14, col=15), None): 7070041801653413678,
(Point(row=14, col=16), Player.black): 671732798459672559,
(Point(row=14, col=16), Player.white): 909248056666057098,
(Point(row=14, col=16), None): 9052471700246438115,
(Point(row=14, col=17), Player.black): 3836111897812910958,
(Point(row=14, col=17), Player.white): 4630049860742432288,
(Point(row=14, col=17), None): 1450596536766222436,
(Point(row=14, col=18), Player.black): 5172546740423108807,
(Point(row=14, col=18), Player.white): 1964167083339558881,
(Point(row=14, col=18), None): 3567872307104078952,
(Point(row=14, col=19), Player.black): 4564931091196557326,
(Point(row=14, col=19), Player.white): 638136285491660457,
(Point(row=14, col=19), None): 2553776706671845436,
(Point(row=15, col=1), Player.black): 4621704882447990165,
(Point(row=15, col=1), Player.white): 6202212243061361312,
(Point(row=15, col=1), None): 3731122847365316357,
(Point(row=15, col=2), Player.black): 4725471730957943611,
(Point(row=15, col=2), Player.white): 8582498294746670872,
(Point(row=15, col=2), None): 753915239446516614,
(Point(row=15, col=3), Player.black): 1053701491549333574,
(Point(row=15, col=3), Player.white): 7675685960450882128,
(Point(row=15, col=3), None): 4604665088852113708,
(Point(row=15, col=4), Player.black): 1197323785653228744,
(Point(row=15, col=4), Player.white): 574867933401944403,
(Point(row=15, col=4), None): 1688491614947226611,
(Point(row=15, col=5), Player.black): 8799907938253150290,
(Point(row=15, col=5), Player.white): 4972687696491229808,
(Point(row=15, col=5), None): 79137007597528625,
(Point(row=15, col=6), Player.black): 4737099478286295523,
(Point(row=15, col=6), Player.white): 8486040387288226665,
(Point(row=15, col=6), None): 6968761369088095597,
(Point(row=15, col=7), Player.black): 2692764663804017958,
(Point(row=15, col=7), Player.white): 6521150134367289820,
(Point(row=15, col=7), None): 2607590301652097139,
(Point(row=15, col=8), Player.black): 2264513404203804839,
(Point(row=15, col=8), Player.white): 9010544982120208084,
(Point(row=15, col=8), None): 4807772689042928204,
(Point(row=15, col=9), Player.black): 4945446091815495264,
(Point(row=15, col=9), Player.white): 3382345921101994386,
(Point(row=15, col=9), None): 5059201894326344299,
(Point(row=15, col=10), Player.black): 397456415723104577,
(Point(row=15, col=10), Player.white): 6318083684128927025,
(Point(row=15, col=10), None): 4549209882525155360,
(Point(row=15, col=11), Player.black): 1508230020204971332,
(Point(row=15, col=11), Player.white): 7005901193747269477,
(Point(row=15, col=11), None): 232178699526169449,
(Point(row=15, col=12), Player.black): 1657658484788472240,
(Point(row=15, col=12), Player.white): 8339360482373957563,
(Point(row=15, col=12), None): 2336940402035623212,
(Point(row=15, col=13), Player.black): 838286390829014897,
(Point(row=15, col=13), Player.white): 322087022006615612,
(Point(row=15, col=13), None): 156887772806294000,
(Point(row=15, col=14), Player.black): 3797256978570007079,
(Point(row=15, col=14), Player.white): 6255760291870528538,
(Point(row=15, col=14), None): 3128310695331975909,
(Point(row=15, col=15), Player.black): 5711209418015165674,
(Point(row=15, col=15), Player.white): 3311893480211112829,
(Point(row=15, col=15), None): 3261216999488039233,
(Point(row=15, col=16), Player.black): 4197646295550089569,
(Point(row=15, col=16), Player.white): 1552158509372141656,
(Point(row=15, col=16), None): 1592635744700346575,
(Point(row=15, col=17), Player.black): 3733819137189356653,
(Point(row=15, col=17), Player.white): 2687838307006436301,
(Point(row=15, col=17), None): 3800613275928494422,
(Point(row=15, col=18), Player.black): 5355277034176650310,
(Point(row=15, col=18), Player.white): 2055371243156141723,
(Point(row=15, col=18), None): 5576899002711270810,
(Point(row=15, col=19), Player.black): 8143969961266809128,
(Point(row=15, col=19), Player.white): 8050328011188943029,
(Point(row=15, col=19), None): 3663599607732726584,
(Point(row=16, col=1), Player.black): 1231283416656480406,
(Point(row=16, col=1), Player.white): 8946840470118018937,
(Point(row=16, col=1), None): 7171208291853807418,
(Point(row=16, col=2), Player.black): 6013416476485134162,
(Point(row=16, col=2), Player.white): 8041980944893889666,
(Point(row=16, col=2), None): 7853123567919043398,
(Point(row=16, col=3), Player.black): 3915419764306829259,
(Point(row=16, col=3), Player.white): 8532555003983339693,
(Point(row=16, col=3), None): 6265043499167147636,
(Point(row=16, col=4), Player.black): 1073780238143121651,
(Point(row=16, col=4), Player.white): 1899259192155753683,
(Point(row=16, col=4), None): 1092225342777979660,
(Point(row=16, col=5), Player.black): 5780687427058302932,
(Point(row=16, col=5), Player.white): 7856364211430033069,
(Point(row=16, col=5), None): 1466996501238696301,
(Point(row=16, col=6), Player.black): 2048393882262402776,
(Point(row=16, col=6), Player.white): 2690023768092815463,
(Point(row=16, col=6), None): 135366400386543245,
(Point(row=16, col=7), Player.black): 8107775935549911197,
(Point(row=16, col=7), Player.white): 5687962689038670238,
(Point(row=16, col=7), None): 7240807722263856176,
(Point(row=16, col=8), Player.black): 3853986960726873174,
(Point(row=16, col=8), Player.white): 4806031491653923866,
(Point(row=16, col=8), None): 5384045543218477287,
(Point(row=16, col=9), Player.black): 5453164054941692557,
(Point(row=16, col=9), Player.white): 1700924067055169016,
(Point(row=16, col=9), None): 6519242354400794173,
(Point(row=16, col=10), Player.black): 89650802512627877,
(Point(row=16, col=10), Player.white): 5910025249651540744,
(Point(row=16, col=10), None): 6081399209467255151,
(Point(row=16, col=11), Player.black): 6078381143263360170,
(Point(row=16, col=11), Player.white): 2418826618996122738,
(Point(row=16, col=11), None): 3234489286477784265,
(Point(row=16, col=12), Player.black): 884824201717572901,
(Point(row=16, col=12), Player.white): 7961281866670067860,
(Point(row=16, col=12), None): 4451152207398960150,
(Point(row=16, col=13), Player.black): 7569964134192860101,
(Point(row=16, col=13), Player.white): 4659770294935610273,
(Point(row=16, col=13), None): 5749629646719849586,
(Point(row=16, col=14), Player.black): 5374364818062935748,
(Point(row=16, col=14), Player.white): 6045966233408584555,
(Point(row=16, col=14), None): 2759785497696503460,
(Point(row=16, col=15), Player.black): 5245843358968593713,
(Point(row=16, col=15), Player.white): 1328122822009234606,
(Point(row=16, col=15), None): 8319783666519184957,
(Point(row=16, col=16), Player.black): 1279666750604208336,
(Point(row=16, col=16), Player.white): 242844244684512352,
(Point(row=16, col=16), None): 6718853598418593947,
(Point(row=16, col=17), Player.black): 5735681751472037620,
(Point(row=16, col=17), Player.white): 1347351091370709866,
(Point(row=16, col=17), None): 5874930723573343906,
(Point(row=16, col=18), Player.black): 2373325012666784788,
(Point(row=16, col=18), Player.white): 3518239562062706767,
(Point(row=16, col=18), None): 2487157567647223268,
(Point(row=16, col=19), Player.black): 2997245161065523479,
(Point(row=16, col=19), Player.white): 4060367515989448340,
(Point(row=16, col=19), None): 4599248144695752720,
(Point(row=17, col=1), Player.black): 7841618149214037308,
(Point(row=17, col=1), Player.white): 3781558147321394532,
(Point(row=17, col=1), None): 906803005006738021,
(Point(row=17, col=2), Player.black): 864233724371743317,
(Point(row=17, col=2), Player.white): 8988449291458760693,
(Point(row=17, col=2), None): 6672457028449602595,
(Point(row=17, col=3), Player.black): 8649792114869618610,
(Point(row=17, col=3), Player.white): 4155872866621521038,
(Point(row=17, col=3), None): 7261451267872178376,
(Point(row=17, col=4), Player.black): 740996684218502680,
(Point(row=17, col=4), Player.white): 7690529547507429004,
(Point(row=17, col=4), None): 3691826123295809516,
(Point(row=17, col=5), Player.black): 6925919353677506609,
(Point(row=17, col=5), Player.white): 620476282360833455,
(Point(row=17, col=5), None): 2711333289158884436,
(Point(row=17, col=6), Player.black): 7194284639665415360,
(Point(row=17, col=6), Player.white): 5885088749667858345,
(Point(row=17, col=6), None): 8013550234729710311,
(Point(row=17, col=7), Player.black): 2256233622692576022,
(Point(row=17, col=7), Player.white): 707057894124495610,
(Point(row=17, col=7), None): 8595566969231128976,
(Point(row=17, col=8), Player.black): 8839965328439528402,
(Point(row=17, col=8), Player.white): 3013456382108957089,
(Point(row=17, col=8), None): 8557898915884527861,
(Point(row=17, col=9), Player.black): 7374154619713059986,
(Point(row=17, col=9), Player.white): 8323034090856321164,
(Point(row=17, col=9), None): 2889264826027360853,
(Point(row=17, col=10), Player.black): 5863152797645106417,
(Point(row=17, col=10), Player.white): 6781370815164611181,
(Point(row=17, col=10), None): 6609712597772926694,
(Point(row=17, col=11), Player.black): 2550824663022799215,
(Point(row=17, col=11), Player.white): 7637826750726417280,
(Point(row=17, col=11), None): 8129689020974638352,
(Point(row=17, col=12), Player.black): 8319094101193610394,
(Point(row=17, col=12), Player.white): 3437925391185486597,
(Point(row=17, col=12), None): 8044076854802274754,
(Point(row=17, col=13), Player.black): 1203959202754230852,
(Point(row=17, col=13), Player.white): 2923107037105151266,
(Point(row=17, col=13), None): 879668659191292805,
(Point(row=17, col=14), Player.black): 749822635245513375,
(Point(row=17, col=14), Player.white): 7036835509562606140,
(Point(row=17, col=14), None): 869151218060877882,
(Point(row=17, col=15), Player.black): 4422722034430107936,
(Point(row=17, col=15), Player.white): 6332357377561699244,
(Point(row=17, col=15), None): 7014794842639342111,
(Point(row=17, col=16), Player.black): 1699929247192100757,
(Point(row=17, col=16), Player.white): 4949005695301656988,
(Point(row=17, col=16), None): 3890008449651973086,
(Point(row=17, col=17), Player.black): 7468541984101127451,
(Point(row=17, col=17), Player.white): 7162892179672281022,
(Point(row=17, col=17), None): 4294223694207414017,
(Point(row=17, col=18), Player.black): 170453307495374801,
(Point(row=17, col=18), Player.white): 6851592030343151731,
(Point(row=17, col=18), None): 4744315419637478354,
(Point(row=17, col=19), Player.black): 7069539569154079650,
(Point(row=17, col=19), Player.white): 9117778134486928509,
(Point(row=17, col=19), None): 6993085955691058535,
(Point(row=18, col=1), Player.black): 2583405097216498515,
(Point(row=18, col=1), Player.white): 7328415136245196403,
(Point(row=18, col=1), None): 9179042517088429962,
(Point(row=18, col=2), Player.black): 9125056290970332267,
(Point(row=18, col=2), Player.white): 684872268597809302,
(Point(row=18, col=2), None): 6082864883830119052,
(Point(row=18, col=3), Player.black): 8565473772001540542,
(Point(row=18, col=3), Player.white): 8783853509646192578,
(Point(row=18, col=3), None): 2311873865916286609,
(Point(row=18, col=4), Player.black): 7436435931021680283,
(Point(row=18, col=4), Player.white): 8370726283327551419,
(Point(row=18, col=4), None): 3609950534831515059,
(Point(row=18, col=5), Player.black): 6727966996229200400,
(Point(row=18, col=5), Player.white): 351949629548589398,
(Point(row=18, col=5), None): 2061883526997163283,
(Point(row=18, col=6), Player.black): 6955360439973812801,
(Point(row=18, col=6), Player.white): 6936486653468233247,
(Point(row=18, col=6), None): 7451836981487461360,
(Point(row=18, col=7), Player.black): 4113406953249876272,
(Point(row=18, col=7), Player.white): 1554048086588168645,
(Point(row=18, col=7), None): 3948928478907198300,
(Point(row=18, col=8), Player.black): 7367990776446671875,
(Point(row=18, col=8), Player.white): 8202088289056617522,
(Point(row=18, col=8), None): 967320014208455197,
(Point(row=18, col=9), Player.black): 7743345864698233234,