Please report any bugs or errors to H.G. Muller
Syntax Error on line 987
e3 d3 c3 b3 is not a valid expression, because e3 is not a recognized piece, coordinate, command, or subroutine.
Edit the Settings File for Grand Apothecary Chess 1
For the sake of debugging, here is the full GAME Code program that this error occurred in. The lines have been properly indented to help you spot scope errors.
0 include /membergraphics/MSgame-code-generation/betza.txt 1 set legdefs (0 1 1 1 1 2 1 1 -1 1 2 1 -1 0 1 8388609 1 1 1 1 4 1 1 -1 1 4 0 1 1 -1 -1 2 1 1 1 -1 2 1 -1 0 -1 8388609 1 1 -1 -1 4 1 1 1 -1 4 0 1 -1 1 1 1 1 -1 -1 1 1 1 1 0 1 2 1 1 0 1 4 0 1 -1 -1 -1 1 1 -1 1 -1 1 1 1 0 -1 2 1 1 0 -1 4 0 1 1 0 1 3 1 1 1 1 3 1 1 1 0 3 1 1 1 -1 3 1 1 0 -1 3 1 1 -1 -1 3 1 1 -1 0 3 1 1 -1 1 3 2 99 1 0 72 1 3 0 9 2 99 -1 0 72 1 -3 0 9 2 99 1 0 72 1 4 0 9 2 99 -1 0 72 1 -4 0 9 2 99 1 0 33554504 1 2 0 9 2 99 -1 0 33554504 1 -2 0 9 0 99 1 0 33554504 1 3 0 9 2 99 -1 0 33554504 1 -3 0 9 0 1 99 0 1 3 1 99 1 0 3 1 99 0 -1 3 1 99 -1 0 3 0 1 99 0 1 3 1 99 1 1 3 1 99 1 0 3 1 99 1 -1 3 1 99 0 -1 3 1 99 -1 -1 3 1 99 -1 0 3 1 99 -1 1 3 0 1 99 1 1 3 1 99 1 -1 3 1 99 -1 -1 3 1 99 -1 1 3 0 1 1 1 2 3 1 1 2 1 3 1 1 2 -1 3 1 1 1 -2 3 1 1 -1 -2 3 1 1 -2 -1 3 1 1 -2 1 3 1 1 -1 2 3 1 1 1 3 1 1 1 3 1 1 1 1 3 -1 1 1 1 1 -3 1 1 1 -1 -3 1 1 1 -3 -1 1 1 1 -3 1 1 1 1 -1 3 1 0 1 1 0 3 3 1 1 3 0 3 1 1 0 -3 3 1 1 -3 0 3 1 1 1 1 3 1 1 1 -1 3 1 1 -1 -1 3 1 1 -1 1 3 1 1 0 2 3 1 1 2 0 3 1 1 0 -2 3 1 1 -2 0 3 0 1 1 0 1 3 1 1 1 0 3 1 1 0 -1 3 1 1 -1 0 3 1 1 2 3 3 1 1 3 2 3 1 1 3 -2 3 1 1 2 -3 3 1 1 -2 -3 3 1 1 -3 -2 3 1 1 -3 2 3 1 1 -2 3 3 0 1 99 0 1 1 1 99 1 0 1 1 99 0 -1 1 1 99 -1 0 1 2 99 0 1 16 99 0 1 2 2 99 1 0 16 99 1 0 2 2 99 0 -1 16 99 0 -1 2 2 99 -1 0 16 99 -1 0 2 0 1 99 1 2 3 1 99 2 1 3 1 99 2 -1 3 1 99 1 -2 3 1 99 -1 -2 3 1 99 -2 -1 3 1 99 -2 1 3 1 99 -1 2 3 0 1 1 0 2 3 1 1 2 0 3 1 1 0 -2 3 1 1 -2 0 3 3 1 0 1 17 1 0 1 33 99 1 1 3 3 1 1 0 17 1 1 0 33 99 1 -1 3 3 1 0 -1 17 1 0 -1 33 99 -1 -1 3 3 1 -1 0 17 1 -1 0 33 99 -1 1 3 3 1 0 1 17 1 0 1 33 99 -1 1 3 3 1 1 0 17 1 1 0 33 99 1 1 3 3 1 0 -1 17 1 0 -1 33 99 1 -1 3 3 1 -1 0 17 1 -1 0 33 99 -1 -1 3 0 4 1 0 1 1 1 0 1 1 1 0 1 1 1 1 1 3 4 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 3 4 1 1 0 1 1 1 0 1 1 1 0 1 1 1 -1 3 4 1 1 -1 1 1 1 -1 1 1 1 -1 1 1 0 -1 3 4 1 0 -1 1 1 0 -1 1 1 0 -1 1 1 -1 -1 3 4 1 -1 -1 1 1 -1 -1 1 1 -1 -1 1 1 -1 0 3 4 1 -1 0 1 1 -1 0 1 1 -1 0 1 1 -1 1 3 4 1 -1 1 1 1 -1 1 1 1 -1 1 1 1 0 1 3 4 1 0 1 1 1 0 1 1 1 0 1 1 1 -1 1 3 4 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 3 4 1 1 0 1 1 1 0 1 1 1 0 1 1 1 1 3 4 1 1 -1 1 1 1 -1 1 1 1 -1 1 1 1 0 3 4 1 0 -1 1 1 0 -1 1 1 0 -1 1 1 1 -1 3 4 1 -1 -1 1 1 -1 -1 1 1 -1 -1 1 1 0 -1 3 4 1 -1 0 1 1 -1 0 1 1 -1 0 1 1 -1 -1 3 4 1 -1 1 1 1 -1 1 1 1 -1 1 1 1 -1 0 3 4 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 3 4 1 1 1 1 1 1 0 1 1 1 0 1 1 1 0 3 4 1 1 0 1 1 1 -1 1 1 1 -1 1 1 1 -1 3 4 1 1 -1 1 1 0 -1 1 1 0 -1 1 1 0 -1 3 4 1 0 -1 1 1 -1 -1 1 1 -1 -1 1 1 -1 -1 3 4 1 -1 -1 1 1 -1 0 1 1 -1 0 1 1 -1 0 3 4 1 -1 0 1 1 -1 1 1 1 -1 1 1 1 -1 1 3 4 1 -1 1 1 1 0 1 1 1 0 1 1 1 0 1 3 4 1 0 1 1 1 -1 1 1 1 -1 1 1 1 -1 1 3 4 1 1 1 1 1 0 1 1 1 0 1 1 1 0 1 3 4 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 3 4 1 1 -1 1 1 1 0 1 1 1 0 1 1 1 0 3 4 1 0 -1 1 1 1 -1 1 1 1 -1 1 1 1 -1 3 4 1 -1 -1 1 1 0 -1 1 1 0 -1 1 1 0 -1 3 4 1 -1 0 1 1 -1 -1 1 1 -1 -1 1 1 -1 -1 3 4 1 -1 1 1 1 -1 0 1 1 -1 0 1 1 -1 0 3 4 1 0 1 1 1 0 1 1 1 1 1 1 1 0 1 3 4 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 3 4 1 1 0 1 1 1 0 1 1 1 -1 1 1 1 0 3 4 1 1 -1 1 1 1 -1 1 1 0 -1 1 1 1 -1 3 4 1 0 -1 1 1 0 -1 1 1 -1 -1 1 1 0 -1 3 4 1 -1 -1 1 1 -1 -1 1 1 -1 0 1 1 -1 -1 3 4 1 -1 0 1 1 -1 0 1 1 -1 1 1 1 -1 0 3 4 1 -1 1 1 1 -1 1 1 1 0 1 1 1 -1 1 3 4 1 0 1 1 1 0 1 1 1 -1 1 1 1 0 1 3 4 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 3 4 1 1 0 1 1 1 0 1 1 1 1 1 1 1 0 3 4 1 1 -1 1 1 1 -1 1 1 1 0 1 1 1 -1 3 4 1 0 -1 1 1 0 -1 1 1 1 -1 1 1 0 -1 3 4 1 -1 -1 1 1 -1 -1 1 1 0 -1 1 1 -1 -1 3 4 1 -1 0 1 1 -1 0 1 1 -1 -1 1 1 -1 0 3 4 1 -1 1 1 1 -1 1 1 1 -1 0 1 1 -1 1 3 4 1 0 1 1 1 1 1 1 1 0 1 1 1 0 1 3 4 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 3 4 1 1 0 1 1 1 -1 1 1 1 0 1 1 1 0 3 4 1 1 -1 1 1 0 -1 1 1 1 -1 1 1 1 -1 3 4 1 0 -1 1 1 -1 -1 1 1 0 -1 1 1 0 -1 3 4 1 -1 -1 1 1 -1 0 1 1 -1 -1 1 1 -1 -1 3 4 1 -1 0 1 1 -1 1 1 1 -1 0 1 1 -1 0 3 4 1 -1 1 1 1 0 1 1 1 -1 1 1 1 -1 1 3 4 1 0 1 1 1 -1 1 1 1 0 1 1 1 0 1 3 4 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 3 4 1 1 0 1 1 1 1 1 1 1 0 1 1 1 0 3 4 1 1 -1 1 1 1 0 1 1 1 -1 1 1 1 -1 3 4 1 0 -1 1 1 1 -1 1 1 0 -1 1 1 0 -1 3 4 1 -1 -1 1 1 0 -1 1 1 -1 -1 1 1 -1 -1 3 4 1 -1 0 1 1 -1 -1 1 1 -1 0 1 1 -1 0 3 4 1 -1 1 1 1 -1 0 1 1 -1 1 1 1 -1 1 3 1 1 0 3 1 1 1 3 0 1 1 1 0 -3 1 1 1 -3 0 1 0 1 -2 0 1 16777219 0 1 -2 0 -1 16777219 0 1 99 1 1 3 1 99 1 -1 3 1 99 -1 -1 3 1 99 -1 1 3 1 1 0 3 1 1 1 3 0 1 1 1 0 -3 1 1 1 -3 0 1 4 1 0 1 1 1 0 1 1 1 0 1 1 1 1 1 3 4 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 3 4 1 1 0 1 1 1 0 1 1 1 0 1 1 1 -1 3 4 1 1 -1 1 1 1 -1 1 1 1 -1 1 1 0 -1 3 4 1 0 -1 1 1 0 -1 1 1 0 -1 1 1 -1 -1 3 4 1 -1 -1 1 1 -1 -1 1 1 -1 -1 1 1 -1 0 3 4 1 -1 0 1 1 -1 0 1 1 -1 0 1 1 -1 1 3 4 1 -1 1 1 1 -1 1 1 1 -1 1 1 1 0 1 3 4 1 0 1 1 1 0 1 1 1 0 1 1 1 -1 1 3 4 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 3 4 1 1 0 1 1 1 0 1 1 1 0 1 1 1 1 3 4 1 1 -1 1 1 1 -1 1 1 1 -1 1 1 1 0 3 4 1 0 -1 1 1 0 -1 1 1 0 -1 1 1 1 -1 3 4 1 -1 -1 1 1 -1 -1 1 1 -1 -1 1 1 0 -1 3 4 1 -1 0 1 1 -1 0 1 1 -1 0 1 1 -1 -1 3 4 1 -1 1 1 1 -1 1 1 1 -1 1 1 1 -1 0 3 4 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 3 4 1 1 1 1 1 1 0 1 1 1 0 1 1 1 0 3 4 1 1 0 1 1 1 -1 1 1 1 -1 1 1 1 -1 3 4 1 1 -1 1 1 0 -1 1 1 0 -1 1 1 0 -1 3 4 1 0 -1 1 1 -1 -1 1 1 -1 -1 1 1 -1 -1 3 4 1 -1 -1 1 1 -1 0 1 1 -1 0 1 1 -1 0 3 4 1 -1 0 1 1 -1 1 1 1 -1 1 1 1 -1 1 3 4 1 -1 1 1 1 0 1 1 1 0 1 1 1 0 1 3 4 1 0 1 1 1 -1 1 1 1 -1 1 1 1 -1 1 3 4 1 1 1 1 1 0 1 1 1 0 1 1 1 0 1 3 4 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 3 4 1 1 -1 1 1 1 0 1 1 1 0 1 1 1 0 3 4 1 0 -1 1 1 1 -1 1 1 1 -1 1 1 1 -1 3 4 1 -1 -1 1 1 0 -1 1 1 0 -1 1 1 0 -1 3 4 1 -1 0 1 1 -1 -1 1 1 -1 -1 1 1 -1 -1 3 4 1 -1 1 1 1 -1 0 1 1 -1 0 1 1 -1 0 3 4 1 0 1 1 1 0 1 1 1 1 1 1 1 0 1 3 4 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 3 4 1 1 0 1 1 1 0 1 1 1 -1 1 1 1 0 3 4 1 1 -1 1 1 1 -1 1 1 0 -1 1 1 1 -1 3 4 1 0 -1 1 1 0 -1 1 1 -1 -1 1 1 0 -1 3 4 1 -1 -1 1 1 -1 -1 1 1 -1 0 1 1 -1 -1 3 4 1 -1 0 1 1 -1 0 1 1 -1 1 1 1 -1 0 3 4 1 -1 1 1 1 -1 1 1 1 0 1 1 1 -1 1 3 4 1 0 1 1 1 0 1 1 1 -1 1 1 1 0 1 3 4 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 3 4 1 1 0 1 1 1 0 1 1 1 1 1 1 1 0 3 4 1 1 -1 1 1 1 -1 1 1 1 0 1 1 1 -1 3 4 1 0 -1 1 1 0 -1 1 1 1 -1 1 1 0 -1 3 4 1 -1 -1 1 1 -1 -1 1 1 0 -1 1 1 -1 -1 3 4 1 -1 0 1 1 -1 0 1 1 -1 -1 1 1 -1 0 3 4 1 -1 1 1 1 -1 1 1 1 -1 0 1 1 -1 1 3 4 1 0 1 1 1 1 1 1 1 0 1 1 1 0 1 3 4 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 3 4 1 1 0 1 1 1 -1 1 1 1 0 1 1 1 0 3 4 1 1 -1 1 1 0 -1 1 1 1 -1 1 1 1 -1 3 4 1 0 -1 1 1 -1 -1 1 1 0 -1 1 1 0 -1 3 4 1 -1 -1 1 1 -1 0 1 1 -1 -1 1 1 -1 -1 3 4 1 -1 0 1 1 -1 1 1 1 -1 0 1 1 -1 0 3 4 1 -1 1 1 1 0 1 1 1 -1 1 1 1 -1 1 3 4 1 0 1 1 1 -1 1 1 1 0 1 1 1 0 1 3 4 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 3 4 1 1 0 1 1 1 1 1 1 1 0 1 1 1 0 3 4 1 1 -1 1 1 1 0 1 1 1 -1 1 1 1 -1 3 4 1 0 -1 1 1 1 -1 1 1 0 -1 1 1 0 -1 3 4 1 -1 -1 1 1 0 -1 1 1 -1 -1 1 1 -1 -1 3 4 1 -1 0 1 1 -1 -1 1 1 -1 0 1 1 -1 0 3 4 1 -1 1 1 1 -1 0 1 1 -1 1 1 1 -1 1 3 1 1 0 3 1 1 1 3 0 1 1 1 0 -3 1 1 1 -3 0 1 0 1 99 0 1 3 1 99 1 0 3 1 99 0 -1 3 1 99 -1 0 3 2 99 0 1 16 99 0 1 2 2 99 1 0 16 99 1 0 2 2 99 0 -1 16 99 0 -1 2 2 99 -1 0 16 99 -1 0 2 1 1 1 1 3 1 1 1 -1 3 1 1 -1 -1 3 1 1 -1 1 3 0 1 99 0 1 3 1 99 1 0 3 1 99 0 -1 3 1 99 -1 0 3 1 99 1 2 3 1 99 2 1 3 1 99 2 -1 3 1 99 1 -2 3 1 99 -1 -2 3 1 99 -2 -1 3 1 99 -2 1 3 1 99 -1 2 3 0 1 99 1 1 3 1 99 1 -1 3 1 99 -1 -1 3 1 99 -1 1 3 1 99 1 2 3 1 99 2 1 3 1 99 2 -1 3 1 99 1 -2 3 1 99 -1 -2 3 1 99 -2 -1 3 1 99 -2 1 3 1 99 -1 2 3 0 1 1 0 1 1 1 1 1 1 2 1 1 -1 1 2 0 1 1 0 -1 1 1 1 1 -1 2 1 1 -1 -1 2 0 1 1 0 1 2 1 1 1 1 1 1 1 -1 1 1 0 1 1 0 -1 2 1 1 1 -1 1 1 1 -1 -1 1 0 ) 2 def P cond #0 1 11 3 def p cond #0 27 37 4 def X cond #0 53 68 5 def x cond #0 74 89 6 def K cond #0 95 135 7 def k cond #0 95 135 8 def R cond #0 208 0 9 def r cond #0 208 0 10 def Q cond #0 229 0 11 def q cond #0 229 0 12 def B cond #0 270 0 13 def b cond #0 270 0 14 def N cond #0 291 0 15 def n cond #0 291 0 16 def G cond #0 372 0 17 def g cond #0 372 0 18 def W cond #0 433 0 19 def w cond #0 433 0 20 def Z cond #0 494 0 21 def z cond #0 494 0 22 def Y cond #0 551 0 23 def y cond #0 551 0 24 def O cond #0 592 0 25 def o cond #0 592 0 26 def F cond #0 717 0 27 def f cond #0 717 0 28 def J cond #0 1826 0 29 def j cond #0 1832 0 30 def I cond #0 1838 0 31 def i cond #0 1838 0 32 def M cond #0 2987 0 33 def m cond #0 2987 0 34 def V cond #0 3064 0 35 def v cond #0 3064 0 36 def U cond #0 3125 0 37 def u cond #0 3125 0 38 def D cond #0 3186 0 39 def d cond #0 3202 0 40 def H cond #0 3218 0 41 def h cond #0 3234 0 42 set extinction 1 43 set partners (b2 k2 b13 k13 a2 l2 a13 l13) 44 set rooks (b2 k2 b13 k13) 45 set badCannon (e2 i2 e13 i13) 46 set badRook (c2 k2 c13 k13) 47 def BadZone #locust and match #locust #partners and cond match #locust #rooks match #dest #badRook match #dest #badCannon =O =dest =locust =D =P 48 set zonal true 49 set promotables (P p X x) 50 set supply (P 10 p 10 X 10 x 10 Q 1 q 1 R 1 r 1 Y 1 y 1 B 2 b 2 G 1 g 1 N 1 n 1) 51 set promotab ( 0 (q v u i m r j y o f b n z g w) (self r j y o f b n z g w) (self b n z g w) 0 0 0 0 0 0 (self B N Z G W) (self R J Y O F B N Z G W) (Q V U I M R J Y O F B N Z G W) 0 ) 52 set brouhaha (a1 b1 c1 d1 e1 f1 g1 h1 i1 j1 k1 l1 a14 b14 c14 d14 e14 f14 g14 h14 i14 j14 k14 l14) 53 set imitators (J j) 54 include /membergraphics/MSplay-test-applet-for-chess-variants/shuffle.txt 55 set shufflespecs ( (F) (B N G) 0 (Q V U) 0 0 (M I) 0 0 (Y) (W) 0 0 ) 56 gosub ShuffleSetup 57 set mypieces assoc P "wpawn.gif" p "bpawn.gif" X "wberolinapawn.gif" x "bberolinapawn.gif" K "wking.gif" k "bking.gif" R "wrook.gif" r "brook.gif" Q "wqueen.gif" q "bqueen.gif" B "wbishop.gif" b "bbishop.gif" N "wknight.gif" n "bknight.gif" G "wkangaroo.gif" g "bkangaroo.gif" W "../alfaeriemisc/compounds/wzebrawazir.gif" w "../alfaeriemisc/compounds/bzebrawazir.gif" Z "wcannon.gif" z "bcannon.gif" Y "wnightrider.gif" y "bnightrider.gif" O "wbird2.gif" o "bbird2.gif" F "wbird.gif" f "bbird.gif" J "wfool.gif" j "bfool.gif" I "wpegasus.gif" i "bpegasus.gif" M "wtank.gif" m "btank.gif" V "wchancellorrider.gif" v "bchancellorrider.gif" U "wcardinalrider.gif" u "bcardinalrider.gif" D "wcamel2.gif" d "bcamel2.gif" H "welephant2.gif" h "belephant2.gif" 58 setsystem dir "/graphics.dir/alfaerie/" 59 setsystem pieces #mypieces 60 setsystem flipped #mypieces 61 set pseudo 1 62 sub postauto1 63 gosub HandleMove false 64 set toimitate cond == #toimitate p d #toimitate 65 set toimitate cond == #toimitate x h #toimitate 66 endsub 67 sub postauto2 68 gosub HandleMove true 69 set toimitate cond == #toimitate P D #toimitate 70 set toimitate cond == #toimitate X H #toimitate 71 endsub 72 gosub GameEnd true 73 end 74 75 lib /membergraphics/MSgame-code-generation/betza.txt 76 if == thismove null 77 say This rule-enforcing preset was created through the Play-Test Applet 78 endif 79 echo Please report any bugs or errors to H.G. Muller 80 setsystem maxmove 4 81 setsystem omitmoves 1 82 ban commands 83 allow pass 2 pass 3 84 set pseudo 0 85 set zonal 0 86 set repeats 3 87 set reploses 0 88 set rulemoves 100 89 set resetpieces (P p) 90 set staledraw 1 91 set checkrule 1 92 set extinction 0 93 set nullban 1 94 set wroyal (K) 95 set broyal (k) 96 set iron array 97 set protected array 98 set restricted array 99 set counterstrike array 100 set negligible array 101 set opaque array 102 set brouhaha array 103 set imitators array 104 set inducers array 105 set shooters array 106 set morphers array 107 set promotables array 108 set inocheck (K k) 109 set conversion array 110 set method 1 111 set dropdown 1 112 set crappy 0 113 set cap array 114 set tempiron array 115 set epsqrs 0 116 set strike 0 117 set traded 0 118 set nopvc 0 119 set toimitate p 120 set lastfen 0 121 set epmask 4 122 set many ep 0 suicide 0 freedrop 0 123 set converted 0 124 set hist . "zzz," fencode 125 def friends cond #0 (onlylower) (onlyupper) 126 sub FastCastle start dx dy 127 verify not flag #start 128 my k r sqr cornr rook 129 set r ray #start #dx #dy 130 set k dec count #r 131 set cornr elem #k #r 132 set rook space #cornr 133 verify != @ #rook and not flag #cornr 134 do while #k 135 dec k 136 set sqr elem #k #r 137 if == @ space #sqr 138 if == 0 #k 139 set realto #sqr 140 set sqr #cornr 141 endif 142 gosub GotMove #start #sqr #cornr #start #rook 1 143 endif 144 loop 145 endsub 146 sub Promote player piece desti 147 my choice r across 148 verify mln 149 set r rank #desti 150 set across - lastrank * 2 #r 151 if == #player < #across 0 152 return 153 endif 154 if match #piece #promotables 155 set choice elem #r #promotab 156 if #choice 157 if match self #choice 158 push choice #piece 159 endif 160 set cap mergeall #cap #supply 161 set choice intersection #cap #choice 162 endif 163 else 164 set choice 0 165 endif 166 if #promo 167 if not #choice 168 die "You cannot promote on this move" 169 elseif not match #promo #choice 170 die "You cannot promote to such a piece" 171 endif 172 elseif #choice and not $answered 173 askpromote #choice 174 endif 175 endsub 176 sub GotMove orisqr destsqr locustsqr dropsqr unload implied 177 if == 2 #zonal 178 set k space #orisqr 179 gosub GetMorph #k #destsqr 180 verify != barred #k 181 endif 182 switch #task 183 case 1 184 set halfhit or #halfhit and #crappy and == #orisqr #ori == #locustsqr #desti 185 verify == #orisqr #ori and == #destsqr #desti 186 if == 1 #zonal 187 verify not fn BadZone #orisqr #destsqr #locustsqr #dropsqr #unload 188 endif 189 if != 1 #implied 190 if #firstpart 191 set pseudohit + #pseudohit #crappy 192 set autolocust #locustsqr 193 set autodrop #dropsqr 194 set dropped #unload 195 endif 196 if #sideeffect 197 verify == #sideeffect #dropsqr or == #sideeffect #locustsqr 198 set suicide #locustsqr 199 set freedrop #dropsqr 200 set dropped #unload 201 else 202 verify == #locustsqr #suicide 203 verify == #dropsqr #freedrop 204 verify == #unload #dropped or not #dropsqr 205 endif 206 else 207 verify not #suicide and not #freedrop 208 if #locustsqr 209 capture #locustsqr 210 set imp 1 211 endif 212 set impliedkill #locustsqr 213 set implieddrop #dropsqr 214 set dropped #unload 215 endif 216 set neweps #eps 217 set ep #destsqr 218 set ok 1 219 set desc #mv 220 break 221 case 2 222 if == 1 #zonal 223 verify not fn BadZone #orisqr #destsqr #locustsqr #dropsqr #unload 224 endif 225 if #locustsqr or #dropsqr and #dropdown and not #implied 226 set m . space #orisqr . ws . #orisqr . chr 45 . #destsqr . chr 59 ws 227 if #locustsqr 228 set m . #m . "@-" #locustsqr 229 elseif #dropsqr 230 set m . #m . #unload . chr 45 #dropsqr 231 endif 232 push xtl #m 233 else 234 setlegal #orisqr #destsqr 235 endif 236 break 237 case 9 238 if == #locustsqr #kpos 239 push checks #ss 240 push checks #mv 241 setelem #locustsqr 0 1 242 endif 243 break 244 case 10 245 case 7 246 case 3 247 set hit cond match space #destsqr #royal #orisqr #hit 248 if != Xdummy space #locustsqr and #locustsqr 249 set hit cond match space #locustsqr #royal Ughh #hit 250 endif 251 break 252 case 12 253 verify count var #orisqr 254 case 11 255 if & 1 elem 0 var #destsqr and == #orisqr #kpos 256 break 257 endif 258 case 4 259 case 8 260 if == 1 #zonal 261 verify not fn BadZone #orisqr #destsqr #locustsqr #dropsqr #unload 262 endif 263 my victim locustvictim 264 set victim space #destsqr 265 set locustvictim space #locustsqr 266 if #locustsqr 267 empty #locustsqr 268 endif 269 move #orisqr #destsqr 270 if #dropsqr 271 add #unload #dropsqr 272 endif 273 dec task 274 set hit 0 275 if == 10 #task 276 if #checked 277 gosub GenAttacks checks 278 endif 279 gosub GenAttacks #orisqr 280 gosub GenAttacks #destsqr 281 if #locustsqr 282 gosub GenAttacks #locustsqr 283 endif 284 if #dropsqr 285 gosub GenAttacks #dropsqr 286 endif 287 else 288 if #threat and != #threat Ughh 289 set checker space #threat 290 if cond #xside islower #checker isupper #checker 291 gosub GenMoves #checker #threat 1 292 endif 293 endif 294 if not #hit 295 gosub GenAll #xside 296 endif 297 endif 298 inc task 299 move #destsqr #orisqr 300 if != #dropsqr #orisqr and #dropsqr 301 empty #dropsqr 302 endif 303 if #locustsqr 304 add #locustvictim #locustsqr 305 endif 306 add #victim #destsqr 307 if == 4 #task 308 set threat #hit 309 set hit not #hit 310 elseif #hit 311 set hit 0 312 elseif #locustsqr or #dropsqr and #dropdown and not #implied 313 set m . space #orisqr . ws . #orisqr . chr 45 . #destsqr . chr 59 ws 314 if #locustsqr 315 if match #mover #shooters 316 set m . #m . "@-" #locustsqr 317 else 318 set m . space #orisqr . ws . #orisqr . chr 45 . #locustsqr . chr 59 ws 319 set m . #m . space #orisqr . ws . #locustsqr . chr 45 #destsqr 320 endif 321 elseif #dropsqr 322 set m . #m . #unload . chr 45 #dropsqr 323 endif 324 push xtl #m 325 else 326 setlegal #orisqr #destsqr 327 endif 328 break 329 case 5 330 verify == #locustsqr #desti 331 setlegal #locustsqr #destsqr 332 break 333 case 6 334 verify == #ori #orisqr and == #desti #destsqr 335 if #dropsqr 336 setlegal #desti #dropsqr 337 elseif #locustsqr 338 setlegal #desti #locustsqr 339 endif 340 break 341 case 13 342 verify not #dropsqr and #locustsqr or not empty #destsqr 343 set hit 1 344 break 345 endswitch 346 endsub 347 sub NextLeg togo legindex startsqr cursqr locustsqr dropsqr iso 348 my rng dx dy mode to tosqrs k len newindex hx hy side r fratricide stopper 349 set rng elem #legindex #legdefs 350 set dx elem + 1 #legindex #legdefs 351 set dy elem + 2 #legindex #legdefs 352 set mode elem + 3 #legindex #legdefs 353 if & 64 #mode 354 verify not flag #startsqr 355 if match space #startsqr #inocheck 356 verify != #task 11 or not #checked 357 push eps #startsqr 358 endif 359 endif 360 if > 0 #rng 361 switch #rng 362 case -1 363 set rng cond < 0 #dy rank #cursqr - lastrank rank #cursqr 364 set rng - >> lastrank 1 #rng 365 set rng max 1 #rng 366 set eps array 367 set mode | << 1 23 #mode 368 break 369 case -2 370 gosub GenMoves #toimitate #startsqr 1 371 return 372 case -3 373 gosub #mode #startsqr #dx #dy 374 return 375 endswitch 376 endif 377 set tosqrs ride #cursqr #dx #dy 378 set r count #tosqrs 379 if not #r 380 if & #mode << 1 27 381 gosub GotMove #startsqr #cursqr #locustsqr #dropsqr 0 0 382 else 383 return 384 endif 385 endif 386 set r min #rng #r 387 if & 128 #mode 388 set hx >> + 8 * 5 #dx 4 389 set hy >> + 8 * 5 #dy 4 390 set k ride #startsqr #hx #hy 391 set len count #k 392 set len * #len + abs #hx abs #hy 393 set len / #len + abs #dx abs #dy 394 if < #len #r 395 set r #len 396 if == 9 #task 397 pop k to 398 push #to #ss 399 push #to #mv 400 endif 401 endif 402 verify #len 403 if & << 1 14 #mode 404 set eps array 405 set to where #cursqr #dx #dy 406 set k #cursqr 407 do while != #to #k and onboard #k 408 set k where #k #hx #hy 409 if != #k #to 410 push eps #k 411 endif 412 loop 413 endif 414 endif 415 dec togo 416 if & << 1 21 #mode 417 set dropsqr #cursqr 418 endif 419 if & << 1 15 #mode 420 verify >= #r #iso 421 set r #iso 422 elseif < 1 #r 423 if & 1 #mode 424 set k 1 425 do while < #k #r 426 set to elem dec #k #tosqrs 427 if #togo 428 set newindex + 4 #legindex 429 gosub NextLeg #togo #newindex #startsqr #to #locustsqr #dropsqr #k 430 else 431 gosub GotMove #startsqr #to #locustsqr #dropsqr 0 0 432 endif 433 if & << 1 23 #mode 434 push eps #to 435 endif 436 inc k 437 verify not #hit 438 loop 439 endif 440 if & #epmask #mode 441 set k 1 442 do while < #k #r 443 set to elem dec #k #tosqrs 444 if match #to #epsqrs 445 if #togo 446 set newindex + 4 #legindex 447 gosub NextLeg #togo #newindex #startsqr #to #ep #dropsqr #k 448 else 449 gosub GotMove #startsqr #to #ep #dropsqr 0 1 450 endif 451 endif 452 inc k 453 loop 454 endif 455 if & 18 #mode and == 9 #task 456 set k 1 457 do while < #k #r 458 set to elem dec #k #tosqrs 459 if #togo 460 push #to #ss 461 push #to #mv 462 endif 463 if & 2 #mode 464 if #togo 465 if == #to #kpos 466 set newindex + 4 #legindex 467 gosub NextLeg #togo #newindex #startsqr #to #to #dropsqr #k 468 endif 469 else 470 setelem #to 0 | 1 elem 0 var #to 471 if == #to #kpos 472 push checks #ss 473 push checks #mv 474 endif 475 endif 476 endif 477 inc k 478 loop 479 endif 480 endif 481 set len cond == 1 #rng #iso #r 482 set to elem dec #r #tosqrs 483 if == 9 #task 484 if cond empty #to (& 18 #mode and #togo) (not & << 1 15 #mode and != #r #rng and or & 2 #mode #togo or and & 1 #mode #togo) 485 push #to #ss 486 push #to #mv 487 endif 488 if & + 2 << 1 13 #mode and == #to #kpos 489 if #togo 490 set newindex + 4 #legindex 491 gosub NextLeg #togo #newindex #startsqr #to #to #dropsqr #len 492 else 493 push checks #ss 494 push checks #mv 495 endif 496 endif 497 if & 2 #mode and not #togo 498 setelem #to 0 | 1 elem 0 var #to 499 endif 500 endif 501 if match #to #epsqrs and & #epmask #mode 502 if #togo 503 set newindex + 4 #legindex 504 gosub NextLeg #togo #newindex #startsqr #to #ep #dropsqr #len 505 else 506 gosub GotMove #startsqr #to #ep 0 0 1 507 endif 508 endif 509 set stopper cond != #to #startsqr space #to @ 510 if == @ #stopper 511 verify & 1 #mode 512 else 513 if & 16 #mode 514 if not match #stopper #opaque or not match space #startsqr #opaque 515 set newindex + 4 #legindex 516 gosub NextLeg #togo #newindex #startsqr #to #locustsqr #dropsqr #len 517 endif 518 endif 519 set side islower space #startsqr 520 set fratricide cond #side islower #stopper isupper #stopper 521 if #fratricide 522 if & 8 #mode 523 verify match #to #partners 524 verify not flag #to 525 set locustsqr #to 526 set to where #startsqr elem + 5 #legindex #legdefs 0 527 set dropsqr where #to - 0 #dx #dy 528 set eps array 529 set k #startsqr 530 do while != #k #to 531 push eps #k 532 set k where #k #dx 0 533 loop 534 set realto #to 535 gosub GotMove #startsqr #to #locustsqr #dropsqr #stopper 1 536 return 537 elseif & 2048 #mode 538 if #togo 539 set newindex + 4 #legindex 540 gosub NextLeg #togo #newindex #to #to 0 0 #len 541 elseif != #stopper space #startsqr 542 gosub GenMoves #stopper #startsqr 1 543 endif 544 endif 545 verify & 4096 #mode 546 else 547 verify match #stopper #royal and & << 1 13 #mode or & 2 #mode 548 verify not match #stopper #tempiron 549 endif 550 if #togo 551 set locustsqr #to 552 endif 553 endif 554 if #togo 555 set newindex + 4 #legindex 556 gosub NextLeg #togo #newindex #startsqr #to #locustsqr #dropsqr #len 557 else 558 gosub GotMove #startsqr #to #locustsqr #dropsqr #stopper 0 559 endif 560 endsub 561 sub GenMoves piece sqr all 562 my index legcount startindex 563 set side islower #piece 564 set ss #sqr 565 set index fn #piece #all 566 do 567 set legcount elem #index #legdefs 568 verify #legcount 569 set mv #index 570 inc index 571 if flag #sqr or not match #piece #conversion or not & cond #side #converted << #converted 2 + 64 & 64 elem + 3 #index #legdefs 572 set eps 0 573 gosub NextLeg #legcount #index #sqr #sqr 0 0 1 574 endif 575 set index + #index * 4 #legcount 576 loop until #hit 577 endsub 578 sub GenAttacks sqr 579 my k n togo leg piece 580 set k 1 581 set n count var #sqr 582 do while < #k #n 583 set start elem #k var #sqr 584 inc k 585 set leg elem #k var #sqr 586 inc k 587 set piece space #start 588 if not cond #xside (islower #piece) (isupper #piece) 589 continue 590 endif 591 set togo elem #leg #legdefs 592 inc leg 593 gosub NextLeg #togo #leg #start #start 0 0 1 594 loop 595 endsub 596 sub GenAll player 597 my from piece 598 set hit false 599 for (from piece) fn friends #player 600 gosub GenMoves #piece #from 1 601 verify not #hit 602 next 603 endsub 604 sub GetRoyals player 605 my i nr type myroyal cnt 606 set myroyal cond #player (#broyal) (#wroyal) 607 set many i 0 nr 0 hit 0 608 set royal array 609 set troy array 610 do while < #i count #myroyal 611 set type elem #i #myroyal 612 set cnt elem #type piececount 613 if + 0 #cnt 614 set nr + #nr #cnt 615 push royal #type 616 push troy #cnt 617 endif 618 inc i 619 loop 620 set dead count #royal and not #nr 621 if < 1 #nr and #extinction 622 set royal array 623 endif 624 endsub 625 sub InCheck player 626 GetRoyals #player 627 set task 3 628 verify count #royal 629 if #traded 630 add Xdummy #desti 631 push royal Xdummy 632 endif 633 if count #epsqrs and match space #ep #royal 634 set epmask 6 635 endif 636 set player not #player 637 gosub GenAll #player 638 set epmask 4 639 if #traded 640 add #traded #desti 641 endif 642 endsub 643 sub ParseMove player 644 my i j parts sqrs sqr 645 set many suicide 0 freedrop 0 promo 0 sideeffect 0 646 set mvs explode chr 59 thismove 647 set parts explode ws trim elem 0 #mvs 648 set i count #parts 649 if > #i 2 650 die "move must be piece ID plus board step" 651 endif 652 set sqrs explode chr 45 trim elem dec #i #parts 653 if != 2 count #sqrs 654 if == resign thismove 655 resign 656 elseif == drawn thismove 657 drawn 658 endif 659 die "board step does not mention two squares" 660 endif 661 set ori elem 0 #sqrs 662 set desti elem 1 #sqrs 663 if not onboard #desti 664 set msg join #desti " is not a valid square" 665 die #msg 666 endif 667 if not onboard #ori 668 set msg join #ori " is not a valid square" 669 die #msg 670 endif 671 set mover space #ori 672 if not cond #player islower #mover isupper #mover 673 set msg cond == @ #mover (. #ori " is empty") ("you cannot move opponent pieces") 674 die #msg 675 endif 676 set firstpart 1 677 set j 1 678 do while < #j count #mvs 679 set parts trim elem #j #mvs 680 if == "pass" #parts or == "skip" #parts 681 set firstpart 0 682 inc j 683 continue 684 endif 685 set parts explode ws trim #parts 686 set i dec count #parts 687 set sqrs explode chr 45 trim elem #i #parts 688 if != 2 count #sqrs 689 set msg join elem #i #parts " is malformed" 690 die #msg 691 endif 692 set sqr elem 1 #sqrs 693 set sqr cond == "dest" #sqr #desti #sqr 694 if not onboard #sqr 695 set msg join #sqr " is not a valid square" 696 die #msg 697 elseif onboard elem 0 #sqrs 698 if != #desti elem 0 #sqrs 699 die "you can only continue with same piece" 700 endif 701 set firstpart 0 702 if match #mover #shooters 703 set sideeffect #sqr 704 return 705 endif 706 if #suicide 707 die "cannot have more than one locust victim" 708 endif 709 set suicide #desti 710 set desti #sqr 711 elseif == #desti #sqr 712 set promo elem 0 #sqrs 713 elseif == @ elem 0 #sqrs 714 if empty #sqr 715 set msg . "there is nothing on " . #sqr " to capture" 716 die #msg 717 endif 718 if #suicide 719 die "cannot have more than one locust victim" 720 endif 721 set suicide #sqr 722 set firstpart 0 723 else 724 if #freedrop 725 die "cannot kick more than one piece" 726 endif 727 set dropped elem 0 #sqrs 728 set freedrop #sqr 729 set firstpart 0 730 endif 731 inc j 732 loop 733 endsub 734 sub HandleMove player 735 set stm #player 736 gosub ParseMove #player 737 set all == mln $maxmln 738 set many ok 0 hit 0 task 1 halfhit 0 implieddrop 0 imp 0 neweps 0 739 set pseudohit 0 740 set realto 0 741 set k #all or not flag #ori and match #mover #conversion 742 gosub GenMoves #mover #ori #k 743 if not match #mover #shooters and #firstpart and #halfhit 744 set ok 2 745 set task 5 746 gosub GenMoves #mover #ori 1 747 set msg . "Enter second leg or pass" 748 remind #msg 749 elseif #all 750 set cap unique keys capturedpieces 751 set lastfen fencode 752 if not #ok 753 set pseudohit 0 754 gosub GenAll #player 755 endif 756 if #sideeffect 757 rewritemove . elem 0 #mvs . "; " . cond #freedrop #dropped @ . chr 45 #sideeffect 758 set sideeffect 0 759 gosub ParseMove #player 760 endif 761 if match #mover #shooters and < 1 #pseudohit 762 set ok 2 763 set task 6 764 gosub GenAll #player 765 if #hit 766 set msg . "Type side effect of move, or pass" 767 else 768 set msg . "Type side effect of move" 769 endif 770 remind #msg 771 elseif not #ok 772 if == 1 #pseudohit 773 if #autolocust 774 appendmove join "@-" #autolocust 775 endif 776 if #autodrop 777 appendmove join #dropped join chr 45 #autodrop 778 endif 779 gosub ParseMove #player 780 elseif #pseudohit 781 set msg . "Type side effects of move" 782 remind #msg 783 continuemove 784 return 785 else 786 set msg . thismove . " is not even pseudo-legal for a " toupper #mover 787 die #msg 788 endif 789 endif 790 endif 791 set victim cond != #desti #ori space #desti @ 792 set traded cond and or match space #suicide #negligible not #suicide and match #victim #protected match #mover #restricted #mover 0 793 set strike and match #victim #counterstrike not match #mover #counterstrike 794 set k 0 795 do while < var k count var mvs 796 eval join "MOVE: " trim elem var k var mvs 797 inc k 798 loop 799 if != #ori #freedrop and match #ori #brouhaha 800 delete #ori 801 endif 802 if #implieddrop 803 add #dropped #implieddrop 804 if == #desti #impliedkill 805 move #desti #realto 806 endif 807 endif 808 set tempiron #iron 809 if #strike 810 set tempiron mergeall #tempiron #counterstrike 811 endif 812 set toimitate flipcase cond match #mover #imitators #toimitate #mover 813 setflag #desti 814 set posvar join cond #player "w" "b" fencode 815 inc #posvar 816 inc nopvc 817 if #imp 818 set hist . #hist . "," mln 819 endif 820 if #suicide and not #freedrop or #promo or != @ #victim or match #mover #resetpieces 821 set nopvc 0 822 endif 823 set epsqrs #neweps 824 if not flag #ori and match #mover #conversion 825 set k + 64 & 64 elem + 4 #desc #legdefs 826 set k cond #player #k >> #k 2 827 if & #k #converted 828 die This move violates the conversion rule that applies to this piece. 829 endif 830 set converted + #converted #k 831 endif 832 gosub GetMorph #mover #desti 833 if #k 834 add #k #desti 835 endif 836 endsub 837 sub GetMorph piece sqr 838 set k 0 839 if match #piece #morphers 840 set i elem #piece #morphs 841 set j rank #sqr 842 if not islower #piece 843 set j - lastrank #j 844 endif 845 if >= #j count #i 846 return 847 endif 848 set i elem #j #i 849 if #i 850 if == All elem 0 #i 851 set k elem 1 #i 852 else 853 set k elem file #sqr #i 854 endif 855 endif 856 endif 857 endsub 858 sub GameEnd player 859 my side 860 if == 2 #ok 861 continuemove 862 return 863 endif 864 set side not #player 865 gosub GetRoyals #side 866 if #dead 867 set msg join cond #player "White" "Black" " lost by absence of royalty!" 868 say #msg 869 won 870 elseif == #lastfen fencode and #nullban 871 die "This is a null move!" 872 endif 873 gosub InCheck #player 874 if == #hit Xdummy 875 die "Trading of this piece is not allowed" 876 elseif #checkrule and #hit 877 if == #hit Ughh 878 die "That moves through or out of check" 879 else 880 die "This exposes your royal piece to capture" 881 endif 882 endif 883 if >= 1 count fn friends #player and #baring 884 if >= 1 count fn friends #side 885 say Draw by mutual baring 886 drawn 887 else 888 set msg . cond #player "Black" "White" " loses by baring" 889 say #msg 890 lost 891 endif 892 return 893 endif 894 gosub Promote #player #mover #desti 895 gosub GetRoyals #side 896 if count #royal and #checkrule 897 set task 4 898 set xside #player 899 set threat 0 900 gosub GenAll #side 901 if not #hit 902 if #staledraw 903 dec task 904 gosub GenAll #player 905 if #hit 906 say Checkmate! 907 won 908 else 909 say Stalemate! 910 drawn 911 endif 912 else 913 say Mate! 914 won 915 endif 916 return 917 endif 918 endif 919 set posvar join cond #player "w" "b" fencode 920 if >= var #posvar #repeats 921 if #reploses 922 set msg join cond #player "Black" "White" " loses by repetition!" 923 say #msg 924 lost 925 else 926 say "Draw by repetition!" 927 drawn 928 endif 929 elseif >= #nopvc #rulemoves 930 say "Game declared draw due to prolongued lack of progress!" 931 drawn 932 endif 933 set ltst #checkrule and count #royal and not #pseudo 934 set xtl array 935 if == 1 #method and #ltst 936 for sqr spaces 937 set #sqr array 0 938 next 939 set task 9 940 set king elem 0 #royal 941 set kpos search #king $space 942 empty #kpos 943 set checks array 0 944 gosub GenAll #player 945 add #king #kpos 946 set checked & 1 elem 0 var #kpos 947 if #checked 948 say "check!" 949 endif 950 set task 11 951 gosub GenAll #side 952 else 953 set task cond #ltst 8 2 954 gosub GenAll #side 955 endif 956 setjsvar impmoves #hist 957 setsystem legalmoves merge $legalmoves #xtl 958 endsub 959 set posvar join "w" fencode 960 inc #posvar 961 endlib 962 lib /membergraphics/MSplay-test-applet-for-chess-variants/shuffle.txt 963 sub GetSquares toshuffle 964 my sqr piece 965 set left array 966 set light array 967 set dark array 968 for (sqr piece) $space 969 if match var piece #toshuffle 970 if < * 2 file #sqr lastfile 971 push left #sqr 972 endif 973 if & 1 + file #sqr rank #sqr 974 push dark #sqr 975 else 976 push light #sqr 977 endif 978 endif 979 next 980 endsub 981 sub ShuffleWings sym others 982 my toshuffle sqr piece rsqr p s allsqrs 983 set toshuffle mergeall #sym #others 984 gosub GetSquares #toshuffle 985 verify < 1 count #left 986 set allsqrs mergeall #dark #light 987 eval merge #left "shuffle" 988 for sqr #left 989 set piece space #sqr 990 if match #piece #sym 991 set rsqr join chr + 97 - lastfile file #sqr substr #sqr 1 0 992 verify match #rsqr #allsqrs 993 set p space #rsqr 994 if != #p #piece 995 for s #allsqrs 996 if not match #s #left and == #piece space #s 997 swap #s #rsqr 998 break 999 endif 1000 next 1001 endif 1002 endif 1003 next 1004 gosub GetSquares #others 1005 set dark mergeall #dark #light 1006 eval merge #dark "shuffle" 1007 endsub 1008 sub ShuffleOne shaded others 1009 my toshuffle 1010 set toshuffle mergeall #shaded #others 1011 gosub GetSquares #toshuffle 1012 if count #shaded 1013 eval merge #light "shuffle" 1014 eval merge #dark "shuffle" 1015 gosub GetSquares #others 1016 endif 1017 set dark mergeall #dark #light 1018 eval merge #dark "shuffle" 1019 endsub 1020 sub CenterKing types 1021 verify count #types 1022 my mid s royal right 1023 gosub GetSquares #types 1024 set dark sort merge #dark #light 1025 set royal elem 0 #types 1026 pop dark right 1027 pop dark mid 1028 pop dark left 1029 if != #royal space #mid 1030 set s cond == #royal space #left #left #right 1031 swap #s #mid 1032 endif 1033 endsub 1034 sub Symmetrize 1035 my sqr piece 1036 for (sqr piece) onlyupper 1037 set s join substr #sqr 0 1 + - 1 rank "a1" - lastrank rank #sqr 1038 copy #sqr #s 1039 flip #s 1040 next 1041 endsub 1042 sub ShuffleOnePlayer otherset symset shadeset 1043 if count #symset 1044 gosub ShuffleWings #symset #otherset 1045 else 1046 gosub ShuffleOne #shadeset #otherset 1047 endif 1048 endsub 1049 set shaded array 1050 set symmetrized array 1051 set centralize array 1052 set blackset array 1053 set blacksym array 1054 set blackshaded array 1055 set shufflespecs 0 1056 sub ShuffleSetup 1057 if isconst startshuffle 1058 setsystem space @startshuffle 1059 else 1060 if #shufflespecs 1061 my i a b c 1062 set i 0 1063 do while < #i count #shufflespecs 1064 set a elem #i #shufflespecs 1065 if not #a 1066 gosub Symmetrize 1067 break 1068 endif 1069 set b elem inc #i #shufflespecs 1070 set c elem + 2 #i #shufflespecs 1071 if not #b 1072 set b array 1073 endif 1074 if not #c 1075 set c array 1076 endif 1077 gosub ShuffleOnePlayer #a #b #c 1078 set i + 3 #i 1079 loop 1080 else 1081 gosub ShuffleOnePlayer #shuffleset #symmetrized #shaded 1082 if count #blackset 1083 gosub ShuffleOnePlayer #blackset #blacksym #blackshaded 1084 else 1085 gosub CenterKing #centralize 1086 gosub Symmetrize 1087 endif 1088 endif 1089 setconst startshuffle $space 1090 endif 1091 endsub 1092 endlibfunctions
Array ( [friends] => Array ( [0] => cond [1] => #0 [2] => Array ( [0] => onlylower ) [3] => Array ( [0] => onlyupper ) ) [P] => Array ( [0] => cond [1] => #0 [2] => 1 [3] => 11 ) [p] => Array ( [0] => cond [1] => #0 [2] => 27 [3] => 37 ) [X] => Array ( [0] => cond [1] => #0 [2] => 53 [3] => 68 ) [x] => Array ( [0] => cond [1] => #0 [2] => 74 [3] => 89 ) [K] => Array ( [0] => cond [1] => #0 [2] => 95 [3] => 135 ) [k] => Array ( [0] => cond [1] => #0 [2] => 95 [3] => 135 ) [R] => Array ( [0] => cond [1] => #0 [2] => 208 [3] => 0 ) [r] => Array ( [0] => cond [1] => #0 [2] => 208 [3] => 0 ) [Q] => Array ( [0] => cond [1] => #0 [2] => 229 [3] => 0 ) [q] => Array ( [0] => cond [1] => #0 [2] => 229 [3] => 0 ) [B] => Array ( [0] => cond [1] => #0 [2] => 270 [3] => 0 ) [b] => Array ( [0] => cond [1] => #0 [2] => 270 [3] => 0 ) [N] => Array ( [0] => cond [1] => #0 [2] => 291 [3] => 0 ) [n] => Array ( [0] => cond [1] => #0 [2] => 291 [3] => 0 ) [G] => Array ( [0] => cond [1] => #0 [2] => 372 [3] => 0 ) [g] => Array ( [0] => cond [1] => #0 [2] => 372 [3] => 0 ) [W] => Array ( [0] => cond [1] => #0 [2] => 433 [3] => 0 ) [w] => Array ( [0] => cond [1] => #0 [2] => 433 [3] => 0 ) [Z] => Array ( [0] => cond [1] => #0 [2] => 494 [3] => 0 ) [z] => Array ( [0] => cond [1] => #0 [2] => 494 [3] => 0 ) [Y] => Array ( [0] => cond [1] => #0 [2] => 551 [3] => 0 ) [y] => Array ( [0] => cond [1] => #0 [2] => 551 [3] => 0 ) [O] => Array ( [0] => cond [1] => #0 [2] => 592 [3] => 0 ) [o] => Array ( [0] => cond [1] => #0 [2] => 592 [3] => 0 ) [F] => Array ( [0] => cond [1] => #0 [2] => 717 [3] => 0 ) [f] => Array ( [0] => cond [1] => #0 [2] => 717 [3] => 0 ) [J] => Array ( [0] => cond [1] => #0 [2] => 1826 [3] => 0 ) [j] => Array ( [0] => cond [1] => #0 [2] => 1832 [3] => 0 ) [I] => Array ( [0] => cond [1] => #0 [2] => 1838 [3] => 0 ) [i] => Array ( [0] => cond [1] => #0 [2] => 1838 [3] => 0 ) [M] => Array ( [0] => cond [1] => #0 [2] => 2987 [3] => 0 ) [m] => Array ( [0] => cond [1] => #0 [2] => 2987 [3] => 0 ) [V] => Array ( [0] => cond [1] => #0 [2] => 3064 [3] => 0 ) [v] => Array ( [0] => cond [1] => #0 [2] => 3064 [3] => 0 ) [U] => Array ( [0] => cond [1] => #0 [2] => 3125 [3] => 0 ) [u] => Array ( [0] => cond [1] => #0 [2] => 3125 [3] => 0 ) [D] => Array ( [0] => cond [1] => #0 [2] => 3186 [3] => 0 ) [d] => Array ( [0] => cond [1] => #0 [2] => 3202 [3] => 0 ) [H] => Array ( [0] => cond [1] => #0 [2] => 3218 [3] => 0 ) [h] => Array ( [0] => cond [1] => #0 [2] => 3234 [3] => 0 ) [BadZone] => Array ( [0] => #locust [1] => and [2] => match [3] => #locust [4] => #partners [5] => and [6] => cond [7] => match [8] => #locust [9] => #rooks [10] => match [11] => #dest [12] => #badRook [13] => match [14] => #dest [15] => #badCannon [16] => =O [17] => =dest [18] => =locust [19] => =D [20] => =P ) )uservar
Array ( [0] => Array ( [main] => Array ( [pseudo] => 0 [zonal] => 1 [repeats] => 3 [reploses] => 0 [rulemoves] => 100 [resetpieces] => Array ( [0] => P [1] => p ) [staledraw] => 1 [checkrule] => 1 [extinction] => 1 [nullban] => 1 [wroyal] => Array ( [0] => K ) [broyal] => Array ( [0] => k ) [iron] => Array ( ) [protected] => Array ( ) [restricted] => Array ( ) [counterstrike] => Array ( ) [negligible] => Array ( ) [opaque] => Array ( ) [brouhaha] => Array ( [0] => a1 [1] => b1 [2] => c1 [3] => d1 [4] => e1 [5] => f1 [6] => g1 [7] => h1 [8] => i1 [9] => j1 [10] => k1 [11] => l1 [12] => a14 [13] => b14 [14] => c14 [15] => d14 [16] => e14 [17] => f14 [18] => g14 [19] => h14 [20] => i14 [21] => j14 [22] => k14 [23] => l14 ) [imitators] => Array ( [0] => J [1] => j ) [inducers] => Array ( ) [shooters] => Array ( ) [morphers] => Array ( ) [promotables] => Array ( [0] => P [1] => p [2] => X [3] => x ) [inocheck] => Array ( [0] => K [1] => k ) [conversion] => Array ( ) [method] => 1 [dropdown] => 1 [crappy] => 0 [cap] => Array ( ) [tempiron] => Array ( ) [epsqrs] => 0 [strike] => 0 [traded] => 0 [nopvc] => 0 [toimitate] => p [lastfen] => 0 [epmask] => 4 [ep] => 0 [suicide] => 0 [freedrop] => 0 [converted] => 0 [hist] => zzz,----jooj----zrywuqkvwyrzrnbfgimgfbnrxppppppppppxp1x2pp2x1p48P1X2PP2X1PXPPPPPPPPPPXRNBFGIMGFBNRZRYWUQKVWYRZ----JOOJ---- [posvar] => w----jooj----zrywuqkvwyrzrnbfgimgfbnrxppppppppppxp1x2pp2x1p48P1X2PP2X1PXPPPPPPPPPPXRNBFGIMGFBNRZRYWUQKVWYRZ----JOOJ---- [w----jooj----zrywuqkvwyrzrnbfgimgfbnrxppppppppppxp1x2pp2x1p48P1X2PP2X1PXPPPPPPPPPPXRNBFGIMGFBNRZRYWUQKVWYRZ----JOOJ----] => 1 [legdefs] => Array ( [0] => 0 [1] => 1 [2] => 1 [3] => 1 [4] => 1 [5] => 2 [6] => 1 [7] => 1 [8] => -1 [9] => 1 [10] => 2 [11] => 1 [12] => -1 [13] => 0 [14] => 1 [15] => 8388609 [16] => 1 [17] => 1 [18] => 1 [19] => 1 [20] => 4 [21] => 1 [22] => 1 [23] => -1 [24] => 1 [25] => 4 [26] => 0 [27] => 1 [28] => 1 [29] => -1 [30] => -1 [31] => 2 [32] => 1 [33] => 1 [34] => 1 [35] => -1 [36] => 2 [37] => 1 [38] => -1 [39] => 0 [40] => -1 [41] => 8388609 [42] => 1 [43] => 1 [44] => -1 [45] => -1 [46] => 4 [47] => 1 [48] => 1 [49] => 1 [50] => -1 [51] => 4 [52] => 0 [53] => 1 [54] => -1 [55] => 1 [56] => 1 [57] => 1 [58] => 1 [59] => -1 [60] => -1 [61] => 1 [62] => 1 [63] => 1 [64] => 1 [65] => 0 [66] => 1 [67] => 2 [68] => 1 [69] => 1 [70] => 0 [71] => 1 [72] => 4 [73] => 0 [74] => 1 [75] => -1 [76] => -1 [77] => -1 [78] => 1 [79] => 1 [80] => -1 [81] => 1 [82] => -1 [83] => 1 [84] => 1 [85] => 1 [86] => 0 [87] => -1 [88] => 2 [89] => 1 [90] => 1 [91] => 0 [92] => -1 [93] => 4 [94] => 0 [95] => 1 [96] => 1 [97] => 0 [98] => 1 [99] => 3 [100] => 1 [101] => 1 [102] => 1 [103] => 1 [104] => 3 [105] => 1 [106] => 1 [107] => 1 [108] => 0 [109] => 3 [110] => 1 [111] => 1 [112] => 1 [113] => -1 [114] => 3 [115] => 1 [116] => 1 [117] => 0 [118] => -1 [119] => 3 [120] => 1 [121] => 1 [122] => -1 [123] => -1 [124] => 3 [125] => 1 [126] => 1 [127] => -1 [128] => 0 [129] => 3 [130] => 1 [131] => 1 [132] => -1 [133] => 1 [134] => 3 [135] => 2 [136] => 99 [137] => 1 [138] => 0 [139] => 72 [140] => 1 [141] => 3 [142] => 0 [143] => 9 [144] => 2 [145] => 99 [146] => -1 [147] => 0 [148] => 72 [149] => 1 [150] => -3 [151] => 0 [152] => 9 [153] => 2 [154] => 99 [155] => 1 [156] => 0 [157] => 72 [158] => 1 [159] => 4 [160] => 0 [161] => 9 [162] => 2 [163] => 99 [164] => -1 [165] => 0 [166] => 72 [167] => 1 [168] => -4 [169] => 0 [170] => 9 [171] => 2 [172] => 99 [173] => 1 [174] => 0 [175] => 33554504 [176] => 1 [177] => 2 [178] => 0 [179] => 9 [180] => 2 [181] => 99 [182] => -1 [183] => 0 [184] => 33554504 [185] => 1 [186] => -2 [187] => 0 [188] => 9 [189] => 0 [190] => 99 [191] => 1 [192] => 0 [193] => 33554504 [194] => 1 [195] => 3 [196] => 0 [197] => 9 [198] => 2 [199] => 99 [200] => -1 [201] => 0 [202] => 33554504 [203] => 1 [204] => -3 [205] => 0 [206] => 9 [207] => 0 [208] => 1 [209] => 99 [210] => 0 [211] => 1 [212] => 3 [213] => 1 [214] => 99 [215] => 1 [216] => 0 [217] => 3 [218] => 1 [219] => 99 [220] => 0 [221] => -1 [222] => 3 [223] => 1 [224] => 99 [225] => -1 [226] => 0 [227] => 3 [228] => 0 [229] => 1 [230] => 99 [231] => 0 [232] => 1 [233] => 3 [234] => 1 [235] => 99 [236] => 1 [237] => 1 [238] => 3 [239] => 1 [240] => 99 [241] => 1 [242] => 0 [243] => 3 [244] => 1 [245] => 99 [246] => 1 [247] => -1 [248] => 3 [249] => 1 [250] => 99 [251] => 0 [252] => -1 [253] => 3 [254] => 1 [255] => 99 [256] => -1 [257] => -1 [258] => 3 [259] => 1 [260] => 99 [261] => -1 [262] => 0 [263] => 3 [264] => 1 [265] => 99 [266] => -1 [267] => 1 [268] => 3 [269] => 0 [270] => 1 [271] => 99 [272] => 1 [273] => 1 [274] => 3 [275] => 1 [276] => 99 [277] => 1 [278] => -1 [279] => 3 [280] => 1 [281] => 99 [282] => -1 [283] => -1 [284] => 3 [285] => 1 [286] => 99 [287] => -1 [288] => 1 [289] => 3 [290] => 0 [291] => 1 [292] => 1 [293] => 1 [294] => 2 [295] => 3 [296] => 1 [297] => 1 [298] => 2 [299] => 1 [300] => 3 [301] => 1 [302] => 1 [303] => 2 [304] => -1 [305] => 3 [306] => 1 [307] => 1 [308] => 1 [309] => -2 [310] => 3 [311] => 1 [312] => 1 [313] => -1 [314] => -2 [315] => 3 [316] => 1 [317] => 1 [318] => -2 [319] => -1 [320] => 3 [321] => 1 [322] => 1 [323] => -2 [324] => 1 [325] => 3 [326] => 1 [327] => 1 [328] => -1 [329] => 2 [330] => 3 [331] => 1 [332] => 1 [333] => 1 [334] => 3 [335] => 1 [336] => 1 [337] => 1 [338] => 3 [339] => 1 [340] => 1 [341] => 1 [342] => 1 [343] => 3 [344] => -1 [345] => 1 [346] => 1 [347] => 1 [348] => 1 [349] => -3 [350] => 1 [351] => 1 [352] => 1 [353] => -1 [354] => -3 [355] => 1 [356] => 1 [357] => 1 [358] => -3 [359] => -1 [360] => 1 [361] => 1 [362] => 1 [363] => -3 [364] => 1 [365] => 1 [366] => 1 [367] => 1 [368] => -1 [369] => 3 [370] => 1 [371] => 0 [372] => 1 [373] => 1 [374] => 0 [375] => 3 [376] => 3 [377] => 1 [378] => 1 [379] => 3 [380] => 0 [381] => 3 [382] => 1 [383] => 1 [384] => 0 [385] => -3 [386] => 3 [387] => 1 [388] => 1 [389] => -3 [390] => 0 [391] => 3 [392] => 1 [393] => 1 [394] => 1 [395] => 1 [396] => 3 [397] => 1 [398] => 1 [399] => 1 [400] => -1 [401] => 3 [402] => 1 [403] => 1 [404] => -1 [405] => -1 [406] => 3 [407] => 1 [408] => 1 [409] => -1 [410] => 1 [411] => 3 [412] => 1 [413] => 1 [414] => 0 [415] => 2 [416] => 3 [417] => 1 [418] => 1 [419] => 2 [420] => 0 [421] => 3 [422] => 1 [423] => 1 [424] => 0 [425] => -2 [426] => 3 [427] => 1 [428] => 1 [429] => -2 [430] => 0 [431] => 3 [432] => 0 [433] => 1 [434] => 1 [435] => 0 [436] => 1 [437] => 3 [438] => 1 [439] => 1 [440] => 1 [441] => 0 [442] => 3 [443] => 1 [444] => 1 [445] => 0 [446] => -1 [447] => 3 [448] => 1 [449] => 1 [450] => -1 [451] => 0 [452] => 3 [453] => 1 [454] => 1 [455] => 2 [456] => 3 [457] => 3 [458] => 1 [459] => 1 [460] => 3 [461] => 2 [462] => 3 [463] => 1 [464] => 1 [465] => 3 [466] => -2 [467] => 3 [468] => 1 [469] => 1 [470] => 2 [471] => -3 [472] => 3 [473] => 1 [474] => 1 [475] => -2 [476] => -3 [477] => 3 [478] => 1 [479] => 1 [480] => -3 [481] => -2 [482] => 3 [483] => 1 [484] => 1 [485] => -3 [486] => 2 [487] => 3 [488] => 1 [489] => 1 [490] => -2 [491] => 3 [492] => 3 [493] => 0 [494] => 1 [495] => 99 [496] => 0 [497] => 1 [498] => 1 [499] => 1 [500] => 99 [501] => 1 [502] => 0 [503] => 1 [504] => 1 [505] => 99 [506] => 0 [507] => -1 [508] => 1 [509] => 1 [510] => 99 [511] => -1 [512] => 0 [513] => 1 [514] => 2 [515] => 99 [516] => 0 [517] => 1 [518] => 16 [519] => 99 [520] => 0 [521] => 1 [522] => 2 [523] => 2 [524] => 99 [525] => 1 [526] => 0 [527] => 16 [528] => 99 [529] => 1 [530] => 0 [531] => 2 [532] => 2 [533] => 99 [534] => 0 [535] => -1 [536] => 16 [537] => 99 [538] => 0 [539] => -1 [540] => 2 [541] => 2 [542] => 99 [543] => -1 [544] => 0 [545] => 16 [546] => 99 [547] => -1 [548] => 0 [549] => 2 [550] => 0 [551] => 1 [552] => 99 [553] => 1 [554] => 2 [555] => 3 [556] => 1 [557] => 99 [558] => 2 [559] => 1 [560] => 3 [561] => 1 [562] => 99 [563] => 2 [564] => -1 [565] => 3 [566] => 1 [567] => 99 [568] => 1 [569] => -2 [570] => 3 [571] => 1 [572] => 99 [573] => -1 [574] => -2 [575] => 3 [576] => 1 [577] => 99 [578] => -2 [579] => -1 [580] => 3 [581] => 1 [582] => 99 [583] => -2 [584] => 1 [585] => 3 [586] => 1 [587] => 99 [588] => -1 [589] => 2 [590] => 3 [591] => 0 [592] => 1 [593] => 1 [594] => 0 [595] => 2 [596] => 3 [597] => 1 [598] => 1 [599] => 2 [600] => 0 [601] => 3 [602] => 1 [603] => 1 [604] => 0 [605] => -2 [606] => 3 [607] => 1 [608] => 1 [609] => -2 [610] => 0 [611] => 3 [612] => 3 [613] => 1 [614] => 0 [615] => 1 [616] => 17 [617] => 1 [618] => 0 [619] => 1 [620] => 33 [621] => 99 [622] => 1 [623] => 1 [624] => 3 [625] => 3 [626] => 1 [627] => 1 [628] => 0 [629] => 17 [630] => 1 [631] => 1 [632] => 0 [633] => 33 [634] => 99 [635] => 1 [636] => -1 [637] => 3 [638] => 3 [639] => 1 [640] => 0 [641] => -1 [642] => 17 [643] => 1 [644] => 0 [645] => -1 [646] => 33 [647] => 99 [648] => -1 [649] => -1 [650] => 3 [651] => 3 [652] => 1 [653] => -1 [654] => 0 [655] => 17 [656] => 1 [657] => -1 [658] => 0 [659] => 33 [660] => 99 [661] => -1 [662] => 1 [663] => 3 [664] => 3 [665] => 1 [666] => 0 [667] => 1 [668] => 17 [669] => 1 [670] => 0 [671] => 1 [672] => 33 [673] => 99 [674] => -1 [675] => 1 [676] => 3 [677] => 3 [678] => 1 [679] => 1 [680] => 0 [681] => 17 [682] => 1 [683] => 1 [684] => 0 [685] => 33 [686] => 99 [687] => 1 [688] => 1 [689] => 3 [690] => 3 [691] => 1 [692] => 0 [693] => -1 [694] => 17 [695] => 1 [696] => 0 [697] => -1 [698] => 33 [699] => 99 [700] => 1 [701] => -1 [702] => 3 [703] => 3 [704] => 1 [705] => -1 [706] => 0 [707] => 17 [708] => 1 [709] => -1 [710] => 0 [711] => 33 [712] => 99 [713] => -1 [714] => -1 [715] => 3 [716] => 0 [717] => 4 [718] => 1 [719] => 0 [720] => 1 [721] => 1 [722] => 1 [723] => 0 [724] => 1 [725] => 1 [726] => 1 [727] => 0 [728] => 1 [729] => 1 [730] => 1 [731] => 1 [732] => 1 [733] => 3 [734] => 4 [735] => 1 [736] => 1 [737] => 1 [738] => 1 [739] => 1 [740] => 1 [741] => 1 [742] => 1 [743] => 1 [744] => 1 [745] => 1 [746] => 1 [747] => 1 [748] => 1 [749] => 0 [750] => 3 [751] => 4 [752] => 1 [753] => 1 [754] => 0 [755] => 1 [756] => 1 [757] => 1 [758] => 0 [759] => 1 [760] => 1 [761] => 1 [762] => 0 [763] => 1 [764] => 1 [765] => 1 [766] => -1 [767] => 3 [768] => 4 [769] => 1 [770] => 1 [771] => -1 [772] => 1 [773] => 1 [774] => 1 [775] => -1 [776] => 1 [777] => 1 [778] => 1 [779] => -1 [780] => 1 [781] => 1 [782] => 0 [783] => -1 [784] => 3 [785] => 4 [786] => 1 [787] => 0 [788] => -1 [789] => 1 [790] => 1 [791] => 0 [792] => -1 [793] => 1 [794] => 1 [795] => 0 [796] => -1 [797] => 1 [798] => 1 [799] => -1 [800] => -1 [801] => 3 [802] => 4 [803] => 1 [804] => -1 [805] => -1 [806] => 1 [807] => 1 [808] => -1 [809] => -1 [810] => 1 [811] => 1 [812] => -1 [813] => -1 [814] => 1 [815] => 1 [816] => -1 [817] => 0 [818] => 3 [819] => 4 [820] => 1 [821] => -1 [822] => 0 [823] => 1 [824] => 1 [825] => -1 [826] => 0 [827] => 1 [828] => 1 [829] => -1 [830] => 0 [831] => 1 [832] => 1 [833] => -1 [834] => 1 [835] => 3 [836] => 4 [837] => 1 [838] => -1 [839] => 1 [840] => 1 [841] => 1 [842] => -1 [843] => 1 [844] => 1 [845] => 1 [846] => -1 [847] => 1 [848] => 1 [849] => 1 [850] => 0 [851] => 1 [852] => 3 [853] => 4 [854] => 1 [855] => 0 [856] => 1 [857] => 1 [858] => 1 [859] => 0 [860] => 1 [861] => 1 [862] => 1 [863] => 0 [864] => 1 [865] => 1 [866] => 1 [867] => -1 [868] => 1 [869] => 3 [870] => 4 [871] => 1 [872] => 1 [873] => 1 [874] => 1 [875] => 1 [876] => 1 [877] => 1 [878] => 1 [879] => 1 [880] => 1 [881] => 1 [882] => 1 [883] => 1 [884] => 0 [885] => 1 [886] => 3 [887] => 4 [888] => 1 [889] => 1 [890] => 0 [891] => 1 [892] => 1 [893] => 1 [894] => 0 [895] => 1 [896] => 1 [897] => 1 [898] => 0 [899] => 1 [900] => 1 [901] => 1 [902] => 1 [903] => 3 [904] => 4 [905] => 1 [906] => 1 [907] => -1 [908] => 1 [909] => 1 [910] => 1 [911] => -1 [912] => 1 [913] => 1 [914] => 1 [915] => -1 [916] => 1 [917] => 1 [918] => 1 [919] => 0 [920] => 3 [921] => 4 [922] => 1 [923] => 0 [924] => -1 [925] => 1 [926] => 1 [927] => 0 [928] => -1 [929] => 1 [930] => 1 [931] => 0 [932] => -1 [933] => 1 [934] => 1 [935] => 1 [936] => -1 [937] => 3 [938] => 4 [939] => 1 [940] => -1 [941] => -1 [942] => 1 [943] => 1 [944] => -1 [945] => -1 [946] => 1 [947] => 1 [948] => -1 [949] => -1 [950] => 1 [951] => 1 [952] => 0 [953] => -1 [954] => 3 [955] => 4 [956] => 1 [957] => -1 [958] => 0 [959] => 1 [960] => 1 [961] => -1 [962] => 0 [963] => 1 [964] => 1 [965] => -1 [966] => 0 [967] => 1 [968] => 1 [969] => -1 [970] => -1 [971] => 3 [972] => 4 [973] => 1 [974] => -1 [975] => 1 [976] => 1 [977] => 1 [978] => -1 [979] => 1 [980] => 1 [981] => 1 [982] => -1 [983] => 1 [984] => 1 [985] => 1 [986] => -1 [987] => 0 [988] => 3 [989] => 4 [990] => 1 [991] => 0 [992] => 1 [993] => 1 [994] => 1 [995] => 1 [996] => 1 [997] => 1 [998] => 1 [999] => 1 [1000] => 1 [1001] => 1 [1002] => 1 [1003] => 1 [1004] => 1 [1005] => 3 [1006] => 4 [1007] => 1 [1008] => 1 [1009] => 1 [1010] => 1 [1011] => 1 [1012] => 1 [1013] => 0 [1014] => 1 [1015] => 1 [1016] => 1 [1017] => 0 [1018] => 1 [1019] => 1 [1020] => 1 [1021] => 0 [1022] => 3 [1023] => 4 [1024] => 1 [1025] => 1 [1026] => 0 [1027] => 1 [1028] => 1 [1029] => 1 [1030] => -1 [1031] => 1 [1032] => 1 [1033] => 1 [1034] => -1 [1035] => 1 [1036] => 1 [1037] => 1 [1038] => -1 [1039] => 3 [1040] => 4 [1041] => 1 [1042] => 1 [1043] => -1 [1044] => 1 [1045] => 1 [1046] => 0 [1047] => -1 [1048] => 1 [1049] => 1 [1050] => 0 [1051] => -1 [1052] => 1 [1053] => 1 [1054] => 0 [1055] => -1 [1056] => 3 [1057] => 4 [1058] => 1 [1059] => 0 [1060] => -1 [1061] => 1 [1062] => 1 [1063] => -1 [1064] => -1 [1065] => 1 [1066] => 1 [1067] => -1 [1068] => -1 [1069] => 1 [1070] => 1 [1071] => -1 [1072] => -1 [1073] => 3 [1074] => 4 [1075] => 1 [1076] => -1 [1077] => -1 [1078] => 1 [1079] => 1 [1080] => -1 [1081] => 0 [1082] => 1 [1083] => 1 [1084] => -1 [1085] => 0 [1086] => 1 [1087] => 1 [1088] => -1 [1089] => 0 [1090] => 3 [1091] => 4 [1092] => 1 [1093] => -1 [1094] => 0 [1095] => 1 [1096] => 1 [1097] => -1 [1098] => 1 [1099] => 1 [1100] => 1 [1101] => -1 [1102] => 1 [1103] => 1 [1104] => 1 [1105] => -1 [1106] => 1 [1107] => 3 [1108] => 4 [1109] => 1 [1110] => -1 [1111] => 1 [1112] => 1 [1113] => 1 [1114] => 0 [1115] => 1 [1116] => 1 [1117] => 1 [1118] => 0 [1119] => 1 [1120] => 1 [1121] => 1 [1122] => 0 [1123] => 1 [1124] => 3 [1125] => 4 [1126] => 1 [1127] => 0 [1128] => 1 [1129] => 1 [1130] => 1 [1131] => -1 [1132] => 1 [1133] => 1 [1134] => 1 [1135] => -1 [1136] => 1 [1137] => 1 [1138] => 1 [1139] => -1 [1140] => 1 [1141] => 3 [1142] => 4 [1143] => 1 [1144] => 1 [1145] => 1 [1146] => 1 [1147] => 1 [1148] => 0 [1149] => 1 [1150] => 1 [1151] => 1 [1152] => 0 [1153] => 1 [1154] => 1 [1155] => 1 [1156] => 0 [1157] => 1 [1158] => 3 [1159] => 4 [1160] => 1 [1161] => 1 [1162] => 0 [1163] => 1 [1164] => 1 [1165] => 1 [1166] => 1 [1167] => 1 [1168] => 1 [1169] => 1 [1170] => 1 [1171] => 1 [1172] => 1 [1173] => 1 [1174] => 1 [1175] => 3 [1176] => 4 [1177] => 1 [1178] => 1 [1179] => -1 [1180] => 1 [1181] => 1 [1182] => 1 [1183] => 0 [1184] => 1 [1185] => 1 [1186] => 1 [1187] => 0 [1188] => 1 [1189] => 1 [1190] => 1 [1191] => 0 [1192] => 3 [1193] => 4 [1194] => 1 [1195] => 0 [1196] => -1 [1197] => 1 [1198] => 1 [1199] => 1 [1200] => -1 [1201] => 1 [1202] => 1 [1203] => 1 [1204] => -1 [1205] => 1 [1206] => 1 [1207] => 1 [1208] => -1 [1209] => 3 [1210] => 4 [1211] => 1 [1212] => -1 [1213] => -1 [1214] => 1 [1215] => 1 [1216] => 0 [1217] => -1 [1218] => 1 [1219] => 1 [1220] => 0 [1221] => -1 [1222] => 1 [1223] => 1 [1224] => 0 [1225] => -1 [1226] => 3 [1227] => 4 [1228] => 1 [1229] => -1 [1230] => 0 [1231] => 1 [1232] => 1 [1233] => -1 [1234] => -1 [1235] => 1 [1236] => 1 [1237] => -1 [1238] => -1 [1239] => 1 [1240] => 1 [1241] => -1 [1242] => -1 [1243] => 3 [1244] => 4 [1245] => 1 [1246] => -1 [1247] => 1 [1248] => 1 [1249] => 1 [1250] => -1 [1251] => 0 [1252] => 1 [1253] => 1 [1254] => -1 [1255] => 0 [1256] => 1 [1257] => 1 [1258] => -1 [1259] => 0 [1260] => 3 [1261] => 4 [1262] => 1 [1263] => 0 [1264] => 1 [1265] => 1 [1266] => 1 [1267] => 0 [1268] => 1 [1269] => 1 [1270] => 1 [1271] => 1 [1272] => 1 [1273] => 1 [1274] => 1 [1275] => 0 [1276] => 1 [1277] => 3 [1278] => 4 [1279] => 1 [1280] => 1 [1281] => 1 [1282] => 1 [1283] => 1 [1284] => 1 [1285] => 1 [1286] => 1 [1287] => 1 [1288] => 1 [1289] => 0 [1290] => 1 [1291] => 1 [1292] => 1 [1293] => 1 [1294] => 3 [1295] => 4 [1296] => 1 [1297] => 1 [1298] => 0 [1299] => 1 [1300] => 1 [1301] => 1 [1302] => 0 [1303] => 1 [1304] => 1 [1305] => 1 [1306] => -1 [1307] => 1 [1308] => 1 [1309] => 1 [1310] => 0 [1311] => 3 [1312] => 4 [1313] => 1 [1314] => 1 [1315] => -1 [1316] => 1 [1317] => 1 [1318] => 1 [1319] => -1 [1320] => 1 [1321] => 1 [1322] => 0 [1323] => -1 [1324] => 1 [1325] => 1 [1326] => 1 [1327] => -1 [1328] => 3 [1329] => 4 [1330] => 1 [1331] => 0 [1332] => -1 [1333] => 1 [1334] => 1 [1335] => 0 [1336] => -1 [1337] => 1 [1338] => 1 [1339] => -1 [1340] => -1 [1341] => 1 [1342] => 1 [1343] => 0 [1344] => -1 [1345] => 3 [1346] => 4 [1347] => 1 [1348] => -1 [1349] => -1 [1350] => 1 [1351] => 1 [1352] => -1 [1353] => -1 [1354] => 1 [1355] => 1 [1356] => -1 [1357] => 0 [1358] => 1 [1359] => 1 [1360] => -1 [1361] => -1 [1362] => 3 [1363] => 4 [1364] => 1 [1365] => -1 [1366] => 0 [1367] => 1 [1368] => 1 [1369] => -1 [1370] => 0 [1371] => 1 [1372] => 1 [1373] => -1 [1374] => 1 [1375] => 1 [1376] => 1 [1377] => -1 [1378] => 0 [1379] => 3 [1380] => 4 [1381] => 1 [1382] => -1 [1383] => 1 [1384] => 1 [1385] => 1 [1386] => -1 [1387] => 1 [1388] => 1 [1389] => 1 [1390] => 0 [1391] => 1 [1392] => 1 [1393] => 1 [1394] => -1 [1395] => 1 [1396] => 3 [1397] => 4 [1398] => 1 [1399] => 0 [1400] => 1 [1401] => 1 [1402] => 1 [1403] => 0 [1404] => 1 [1405] => 1 [1406] => 1 [1407] => -1 [1408] => 1 [1409] => 1 [1410] => 1 [1411] => 0 [1412] => 1 [1413] => 3 [1414] => 4 [1415] => 1 [1416] => 1 [1417] => 1 [1418] => 1 [1419] => 1 [1420] => 1 [1421] => 1 [1422] => 1 [1423] => 1 [1424] => 0 [1425] => 1 [1426] => 1 [1427] => 1 [1428] => 1 [1429] => 1 [1430] => 3 [1431] => 4 [1432] => 1 [1433] => 1 [1434] => 0 [1435] => 1 [1436] => 1 [1437] => 1 [1438] => 0 [1439] => 1 [1440] => 1 [1441] => 1 [1442] => 1 [1443] => 1 [1444] => 1 [1445] => 1 [1446] => 0 [1447] => 3 [1448] => 4 [1449] => 1 [1450] => 1 [1451] => -1 [1452] => 1 [1453] => 1 [1454] => 1 [1455] => -1 [1456] => 1 [1457] => 1 [1458] => 1 [1459] => 0 [1460] => 1 [1461] => 1 [1462] => 1 [1463] => -1 [1464] => 3 [1465] => 4 [1466] => 1 [1467] => 0 [1468] => -1 [1469] => 1 [1470] => 1 [1471] => 0 [1472] => -1 [1473] => 1 [1474] => 1 [1475] => 1 [1476] => -1 [1477] => 1 [1478] => 1 [1479] => 0 [1480] => -1 [1481] => 3 [1482] => 4 [1483] => 1 [1484] => -1 [1485] => -1 [1486] => 1 [1487] => 1 [1488] => -1 [1489] => -1 [1490] => 1 [1491] => 1 [1492] => 0 [1493] => -1 [1494] => 1 [1495] => 1 [1496] => -1 [1497] => -1 [1498] => 3 [1499] => 4 [1500] => 1 [1501] => -1 [1502] => 0 [1503] => 1 [1504] => 1 [1505] => -1 [1506] => 0 [1507] => 1 [1508] => 1 [1509] => -1 [1510] => -1 [1511] => 1 [1512] => 1 [1513] => -1 [1514] => 0 [1515] => 3 [1516] => 4 [1517] => 1 [1518] => -1 [1519] => 1 [1520] => 1 [1521] => 1 [1522] => -1 [1523] => 1 [1524] => 1 [1525] => 1 [1526] => -1 [1527] => 0 [1528] => 1 [1529] => 1 [1530] => -1 [1531] => 1 [1532] => 3 [1533] => 4 [1534] => 1 [1535] => 0 [1536] => 1 [1537] => 1 [1538] => 1 [1539] => 1 [1540] => 1 [1541] => 1 [1542] => 1 [1543] => 0 [1544] => 1 [1545] => 1 [1546] => 1 [1547] => 0 [1548] => 1 [1549] => 3 [1550] => 4 [1551] => 1 [1552] => 1 [1553] => 1 [1554] => 1 [1555] => 1 [1556] => 1 [1557] => 0 [1558] => 1 [1559] => 1 [1560] => 1 [1561] => 1 [1562] => 1 [1563] => 1 [1564] => 1 [1565] => 1 [1566] => 3 [1567] => 4 [1568] => 1 [1569] => 1 [1570] => 0 [1571] => 1 [1572] => 1 [1573] => 1 [1574] => -1 [1575] => 1 [1576] => 1 [1577] => 1 [1578] => 0 [1579] => 1 [1580] => 1 [1581] => 1 [1582] => 0 [1583] => 3 [1584] => 4 [1585] => 1 [1586] => 1 [1587] => -1 [1588] => 1 [1589] => 1 [1590] => 0 [1591] => -1 [1592] => 1 [1593] => 1 [1594] => 1 [1595] => -1 [1596] => 1 [1597] => 1 [1598] => 1 [1599] => -1 [1600] => 3 [1601] => 4 [1602] => 1 [1603] => 0 [1604] => -1 [1605] => 1 [1606] => 1 [1607] => -1 [1608] => -1 [1609] => 1 [1610] => 1 [1611] => 0 [1612] => -1 [1613] => 1 [1614] => 1 [1615] => 0 [1616] => -1 [1617] => 3 [1618] => 4 [1619] => 1 [1620] => -1 [1621] => -1 [1622] => 1 [1623] => 1 [1624] => -1 [1625] => 0 [1626] => 1 [1627] => 1 [1628] => -1 [1629] => -1 [1630] => 1 [1631] => 1 [1632] => -1 [1633] => -1 [1634] => 3 [1635] => 4 [1636] => 1 [1637] => -1 [1638] => 0 [1639] => 1 [1640] => 1 [1641] => -1 [1642] => 1 [1643] => 1 [1644] => 1 [1645] => -1 [1646] => 0 [1647] => 1 [1648] => 1 [1649] => -1 [1650] => 0 [1651] => 3 [1652] => 4 [1653] => 1 [1654] => -1 [1655] => 1 [1656] => 1 [1657] => 1 [1658] => 0 [1659] => 1 [1660] => 1 [1661] => 1 [1662] => -1 [1663] => 1 [1664] => 1 [1665] => 1 [1666] => -1 [1667] => 1 [1668] => 3 [1669] => 4 [1670] => 1 [1671] => 0 [1672] => 1 [1673] => 1 [1674] => 1 [1675] => -1 [1676] => 1 [1677] => 1 [1678] => 1 [1679] => 0 [1680] => 1 [1681] => 1 [1682] => 1 [1683] => 0 [1684] => 1 [1685] => 3 [1686] => 4 [1687] => 1 [1688] => 1 [1689] => 1 [1690] => 1 [1691] => 1 [1692] => 0 [1693] => 1 [1694] => 1 [1695] => 1 [1696] => 1 [1697] => 1 [1698] => 1 [1699] => 1 [1700] => 1 [1701] => 1 [1702] => 3 [1703] => 4 [1704] => 1 [1705] => 1 [1706] => 0 [1707] => 1 [1708] => 1 [1709] => 1 [1710] => 1 [1711] => 1 [1712] => 1 [1713] => 1 [1714] => 0 [1715] => 1 [1716] => 1 [1717] => 1 [1718] => 0 [1719] => 3 [1720] => 4 [1721] => 1 [1722] => 1 [1723] => -1 [1724] => 1 [1725] => 1 [1726] => 1 [1727] => 0 [1728] => 1 [1729] => 1 [1730] => 1 [1731] => -1 [1732] => 1 [1733] => 1 [1734] => 1 [1735] => -1 [1736] => 3 [1737] => 4 [1738] => 1 [1739] => 0 [1740] => -1 [1741] => 1 [1742] => 1 [1743] => 1 [1744] => -1 [1745] => 1 [1746] => 1 [1747] => 0 [1748] => -1 [1749] => 1 [1750] => 1 [1751] => 0 [1752] => -1 [1753] => 3 [1754] => 4 [1755] => 1 [1756] => -1 [1757] => -1 [1758] => 1 [1759] => 1 [1760] => 0 [1761] => -1 [1762] => 1 [1763] => 1 [1764] => -1 [1765] => -1 [1766] => 1 [1767] => 1 [1768] => -1 [1769] => -1 [1770] => 3 [1771] => 4 [1772] => 1 [1773] => -1 [1774] => 0 [1775] => 1 [1776] => 1 [1777] => -1 [1778] => -1 [1779] => 1 [1780] => 1 [1781] => -1 [1782] => 0 [1783] => 1 [1784] => 1 [1785] => -1 [1786] => 0 [1787] => 3 [1788] => 4 [1789] => 1 [1790] => -1 [1791] => 1 [1792] => 1 [1793] => 1 [1794] => -1 [1795] => 0 [1796] => 1 [1797] => 1 [1798] => -1 [1799] => 1 [1800] => 1 [1801] => 1 [1802] => -1 [1803] => 1 [1804] => 3 [1805] => 1 [1806] => 1 [1807] => 0 [1808] => 3 [1809] => 1 [1810] => 1 [1811] => 1 [1812] => 3 [1813] => 0 [1814] => 1 [1815] => 1 [1816] => 1 [1817] => 0 [1818] => -3 [1819] => 1 [1820] => 1 [1821] => 1 [1822] => -3 [1823] => 0 [1824] => 1 [1825] => 0 [1826] => 1 [1827] => -2 [1828] => 0 [1829] => 1 [1830] => 16777219 [1831] => 0 [1832] => 1 [1833] => -2 [1834] => 0 [1835] => -1 [1836] => 16777219 [1837] => 0 [1838] => 1 [1839] => 99 [1840] => 1 [1841] => 1 [1842] => 3 [1843] => 1 [1844] => 99 [1845] => 1 [1846] => -1 [1847] => 3 [1848] => 1 [1849] => 99 [1850] => -1 [1851] => -1 [1852] => 3 [1853] => 1 [1854] => 99 [1855] => -1 [1856] => 1 [1857] => 3 [1858] => 1 [1859] => 1 [1860] => 0 [1861] => 3 [1862] => 1 [1863] => 1 [1864] => 1 [1865] => 3 [1866] => 0 [1867] => 1 [1868] => 1 [1869] => 1 [1870] => 0 [1871] => -3 [1872] => 1 [1873] => 1 [1874] => 1 [1875] => -3 [1876] => 0 [1877] => 1 [1878] => 4 [1879] => 1 [1880] => 0 [1881] => 1 [1882] => 1 [1883] => 1 [1884] => 0 [1885] => 1 [1886] => 1 [1887] => 1 [1888] => 0 [1889] => 1 [1890] => 1 [1891] => 1 [1892] => 1 [1893] => 1 [1894] => 3 [1895] => 4 [1896] => 1 [1897] => 1 [1898] => 1 [1899] => 1 [1900] => 1 [1901] => 1 [1902] => 1 [1903] => 1 [1904] => 1 [1905] => 1 [1906] => 1 [1907] => 1 [1908] => 1 [1909] => 1 [1910] => 0 [1911] => 3 [1912] => 4 [1913] => 1 [1914] => 1 [1915] => 0 [1916] => 1 [1917] => 1 [1918] => 1 [1919] => 0 [1920] => 1 [1921] => 1 [1922] => 1 [1923] => 0 [1924] => 1 [1925] => 1 [1926] => 1 [1927] => -1 [1928] => 3 [1929] => 4 [1930] => 1 [1931] => 1 [1932] => -1 [1933] => 1 [1934] => 1 [1935] => 1 [1936] => -1 [1937] => 1 [1938] => 1 [1939] => 1 [1940] => -1 [1941] => 1 [1942] => 1 [1943] => 0 [1944] => -1 [1945] => 3 [1946] => 4 [1947] => 1 [1948] => 0 [1949] => -1 [1950] => 1 [1951] => 1 [1952] => 0 [1953] => -1 [1954] => 1 [1955] => 1 [1956] => 0 [1957] => -1 [1958] => 1 [1959] => 1 [1960] => -1 [1961] => -1 [1962] => 3 [1963] => 4 [1964] => 1 [1965] => -1 [1966] => -1 [1967] => 1 [1968] => 1 [1969] => -1 [1970] => -1 [1971] => 1 [1972] => 1 [1973] => -1 [1974] => -1 [1975] => 1 [1976] => 1 [1977] => -1 [1978] => 0 [1979] => 3 [1980] => 4 [1981] => 1 [1982] => -1 [1983] => 0 [1984] => 1 [1985] => 1 [1986] => -1 [1987] => 0 [1988] => 1 [1989] => 1 [1990] => -1 [1991] => 0 [1992] => 1 [1993] => 1 [1994] => -1 [1995] => 1 [1996] => 3 [1997] => 4 [1998] => 1 [1999] => -1 [2000] => 1 [2001] => 1 [2002] => 1 [2003] => -1 [2004] => 1 [2005] => 1 [2006] => 1 [2007] => -1 [2008] => 1 [2009] => 1 [2010] => 1 [2011] => 0 [2012] => 1 [2013] => 3 [2014] => 4 [2015] => 1 [2016] => 0 [2017] => 1 [2018] => 1 [2019] => 1 [2020] => 0 [2021] => 1 [2022] => 1 [2023] => 1 [2024] => 0 [2025] => 1 [2026] => 1 [2027] => 1 [2028] => -1 [2029] => 1 [2030] => 3 [2031] => 4 [2032] => 1 [2033] => 1 [2034] => 1 [2035] => 1 [2036] => 1 [2037] => 1 [2038] => 1 [2039] => 1 [2040] => 1 [2041] => 1 [2042] => 1 [2043] => 1 [2044] => 1 [2045] => 0 [2046] => 1 [2047] => 3 [2048] => 4 [2049] => 1 [2050] => 1 [2051] => 0 [2052] => 1 [2053] => 1 [2054] => 1 [2055] => 0 [2056] => 1 [2057] => 1 [2058] => 1 [2059] => 0 [2060] => 1 [2061] => 1 [2062] => 1 [2063] => 1 [2064] => 3 [2065] => 4 [2066] => 1 [2067] => 1 [2068] => -1 [2069] => 1 [2070] => 1 [2071] => 1 [2072] => -1 [2073] => 1 [2074] => 1 [2075] => 1 [2076] => -1 [2077] => 1 [2078] => 1 [2079] => 1 [2080] => 0 [2081] => 3 [2082] => 4 [2083] => 1 [2084] => 0 [2085] => -1 [2086] => 1 [2087] => 1 [2088] => 0 [2089] => -1 [2090] => 1 [2091] => 1 [2092] => 0 [2093] => -1 [2094] => 1 [2095] => 1 [2096] => 1 [2097] => -1 [2098] => 3 [2099] => 4 [2100] => 1 [2101] => -1 [2102] => -1 [2103] => 1 [2104] => 1 [2105] => -1 [2106] => -1 [2107] => 1 [2108] => 1 [2109] => -1 [2110] => -1 [2111] => 1 [2112] => 1 [2113] => 0 [2114] => -1 [2115] => 3 [2116] => 4 [2117] => 1 [2118] => -1 [2119] => 0 [2120] => 1 [2121] => 1 [2122] => -1 [2123] => 0 [2124] => 1 [2125] => 1 [2126] => -1 [2127] => 0 [2128] => 1 [2129] => 1 [2130] => -1 [2131] => -1 [2132] => 3 [2133] => 4 [2134] => 1 [2135] => -1 [2136] => 1 [2137] => 1 [2138] => 1 [2139] => -1 [2140] => 1 [2141] => 1 [2142] => 1 [2143] => -1 [2144] => 1 [2145] => 1 [2146] => 1 [2147] => -1 [2148] => 0 [2149] => 3 [2150] => 4 [2151] => 1 [2152] => 0 [2153] => 1 [2154] => 1 [2155] => 1 [2156] => 1 [2157] => 1 [2158] => 1 [2159] => 1 [2160] => 1 [2161] => 1 [2162] => 1 [2163] => 1 [2164] => 1 [2165] => 1 [2166] => 3 [2167] => 4 [2168] => 1 [2169] => 1 [2170] => 1 [2171] => 1 [2172] => 1 [2173] => 1 [2174] => 0 [2175] => 1 [2176] => 1 [2177] => 1 [2178] => 0 [2179] => 1 [2180] => 1 [2181] => 1 [2182] => 0 [2183] => 3 [2184] => 4 [2185] => 1 [2186] => 1 [2187] => 0 [2188] => 1 [2189] => 1 [2190] => 1 [2191] => -1 [2192] => 1 [2193] => 1 [2194] => 1 [2195] => -1 [2196] => 1 [2197] => 1 [2198] => 1 [2199] => -1 [2200] => 3 [2201] => 4 [2202] => 1 [2203] => 1 [2204] => -1 [2205] => 1 [2206] => 1 [2207] => 0 [2208] => -1 [2209] => 1 [2210] => 1 [2211] => 0 [2212] => -1 [2213] => 1 [2214] => 1 [2215] => 0 [2216] => -1 [2217] => 3 [2218] => 4 [2219] => 1 [2220] => 0 [2221] => -1 [2222] => 1 [2223] => 1 [2224] => -1 [2225] => -1 [2226] => 1 [2227] => 1 [2228] => -1 [2229] => -1 [2230] => 1 [2231] => 1 [2232] => -1 [2233] => -1 [2234] => 3 [2235] => 4 [2236] => 1 [2237] => -1 [2238] => -1 [2239] => 1 [2240] => 1 [2241] => -1 [2242] => 0 [2243] => 1 [2244] => 1 [2245] => -1 [2246] => 0 [2247] => 1 [2248] => 1 [2249] => -1 [2250] => 0 [2251] => 3 [2252] => 4 [2253] => 1 [2254] => -1 [2255] => 0 [2256] => 1 [2257] => 1 [2258] => -1 [2259] => 1 [2260] => 1 [2261] => 1 [2262] => -1 [2263] => 1 [2264] => 1 [2265] => 1 [2266] => -1 [2267] => 1 [2268] => 3 [2269] => 4 [2270] => 1 [2271] => -1 [2272] => 1 [2273] => 1 [2274] => 1 [2275] => 0 [2276] => 1 [2277] => 1 [2278] => 1 [2279] => 0 [2280] => 1 [2281] => 1 [2282] => 1 [2283] => 0 [2284] => 1 [2285] => 3 [2286] => 4 [2287] => 1 [2288] => 0 [2289] => 1 [2290] => 1 [2291] => 1 [2292] => -1 [2293] => 1 [2294] => 1 [2295] => 1 [2296] => -1 [2297] => 1 [2298] => 1 [2299] => 1 [2300] => -1 [2301] => 1 [2302] => 3 [2303] => 4 [2304] => 1 [2305] => 1 [2306] => 1 [2307] => 1 [2308] => 1 [2309] => 0 [2310] => 1 [2311] => 1 [2312] => 1 [2313] => 0 [2314] => 1 [2315] => 1 [2316] => 1 [2317] => 0 [2318] => 1 [2319] => 3 [2320] => 4 [2321] => 1 [2322] => 1 [2323] => 0 [2324] => 1 [2325] => 1 [2326] => 1 [2327] => 1 [2328] => 1 [2329] => 1 [2330] => 1 [2331] => 1 [2332] => 1 [2333] => 1 [2334] => 1 [2335] => 1 [2336] => 3 [2337] => 4 [2338] => 1 [2339] => 1 [2340] => -1 [2341] => 1 [2342] => 1 [2343] => 1 [2344] => 0 [2345] => 1 [2346] => 1 [2347] => 1 [2348] => 0 [2349] => 1 [2350] => 1 [2351] => 1 [2352] => 0 [2353] => 3 [2354] => 4 [2355] => 1 [2356] => 0 [2357] => -1 [2358] => 1 [2359] => 1 [2360] => 1 [2361] => -1 [2362] => 1 [2363] => 1 [2364] => 1 [2365] => -1 [2366] => 1 [2367] => 1 [2368] => 1 [2369] => -1 [2370] => 3 [2371] => 4 [2372] => 1 [2373] => -1 [2374] => -1 [2375] => 1 [2376] => 1 [2377] => 0 [2378] => -1 [2379] => 1 [2380] => 1 [2381] => 0 [2382] => -1 [2383] => 1 [2384] => 1 [2385] => 0 [2386] => -1 [2387] => 3 [2388] => 4 [2389] => 1 [2390] => -1 [2391] => 0 [2392] => 1 [2393] => 1 [2394] => -1 [2395] => -1 [2396] => 1 [2397] => 1 [2398] => -1 [2399] => -1 [2400] => 1 [2401] => 1 [2402] => -1 [2403] => -1 [2404] => 3 [2405] => 4 [2406] => 1 [2407] => -1 [2408] => 1 [2409] => 1 [2410] => 1 [2411] => -1 [2412] => 0 [2413] => 1 [2414] => 1 [2415] => -1 [2416] => 0 [2417] => 1 [2418] => 1 [2419] => -1 [2420] => 0 [2421] => 3 [2422] => 4 [2423] => 1 [2424] => 0 [2425] => 1 [2426] => 1 [2427] => 1 [2428] => 0 [2429] => 1 [2430] => 1 [2431] => 1 [2432] => 1 [2433] => 1 [2434] => 1 [2435] => 1 [2436] => 0 [2437] => 1 [2438] => 3 [2439] => 4 [2440] => 1 [2441] => 1 [2442] => 1 [2443] => 1 [2444] => 1 [2445] => 1 [2446] => 1 [2447] => 1 [2448] => 1 [2449] => 1 [2450] => 0 [2451] => 1 [2452] => 1 [2453] => 1 [2454] => 1 [2455] => 3 [2456] => 4 [2457] => 1 [2458] => 1 [2459] => 0 [2460] => 1 [2461] => 1 [2462] => 1 [2463] => 0 [2464] => 1 [2465] => 1 [2466] => 1 [2467] => -1 [2468] => 1 [2469] => 1 [2470] => 1 [2471] => 0 [2472] => 3 [2473] => 4 [2474] => 1 [2475] => 1 [2476] => -1 [2477] => 1 [2478] => 1 [2479] => 1 [2480] => -1 [2481] => 1 [2482] => 1 [2483] => 0 [2484] => -1 [2485] => 1 [2486] => 1 [2487] => 1 [2488] => -1 [2489] => 3 [2490] => 4 [2491] => 1 [2492] => 0 [2493] => -1 [2494] => 1 [2495] => 1 [2496] => 0 [2497] => -1 [2498] => 1 [2499] => 1 [2500] => -1 [2501] => -1 [2502] => 1 [2503] => 1 [2504] => 0 [2505] => -1 [2506] => 3 [2507] => 4 [2508] => 1 [2509] => -1 [2510] => -1 [2511] => 1 [2512] => 1 [2513] => -1 [2514] => -1 [2515] => 1 [2516] => 1 [2517] => -1 [2518] => 0 [2519] => 1 [2520] => 1 [2521] => -1 [2522] => -1 [2523] => 3 [2524] => 4 [2525] => 1 [2526] => -1 [2527] => 0 [2528] => 1 [2529] => 1 [2530] => -1 [2531] => 0 [2532] => 1 [2533] => 1 [2534] => -1 [2535] => 1 [2536] => 1 [2537] => 1 [2538] => -1 [2539] => 0 [2540] => 3 [2541] => 4 [2542] => 1 [2543] => -1 [2544] => 1 [2545] => 1 [2546] => 1 [2547] => -1 [2548] => 1 [2549] => 1 [2550] => 1 [2551] => 0 [2552] => 1 [2553] => 1 [2554] => 1 [2555] => -1 [2556] => 1 [2557] => 3 [2558] => 4 [2559] => 1 [2560] => 0 [2561] => 1 [2562] => 1 [2563] => 1 [2564] => 0 [2565] => 1 [2566] => 1 [2567] => 1 [2568] => -1 [2569] => 1 [2570] => 1 [2571] => 1 [2572] => 0 [2573] => 1 [2574] => 3 [2575] => 4 [2576] => 1 [2577] => 1 [2578] => 1 [2579] => 1 [2580] => 1 [2581] => 1 [2582] => 1 [2583] => 1 [2584] => 1 [2585] => 0 [2586] => 1 [2587] => 1 [2588] => 1 [2589] => 1 [2590] => 1 [2591] => 3 [2592] => 4 [2593] => 1 [2594] => 1 [2595] => 0 [2596] => 1 [2597] => 1 [2598] => 1 [2599] => 0 [2600] => 1 [2601] => 1 [2602] => 1 [2603] => 1 [2604] => 1 [2605] => 1 [2606] => 1 [2607] => 0 [2608] => 3 [2609] => 4 [2610] => 1 [2611] => 1 [2612] => -1 [2613] => 1 [2614] => 1 [2615] => 1 [2616] => -1 [2617] => 1 [2618] => 1 [2619] => 1 [2620] => 0 [2621] => 1 [2622] => 1 [2623] => 1 [2624] => -1 [2625] => 3 [2626] => 4 [2627] => 1 [2628] => 0 [2629] => -1 [2630] => 1 [2631] => 1 [2632] => 0 [2633] => -1 [2634] => 1 [2635] => 1 [2636] => 1 [2637] => -1 [2638] => 1 [2639] => 1 [2640] => 0 [2641] => -1 [2642] => 3 [2643] => 4 [2644] => 1 [2645] => -1 [2646] => -1 [2647] => 1 [2648] => 1 [2649] => -1 [2650] => -1 [2651] => 1 [2652] => 1 [2653] => 0 [2654] => -1 [2655] => 1 [2656] => 1 [2657] => -1 [2658] => -1 [2659] => 3 [2660] => 4 [2661] => 1 [2662] => -1 [2663] => 0 [2664] => 1 [2665] => 1 [2666] => -1 [2667] => 0 [2668] => 1 [2669] => 1 [2670] => -1 [2671] => -1 [2672] => 1 [2673] => 1 [2674] => -1 [2675] => 0 [2676] => 3 [2677] => 4 [2678] => 1 [2679] => -1 [2680] => 1 [2681] => 1 [2682] => 1 [2683] => -1 [2684] => 1 [2685] => 1 [2686] => 1 [2687] => -1 [2688] => 0 [2689] => 1 [2690] => 1 [2691] => -1 [2692] => 1 [2693] => 3 [2694] => 4 [2695] => 1 [2696] => 0 [2697] => 1 [2698] => 1 [2699] => 1 [2700] => 1 [2701] => 1 [2702] => 1 [2703] => 1 [2704] => 0 [2705] => 1 [2706] => 1 [2707] => 1 [2708] => 0 [2709] => 1 [2710] => 3 [2711] => 4 [2712] => 1 [2713] => 1 [2714] => 1 [2715] => 1 [2716] => 1 [2717] => 1 [2718] => 0 [2719] => 1 [2720] => 1 [2721] => 1 [2722] => 1 [2723] => 1 [2724] => 1 [2725] => 1 [2726] => 1 [2727] => 3 [2728] => 4 [2729] => 1 [2730] => 1 [2731] => 0 [2732] => 1 [2733] => 1 [2734] => 1 [2735] => -1 [2736] => 1 [2737] => 1 [2738] => 1 [2739] => 0 [2740] => 1 [2741] => 1 [2742] => 1 [2743] => 0 [2744] => 3 [2745] => 4 [2746] => 1 [2747] => 1 [2748] => -1 [2749] => 1 [2750] => 1 [2751] => 0 [2752] => -1 [2753] => 1 [2754] => 1 [2755] => 1 [2756] => -1 [2757] => 1 [2758] => 1 [2759] => 1 [2760] => -1 [2761] => 3 [2762] => 4 [2763] => 1 [2764] => 0 [2765] => -1 [2766] => 1 [2767] => 1 [2768] => -1 [2769] => -1 [2770] => 1 [2771] => 1 [2772] => 0 [2773] => -1 [2774] => 1 [2775] => 1 [2776] => 0 [2777] => -1 [2778] => 3 [2779] => 4 [2780] => 1 [2781] => -1 [2782] => -1 [2783] => 1 [2784] => 1 [2785] => -1 [2786] => 0 [2787] => 1 [2788] => 1 [2789] => -1 [2790] => -1 [2791] => 1 [2792] => 1 [2793] => -1 [2794] => -1 [2795] => 3 [2796] => 4 [2797] => 1 [2798] => -1 [2799] => 0 [2800] => 1 [2801] => 1 [2802] => -1 [2803] => 1 [2804] => 1 [2805] => 1 [2806] => -1 [2807] => 0 [2808] => 1 [2809] => 1 [2810] => -1 [2811] => 0 [2812] => 3 [2813] => 4 [2814] => 1 [2815] => -1 [2816] => 1 [2817] => 1 [2818] => 1 [2819] => 0 [2820] => 1 [2821] => 1 [2822] => 1 [2823] => -1 [2824] => 1 [2825] => 1 [2826] => 1 [2827] => -1 [2828] => 1 [2829] => 3 [2830] => 4 [2831] => 1 [2832] => 0 [2833] => 1 [2834] => 1 [2835] => 1 [2836] => -1 [2837] => 1 [2838] => 1 [2839] => 1 [2840] => 0 [2841] => 1 [2842] => 1 [2843] => 1 [2844] => 0 [2845] => 1 [2846] => 3 [2847] => 4 [2848] => 1 [2849] => 1 [2850] => 1 [2851] => 1 [2852] => 1 [2853] => 0 [2854] => 1 [2855] => 1 [2856] => 1 [2857] => 1 [2858] => 1 [2859] => 1 [2860] => 1 [2861] => 1 [2862] => 1 [2863] => 3 [2864] => 4 [2865] => 1 [2866] => 1 [2867] => 0 [2868] => 1 [2869] => 1 [2870] => 1 [2871] => 1 [2872] => 1 [2873] => 1 [2874] => 1 [2875] => 0 [2876] => 1 [2877] => 1 [2878] => 1 [2879] => 0 [2880] => 3 [2881] => 4 [2882] => 1 [2883] => 1 [2884] => -1 [2885] => 1 [2886] => 1 [2887] => 1 [2888] => 0 [2889] => 1 [2890] => 1 [2891] => 1 [2892] => -1 [2893] => 1 [2894] => 1 [2895] => 1 [2896] => -1 [2897] => 3 [2898] => 4 [2899] => 1 [2900] => 0 [2901] => -1 [2902] => 1 [2903] => 1 [2904] => 1 [2905] => -1 [2906] => 1 [2907] => 1 [2908] => 0 [2909] => -1 [2910] => 1 [2911] => 1 [2912] => 0 [2913] => -1 [2914] => 3 [2915] => 4 [2916] => 1 [2917] => -1 [2918] => -1 [2919] => 1 [2920] => 1 [2921] => 0 [2922] => -1 [2923] => 1 [2924] => 1 [2925] => -1 [2926] => -1 [2927] => 1 [2928] => 1 [2929] => -1 [2930] => -1 [2931] => 3 [2932] => 4 [2933] => 1 [2934] => -1 [2935] => 0 [2936] => 1 [2937] => 1 [2938] => -1 [2939] => -1 [2940] => 1 [2941] => 1 [2942] => -1 [2943] => 0 [2944] => 1 [2945] => 1 [2946] => -1 [2947] => 0 [2948] => 3 [2949] => 4 [2950] => 1 [2951] => -1 [2952] => 1 [2953] => 1 [2954] => 1 [2955] => -1 [2956] => 0 [2957] => 1 [2958] => 1 [2959] => -1 [2960] => 1 [2961] => 1 [2962] => 1 [2963] => -1 [2964] => 1 [2965] => 3 [2966] => 1 [2967] => 1 [2968] => 0 [2969] => 3 [2970] => 1 [2971] => 1 [2972] => 1 [2973] => 3 [2974] => 0 [2975] => 1 [2976] => 1 [2977] => 1 [2978] => 0 [2979] => -3 [2980] => 1 [2981] => 1 [2982] => 1 [2983] => -3 [2984] => 0 [2985] => 1 [2986] => 0 [2987] => 1 [2988] => 99 [2989] => 0 [2990] => 1 [2991] => 3 [2992] => 1 [2993] => 99 [2994] => 1 [2995] => 0 [2996] => 3 [2997] => 1 [2998] => 99 [2999] => 0 [3000] => -1 [3001] => 3 [3002] => 1 [3003] => 99 [3004] => -1 [3005] => 0 [3006] => 3 [3007] => 2 [3008] => 99 [3009] => 0 [3010] => 1 [3011] => 16 [3012] => 99 [3013] => 0 [3014] => 1 [3015] => 2 [3016] => 2 [3017] => 99 [3018] => 1 [3019] => 0 [3020] => 16 [3021] => 99 [3022] => 1 [3023] => 0 [3024] => 2 [3025] => 2 [3026] => 99 [3027] => 0 [3028] => -1 [3029] => 16 [3030] => 99 [3031] => 0 [3032] => -1 [3033] => 2 [3034] => 2 [3035] => 99 [3036] => -1 [3037] => 0 [3038] => 16 [3039] => 99 [3040] => -1 [3041] => 0 [3042] => 2 [3043] => 1 [3044] => 1 [3045] => 1 [3046] => 1 [3047] => 3 [3048] => 1 [3049] => 1 [3050] => 1 [3051] => -1 [3052] => 3 [3053] => 1 [3054] => 1 [3055] => -1 [3056] => -1 [3057] => 3 [3058] => 1 [3059] => 1 [3060] => -1 [3061] => 1 [3062] => 3 [3063] => 0 [3064] => 1 [3065] => 99 [3066] => 0 [3067] => 1 [3068] => 3 [3069] => 1 [3070] => 99 [3071] => 1 [3072] => 0 [3073] => 3 [3074] => 1 [3075] => 99 [3076] => 0 [3077] => -1 [3078] => 3 [3079] => 1 [3080] => 99 [3081] => -1 [3082] => 0 [3083] => 3 [3084] => 1 [3085] => 99 [3086] => 1 [3087] => 2 [3088] => 3 [3089] => 1 [3090] => 99 [3091] => 2 [3092] => 1 [3093] => 3 [3094] => 1 [3095] => 99 [3096] => 2 [3097] => -1 [3098] => 3 [3099] => 1 [3100] => 99 [3101] => 1 [3102] => -2 [3103] => 3 [3104] => 1 [3105] => 99 [3106] => -1 [3107] => -2 [3108] => 3 [3109] => 1 [3110] => 99 [3111] => -2 [3112] => -1 [3113] => 3 [3114] => 1 [3115] => 99 [3116] => -2 [3117] => 1 [3118] => 3 [3119] => 1 [3120] => 99 [3121] => -1 [3122] => 2 [3123] => 3 [3124] => 0 [3125] => 1 [3126] => 99 [3127] => 1 [3128] => 1 [3129] => 3 [3130] => 1 [3131] => 99 [3132] => 1 [3133] => -1 [3134] => 3 [3135] => 1 [3136] => 99 [3137] => -1 [3138] => -1 [3139] => 3 [3140] => 1 [3141] => 99 [3142] => -1 [3143] => 1 [3144] => 3 [3145] => 1 [3146] => 99 [3147] => 1 [3148] => 2 [3149] => 3 [3150] => 1 [3151] => 99 [3152] => 2 [3153] => 1 [3154] => 3 [3155] => 1 [3156] => 99 [3157] => 2 [3158] => -1 [3159] => 3 [3160] => 1 [3161] => 99 [3162] => 1 [3163] => -2 [3164] => 3 [3165] => 1 [3166] => 99 [3167] => -1 [3168] => -2 [3169] => 3 [3170] => 1 [3171] => 99 [3172] => -2 [3173] => -1 [3174] => 3 [3175] => 1 [3176] => 99 [3177] => -2 [3178] => 1 [3179] => 3 [3180] => 1 [3181] => 99 [3182] => -1 [3183] => 2 [3184] => 3 [3185] => 0 [3186] => 1 [3187] => 1 [3188] => 0 [3189] => 1 [3190] => 1 [3191] => 1 [3192] => 1 [3193] => 1 [3194] => 1 [3195] => 2 [3196] => 1 [3197] => 1 [3198] => -1 [3199] => 1 [3200] => 2 [3201] => 0 [3202] => 1 [3203] => 1 [3204] => 0 [3205] => -1 [3206] => 1 [3207] => 1 [3208] => 1 [3209] => 1 [3210] => -1 [3211] => 2 [3212] => 1 [3213] => 1 [3214] => -1 [3215] => -1 [3216] => 2 [3217] => 0 [3218] => 1 [3219] => 1 [3220] => 0 [3221] => 1 [3222] => 2 [3223] => 1 [3224] => 1 [3225] => 1 [3226] => 1 [3227] => 1 [3228] => 1 [3229] => 1 [3230] => -1 [3231] => 1 [3232] => 1 [3233] => 0 [3234] => 1 [3235] => 1 [3236] => 0 [3237] => -1 [3238] => 2 [3239] => 1 [3240] => 1 [3241] => 1 [3242] => -1 [3243] => 1 [3244] => 1 [3245] => 1 [3246] => -1 [3247] => -1 [3248] => 1 [3249] => 0 ) [partners] => Array ( [0] => b2 [1] => k2 [2] => b13 [3] => k13 [4] => a2 [5] => l2 [6] => a13 [7] => l13 ) [rooks] => Array ( [0] => b2 [1] => k2 [2] => b13 [3] => k13 ) [badCannon] => Array ( [0] => e2 [1] => i2 [2] => e13 [3] => i13 ) [badRook] => Array ( [0] => c2 [1] => k2 [2] => c13 [3] => k13 ) [supply] => Array ( [0] => P [1] => 10 [2] => p [3] => 10 [4] => X [5] => 10 [6] => x [7] => 10 [8] => Q [9] => 1 [10] => q [11] => 1 [12] => R [13] => 1 [14] => r [15] => 1 [16] => Y [17] => 1 [18] => y [19] => 1 [20] => B [21] => 2 [22] => b [23] => 2 [24] => G [25] => 1 [26] => g [27] => 1 [28] => N [29] => 1 [30] => n [31] => 1 ) [promotab] => Array ( [0] => 0 [1] => Array ( [0] => q [1] => v [2] => u [3] => i [4] => m [5] => r [6] => j [7] => y [8] => o [9] => f [10] => b [11] => n [12] => z [13] => g [14] => w ) [2] => Array ( [0] => self [1] => r [2] => j [3] => y [4] => o [5] => f [6] => b [7] => n [8] => z [9] => g [10] => w ) [3] => Array ( [0] => self [1] => b [2] => n [3] => z [4] => g [5] => w ) [4] => 0 [5] => 0 [6] => 0 [7] => 0 [8] => 0 [9] => 0 [10] => Array ( [0] => self [1] => B [2] => N [3] => Z [4] => G [5] => W ) [11] => Array ( [0] => self [1] => R [2] => J [3] => Y [4] => O [5] => F [6] => B [7] => N [8] => Z [9] => G [10] => W ) [12] => Array ( [0] => Q [1] => V [2] => U [3] => I [4] => M [5] => R [6] => J [7] => Y [8] => O [9] => F [10] => B [11] => N [12] => Z [13] => G [14] => W ) [13] => 0 ) [shaded] => Array ( ) [symmetrized] => Array ( ) [centralize] => Array ( ) [blackset] => Array ( ) [blacksym] => Array ( ) [blackshaded] => Array ( ) [shufflespecs] => Array ( [0] => Array ( [0] => F ) [1] => Array ( [0] => B [1] => N [2] => G ) [2] => 0 [3] => Array ( [0] => Q [1] => V [2] => U ) [4] => 0 [5] => 0 [6] => Array ( [0] => M [1] => I ) [7] => 0 [8] => 0 [9] => Array ( [0] => Y ) [10] => Array ( [0] => W ) [11] => 0 [12] => 0 ) [left] => Array ( [0] => b3 [1] => c3 [2] => d3 [3] => e3 ) [light] => Array ( [0] => c3 [1] => e3 [2] => i3 [3] => k3 ) [dark] => Array ( [0] => b3 [1] => d3 [2] => h3 [3] => j3 ) [RESULT] => ) ) [1] => Array ( [ShuffleSetup] => Array ( [subargs] => Array ( ) ) ) [3] => Array ( [ShuffleSetup] => Array ( [i] => 0 [a] => Array ( [0] => F ) [b] => Array ( [0] => B [1] => N [2] => G ) [c] => Array ( ) ) ) [5] => Array ( [ShuffleOnePlayer] => Array ( [subargs] => Array ( [0] => Array ( [0] => F ) [1] => Array ( [0] => B [1] => N [2] => G ) [2] => Array ( ) ) ) [main] => Array ( [otherset] => Array ( [0] => F ) [symset] => Array ( [0] => B [1] => N [2] => G ) [shadeset] => Array ( ) ) ) [7] => Array ( [ShuffleWings] => Array ( [subargs] => Array ( [0] => Array ( [0] => B [1] => N [2] => G ) [1] => Array ( [0] => F ) ) [toshuffle] => Array ( [0] => F [1] => B [2] => N [3] => G ) [sqr] => 0 [piece] => 0 [rsqr] => 0 [p] => 0 [s] => 0 [allsqrs] => Array ( [0] => c3 [1] => e3 [2] => i3 [3] => k3 [4] => b3 [5] => d3 [6] => h3 [7] => j3 ) ) [main] => Array ( [sym] => Array ( [0] => B [1] => N [2] => G ) [others] => Array ( [0] => F ) ) ) )mline
Array ( [0] => MoveLine Object ( [movenum] => 0 [move] => [level] => 0 [comment] => [length] => 0 [newturn] => [turn] => 0 ) )allmoves
Array ( )movelist
constants
Array ( )