Please report any bugs or errors to Fergus Duniho
Syntax Error on line 193
The function 'bi' has not been defined. Its arguments are a16 h2
Edit the Settings File for Bigorra
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 if == thismove null 1 say This is a beta-version under tests. Written by Jean-Louis Cazaux 2 endif 3 echo Please report any bugs or errors to Fergus Duniho 4 set ep false 5 setsystem groupsets array alfaerie-metamachy 6 set mypieces () 7 foreach label (a A b B c C d D e E f F g G h H i I j J k K l L m M n N o O p P q Q r R s S t T u U v V w W x X y Y z Z) 8 setelem mypieces #label pieceimg #label 9 next 10 if == pieceset alfaerie-metamachy 11 set mypieces.sq pieceimg sq 12 set mypieces.SQ pieceimg SQ 13 set mypieces.sn pieceimg sn 14 set mypieces.SN pieceimg SN 15 set mypieces.sh pieceimg sh 16 set mypieces.SH pieceimg SH 17 set mypieces.hk pieceimg bi 18 set mypieces.HK pieceimg BI 19 set mypieces.mm pieceimg ra 20 set mypieces.MM pieceimg RA 21 set mypieces.ch pieceimg ti 22 set mypieces.CH pieceimg TI 23 set mypieces.dw pieceimg dr 24 set mypieces.DW pieceimg DR 25 endif 26 setsystem pieces #mypieces 27 set wpr 5 28 set bpr 12 29 set wsr 4 30 set bsr 13 31 set fps 2 32 set pzs 1 33 set wprom Q 34 set bprom q 35 set wpromi A 36 set bpromi a 37 set wpromf F 38 set bpromf f 39 set wproml L 40 set bproml l 41 set wpromd D 42 set bpromd d 43 set wpromg G 44 set bpromg g 45 set wpromu U 46 set bpromu u 47 set wpromdw DW 48 set bpromdw dw 49 setsystem maxmove 2 50 ban commands allmoves 51 allow moves 1 captures 1 promotions 2 skip 1 52 def N checkleap #0 #1 1 2 53 def B checkride #0 #1 1 1 54 def R checkride #0 #1 1 0 55 def Q fn B #0 #1 or fn R #0 #1 56 def K checkleap #0 #1 1 1 or checkleap #0 #1 1 0 57 def n checkleap #0 #1 1 2 58 def b checkride #0 #1 1 1 59 def r checkride #0 #1 1 0 60 def q fn B #0 #1 or fn R #0 #1 61 def k checkleap #0 #1 1 1 or checkleap #0 #1 1 0 62 def NL leaps #0 1 2 63 def BL rays #0 1 1 64 def RL rays #0 1 0 65 def QL merge rays #0 1 0 rays #0 1 1 66 def KL merge leaps #0 1 0 leaps #0 1 1 67 def nL leaps #0 1 2 68 def bL rays #0 1 1 69 def rL rays #0 1 0 70 def qL merge rays #0 1 0 rays #0 1 1 71 def kL merge leaps #0 1 0 leaps #0 1 1 72 def P remove var ep and < rankname #1 var bpr and < rankname var ep rankname #1 and == filename var ep filename #1 and == rankname var ep rankname #0 and checkleap #0 #1 1 1 or checkride #0 #1 0 1 and empty #1 or and islower space #1 checkleap #0 #1 1 1 and <= distance #0 #1 var fps and > rank #1 rank #0 73 def p remove var ep and > rankname #1 var wpr and > rankname var ep rankname #1 and == filename var ep filename #1 and == rankname var ep rankname #0 and checkleap #0 #1 1 1 or checkride #0 #1 0 1 and empty #1 or and isupper space #1 checkleap #0 #1 1 1 and <= distance #0 #1 var fps and < rank #1 rank #0 74 def PL array where #0 0 2 where #0 0 1 where #0 -1 1 where #0 1 1 75 def pL array where #0 0 -2 where #0 0 -1 where #0 -1 -1 where #0 1 -1 76 def T checkleap #0 #1 0 1 and empty #1 or and islower space #1 checkleap #0 #1 1 1 and > rank #1 rank #0 or checkleap #0 #1 3 0 or checkleap #0 #1 3 3 77 def t checkleap #0 #1 0 1 and empty #1 or and isupper space #1 checkleap #0 #1 1 1 and < rank #1 rank #0 or checkleap #0 #1 3 0 or checkleap #0 #1 3 3 78 def TL mergeall leaps #0 3 0 leaps #0 3 3 leaps #0 0 1 array where #0 0 1 where #0 -1 1 where #0 1 1 79 def tL mergeall leaps #0 3 0 leaps #0 3 3 leaps #0 0 1 array where #0 0 -1 where #0 -1 -1 where #0 1 -1 80 def I checkaride #0 #1 0 1 and <= distance #0 #1 var fps and empty #1 or checkleap #0 #1 1 1 or checkleap #0 #1 1 0 81 def i checkaride #0 #1 0 -1 and <= distance #0 #1 var fps and empty #1 or checkleap #0 #1 1 1 or checkleap #0 #1 1 0 82 def iL mergeall leaps #0 1 1 leaps #0 1 0 array where #0 0 -2 83 def IL mergeall leaps #0 1 1 leaps #0 1 0 array where #0 0 2 84 def e checkleap #0 #1 1 1 or checkleap #0 #1 2 2 85 def E checkleap #0 #1 1 1 or checkleap #0 #1 2 2 86 def eL merge leaps #0 1 1 leaps #0 2 2 87 def EL merge leaps #0 1 1 leaps #0 2 2 88 def w checkleap #0 #1 1 0 or checkleap #0 #1 2 0 89 def W checkleap #0 #1 1 0 or checkleap #0 #1 2 0 90 def wL merge leaps #0 1 0 leaps #0 2 0 91 def WL merge leaps #0 1 0 leaps #0 2 0 92 def d checkleap #0 #1 1 0 or checkleap #0 #1 2 0 or checkleap #0 #1 1 1 or checkleap #0 #1 2 2 or checkleap #0 #1 3 0 or checkleap #0 #1 3 3 93 def D checkleap #0 #1 1 0 or checkleap #0 #1 2 0 or checkleap #0 #1 1 1 or checkleap #0 #1 2 2 or checkleap #0 #1 3 0 or checkleap #0 #1 3 3 94 def dL mergeall leaps #0 1 0 leaps #0 2 0 leaps #0 1 1 leaps #0 2 2 leaps #0 3 3 leaps #0 3 0 95 def DL mergeall leaps #0 1 0 leaps #0 2 0 leaps #0 1 1 leaps #0 2 2 leaps #0 3 3 leaps #0 3 0 96 def G fn (checkride #0 #1 1 0 and empty #0) where #0 sign - file #1 file #0 sign - rank #1 rank #0 #1 and != file #1 file #0 and != rank #1 rank #0 or checkleap #0 #1 1 1 97 def GL mergeall leaps #0 1 1 rays where #0 1 1 1 0 rays where #0 1 -1 1 0 rays where #0 -1 -1 1 0 rays where #0 -1 1 1 0 98 def g fn (checkride #0 #1 1 0 and empty #0) where #0 sign - file #1 file #0 sign - rank #1 rank #0 #1 and != file #1 file #0 and != rank #1 rank #0 or checkleap #0 #1 1 1 99 def gL mergeall leaps #0 1 1 rays where #0 1 1 1 0 rays where #0 1 -1 1 0 rays where #0 -1 -1 1 0 rays where #0 -1 1 1 0 100 def U fn (checkride #0 #1 1 1 and empty #0) where #0 0 sign - rank #1 rank #0 #1 or fn (checkride #0 #1 1 1 and empty #0) where #0 sign - file #1 file #0 0 #1 or checkleap #0 #1 1 0 101 def UL mergeall leaps #0 1 0 rays where #0 0 1 1 1 rays where #0 0 -1 1 1 rays where #0 1 0 1 1 rays where #0 -1 0 1 1 102 def u fn (checkride #0 #1 1 1 and empty #0) where #0 0 sign - rank #1 rank #0 #1 or fn (checkride #0 #1 1 1 and empty #0) where #0 sign - file #1 file #0 0 #1 or checkleap #0 #1 1 0 103 def uL mergeall leaps #0 1 0 rays where #0 0 1 1 1 rays where #0 0 -1 1 1 rays where #0 1 0 1 1 rays where #0 -1 0 1 1 104 def C cond cond empty #0 capture (not empty #1) (checkhop #0 #1 0 1) (checkride #0 #1 0 1) and #1 105 def c cond cond empty #0 capture (not empty #1) (checkhop #0 #1 0 1) (checkride #0 #1 0 1) and #1 106 def CL rays #0 1 0 107 def cL rays #0 1 0 108 def V cond cond empty #0 capture (not empty #1) (checkhop #0 #1 1 1) (checkride #0 #1 1 1) and #1 109 def v cond cond empty #0 capture (not empty #1) (checkhop #0 #1 1 1) (checkride #0 #1 1 1) and #1 110 def VL rays #0 1 1 111 def vL rays #0 1 1 112 def O cond cond empty #0 capture (not empty #1) (checkhop #0 #1 1 1) (checkride #0 #1 1 1) and #1 or cond cond empty #0 capture (not empty #1) (checkhop #0 #1 0 1) (checkride #0 #1 0 1) and #1 113 def o cond cond empty #0 capture (not empty #1) (checkhop #0 #1 1 1) (checkride #0 #1 1 1) and #1 or cond cond empty #0 capture (not empty #1) (checkhop #0 #1 0 1) (checkride #0 #1 0 1) and #1 114 def OL merge rays #0 1 1 rays #0 1 0 115 def oL merge rays #0 1 1 rays #0 1 0 116 def L <= distance #0 #1 2 and != #0 #1 117 def l <= distance #0 #1 2 and != #0 #1 118 def LL mergeall leaps #0 1 0 leaps #0 1 1 leaps #0 2 0 leaps #0 2 1 leaps #0 2 2 119 def lL mergeall leaps #0 1 0 leaps #0 1 1 leaps #0 2 0 leaps #0 2 1 leaps #0 2 2 120 def m checkleap #0 #1 1 3 121 def M checkleap #0 #1 1 3 122 def mL leaps #0 1 3 123 def ML leaps #0 1 3 124 def z checkleap #0 #1 2 3 125 def Z checkleap #0 #1 2 3 126 def zL leaps #0 2 3 127 def ZL leaps #0 2 3 128 def f checkleap #0 #1 1 3 or checkleap #0 #1 1 2 or checkleap #0 #1 2 3 129 def F checkleap #0 #1 1 3 or checkleap #0 #1 1 2 or checkleap #0 #1 2 3 130 def fL merge merge leaps #0 1 2 leaps #0 1 3 leaps #0 2 3 131 def FL merge merge leaps #0 1 2 leaps #0 1 3 leaps #0 2 3 132 def H fn R #0 #1 or fn N #0 #1 133 def h fn R #0 #1 or fn N #0 #1 134 def X fn B #0 #1 or fn N #0 #1 135 def x fn B #0 #1 or fn N #0 #1 136 def HL merge rays #0 1 0 leaps #0 1 2 137 def hL merge rays #0 1 0 leaps #0 1 2 138 def XL merge rays #0 1 1 leaps #0 1 2 139 def xL merge rays #0 1 1 leaps #0 1 2 140 def A fn B #0 #1 or fn R #0 #1 or fn N #0 #1 141 def AL merge merge rays #0 1 0 rays #0 1 1 leaps #0 1 2 142 def a fn B #0 #1 or fn R #0 #1 or fn N #0 #1 143 def aL merge merge rays #0 1 0 rays #0 1 1 leaps #0 1 2 144 def J fn N #0 #1 or fn K #0 #1 145 def JL merge merge leaps #0 1 0 leaps #0 1 1 leaps #0 1 2 146 def j fn N #0 #1 or fn K #0 #1 147 def jL merge merge leaps #0 1 0 leaps #0 1 1 leaps #0 1 2 148 def S checkride #0 #1 1 0 or checkleap #0 #1 1 1 149 def Y checkride #0 #1 1 1 or checkleap #0 #1 1 0 150 def SL merge rays #0 1 0 leaps #0 1 1 151 def YL merge rays #0 1 1 leaps #0 1 0 152 def s checkride #0 #1 1 0 or checkleap #0 #1 1 1 153 def y checkride #0 #1 1 1 or checkleap #0 #1 1 0 154 def sL merge rays #0 1 0 leaps #0 1 1 155 def yL merge rays #0 1 1 leaps #0 1 0 156 def mm checkleap #0 #1 1 1 or checkleap #0 #1 2 2 or checkleap #0 #1 1 0 or checkleap #0 #1 2 0 157 def MM checkleap #0 #1 1 1 or checkleap #0 #1 2 2 or checkleap #0 #1 1 0 or checkleap #0 #1 2 0 158 def mmL mergeall leaps #0 1 1 leaps #0 2 2 leaps #0 1 0 leaps #0 2 0 159 def MML mergeall leaps #0 1 1 leaps #0 2 2 leaps #0 1 0 leaps #0 2 0 160 def SH fn (checkaride #0 #1 0 1 and empty #0) where #0 1 1 #1 or fn (checkaride #0 #1 0 1 and empty #0) where #0 -1 1 #1 or fn (checkaride #0 #1 0 -1 and empty #0) where #0 1 -1 #1 or fn (checkaride #0 #1 0 -1 and empty #0) where #0 -1 -1 #1 or checkleap #0 #1 1 1 161 def SHL mergeall leaps #0 1 1 ray where #0 1 1 0 1 ray where #0 1 -1 0 -1 ray where #0 -1 1 0 1 ray where #0 -1 -1 0 -1 162 def sh fn (checkaride #0 #1 0 1 and empty #0) where #0 1 1 #1 or fn (checkaride #0 #1 0 1 and empty #0) where #0 -1 1 #1 or fn (checkaride #0 #1 0 -1 and empty #0) where #0 1 -1 #1 or fn (checkaride #0 #1 0 -1 and empty #0) where #0 -1 -1 #1 or checkleap #0 #1 1 1 163 def shL mergeall leaps #0 1 1 ray where #0 1 1 0 1 ray where #0 1 -1 0 -1 ray where #0 -1 1 0 1 ray where #0 -1 -1 0 -1 164 def SN fn (checkaride #0 #1 1 1 and empty #0) where #0 0 1 #1 or fn (checkaride #0 #1 -1 1 and empty #0) where #0 0 1 #1 or fn (checkaride #0 #1 1 1 and empty #0) where #0 0 1 #1 or fn (checkaride #0 #1 -1 -1 and empty #0) where #0 0 -1 #1 or fn (checkaride #0 #1 1 -1 and empty #0) where #0 0 -1 #1 or checkaleap #0 #1 0 1 or checkaleap #0 #1 0 -1 165 def SNL mergeall ray where #0 0 1 1 1 ray where #0 0 1 -1 1 ray where #0 0 -1 -1 -1 ray where #0 0 -1 1 -1 where #0 0 1 where #0 0 -1 166 def sn fn (checkaride #0 #1 1 1 and empty #0) where #0 0 1 #1 or fn (checkaride #0 #1 -1 1 and empty #0) where #0 0 1 #1 or fn (checkaride #0 #1 1 1 and empty #0) where #0 0 1 #1 or fn (checkaride #0 #1 -1 -1 and empty #0) where #0 0 -1 #1 or fn (checkaride #0 #1 1 -1 and empty #0) where #0 0 -1 #1 or checkaleap #0 #1 0 1 or checkaleap #0 #1 0 -1 167 def snL mergeall ray where #0 0 1 1 1 ray where #0 0 1 -1 1 ray where #0 0 -1 -1 -1 ray where #0 0 -1 1 -1 where #0 0 1 where #0 0 -1 168 def sq checkleap #0 #1 2 0 or checkleap #0 #1 2 2 or checkleap #0 #1 1 2 169 def SQ checkleap #0 #1 2 0 or checkleap #0 #1 2 2 or checkleap #0 #1 1 2 170 def sqL mergeall leaps #0 2 0 leaps #0 2 2 leaps #0 1 2 171 def SQL mergeall leaps #0 2 0 leaps #0 2 2 leaps #0 1 2 172 def ch checkleap #0 #1 1 3 or checkleap #0 #1 0 3 or checkleap #0 #1 2 3 or checkleap #0 #1 3 3 173 def CH checkleap #0 #1 1 3 or checkleap #0 #1 0 3 or checkleap #0 #1 2 3 or checkleap #0 #1 3 3 174 def chL mergeall leaps #0 0 3 leaps #0 1 3 leaps #0 2 3 leaps #0 3 3 175 def CHL mergeall leaps #0 0 3 leaps #0 1 3 leaps #0 2 3 leaps #0 3 3 176 def dw checkleap #0 #1 2 0 or checkleap #0 #1 2 2 or checkleap #0 #1 1 2 or checkleap #0 #1 1 3 or checkleap #0 #1 0 3 or checkleap #0 #1 2 3 or checkleap #0 #1 3 3 177 def DW checkleap #0 #1 2 0 or checkleap #0 #1 2 2 or checkleap #0 #1 1 2 or checkleap #0 #1 1 3 or checkleap #0 #1 0 3 or checkleap #0 #1 2 3 or checkleap #0 #1 3 3 178 def dwL mergeall leaps #0 2 0 leaps #0 2 2 leaps #0 1 2 leaps #0 0 3 leaps #0 1 3 leaps #0 2 3 leaps #0 3 3 179 def DWL mergeall leaps #0 2 0 leaps #0 2 2 leaps #0 1 2 leaps #0 0 3 leaps #0 1 3 leaps #0 2 3 leaps #0 3 3 180 def hk checkleap #0 #1 2 0 or checkleap #0 #1 2 2 or checkleap #0 #1 3 0 or checkleap #0 #1 3 3 181 def HK checkleap #0 #1 2 0 or checkleap #0 #1 2 2 or checkleap #0 #1 3 0 or checkleap #0 #1 3 3 182 def hkL mergeall leaps #0 2 0 leaps #0 2 2 leaps #0 3 3 leaps #0 3 0 183 def HKL mergeall leaps #0 2 0 leaps #0 2 2 leaps #0 3 3 leaps #0 3 0 184 def @ false 185 sub checked king 186 my from piece 187 if isupper cond empty #king moved space #king 188 def enemies onlylower 189 else 190 def enemies onlyupper 191 endif 192 for (from piece) fn enemies 193 if fn #piece #from #king 194 return #from 195 endif 196 next 197 return false 198 endsub 199 sub P from to 200 verify > rank #to rank #from 201 verify <= distance #to #from #fps 202 if capture 203 verify checkleap #from #to 1 1 204 set ep false 205 elseif checkleap #from #to 1 1 and #ep 206 verify == rankname var ep rankname #from 207 verify == filename var ep filename #to 208 verify < rankname var ep rankname #to 209 capture #ep 210 set ep false 211 elseif > distance #to #from 1 212 verify checkride #from #to 0 1 213 set ep #to 214 else 215 verify checkleap #from #to 0 1 216 set ep false 217 endif 218 if onboard where #to 0 #pzs 219 if != space #to moved 220 die "You may not promote a Pawn until it reaches the promotion zone." 221 endif 222 elseif == P space #to 223 askpromote #wprom 224 elseif not match space #to var wprom 225 set np space #to 226 die "You may not promote your Pawn to a" #np 227 endif 228 set nopvc 0 229 return true 230 endsub 231 sub I from to 232 if > distance #to #from 1 233 verify <= distance #to #from #fps 234 verify checkaride #from #to 0 1 235 set ep #to 236 else 237 verify checkleap #from #to 0 1 or checkleap #from #to 1 1 238 set ep false 239 endif 240 if onboard where #to 0 #pzs 241 if != space #to moved 242 die "You may not promote a Prince until it reaches the promotion zone." 243 endif 244 elseif == I space #to 245 askpromote #wpromi 246 elseif not match space #to var wpromi 247 set np space #to 248 die "You may not promote your Pawn to a" #np 249 endif 250 return true 251 endsub 252 sub p from to 253 verify < rank #to rank #from 254 verify <= distance #to #from #fps 255 if capture 256 verify checkleap #from #to 1 1 257 set ep false 258 elseif checkleap #from #to 1 1 and #ep 259 verify == rankname var ep rankname #from 260 verify == filename var ep filename #to 261 verify > rankname var ep rankname #to 262 capture #ep 263 set ep false 264 elseif > distance #to #from 1 265 verify checkride #from #to 0 1 266 set ep #to 267 else 268 verify checkleap #from #to 0 1 269 set ep false 270 endif 271 if != space #to moved and onboard where #to 0 neg #pzs 272 die You may not promote a Pawn until it reaches the promotion zone. 273 endif 274 if not onboard where #to 0 neg #pzs 275 if == p space #to 276 askpromote #bprom 277 elseif not match space #to var bprom 278 set np space #to 279 die You may not promote your Pawn to a #np 280 endif 281 endif 282 set nopvc 0 283 return true 284 endsub 285 sub i from to 286 if > distance #to #from 1 287 verify <= distance #to #from #fps 288 verify checkaride #from #to 0 -1 289 set ep #to 290 else 291 verify checkleap #from #to 0 1 or checkleap #from #to 1 1 292 set ep false 293 endif 294 if != space #to moved and onboard where #to 0 neg #pzs 295 die You may not promote a Prince until it reaches the promotion zone. 296 endif 297 if not onboard where #to 0 neg #pzs 298 if == i space #to 299 askpromote #bpromi 300 elseif not match space #to var bpromi 301 set np space #to 302 die You may not promote your Prince to a #np 303 endif 304 endif 305 return true 306 endsub 307 sub T from to 308 verify > rank #to rank #from 309 if capture 310 verify checkleap #from #to 1 1 311 elseif checkleap #from #to 1 1 elseif > distance #to #from 1 312 verify checkride #from #to 0 1 313 else 314 verify checkleap #from #to 0 1 315 endif 316 if onboard where #to 0 #pzs 317 if != space #to moved 318 die "You may not promote a Troll until it reaches the promotion zone." 319 endif 320 elseif == T space #to 321 askpromote #wpromdw 322 elseif not match space #to var wpromdw 323 set np space #to 324 die "You may not promote your Troll to a" #np 325 endif 326 set nopvc 0 327 return true 328 endsub 329 sub t from to 330 verify < rank #to rank #from 331 if capture 332 verify checkleap #from #to 1 1 333 elseif checkleap #from #to 1 1 elseif > distance #to #from 1 334 verify checkride #from #to 0 1 335 else 336 verify checkleap #from #to 0 1 337 endif 338 if != space #to moved and onboard where #to 0 neg #pzs 339 die You may not promote a Troll until it reaches the promotion zone. 340 endif 341 if not onboard where #to 0 neg #pzs 342 if == t space #to 343 askpromote #bpromdw 344 elseif not match space #to var bpromdw 345 set np space #to 346 die You may not promote your Troll to a #np 347 endif 348 endif 349 set nopvc 0 350 return true 351 endsub 352 sub K from to 353 if not fn K #from #to 354 restore 355 if not flag #from 356 die You may not move your King two spaces after it has already moved. 357 elseif not empty #to 358 die You may not capture another piece with the King's two-space leap. 359 elseif sub checked #from 360 die Your King may not leap two spaces to escape check. 361 endif 362 verify sub king-double-leap #from #to 363 move #from #to 364 endif 365 if flag #from 366 echo #from 367 endif 368 unsetflag #from #to 369 set K #to 370 return true 371 endsub 372 sub k from to 373 if not fn k #from #to 374 restore 375 if not flag #from 376 die You may not move your King two spaces after it has already moved. 377 elseif not empty #to 378 die You may not capture another piece with the King's two-space leap. 379 elseif sub checked #from 380 die Your King may not leap two spaces to escape check. 381 endif 382 verify sub king-double-leap #from #to 383 move #from #to 384 endif 385 unsetflag #from #to 386 set k #to 387 return true 388 endsub 389 sub king-double-leap from to 390 verify == 2 distance #from #to 391 store 392 if checkleap #from #to 0 2 or checkleap #from #to 2 2 393 set over where #from sign minus file #to file #from sign minus rank #to rank #from 394 move #from #over 395 if sub checked #over 396 restore 397 return false 398 endif 399 restore 400 elseif checkleap #from #to 1 2 401 set over where #from sign minus file #to file #from sign minus rank #to rank #from 402 move #from #over 403 if sub checked #over 404 restore 405 set over where #to sign minus file #from file #to sign minus rank #from rank #to 406 move #from #over 407 if sub checked #over 408 restore 409 return false 410 endif 411 endif 412 restore 413 else 414 return false 415 endif 416 return true 417 endsub 418 sub stalemated kingpos 419 store 420 local from piece to 421 if isupper space #kingpos 422 def friends onlyupper 423 def friend isupper #0 424 set cspaces var wcastle 425 else 426 def friends onlylower 427 def friend islower #0 428 set cspaces var bcastle 429 endif 430 set royal space var kingpos 431 store 432 for (from piece) fn friends 433 for to fn join #piece L #from 434 if fn #piece #from #to and not fn friend space #to and onboard #to 435 move #from #to 436 if not sub checked cond == #from #kingpos #to #kingpos 437 setlegal #from #to 438 endif 439 endif 440 restore 441 next 442 next 443 if not sub checked #kingpos and flag #kingpos 444 set tos mergeall leaps #kingpos 2 0 leaps #kingpos 2 1 leaps #kingpos 2 2 445 for to var tos 446 if sub king-double-leap #kingpos #to and empty #to 447 move #from #to 448 if not sub checked #to 449 setlegal #kingpos #to 450 endif 451 restore 452 endif 453 next 454 endif 455 return cond count system legalmoves false true 456 endsub 457 sub N from to 458 if onboard where #to 0 #pzs 459 if != space #to moved 460 die "You may not promote a Knight until it reaches the promotion zone." 461 endif 462 elseif == N space #to 463 askpromote #wpromf 464 elseif not match space #to var wpromf 465 set np space #to 466 die "You may not promote your Knight to a" #np 467 endif 468 return true 469 endsub 470 sub n from to 471 if != space #to moved and onboard where #to 0 neg #pzs 472 die You may not promote a Knight until it reaches the promotion zone. 473 endif 474 if not onboard where #to 0 neg #pzs 475 if == n space #to 476 askpromote #bpromf 477 elseif not match space #to var bpromf 478 set np space #to 479 die You may not promote your Knight to a #np 480 endif 481 endif 482 return true 483 endsub 484 sub M from to 485 if onboard where #to 0 #pzs 486 if != space #to moved 487 die "You may not promote a Camel until it reaches the promotion zone." 488 endif 489 elseif == M space #to 490 askpromote #wpromf 491 elseif not match space #to var wpromf 492 set np space #to 493 die "You may not promote your Camel to a" #np 494 endif 495 return true 496 endsub 497 sub m from to 498 if != space #to moved and onboard where #to 0 neg #pzs 499 die You may not promote a Camel until it reaches the promotion zone. 500 endif 501 if not onboard where #to 0 neg #pzs 502 if == m space #to 503 askpromote #bpromf 504 elseif not match space #to var bpromf 505 set np space #to 506 die You may not promote your Camel to a #np 507 endif 508 endif 509 return true 510 endsub 511 sub Z from to 512 if onboard where #to 0 #pzs 513 if != space #to moved 514 die "You may not promote a Giraffe until it reaches the promotion zone." 515 endif 516 elseif == Z space #to 517 askpromote #wpromf 518 elseif not match space #to var wpromf 519 set np space #to 520 die "You may not promote your Giraffe to a" #np 521 endif 522 return true 523 endsub 524 sub z from to 525 if != space #to moved and onboard where #to 0 neg #pzs 526 die You may not promote a Giraffe until it reaches the promotion zone. 527 endif 528 if not onboard where #to 0 neg #pzs 529 if == z space #to 530 askpromote #bpromf 531 elseif not match space #to var bpromf 532 set np space #to 533 die You may not promote your Giraffe to a #np 534 endif 535 endif 536 return true 537 endsub 538 sub E from to 539 if onboard where #to 0 #pzs 540 if != space #to moved 541 die "You may not promote an Elephant until it reaches the promotion zone." 542 endif 543 elseif == E space #to 544 askpromote #wproml 545 elseif not match space #to var wproml 546 set np space #to 547 die "You may not promote your Elephant to a" #np 548 endif 549 return true 550 endsub 551 sub e from to 552 if != space #to moved and onboard where #to 0 neg #pzs 553 die You may not promote an Elephant until it reaches the promotion zone. 554 endif 555 if not onboard where #to 0 neg #pzs 556 if == e space #to 557 askpromote #bproml 558 elseif not match space #to var bproml 559 set np space #to 560 die You may not promote your Elephant to a #np 561 endif 562 endif 563 return true 564 endsub 565 sub W from to 566 if onboard where #to 0 #pzs 567 if != space #to moved 568 die "You may not promote a Machine until it reaches the promotion zone." 569 endif 570 elseif == W space #to 571 askpromote #wproml 572 elseif not match space #to var wproml 573 set np space #to 574 die "You may not promote your Machine to a" #np 575 endif 576 return true 577 endsub 578 sub w from to 579 if != space #to moved and onboard where #to 0 neg #pzs 580 die You may not promote a Machine until it reaches the promotion zone. 581 endif 582 if not onboard where #to 0 neg #pzs 583 if == w space #to 584 askpromote #bproml 585 elseif not match space #to var bproml 586 set np space #to 587 die You may not promote your Machine to a #np 588 endif 589 endif 590 return true 591 endsub 592 sub J from to 593 if onboard where #to 0 #pzs 594 if != space #to moved 595 die "You may not promote a Centaur until it reaches the promotion zone." 596 endif 597 elseif == J space #to 598 askpromote #wproml 599 elseif not match space #to var wproml 600 set np space #to 601 die "You may not promote your Centaur to a" #np 602 endif 603 return true 604 endsub 605 sub j from to 606 if != space #to moved and onboard where #to 0 neg #pzs 607 die You may not promote a Centaur until it reaches the promotion zone. 608 endif 609 if not onboard where #to 0 neg #pzs 610 if == j space #to 611 askpromote #bproml 612 elseif not match space #to var bproml 613 set np space #to 614 die You may not promote your Centaur to a #np 615 endif 616 endif 617 return true 618 endsub 619 sub SN from to 620 if onboard where #to 0 #pzs 621 if != space #to moved 622 die "You may not promote a Snake until it reaches the promotion zone." 623 endif 624 elseif == SN space #to 625 askpromote #wpromu 626 elseif not match space #to var wpromu 627 set np space #to 628 die "You may not promote your Snake to a" #np 629 endif 630 return true 631 endsub 632 sub sn from to 633 if != space #to moved and onboard where #to 0 neg #pzs 634 die You may not promote a Snake until it reaches the promotion zone. 635 endif 636 if not onboard where #to 0 neg #pzs 637 if == sn space #to 638 askpromote #bpromu 639 elseif not match space #to var bpromu 640 set np space #to 641 die You may not promote your Snake to a #np 642 endif 643 endif 644 return true 645 endsub 646 sub SH from to 647 if onboard where #to 0 #pzs 648 if != space #to moved 649 die "You may not promote a Ship until it reaches the promotion zone." 650 endif 651 elseif == SH space #to 652 askpromote #wpromg 653 elseif not match space #to var wpromg 654 set np space #to 655 die "You may not promote your Ship to a" #np 656 endif 657 return true 658 endsub 659 sub sh from to 660 if != space #to moved and onboard where #to 0 neg #pzs 661 die You may not promote a Ship until it reaches the promotion zone. 662 endif 663 if not onboard where #to 0 neg #pzs 664 if == sh space #to 665 askpromote #bpromg 666 elseif not match space #to var bpromg 667 set np space #to 668 die You may not promote your Ship to a #np 669 endif 670 endif 671 return true 672 endsub 673 sub MM from to 674 if onboard where #to 0 #pzs 675 if != space #to moved 676 die "You may not promote a Mammoth until it reaches the promotion zone." 677 endif 678 elseif == MM space #to 679 askpromote #wproml 680 elseif not match space #to var wproml 681 set np space #to 682 die "You may not promote your Mammoth to a" #np 683 endif 684 return true 685 endsub 686 sub mm from to 687 if != space #to moved and onboard where #to 0 neg #pzs 688 die You may not promote a Mammoth until it reaches the promotion zone. 689 endif 690 if not onboard where #to 0 neg #pzs 691 if == mm space #to 692 askpromote #bproml 693 elseif not match space #to var bproml 694 set np space #to 695 die You may not promote your Mammoth to a #np 696 endif 697 endif 698 return true 699 endsub 700 sub SQ from to 701 if onboard where #to 0 #pzs 702 if != space #to moved 703 die "You may not promote a Squirrel until it reaches the promotion zone." 704 endif 705 elseif == SQ space #to 706 askpromote #wproml 707 elseif not match space #to var wproml 708 set np space #to 709 die "You may not promote your Squirrel to a" #np 710 endif 711 return true 712 endsub 713 sub sq from to 714 if != space #to moved and onboard where #to 0 neg #pzs 715 die You may not promote a Squirrel until it reaches the promotion zone. 716 endif 717 if not onboard where #to 0 neg #pzs 718 if == sq space #to 719 askpromote #bproml 720 elseif not match space #to var bproml 721 set np space #to 722 die You may not promote your Squirrel to a #np 723 endif 724 endif 725 return true 726 endsub 727 sub HK from to 728 if onboard where #to 0 #pzs 729 if != space #to moved 730 die "You may not promote a Hawk until it reaches the promotion zone." 731 endif 732 elseif == HK space #to 733 askpromote #wpromd 734 elseif not match space #to var wpromd 735 set np space #to 736 die "You may not promote your Hawk to a" #np 737 endif 738 return true 739 endsub 740 sub hk from to 741 if != space #to moved and onboard where #to 0 neg #pzs 742 die You may not promote a Hawk until it reaches the promotion zone. 743 endif 744 if not onboard where #to 0 neg #pzs 745 if == hk space #to 746 askpromote #bpromd 747 elseif not match space #to var bpromd 748 set np space #to 749 die You may not promote your Hawk to a #np 750 endif 751 endif 752 return true 753 endsub 754 set k findpiece k spaces 755 set K findpiece K spaces 756 setflag #k #K startofgame 757 sub preauto1 758 store 759 endsub 760 sub preauto2 761 store 762 endsub 763 sub postauto1 764 if isupper old 765 die You may not capture your own pieces. 766 elseif islower moved 767 die You may not move one of your opponent's pieces. 768 endif 769 if not match moved P I T N M Z E W J SQ MM HK SH SN 770 set ep false 771 if != space dest moved 772 die You may not change the type of this piece. 773 elseif capture 774 set nopvc 0 775 else 776 inc nopvc 777 endif 778 elseif == moved P 779 set nopvc 0 780 else 781 inc nopvc 782 endif 783 if sub moved origin dest and match moved P K I T N M Z E W J SQ MM HK SH SN 784 elseif fn moved origin dest and match moved Q R B C G L V F U H X A S Y T D O CH DW 785 else 786 die You may not move a moved from origin to dest 787 endif 788 if sub checked #K 789 die You may not move into check. 790 endif 791 unsetflag origin dest 792 set posvar join "w" join fencode boardflags 793 inc #posvar 794 endsub 795 sub postauto2 796 if islower old 797 die You may not capture your own pieces. 798 elseif isupper moved 799 die You may not move one of your opponent's pieces. 800 endif 801 if not match moved p i t n m z e w j sq mm hk sh sn 802 set ep false 803 if != space dest moved 804 die You may not change the type of this piece. 805 elseif capture 806 set nopvc 0 807 else 808 inc nopvc 809 endif 810 elseif == moved p 811 set nopvc 0 812 else 813 inc nopvc 814 endif 815 if sub moved origin dest and match moved p k i t n m z e w j sq mm hk sh sn 816 elseif fn moved origin dest and match moved q r b c g l v f u h x a s y t d o ch dw 817 else 818 die You may not move a moved from origin to dest 819 endif 820 if sub checked #k 821 die You may not move into check. 822 endif 823 unsetflag origin dest 824 set posvar join "b" join fencode boardflags 825 inc #posvar 826 endsub 827 set posvar join "b" join fencode boardflags 828 if >= var #posvar 3 829 say Three Times Repetition! Drawn Game! 830 drawn 831 elseif sub stalemated #K 832 if sub checked #K 833 say Checkmate! Black has won! 834 won 835 else 836 say Stalemate! The game is drawn. 837 drawn 838 endif 839 elseif >= #nopvc 100 840 say Fifty Moves Without Moving a Pawn or Capturing! Game Drawn! 841 drawn 842 elseif sub checked #K 843 say Check! 844 endif 845 end 846functions
Array ( [N] => Array ( [0] => checkleap [1] => #0 [2] => #1 [3] => 1 [4] => 2 ) [B] => Array ( [0] => checkride [1] => #0 [2] => #1 [3] => 1 [4] => 1 ) [R] => Array ( [0] => checkride [1] => #0 [2] => #1 [3] => 1 [4] => 0 ) [Q] => Array ( [0] => fn [1] => B [2] => #0 [3] => #1 [4] => or [5] => fn [6] => R [7] => #0 [8] => #1 ) [K] => Array ( [0] => checkleap [1] => #0 [2] => #1 [3] => 1 [4] => 1 [5] => or [6] => checkleap [7] => #0 [8] => #1 [9] => 1 [10] => 0 ) [n] => Array ( [0] => checkleap [1] => #0 [2] => #1 [3] => 1 [4] => 2 ) [b] => Array ( [0] => checkride [1] => #0 [2] => #1 [3] => 1 [4] => 1 ) [r] => Array ( [0] => checkride [1] => #0 [2] => #1 [3] => 1 [4] => 0 ) [q] => Array ( [0] => fn [1] => B [2] => #0 [3] => #1 [4] => or [5] => fn [6] => R [7] => #0 [8] => #1 ) [k] => Array ( [0] => checkleap [1] => #0 [2] => #1 [3] => 1 [4] => 1 [5] => or [6] => checkleap [7] => #0 [8] => #1 [9] => 1 [10] => 0 ) [NL] => Array ( [0] => leaps [1] => #0 [2] => 1 [3] => 2 ) [BL] => Array ( [0] => rays [1] => #0 [2] => 1 [3] => 1 ) [RL] => Array ( [0] => rays [1] => #0 [2] => 1 [3] => 0 ) [QL] => Array ( [0] => merge [1] => rays [2] => #0 [3] => 1 [4] => 0 [5] => rays [6] => #0 [7] => 1 [8] => 1 ) [KL] => Array ( [0] => merge [1] => leaps [2] => #0 [3] => 1 [4] => 0 [5] => leaps [6] => #0 [7] => 1 [8] => 1 ) [nL] => Array ( [0] => leaps [1] => #0 [2] => 1 [3] => 2 ) [bL] => Array ( [0] => rays [1] => #0 [2] => 1 [3] => 1 ) [rL] => Array ( [0] => rays [1] => #0 [2] => 1 [3] => 0 ) [qL] => Array ( [0] => merge [1] => rays [2] => #0 [3] => 1 [4] => 0 [5] => rays [6] => #0 [7] => 1 [8] => 1 ) [kL] => Array ( [0] => merge [1] => leaps [2] => #0 [3] => 1 [4] => 0 [5] => leaps [6] => #0 [7] => 1 [8] => 1 ) [P] => Array ( [0] => remove [1] => var [2] => ep [3] => and [4] => < [5] => rankname [6] => #1 [7] => var [8] => bpr [9] => and [10] => < [11] => rankname [12] => var [13] => ep [14] => rankname [15] => #1 [16] => and [17] => == [18] => filename [19] => var [20] => ep [21] => filename [22] => #1 [23] => and [24] => == [25] => rankname [26] => var [27] => ep [28] => rankname [29] => #0 [30] => and [31] => checkleap [32] => #0 [33] => #1 [34] => 1 [35] => 1 [36] => or [37] => checkride [38] => #0 [39] => #1 [40] => 0 [41] => 1 [42] => and [43] => empty [44] => #1 [45] => or [46] => and [47] => islower [48] => space [49] => #1 [50] => checkleap [51] => #0 [52] => #1 [53] => 1 [54] => 1 [55] => and [56] => <= [57] => distance [58] => #0 [59] => #1 [60] => var [61] => fps [62] => and [63] => > [64] => rank [65] => #1 [66] => rank [67] => #0 ) [p] => Array ( [0] => remove [1] => var [2] => ep [3] => and [4] => > [5] => rankname [6] => #1 [7] => var [8] => wpr [9] => and [10] => > [11] => rankname [12] => var [13] => ep [14] => rankname [15] => #1 [16] => and [17] => == [18] => filename [19] => var [20] => ep [21] => filename [22] => #1 [23] => and [24] => == [25] => rankname [26] => var [27] => ep [28] => rankname [29] => #0 [30] => and [31] => checkleap [32] => #0 [33] => #1 [34] => 1 [35] => 1 [36] => or [37] => checkride [38] => #0 [39] => #1 [40] => 0 [41] => 1 [42] => and [43] => empty [44] => #1 [45] => or [46] => and [47] => isupper [48] => space [49] => #1 [50] => checkleap [51] => #0 [52] => #1 [53] => 1 [54] => 1 [55] => and [56] => <= [57] => distance [58] => #0 [59] => #1 [60] => var [61] => fps [62] => and [63] => < [64] => rank [65] => #1 [66] => rank [67] => #0 ) [PL] => Array ( [0] => array [1] => where [2] => #0 [3] => 0 [4] => 2 [5] => where [6] => #0 [7] => 0 [8] => 1 [9] => where [10] => #0 [11] => -1 [12] => 1 [13] => where [14] => #0 [15] => 1 [16] => 1 ) [pL] => Array ( [0] => array [1] => where [2] => #0 [3] => 0 [4] => -2 [5] => where [6] => #0 [7] => 0 [8] => -1 [9] => where [10] => #0 [11] => -1 [12] => -1 [13] => where [14] => #0 [15] => 1 [16] => -1 ) [T] => Array ( [0] => checkleap [1] => #0 [2] => #1 [3] => 0 [4] => 1 [5] => and [6] => empty [7] => #1 [8] => or [9] => and [10] => islower [11] => space [12] => #1 [13] => checkleap [14] => #0 [15] => #1 [16] => 1 [17] => 1 [18] => and [19] => > [20] => rank [21] => #1 [22] => rank [23] => #0 [24] => or [25] => checkleap [26] => #0 [27] => #1 [28] => 3 [29] => 0 [30] => or [31] => checkleap [32] => #0 [33] => #1 [34] => 3 [35] => 3 ) [t] => Array ( [0] => checkleap [1] => #0 [2] => #1 [3] => 0 [4] => 1 [5] => and [6] => empty [7] => #1 [8] => or [9] => and [10] => isupper [11] => space [12] => #1 [13] => checkleap [14] => #0 [15] => #1 [16] => 1 [17] => 1 [18] => and [19] => < [20] => rank [21] => #1 [22] => rank [23] => #0 [24] => or [25] => checkleap [26] => #0 [27] => #1 [28] => 3 [29] => 0 [30] => or [31] => checkleap [32] => #0 [33] => #1 [34] => 3 [35] => 3 ) [TL] => Array ( [0] => mergeall [1] => leaps [2] => #0 [3] => 3 [4] => 0 [5] => leaps [6] => #0 [7] => 3 [8] => 3 [9] => leaps [10] => #0 [11] => 0 [12] => 1 [13] => array [14] => where [15] => #0 [16] => 0 [17] => 1 [18] => where [19] => #0 [20] => -1 [21] => 1 [22] => where [23] => #0 [24] => 1 [25] => 1 ) [tL] => Array ( [0] => mergeall [1] => leaps [2] => #0 [3] => 3 [4] => 0 [5] => leaps [6] => #0 [7] => 3 [8] => 3 [9] => leaps [10] => #0 [11] => 0 [12] => 1 [13] => array [14] => where [15] => #0 [16] => 0 [17] => -1 [18] => where [19] => #0 [20] => -1 [21] => -1 [22] => where [23] => #0 [24] => 1 [25] => -1 ) [I] => Array ( [0] => checkaride [1] => #0 [2] => #1 [3] => 0 [4] => 1 [5] => and [6] => <= [7] => distance [8] => #0 [9] => #1 [10] => var [11] => fps [12] => and [13] => empty [14] => #1 [15] => or [16] => checkleap [17] => #0 [18] => #1 [19] => 1 [20] => 1 [21] => or [22] => checkleap [23] => #0 [24] => #1 [25] => 1 [26] => 0 ) [i] => Array ( [0] => checkaride [1] => #0 [2] => #1 [3] => 0 [4] => -1 [5] => and [6] => <= [7] => distance [8] => #0 [9] => #1 [10] => var [11] => fps [12] => and [13] => empty [14] => #1 [15] => or [16] => checkleap [17] => #0 [18] => #1 [19] => 1 [20] => 1 [21] => or [22] => checkleap [23] => #0 [24] => #1 [25] => 1 [26] => 0 ) [iL] => Array ( [0] => mergeall [1] => leaps [2] => #0 [3] => 1 [4] => 1 [5] => leaps [6] => #0 [7] => 1 [8] => 0 [9] => array [10] => where [11] => #0 [12] => 0 [13] => -2 ) [IL] => Array ( [0] => mergeall [1] => leaps [2] => #0 [3] => 1 [4] => 1 [5] => leaps [6] => #0 [7] => 1 [8] => 0 [9] => array [10] => where [11] => #0 [12] => 0 [13] => 2 ) [e] => Array ( [0] => checkleap [1] => #0 [2] => #1 [3] => 1 [4] => 1 [5] => or [6] => checkleap [7] => #0 [8] => #1 [9] => 2 [10] => 2 ) [E] => Array ( [0] => checkleap [1] => #0 [2] => #1 [3] => 1 [4] => 1 [5] => or [6] => checkleap [7] => #0 [8] => #1 [9] => 2 [10] => 2 ) [eL] => Array ( [0] => merge [1] => leaps [2] => #0 [3] => 1 [4] => 1 [5] => leaps [6] => #0 [7] => 2 [8] => 2 ) [EL] => Array ( [0] => merge [1] => leaps [2] => #0 [3] => 1 [4] => 1 [5] => leaps [6] => #0 [7] => 2 [8] => 2 ) [w] => Array ( [0] => checkleap [1] => #0 [2] => #1 [3] => 1 [4] => 0 [5] => or [6] => checkleap [7] => #0 [8] => #1 [9] => 2 [10] => 0 ) [W] => Array ( [0] => checkleap [1] => #0 [2] => #1 [3] => 1 [4] => 0 [5] => or [6] => checkleap [7] => #0 [8] => #1 [9] => 2 [10] => 0 ) [wL] => Array ( [0] => merge [1] => leaps [2] => #0 [3] => 1 [4] => 0 [5] => leaps [6] => #0 [7] => 2 [8] => 0 ) [WL] => Array ( [0] => merge [1] => leaps [2] => #0 [3] => 1 [4] => 0 [5] => leaps [6] => #0 [7] => 2 [8] => 0 ) [d] => Array ( [0] => checkleap [1] => #0 [2] => #1 [3] => 1 [4] => 0 [5] => or [6] => checkleap [7] => #0 [8] => #1 [9] => 2 [10] => 0 [11] => or [12] => checkleap [13] => #0 [14] => #1 [15] => 1 [16] => 1 [17] => or [18] => checkleap [19] => #0 [20] => #1 [21] => 2 [22] => 2 [23] => or [24] => checkleap [25] => #0 [26] => #1 [27] => 3 [28] => 0 [29] => or [30] => checkleap [31] => #0 [32] => #1 [33] => 3 [34] => 3 ) [D] => Array ( [0] => checkleap [1] => #0 [2] => #1 [3] => 1 [4] => 0 [5] => or [6] => checkleap [7] => #0 [8] => #1 [9] => 2 [10] => 0 [11] => or [12] => checkleap [13] => #0 [14] => #1 [15] => 1 [16] => 1 [17] => or [18] => checkleap [19] => #0 [20] => #1 [21] => 2 [22] => 2 [23] => or [24] => checkleap [25] => #0 [26] => #1 [27] => 3 [28] => 0 [29] => or [30] => checkleap [31] => #0 [32] => #1 [33] => 3 [34] => 3 ) [dL] => Array ( [0] => mergeall [1] => leaps [2] => #0 [3] => 1 [4] => 0 [5] => leaps [6] => #0 [7] => 2 [8] => 0 [9] => leaps [10] => #0 [11] => 1 [12] => 1 [13] => leaps [14] => #0 [15] => 2 [16] => 2 [17] => leaps [18] => #0 [19] => 3 [20] => 3 [21] => leaps [22] => #0 [23] => 3 [24] => 0 ) [DL] => Array ( [0] => mergeall [1] => leaps [2] => #0 [3] => 1 [4] => 0 [5] => leaps [6] => #0 [7] => 2 [8] => 0 [9] => leaps [10] => #0 [11] => 1 [12] => 1 [13] => leaps [14] => #0 [15] => 2 [16] => 2 [17] => leaps [18] => #0 [19] => 3 [20] => 3 [21] => leaps [22] => #0 [23] => 3 [24] => 0 ) [G] => Array ( [0] => fn [1] => Array ( [0] => checkride [1] => #0 [2] => #1 [3] => 1 [4] => 0 [5] => and [6] => empty [7] => #0 ) [2] => where [3] => #0 [4] => sign [5] => - [6] => file [7] => #1 [8] => file [9] => #0 [10] => sign [11] => - [12] => rank [13] => #1 [14] => rank [15] => #0 [16] => #1 [17] => and [18] => != [19] => file [20] => #1 [21] => file [22] => #0 [23] => and [24] => != [25] => rank [26] => #1 [27] => rank [28] => #0 [29] => or [30] => checkleap [31] => #0 [32] => #1 [33] => 1 [34] => 1 ) [GL] => Array ( [0] => mergeall [1] => leaps [2] => #0 [3] => 1 [4] => 1 [5] => rays [6] => where [7] => #0 [8] => 1 [9] => 1 [10] => 1 [11] => 0 [12] => rays [13] => where [14] => #0 [15] => 1 [16] => -1 [17] => 1 [18] => 0 [19] => rays [20] => where [21] => #0 [22] => -1 [23] => -1 [24] => 1 [25] => 0 [26] => rays [27] => where [28] => #0 [29] => -1 [30] => 1 [31] => 1 [32] => 0 ) [g] => Array ( [0] => fn [1] => Array ( [0] => checkride [1] => #0 [2] => #1 [3] => 1 [4] => 0 [5] => and [6] => empty [7] => #0 ) [2] => where [3] => #0 [4] => sign [5] => - [6] => file [7] => #1 [8] => file [9] => #0 [10] => sign [11] => - [12] => rank [13] => #1 [14] => rank [15] => #0 [16] => #1 [17] => and [18] => != [19] => file [20] => #1 [21] => file [22] => #0 [23] => and [24] => != [25] => rank [26] => #1 [27] => rank [28] => #0 [29] => or [30] => checkleap [31] => #0 [32] => #1 [33] => 1 [34] => 1 ) [gL] => Array ( [0] => mergeall [1] => leaps [2] => #0 [3] => 1 [4] => 1 [5] => rays [6] => where [7] => #0 [8] => 1 [9] => 1 [10] => 1 [11] => 0 [12] => rays [13] => where [14] => #0 [15] => 1 [16] => -1 [17] => 1 [18] => 0 [19] => rays [20] => where [21] => #0 [22] => -1 [23] => -1 [24] => 1 [25] => 0 [26] => rays [27] => where [28] => #0 [29] => -1 [30] => 1 [31] => 1 [32] => 0 ) [U] => Array ( [0] => fn [1] => Array ( [0] => checkride [1] => #0 [2] => #1 [3] => 1 [4] => 1 [5] => and [6] => empty [7] => #0 ) [2] => where [3] => #0 [4] => 0 [5] => sign [6] => - [7] => rank [8] => #1 [9] => rank [10] => #0 [11] => #1 [12] => or [13] => fn [14] => Array ( [0] => checkride [1] => #0 [2] => #1 [3] => 1 [4] => 1 [5] => and [6] => empty [7] => #0 ) [15] => where [16] => #0 [17] => sign [18] => - [19] => file [20] => #1 [21] => file [22] => #0 [23] => 0 [24] => #1 [25] => or [26] => checkleap [27] => #0 [28] => #1 [29] => 1 [30] => 0 ) [UL] => Array ( [0] => mergeall [1] => leaps [2] => #0 [3] => 1 [4] => 0 [5] => rays [6] => where [7] => #0 [8] => 0 [9] => 1 [10] => 1 [11] => 1 [12] => rays [13] => where [14] => #0 [15] => 0 [16] => -1 [17] => 1 [18] => 1 [19] => rays [20] => where [21] => #0 [22] => 1 [23] => 0 [24] => 1 [25] => 1 [26] => rays [27] => where [28] => #0 [29] => -1 [30] => 0 [31] => 1 [32] => 1 ) [u] => Array ( [0] => fn [1] => Array ( [0] => checkride [1] => #0 [2] => #1 [3] => 1 [4] => 1 [5] => and [6] => empty [7] => #0 ) [2] => where [3] => #0 [4] => 0 [5] => sign [6] => - [7] => rank [8] => #1 [9] => rank [10] => #0 [11] => #1 [12] => or [13] => fn [14] => Array ( [0] => checkride [1] => #0 [2] => #1 [3] => 1 [4] => 1 [5] => and [6] => empty [7] => #0 ) [15] => where [16] => #0 [17] => sign [18] => - [19] => file [20] => #1 [21] => file [22] => #0 [23] => 0 [24] => #1 [25] => or [26] => checkleap [27] => #0 [28] => #1 [29] => 1 [30] => 0 ) [uL] => Array ( [0] => mergeall [1] => leaps [2] => #0 [3] => 1 [4] => 0 [5] => rays [6] => where [7] => #0 [8] => 0 [9] => 1 [10] => 1 [11] => 1 [12] => rays [13] => where [14] => #0 [15] => 0 [16] => -1 [17] => 1 [18] => 1 [19] => rays [20] => where [21] => #0 [22] => 1 [23] => 0 [24] => 1 [25] => 1 [26] => rays [27] => where [28] => #0 [29] => -1 [30] => 0 [31] => 1 [32] => 1 ) [C] => Array ( [0] => cond [1] => cond [2] => empty [3] => #0 [4] => capture [5] => Array ( [0] => not [1] => empty [2] => #1 ) [6] => Array ( [0] => checkhop [1] => #0 [2] => #1 [3] => 0 [4] => 1 ) [7] => Array ( [0] => checkride [1] => #0 [2] => #1 [3] => 0 [4] => 1 ) [8] => and [9] => #1 ) [c] => Array ( [0] => cond [1] => cond [2] => empty [3] => #0 [4] => capture [5] => Array ( [0] => not [1] => empty [2] => #1 ) [6] => Array ( [0] => checkhop [1] => #0 [2] => #1 [3] => 0 [4] => 1 ) [7] => Array ( [0] => checkride [1] => #0 [2] => #1 [3] => 0 [4] => 1 ) [8] => and [9] => #1 ) [CL] => Array ( [0] => rays [1] => #0 [2] => 1 [3] => 0 ) [cL] => Array ( [0] => rays [1] => #0 [2] => 1 [3] => 0 ) [V] => Array ( [0] => cond [1] => cond [2] => empty [3] => #0 [4] => capture [5] => Array ( [0] => not [1] => empty [2] => #1 ) [6] => Array ( [0] => checkhop [1] => #0 [2] => #1 [3] => 1 [4] => 1 ) [7] => Array ( [0] => checkride [1] => #0 [2] => #1 [3] => 1 [4] => 1 ) [8] => and [9] => #1 ) [v] => Array ( [0] => cond [1] => cond [2] => empty [3] => #0 [4] => capture [5] => Array ( [0] => not [1] => empty [2] => #1 ) [6] => Array ( [0] => checkhop [1] => #0 [2] => #1 [3] => 1 [4] => 1 ) [7] => Array ( [0] => checkride [1] => #0 [2] => #1 [3] => 1 [4] => 1 ) [8] => and [9] => #1 ) [VL] => Array ( [0] => rays [1] => #0 [2] => 1 [3] => 1 ) [vL] => Array ( [0] => rays [1] => #0 [2] => 1 [3] => 1 ) [O] => Array ( [0] => cond [1] => cond [2] => empty [3] => #0 [4] => capture [5] => Array ( [0] => not [1] => empty [2] => #1 ) [6] => Array ( [0] => checkhop [1] => #0 [2] => #1 [3] => 1 [4] => 1 ) [7] => Array ( [0] => checkride [1] => #0 [2] => #1 [3] => 1 [4] => 1 ) [8] => and [9] => #1 [10] => or [11] => cond [12] => cond [13] => empty [14] => #0 [15] => capture [16] => Array ( [0] => not [1] => empty [2] => #1 ) [17] => Array ( [0] => checkhop [1] => #0 [2] => #1 [3] => 0 [4] => 1 ) [18] => Array ( [0] => checkride [1] => #0 [2] => #1 [3] => 0 [4] => 1 ) [19] => and [20] => #1 ) [o] => Array ( [0] => cond [1] => cond [2] => empty [3] => #0 [4] => capture [5] => Array ( [0] => not [1] => empty [2] => #1 ) [6] => Array ( [0] => checkhop [1] => #0 [2] => #1 [3] => 1 [4] => 1 ) [7] => Array ( [0] => checkride [1] => #0 [2] => #1 [3] => 1 [4] => 1 ) [8] => and [9] => #1 [10] => or [11] => cond [12] => cond [13] => empty [14] => #0 [15] => capture [16] => Array ( [0] => not [1] => empty [2] => #1 ) [17] => Array ( [0] => checkhop [1] => #0 [2] => #1 [3] => 0 [4] => 1 ) [18] => Array ( [0] => checkride [1] => #0 [2] => #1 [3] => 0 [4] => 1 ) [19] => and [20] => #1 ) [OL] => Array ( [0] => merge [1] => rays [2] => #0 [3] => 1 [4] => 1 [5] => rays [6] => #0 [7] => 1 [8] => 0 ) [oL] => Array ( [0] => merge [1] => rays [2] => #0 [3] => 1 [4] => 1 [5] => rays [6] => #0 [7] => 1 [8] => 0 ) [L] => Array ( [0] => <= [1] => distance [2] => #0 [3] => #1 [4] => 2 [5] => and [6] => != [7] => #0 [8] => #1 ) [l] => Array ( [0] => <= [1] => distance [2] => #0 [3] => #1 [4] => 2 [5] => and [6] => != [7] => #0 [8] => #1 ) [LL] => Array ( [0] => mergeall [1] => leaps [2] => #0 [3] => 1 [4] => 0 [5] => leaps [6] => #0 [7] => 1 [8] => 1 [9] => leaps [10] => #0 [11] => 2 [12] => 0 [13] => leaps [14] => #0 [15] => 2 [16] => 1 [17] => leaps [18] => #0 [19] => 2 [20] => 2 ) [lL] => Array ( [0] => mergeall [1] => leaps [2] => #0 [3] => 1 [4] => 0 [5] => leaps [6] => #0 [7] => 1 [8] => 1 [9] => leaps [10] => #0 [11] => 2 [12] => 0 [13] => leaps [14] => #0 [15] => 2 [16] => 1 [17] => leaps [18] => #0 [19] => 2 [20] => 2 ) [m] => Array ( [0] => checkleap [1] => #0 [2] => #1 [3] => 1 [4] => 3 ) [M] => Array ( [0] => checkleap [1] => #0 [2] => #1 [3] => 1 [4] => 3 ) [mL] => Array ( [0] => leaps [1] => #0 [2] => 1 [3] => 3 ) [ML] => Array ( [0] => leaps [1] => #0 [2] => 1 [3] => 3 ) [z] => Array ( [0] => checkleap [1] => #0 [2] => #1 [3] => 2 [4] => 3 ) [Z] => Array ( [0] => checkleap [1] => #0 [2] => #1 [3] => 2 [4] => 3 ) [zL] => Array ( [0] => leaps [1] => #0 [2] => 2 [3] => 3 ) [ZL] => Array ( [0] => leaps [1] => #0 [2] => 2 [3] => 3 ) [f] => Array ( [0] => checkleap [1] => #0 [2] => #1 [3] => 1 [4] => 3 [5] => or [6] => checkleap [7] => #0 [8] => #1 [9] => 1 [10] => 2 [11] => or [12] => checkleap [13] => #0 [14] => #1 [15] => 2 [16] => 3 ) [F] => Array ( [0] => checkleap [1] => #0 [2] => #1 [3] => 1 [4] => 3 [5] => or [6] => checkleap [7] => #0 [8] => #1 [9] => 1 [10] => 2 [11] => or [12] => checkleap [13] => #0 [14] => #1 [15] => 2 [16] => 3 ) [fL] => Array ( [0] => merge [1] => merge [2] => leaps [3] => #0 [4] => 1 [5] => 2 [6] => leaps [7] => #0 [8] => 1 [9] => 3 [10] => leaps [11] => #0 [12] => 2 [13] => 3 ) [FL] => Array ( [0] => merge [1] => merge [2] => leaps [3] => #0 [4] => 1 [5] => 2 [6] => leaps [7] => #0 [8] => 1 [9] => 3 [10] => leaps [11] => #0 [12] => 2 [13] => 3 ) [H] => Array ( [0] => fn [1] => R [2] => #0 [3] => #1 [4] => or [5] => fn [6] => N [7] => #0 [8] => #1 ) [h] => Array ( [0] => fn [1] => R [2] => #0 [3] => #1 [4] => or [5] => fn [6] => N [7] => #0 [8] => #1 ) [X] => Array ( [0] => fn [1] => B [2] => #0 [3] => #1 [4] => or [5] => fn [6] => N [7] => #0 [8] => #1 ) [x] => Array ( [0] => fn [1] => B [2] => #0 [3] => #1 [4] => or [5] => fn [6] => N [7] => #0 [8] => #1 ) [HL] => Array ( [0] => merge [1] => rays [2] => #0 [3] => 1 [4] => 0 [5] => leaps [6] => #0 [7] => 1 [8] => 2 ) [hL] => Array ( [0] => merge [1] => rays [2] => #0 [3] => 1 [4] => 0 [5] => leaps [6] => #0 [7] => 1 [8] => 2 ) [XL] => Array ( [0] => merge [1] => rays [2] => #0 [3] => 1 [4] => 1 [5] => leaps [6] => #0 [7] => 1 [8] => 2 ) [xL] => Array ( [0] => merge [1] => rays [2] => #0 [3] => 1 [4] => 1 [5] => leaps [6] => #0 [7] => 1 [8] => 2 ) [A] => Array ( [0] => fn [1] => B [2] => #0 [3] => #1 [4] => or [5] => fn [6] => R [7] => #0 [8] => #1 [9] => or [10] => fn [11] => N [12] => #0 [13] => #1 ) [AL] => Array ( [0] => merge [1] => merge [2] => rays [3] => #0 [4] => 1 [5] => 0 [6] => rays [7] => #0 [8] => 1 [9] => 1 [10] => leaps [11] => #0 [12] => 1 [13] => 2 ) [a] => Array ( [0] => fn [1] => B [2] => #0 [3] => #1 [4] => or [5] => fn [6] => R [7] => #0 [8] => #1 [9] => or [10] => fn [11] => N [12] => #0 [13] => #1 ) [aL] => Array ( [0] => merge [1] => merge [2] => rays [3] => #0 [4] => 1 [5] => 0 [6] => rays [7] => #0 [8] => 1 [9] => 1 [10] => leaps [11] => #0 [12] => 1 [13] => 2 ) [J] => Array ( [0] => fn [1] => N [2] => #0 [3] => #1 [4] => or [5] => fn [6] => K [7] => #0 [8] => #1 ) [JL] => Array ( [0] => merge [1] => merge [2] => leaps [3] => #0 [4] => 1 [5] => 0 [6] => leaps [7] => #0 [8] => 1 [9] => 1 [10] => leaps [11] => #0 [12] => 1 [13] => 2 ) [j] => Array ( [0] => fn [1] => N [2] => #0 [3] => #1 [4] => or [5] => fn [6] => K [7] => #0 [8] => #1 ) [jL] => Array ( [0] => merge [1] => merge [2] => leaps [3] => #0 [4] => 1 [5] => 0 [6] => leaps [7] => #0 [8] => 1 [9] => 1 [10] => leaps [11] => #0 [12] => 1 [13] => 2 ) [S] => Array ( [0] => checkride [1] => #0 [2] => #1 [3] => 1 [4] => 0 [5] => or [6] => checkleap [7] => #0 [8] => #1 [9] => 1 [10] => 1 ) [Y] => Array ( [0] => checkride [1] => #0 [2] => #1 [3] => 1 [4] => 1 [5] => or [6] => checkleap [7] => #0 [8] => #1 [9] => 1 [10] => 0 ) [SL] => Array ( [0] => merge [1] => rays [2] => #0 [3] => 1 [4] => 0 [5] => leaps [6] => #0 [7] => 1 [8] => 1 ) [YL] => Array ( [0] => merge [1] => rays [2] => #0 [3] => 1 [4] => 1 [5] => leaps [6] => #0 [7] => 1 [8] => 0 ) [s] => Array ( [0] => checkride [1] => #0 [2] => #1 [3] => 1 [4] => 0 [5] => or [6] => checkleap [7] => #0 [8] => #1 [9] => 1 [10] => 1 ) [y] => Array ( [0] => checkride [1] => #0 [2] => #1 [3] => 1 [4] => 1 [5] => or [6] => checkleap [7] => #0 [8] => #1 [9] => 1 [10] => 0 ) [sL] => Array ( [0] => merge [1] => rays [2] => #0 [3] => 1 [4] => 0 [5] => leaps [6] => #0 [7] => 1 [8] => 1 ) [yL] => Array ( [0] => merge [1] => rays [2] => #0 [3] => 1 [4] => 1 [5] => leaps [6] => #0 [7] => 1 [8] => 0 ) [mm] => Array ( [0] => checkleap [1] => #0 [2] => #1 [3] => 1 [4] => 1 [5] => or [6] => checkleap [7] => #0 [8] => #1 [9] => 2 [10] => 2 [11] => or [12] => checkleap [13] => #0 [14] => #1 [15] => 1 [16] => 0 [17] => or [18] => checkleap [19] => #0 [20] => #1 [21] => 2 [22] => 0 ) [MM] => Array ( [0] => checkleap [1] => #0 [2] => #1 [3] => 1 [4] => 1 [5] => or [6] => checkleap [7] => #0 [8] => #1 [9] => 2 [10] => 2 [11] => or [12] => checkleap [13] => #0 [14] => #1 [15] => 1 [16] => 0 [17] => or [18] => checkleap [19] => #0 [20] => #1 [21] => 2 [22] => 0 ) [mmL] => Array ( [0] => mergeall [1] => leaps [2] => #0 [3] => 1 [4] => 1 [5] => leaps [6] => #0 [7] => 2 [8] => 2 [9] => leaps [10] => #0 [11] => 1 [12] => 0 [13] => leaps [14] => #0 [15] => 2 [16] => 0 ) [MML] => Array ( [0] => mergeall [1] => leaps [2] => #0 [3] => 1 [4] => 1 [5] => leaps [6] => #0 [7] => 2 [8] => 2 [9] => leaps [10] => #0 [11] => 1 [12] => 0 [13] => leaps [14] => #0 [15] => 2 [16] => 0 ) [SH] => Array ( [0] => fn [1] => Array ( [0] => checkaride [1] => #0 [2] => #1 [3] => 0 [4] => 1 [5] => and [6] => empty [7] => #0 ) [2] => where [3] => #0 [4] => 1 [5] => 1 [6] => #1 [7] => or [8] => fn [9] => Array ( [0] => checkaride [1] => #0 [2] => #1 [3] => 0 [4] => 1 [5] => and [6] => empty [7] => #0 ) [10] => where [11] => #0 [12] => -1 [13] => 1 [14] => #1 [15] => or [16] => fn [17] => Array ( [0] => checkaride [1] => #0 [2] => #1 [3] => 0 [4] => -1 [5] => and [6] => empty [7] => #0 ) [18] => where [19] => #0 [20] => 1 [21] => -1 [22] => #1 [23] => or [24] => fn [25] => Array ( [0] => checkaride [1] => #0 [2] => #1 [3] => 0 [4] => -1 [5] => and [6] => empty [7] => #0 ) [26] => where [27] => #0 [28] => -1 [29] => -1 [30] => #1 [31] => or [32] => checkleap [33] => #0 [34] => #1 [35] => 1 [36] => 1 ) [SHL] => Array ( [0] => mergeall [1] => leaps [2] => #0 [3] => 1 [4] => 1 [5] => ray [6] => where [7] => #0 [8] => 1 [9] => 1 [10] => 0 [11] => 1 [12] => ray [13] => where [14] => #0 [15] => 1 [16] => -1 [17] => 0 [18] => -1 [19] => ray [20] => where [21] => #0 [22] => -1 [23] => 1 [24] => 0 [25] => 1 [26] => ray [27] => where [28] => #0 [29] => -1 [30] => -1 [31] => 0 [32] => -1 ) [sh] => Array ( [0] => fn [1] => Array ( [0] => checkaride [1] => #0 [2] => #1 [3] => 0 [4] => 1 [5] => and [6] => empty [7] => #0 ) [2] => where [3] => #0 [4] => 1 [5] => 1 [6] => #1 [7] => or [8] => fn [9] => Array ( [0] => checkaride [1] => #0 [2] => #1 [3] => 0 [4] => 1 [5] => and [6] => empty [7] => #0 ) [10] => where [11] => #0 [12] => -1 [13] => 1 [14] => #1 [15] => or [16] => fn [17] => Array ( [0] => checkaride [1] => #0 [2] => #1 [3] => 0 [4] => -1 [5] => and [6] => empty [7] => #0 ) [18] => where [19] => #0 [20] => 1 [21] => -1 [22] => #1 [23] => or [24] => fn [25] => Array ( [0] => checkaride [1] => #0 [2] => #1 [3] => 0 [4] => -1 [5] => and [6] => empty [7] => #0 ) [26] => where [27] => #0 [28] => -1 [29] => -1 [30] => #1 [31] => or [32] => checkleap [33] => #0 [34] => #1 [35] => 1 [36] => 1 ) [shL] => Array ( [0] => mergeall [1] => leaps [2] => #0 [3] => 1 [4] => 1 [5] => ray [6] => where [7] => #0 [8] => 1 [9] => 1 [10] => 0 [11] => 1 [12] => ray [13] => where [14] => #0 [15] => 1 [16] => -1 [17] => 0 [18] => -1 [19] => ray [20] => where [21] => #0 [22] => -1 [23] => 1 [24] => 0 [25] => 1 [26] => ray [27] => where [28] => #0 [29] => -1 [30] => -1 [31] => 0 [32] => -1 ) [SN] => Array ( [0] => fn [1] => Array ( [0] => checkaride [1] => #0 [2] => #1 [3] => 1 [4] => 1 [5] => and [6] => empty [7] => #0 ) [2] => where [3] => #0 [4] => 0 [5] => 1 [6] => #1 [7] => or [8] => fn [9] => Array ( [0] => checkaride [1] => #0 [2] => #1 [3] => -1 [4] => 1 [5] => and [6] => empty [7] => #0 ) [10] => where [11] => #0 [12] => 0 [13] => 1 [14] => #1 [15] => or [16] => fn [17] => Array ( [0] => checkaride [1] => #0 [2] => #1 [3] => 1 [4] => 1 [5] => and [6] => empty [7] => #0 ) [18] => where [19] => #0 [20] => 0 [21] => 1 [22] => #1 [23] => or [24] => fn [25] => Array ( [0] => checkaride [1] => #0 [2] => #1 [3] => -1 [4] => -1 [5] => and [6] => empty [7] => #0 ) [26] => where [27] => #0 [28] => 0 [29] => -1 [30] => #1 [31] => or [32] => fn [33] => Array ( [0] => checkaride [1] => #0 [2] => #1 [3] => 1 [4] => -1 [5] => and [6] => empty [7] => #0 ) [34] => where [35] => #0 [36] => 0 [37] => -1 [38] => #1 [39] => or [40] => checkaleap [41] => #0 [42] => #1 [43] => 0 [44] => 1 [45] => or [46] => checkaleap [47] => #0 [48] => #1 [49] => 0 [50] => -1 ) [SNL] => Array ( [0] => mergeall [1] => ray [2] => where [3] => #0 [4] => 0 [5] => 1 [6] => 1 [7] => 1 [8] => ray [9] => where [10] => #0 [11] => 0 [12] => 1 [13] => -1 [14] => 1 [15] => ray [16] => where [17] => #0 [18] => 0 [19] => -1 [20] => -1 [21] => -1 [22] => ray [23] => where [24] => #0 [25] => 0 [26] => -1 [27] => 1 [28] => -1 [29] => where [30] => #0 [31] => 0 [32] => 1 [33] => where [34] => #0 [35] => 0 [36] => -1 ) [sn] => Array ( [0] => fn [1] => Array ( [0] => checkaride [1] => #0 [2] => #1 [3] => 1 [4] => 1 [5] => and [6] => empty [7] => #0 ) [2] => where [3] => #0 [4] => 0 [5] => 1 [6] => #1 [7] => or [8] => fn [9] => Array ( [0] => checkaride [1] => #0 [2] => #1 [3] => -1 [4] => 1 [5] => and [6] => empty [7] => #0 ) [10] => where [11] => #0 [12] => 0 [13] => 1 [14] => #1 [15] => or [16] => fn [17] => Array ( [0] => checkaride [1] => #0 [2] => #1 [3] => 1 [4] => 1 [5] => and [6] => empty [7] => #0 ) [18] => where [19] => #0 [20] => 0 [21] => 1 [22] => #1 [23] => or [24] => fn [25] => Array ( [0] => checkaride [1] => #0 [2] => #1 [3] => -1 [4] => -1 [5] => and [6] => empty [7] => #0 ) [26] => where [27] => #0 [28] => 0 [29] => -1 [30] => #1 [31] => or [32] => fn [33] => Array ( [0] => checkaride [1] => #0 [2] => #1 [3] => 1 [4] => -1 [5] => and [6] => empty [7] => #0 ) [34] => where [35] => #0 [36] => 0 [37] => -1 [38] => #1 [39] => or [40] => checkaleap [41] => #0 [42] => #1 [43] => 0 [44] => 1 [45] => or [46] => checkaleap [47] => #0 [48] => #1 [49] => 0 [50] => -1 ) [snL] => Array ( [0] => mergeall [1] => ray [2] => where [3] => #0 [4] => 0 [5] => 1 [6] => 1 [7] => 1 [8] => ray [9] => where [10] => #0 [11] => 0 [12] => 1 [13] => -1 [14] => 1 [15] => ray [16] => where [17] => #0 [18] => 0 [19] => -1 [20] => -1 [21] => -1 [22] => ray [23] => where [24] => #0 [25] => 0 [26] => -1 [27] => 1 [28] => -1 [29] => where [30] => #0 [31] => 0 [32] => 1 [33] => where [34] => #0 [35] => 0 [36] => -1 ) [sq] => Array ( [0] => checkleap [1] => #0 [2] => #1 [3] => 2 [4] => 0 [5] => or [6] => checkleap [7] => #0 [8] => #1 [9] => 2 [10] => 2 [11] => or [12] => checkleap [13] => #0 [14] => #1 [15] => 1 [16] => 2 ) [SQ] => Array ( [0] => checkleap [1] => #0 [2] => #1 [3] => 2 [4] => 0 [5] => or [6] => checkleap [7] => #0 [8] => #1 [9] => 2 [10] => 2 [11] => or [12] => checkleap [13] => #0 [14] => #1 [15] => 1 [16] => 2 ) [sqL] => Array ( [0] => mergeall [1] => leaps [2] => #0 [3] => 2 [4] => 0 [5] => leaps [6] => #0 [7] => 2 [8] => 2 [9] => leaps [10] => #0 [11] => 1 [12] => 2 ) [SQL] => Array ( [0] => mergeall [1] => leaps [2] => #0 [3] => 2 [4] => 0 [5] => leaps [6] => #0 [7] => 2 [8] => 2 [9] => leaps [10] => #0 [11] => 1 [12] => 2 ) [ch] => Array ( [0] => checkleap [1] => #0 [2] => #1 [3] => 1 [4] => 3 [5] => or [6] => checkleap [7] => #0 [8] => #1 [9] => 0 [10] => 3 [11] => or [12] => checkleap [13] => #0 [14] => #1 [15] => 2 [16] => 3 [17] => or [18] => checkleap [19] => #0 [20] => #1 [21] => 3 [22] => 3 ) [CH] => Array ( [0] => checkleap [1] => #0 [2] => #1 [3] => 1 [4] => 3 [5] => or [6] => checkleap [7] => #0 [8] => #1 [9] => 0 [10] => 3 [11] => or [12] => checkleap [13] => #0 [14] => #1 [15] => 2 [16] => 3 [17] => or [18] => checkleap [19] => #0 [20] => #1 [21] => 3 [22] => 3 ) [chL] => Array ( [0] => mergeall [1] => leaps [2] => #0 [3] => 0 [4] => 3 [5] => leaps [6] => #0 [7] => 1 [8] => 3 [9] => leaps [10] => #0 [11] => 2 [12] => 3 [13] => leaps [14] => #0 [15] => 3 [16] => 3 ) [CHL] => Array ( [0] => mergeall [1] => leaps [2] => #0 [3] => 0 [4] => 3 [5] => leaps [6] => #0 [7] => 1 [8] => 3 [9] => leaps [10] => #0 [11] => 2 [12] => 3 [13] => leaps [14] => #0 [15] => 3 [16] => 3 ) [dw] => Array ( [0] => checkleap [1] => #0 [2] => #1 [3] => 2 [4] => 0 [5] => or [6] => checkleap [7] => #0 [8] => #1 [9] => 2 [10] => 2 [11] => or [12] => checkleap [13] => #0 [14] => #1 [15] => 1 [16] => 2 [17] => or [18] => checkleap [19] => #0 [20] => #1 [21] => 1 [22] => 3 [23] => or [24] => checkleap [25] => #0 [26] => #1 [27] => 0 [28] => 3 [29] => or [30] => checkleap [31] => #0 [32] => #1 [33] => 2 [34] => 3 [35] => or [36] => checkleap [37] => #0 [38] => #1 [39] => 3 [40] => 3 ) [DW] => Array ( [0] => checkleap [1] => #0 [2] => #1 [3] => 2 [4] => 0 [5] => or [6] => checkleap [7] => #0 [8] => #1 [9] => 2 [10] => 2 [11] => or [12] => checkleap [13] => #0 [14] => #1 [15] => 1 [16] => 2 [17] => or [18] => checkleap [19] => #0 [20] => #1 [21] => 1 [22] => 3 [23] => or [24] => checkleap [25] => #0 [26] => #1 [27] => 0 [28] => 3 [29] => or [30] => checkleap [31] => #0 [32] => #1 [33] => 2 [34] => 3 [35] => or [36] => checkleap [37] => #0 [38] => #1 [39] => 3 [40] => 3 ) [dwL] => Array ( [0] => mergeall [1] => leaps [2] => #0 [3] => 2 [4] => 0 [5] => leaps [6] => #0 [7] => 2 [8] => 2 [9] => leaps [10] => #0 [11] => 1 [12] => 2 [13] => leaps [14] => #0 [15] => 0 [16] => 3 [17] => leaps [18] => #0 [19] => 1 [20] => 3 [21] => leaps [22] => #0 [23] => 2 [24] => 3 [25] => leaps [26] => #0 [27] => 3 [28] => 3 ) [DWL] => Array ( [0] => mergeall [1] => leaps [2] => #0 [3] => 2 [4] => 0 [5] => leaps [6] => #0 [7] => 2 [8] => 2 [9] => leaps [10] => #0 [11] => 1 [12] => 2 [13] => leaps [14] => #0 [15] => 0 [16] => 3 [17] => leaps [18] => #0 [19] => 1 [20] => 3 [21] => leaps [22] => #0 [23] => 2 [24] => 3 [25] => leaps [26] => #0 [27] => 3 [28] => 3 ) [hk] => Array ( [0] => checkleap [1] => #0 [2] => #1 [3] => 2 [4] => 0 [5] => or [6] => checkleap [7] => #0 [8] => #1 [9] => 2 [10] => 2 [11] => or [12] => checkleap [13] => #0 [14] => #1 [15] => 3 [16] => 0 [17] => or [18] => checkleap [19] => #0 [20] => #1 [21] => 3 [22] => 3 ) [HK] => Array ( [0] => checkleap [1] => #0 [2] => #1 [3] => 2 [4] => 0 [5] => or [6] => checkleap [7] => #0 [8] => #1 [9] => 2 [10] => 2 [11] => or [12] => checkleap [13] => #0 [14] => #1 [15] => 3 [16] => 0 [17] => or [18] => checkleap [19] => #0 [20] => #1 [21] => 3 [22] => 3 ) [hkL] => Array ( [0] => mergeall [1] => leaps [2] => #0 [3] => 2 [4] => 0 [5] => leaps [6] => #0 [7] => 2 [8] => 2 [9] => leaps [10] => #0 [11] => 3 [12] => 3 [13] => leaps [14] => #0 [15] => 3 [16] => 0 ) [HKL] => Array ( [0] => mergeall [1] => leaps [2] => #0 [3] => 2 [4] => 0 [5] => leaps [6] => #0 [7] => 2 [8] => 2 [9] => leaps [10] => #0 [11] => 3 [12] => 3 [13] => leaps [14] => #0 [15] => 3 [16] => 0 ) [@] => Array ( [0] => false ) [friends] => Array ( [0] => onlyupper ) [friend] => Array ( [0] => isupper [1] => #0 ) [enemies] => Array ( [0] => onlylower ) )uservar
Array ( [0] => Array ( [main] => Array ( [ep] => [mypieces] => Array ( [a] => bamazon.png [A] => wamazon.png [b] => bbishop.png [B] => wbishop.png [c] => bcannon.png [C] => wcannon.png [d] => bfalcon.png [D] => wfalcon.png [e] => belephant.png [E] => welephant.png [f] => bwildebeest.png [F] => wwildebeest.png [g] => bgryphon.png [G] => wgryphon.png [h] => bchancellor.png [H] => wchancellor.png [i] => bduke.png [I] => wduke.png [j] => bknightguard.png [J] => wknightguard.png [k] => bking.png [K] => wking.png [l] => blion.png [L] => wlion.png [m] => bcamel.png [M] => wcamel.png [n] => bknight.png [N] => wknight.png [o] => bslidinggeneral.png [O] => wslidinggeneral.png [p] => bpawn.png [P] => wpawn.png [q] => bqueen.png [Q] => wqueen.png [r] => brook.png [R] => wrook.png [s] => bpromotedrook.png [S] => wpromotedrook.png [t] => bman.png [T] => wman.png [u] => brhino.png [U] => wrhino.png [v] => bcrocodile.png [V] => wcrocodile.png [w] => bwarmachinewazir.png [W] => wwarmachinewazir.png [x] => bcardinal.png [X] => wcardinal.png [y] => bpromotedbishop.png [Y] => wpromotedbishop.png [z] => bgiraffe.png [Z] => wgiraffe.png [sq] => bsquirrel.png [SQ] => wsquirrel.png [sn] => bsnake.png [SN] => wsnake.png [sh] => bship.png [SH] => wship.png [hk] => bbird.png [HK] => wbird.png [mm] => bram.png [MM] => wram.png [ch] => btiger.png [CH] => wtiger.png [dw] => bdragon.png [DW] => wdragon.png ) [label] => Z [wpr] => 5 [bpr] => 12 [wsr] => 4 [bsr] => 13 [fps] => 2 [pzs] => 1 [wprom] => Q [bprom] => q [wpromi] => A [bpromi] => a [wpromf] => F [bpromf] => f [wproml] => L [bproml] => l [wpromd] => D [bpromd] => d [wpromg] => G [bpromg] => g [wpromu] => U [bpromu] => u [wpromdw] => DW [bpromdw] => dw [k] => h15 [K] => h2 [posvar] => b{bi}{ra}{sq}{ti}jfoa{dr}duj{ti}{sq}{ra}{bi}cmzvsxlkqghyvzmcernb{sh}{sn}iwwi{sn}{sh}bnret{cp}t{cp}t{cp}t{cp}{cp}t{cp}t{cp}t{cp}tpppppppppppppppp96PPPPPPPPPPPPPPPPT{CP}T{CP}T{CP}T{CP}{CP}T{CP}T{CP}T{CP}TERNB{SH}{SN}IWWI{SN}{SH}BNRECMZVSXLKQGHYVZMC{BI}{RA}{SQ}{TI}JFOA{DR}DUJ{TI}{SQ}{RA}{BI},h15,h2 [cspaces] => [royal] => K ) ) [2] => Array ( [stalemated] => Array ( [subargs] => Array ( [0] => h2 ) ) [main] => Array ( [kingpos] => h2 [from] => a5 [piece] => P [to] => a7 ) ) [8] => Array ( [checked] => Array ( [subargs] => Array ( [0] => h2 ) [from] => a16 [piece] => bi ) [main] => Array ( [king] => h2 ) ) )mline
Array ( [0] => MoveLine Object ( [movenum] => 0 [move] => [level] => 0 [comment] => [length] => 0 [newturn] => [turn] => 0 ) )allmoves
Array ( )movelist
constants
Array ( )