119 lines
353 KiB
MiniZinc
119 lines
353 KiB
MiniZinc
MAXF = 2147483646;
|
|
MAXO = 275;
|
|
MAXP = 845;
|
|
MAXT = 408;
|
|
MAXI = 40;
|
|
MAXC = 150;
|
|
MAXR = 1090;
|
|
optimize_cycles = true;
|
|
bb_ops = [0..35, 36..60, 61..131, 132..173, 174..197, 198..253, 254..275];
|
|
bb_operands = [0..109, 110..200, 201..396, 397..523, 524..614, 615..769, 770..845];
|
|
bb_temps = [0..53, 54..97, 98..190, 191..251, 252..295, 296..370, 371..408];
|
|
bb_subsumed = [2..2 union 5..5, 2..2 union 5..5, {}, 2..2 union 5..5, 2..2 union 5..5, 1..2 union 5..5, 2..2 union 5..5];
|
|
bb_frequency = [4, 2, 3, 4, 3, 2, 4];
|
|
bb_maxcycle = [78, 50, 150, 81, 49, 113, 55];
|
|
bb_optional_min = [1, 0, 1, 0, 0, 0, 1];
|
|
bb_order = [3, 6, 4, 1, 2, 5, 7];
|
|
op_operands = array1d(0..275, [0..22, {}, {}, 23..24, 25..26, 27..28, 29..30, 31..32, 33..34, 35..36, 37..38, 39..40, 41..42, 43..44, 45..46, 47..48, 49..50, 51..52, 53..54, 55..56, 57..58, 59..60, 61..62, 63..64, 65..67, 68..69, 70..71, 72..73, 74..75, 76..77, 78..79, 80..81, 82..83, 84..85, 86..87, 88..109, 110..131, 132..133, 134..135, 136..137, 138..139, 140..141, 142..143, 144..145, 146..147, 148..149, 150..152, 153..154, 155..156, 157..158, 159..160, 161..162, 163..164, 165..166, 167..168, 169..170, 171..172, 173..174, 175..176, 177..178, 179..200, 201..222, 223..224, 225..226, 227..228, 229..230, 231..231, 232..233, 234..235, 236..237, 238..239, 240..242, 243..244, 245..246, 247..248, 249..250, 251..252, 253..254, 255..256, 257..258, 259..260, 261..262, 263..264, 265..266, 267..268, 269..270, 271..272, 273..274, 275..276, 277..278, 279..280, 281..282, 283..285, 286..287, 288..289, 290..291, 292..293, 294..295, 296..297, 298..299, 300..301, 302..303, 304..306, 307..308, 309..310, 311..312, 313..315, 316..317, 318..319, 320..321, 322..323, 324..325, 326..326, 327..328, 329..330, 331..332, 333..334, 335..336, 337..337, 338..339, 340..341, 342..343, 344..345, 346..347, 348..348, 349..360, 361..366, 367..368, 369..370, 371..372, 373..374, 375..396, 397..418, 419..420, 421..422, 423..424, 425..426, 427..428, 429..430, 431..432, 433..434, 435..436, 437..438, 439..440, 441..442, 443..445, 446..447, 448..449, 450..451, 452..453, 454..455, 456..457, 458..460, 461..462, 463..464, 465..466, 467..468, 469..470, 471..472, 473..475, 476..477, 478..479, 480..481, 482..483, 484..485, 486..487, 488..489, 490..491, 492..493, 494..495, 496..497, 498..499, 500..500, 501..523, 524..546, 547..548, 549..550, 551..552, 553..554, 555..556, 557..558, 559..560, 561..562, 563..564, 565..566, 567..568, 569..570, 571..572, 573..575, 576..577, 578..579, 580..581, 582..583, 584..585, 586..587, 588..589, 590..591, 592..614, 615..636, 637..638, 639..640, 641..642, 643..644, 645..646, 647..648, 649..650, 651..652, 653..654, 655..656, 657..658, 659..660, 661..663, 664..665, 666..667, 668..669, 670..671, 672..673, 674..675, 676..678, 679..680, 681..682, 683..684, 685..686, 687..688, 689..690, 691..692, 693..694, 695..696, 697..699, 700..701, 702..703, 704..705, 706..707, 708..709, 710..711, 712..713, 714..715, 716..717, 718..719, 720..721, 722..723, 724..725, 726..727, 728..729, 730..731, 732..733, 734..735, 736..737, 738..739, 740..743, 744..745, 746..747, 748..749, 750..769, 770..789, 790..791, 792..793, 794..795, 796..797, 798..799, 800..801, 802..803, 804..805, 806..807, 808..809, 810..811, 812..813, 814..815, 816..817, 818..819, 820..821, 822..823, 824..825, {}, 826..826, 827..845]);
|
|
op_instructions = array1d(0..275, [2..2, 3..3, 0..0 union 4..4, 0..0 union 5..6, 0..0 union 5..6, 0..0 union 5..6, 0..0 union 6..6, 0..0 union 6..6, 0..0 union 6..6, 0..0 union 6..6, 0..0 union 6..6, 0..0 union 6..6, 0..0 union 6..6, 0..0 union 6..6, 0..0 union 7..7, 0..0 union 7..7, 0..0 union 7..7, 0..0 union 7..7, 0..0 union 7..7, 0..0 union 7..7, 0..0 union 5..6, 0..0 union 5..6, 0..0 union 5..5 union 8..8, 0..0 union 5..5 union 8..8, 9..9, 0..0 union 5..6, 0..0 union 5..5 union 8..8, 10..10, 0..0 union 5..6, 0..0 union 5..5 union 8..8, 0..0 union 5..5 union 8..8, 0..0 union 5..5 union 8..8, 0..0 union 5..5 union 8..8, 0..0 union 5..5 union 8..8, 11..11, 2..2, 2..2, 0..0 union 5..6, 0..0 union 5..6, 0..0 union 5..6, 0..0 union 5..6, 0..0 union 5..5 union 8..8, 12..12, 0..0 union 5..6, 0..0 union 5..5 union 8..8, 0..0 union 5..5 union 8..8, 9..9, 0..0 union 5..6, 0..0 union 5..5 union 8..8, 13..13, 0..0 union 5..6, 14..14, 0..0 union 5..6, 0..0 union 5..5 union 8..8, 0..0 union 5..5 union 8..8, 0..0 union 5..5 union 8..8, 0..0 union 5..5 union 8..8, 0..0 union 5..5 union 8..8, 0..0 union 5..5 union 8..8, 15..15, 2..2, 2..2, 0..0 union 5..6, 0..0 union 5..6, 0..0 union 5..6, 0..0 union 5..6, 16..16, 17..17, 0..0 union 5..6, 0..0 union 5..5 union 8..8, 0..0 union 5..5 union 8..8, 18..18, 0..0 union 5..6, 0..0 union 5..5 union 8..8, 19..19, 0..0 union 5..6, 0..0 union 5..5 union 8..8, 12..12, 0..0 union 5..6, 0..0 union 5..5 union 8..8, 12..12, 0..0 union 5..6, 14..14, 0..0 union 5..6, 0..0 union 5..5 union 8..8, 20..20, 0..0 union 5..6, 0..0 union 5..5 union 8..8, 21..21, 0..0 union 5..6, 0..0 union 5..5 union 8..8, 0..0 union 5..5 union 8..8, 9..9, 0..0 union 5..6, 0..0 union 5..5 union 8..8, 22..22, 0..0 union 5..6, 0..0 union 5..5 union 8..8, 22..22, 0..0 union 5..6, 0..0 union 5..5 union 8..8, 0..0 union 5..5 union 8..8, 9..9, 0..0 union 5..6, 0..0 union 5..5 union 8..8, 0..0 union 5..5 union 8..8, 23..23, 0..0 union 5..6, 0..0 union 5..5 union 8..8, 14..14, 0..0 union 5..6, 0..0 union 5..5 union 8..8, 24..24, 0..0 union 5..5 union 8..8, 14..14, 0..0 union 5..6, 0..0 union 5..5 union 8..8, 12..12, 25..25, 0..0 union 5..5 union 8..8, 0..0 union 5..5 union 8..8, 0..0 union 5..5 union 8..8, 0..0 union 5..5 union 8..8, 0..0 union 5..5 union 8..8, 26..26, 2..2, 1..1, 0..0 union 5..5 union 8..8, 0..0 union 5..5 union 8..8, 0..0 union 5..5 union 8..8, 0..0 union 5..5 union 8..8, 2..2, 2..2, 0..0 union 5..6, 0..0 union 5..6, 0..0 union 5..6, 0..0 union 5..6, 0..0 union 5..5 union 8..8, 22..22, 0..0 union 5..6, 0..0 union 5..5 union 8..8, 22..22, 0..0 union 5..6, 0..0 union 5..5 union 8..8, 0..0 union 5..5 union 8..8, 9..9, 0..0 union 5..6, 0..0 union 5..5 union 8..8, 22..22, 0..0 union 5..6, 0..0 union 5..5 union 8..8, 0..0 union 5..5 union 8..8, 9..9, 0..0 union 5..6, 0..0 union 5..5 union 8..8, 12..12, 0..0 union 5..6, 0..0 union 5..5 union 8..8, 0..0 union 5..5 union 8..8, 9..9, 0..0 union 5..6, 0..0 union 5..5 union 8..8, 12..12, 0..0 union 5..6, 14..14, 0..0 union 5..6, 0..0 union 5..5 union 8..8, 0..0 union 5..5 union 8..8, 0..0 union 5..5 union 8..8, 0..0 union 5..5 union 8..8, 0..0 union 5..5 union 8..8, 0..0 union 5..5 union 8..8, 27..27, 2..2, 2..2, 0..0 union 5..6, 0..0 union 5..6, 0..0 union 5..6, 0..0 union 5..6, 0..0 union 5..6, 0..0 union 5..5 union 8..8, 12..12, 0..0 union 5..6, 0..0 union 5..5 union 8..8, 12..12, 0..0 union 5..6, 0..0 union 5..5 union 8..8, 0..0 union 5..5 union 8..8, 28..28, 0..0 union 5..6, 0..0 union 5..5 union 8..8, 0..0 union 5..5 union 8..8, 0..0 union 5..5 union 8..8, 0..0 union 5..5 union 8..8, 0..0 union 5..5 union 8..8, 0..0 union 5..5 union 8..8, 11..11, 2..2, 2..2, 0..0 union 5..6, 0..0 union 5..6, 0..0 union 5..6, 0..0 union 5..6, 0..0 union 5..5 union 8..8, 22..22, 0..0 union 5..6, 0..0 union 5..5 union 8..8, 22..22, 0..0 union 5..6, 0..0 union 5..5 union 8..8, 0..0 union 5..5 union 8..8, 9..9, 0..0 union 5..6, 0..0 union 5..5 union 8..8, 22..22, 0..0 union 5..6, 0..0 union 5..5 union 8..8, 0..0 union 5..5 union 8..8, 23..23, 0..0 union 5..6, 0..0 union 5..5 union 8..8, 12..12, 0..0 union 5..6, 0..0 union 5..5 union 8..8, 12..12, 0..0 union 5..6, 0..0 union 5..5 union 8..8, 0..0 union 5..5 union 8..8, 9..9, 0..0 union 5..6, 0..0 union 5..5 union 8..8, 12..12, 0..0 union 5..6, 0..0 union 5..5 union 8..8, 29..29, 0..0 union 7..7 union 30..30, 14..14, 0..0 union 5..6, 0..0 union 5..5 union 8..8, 31..31, 0..0 union 32..33, 0..0 union 32..32 union 34..34, 35..35, 0..0 union 7..7 union 30..30, 0..0 union 30..30 union 36..36, 0..0 union 30..30 union 36..36, 37..37, 0..0 union 5..5 union 8..8, 0..0 union 5..5 union 8..8, 38..38, 0..0 union 5..6, 0..0 union 5..5 union 8..8, 0..0 union 5..5 union 8..8, 2..2, 2..2, 0..0 union 5..6, 0..0 union 5..6, 0..0 union 5..5 union 8..8, 0..0 union 8..8, 0..0 union 8..8, 0..0 union 8..8, 0..0 union 8..8, 0..0 union 8..8, 0..0 union 8..8, 0..0 union 8..8, 0..0 union 8..8, 0..0 union 36..36, 0..0 union 36..36, 0..0 union 36..36, 0..0 union 36..36, 0..0 union 36..36, 0..0 union 36..36, 0..0 union 5..5 union 8..8, 0..0 union 39..39, 40..40, 2..2]);
|
|
op_type = array1d(0..275, [4, 0, 0, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 0, 14, 14, 0, 14, 14, 14, 14, 14, 14, 1, 5, 4, 14, 14, 14, 14, 14, 0, 14, 14, 14, 0, 14, 14, 0, 14, 0, 14, 14, 14, 14, 14, 14, 14, 1, 5, 4, 14, 14, 14, 14, 0, 0, 14, 14, 14, 0, 14, 14, 0, 14, 14, 0, 14, 14, 0, 14, 0, 14, 14, 0, 14, 14, 0, 14, 14, 14, 0, 14, 14, 0, 14, 14, 0, 14, 14, 14, 0, 14, 14, 14, 0, 14, 14, 0, 14, 14, 0, 14, 0, 14, 14, 0, 0, 14, 14, 14, 14, 14, 2, 13, 6, 14, 14, 14, 14, 5, 4, 14, 14, 14, 14, 14, 0, 14, 14, 0, 14, 14, 14, 0, 14, 14, 0, 14, 14, 14, 0, 14, 14, 0, 14, 14, 14, 0, 14, 14, 0, 14, 0, 14, 14, 14, 14, 14, 14, 14, 1, 5, 4, 14, 14, 14, 14, 14, 14, 0, 14, 14, 0, 14, 14, 14, 0, 14, 14, 14, 14, 14, 14, 14, 1, 5, 4, 14, 14, 14, 14, 14, 0, 14, 14, 0, 14, 14, 14, 0, 14, 14, 0, 14, 14, 14, 0, 14, 14, 0, 14, 14, 0, 14, 14, 14, 0, 14, 14, 0, 14, 14, 0, 14, 0, 14, 14, 0, 14, 14, 0, 14, 14, 14, 0, 14, 14, 0, 14, 14, 14, 5, 4, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 0, 1, 5]);
|
|
op_mand = array1d(0..275, [true, true, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, true, false, false, true, false, false, false, false, false, false, true, true, true, false, false, false, false, false, true, false, false, false, true, false, false, true, false, true, false, false, false, false, false, false, false, true, true, true, false, false, false, false, true, true, false, false, false, true, false, false, true, false, false, true, false, false, true, false, true, false, false, true, false, false, true, false, false, false, true, false, false, true, false, false, true, false, false, false, true, false, false, false, true, false, false, true, false, false, true, false, true, false, false, true, true, false, false, false, false, false, true, true, true, false, false, false, false, true, true, false, false, false, false, false, true, false, false, true, false, false, false, true, false, false, true, false, false, false, true, false, false, true, false, false, false, true, false, false, true, false, true, false, false, false, false, false, false, false, true, true, true, false, false, false, false, false, false, true, false, false, true, false, false, false, true, false, false, false, false, false, false, false, true, true, true, false, false, false, false, false, true, false, false, true, false, false, false, true, false, false, true, false, false, false, true, false, false, true, false, false, true, false, false, false, true, false, false, true, false, false, true, false, true, false, false, true, false, false, true, false, false, false, true, false, false, true, false, false, false, true, true, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, true, true]);
|
|
atom_regs = array1d(-1..17, [{}, 0..1090, 0..31, 0..31, 1..1, 24..24, 30..30, 32..32, 33..64, 33..64, 33..33 union 35..35 union 37..37 union 39..39 union 41..41 union 43..43 union 45..45 union 47..47 union 49..49 union 51..51 union 53..53 union 55..55 union 57..57 union 59..59 union 61..61 union 63..63, 33..33 union 35..35 union 37..37 union 39..39 union 41..41 union 43..43 union 45..45 union 47..47 union 49..49 union 51..51 union 53..53 union 55..55 union 57..57 union 59..59 union 61..61 union 63..63, 33..33, 65..65, 66..66, 67..578, 67..67 union 69..69 union 71..71 union 73..73 union 75..75 union 77..77 union 79..79 union 81..81 union 83..83 union 85..85 union 87..87 union 89..89 union 91..91 union 93..93 union 95..95 union 97..97 union 99..99 union 101..101 union 103..103 union 105..105 union 107..107 union 109..109 union 111..111 union 113..113 union 115..115 union 117..117 union 119..119 union 121..121 union 123..123 union 125..125 union 127..127 union 129..129 union 131..131 union 133..133 union 135..135 union 137..137 union 139..139 union 141..141 union 143..143 union 145..145 union 147..147 union 149..149 union 151..151 union 153..153 union 155..155 union 157..157 union 159..159 union 161..161 union 163..163 union 165..165 union 167..167 union 169..169 union 171..171 union 173..173 union 175..175 union 177..177 union 179..179 union 181..181 union 183..183 union 185..185 union 187..187 union 189..189 union 191..191 union 193..193 union 195..195 union 197..197 union 199..199 union 201..201 union 203..203 union 205..205 union 207..207 union 209..209 union 211..211 union 213..213 union 215..215 union 217..217 union 219..219 union 221..221 union 223..223 union 225..225 union 227..227 union 229..229 union 231..231 union 233..233 union 235..235 union 237..237 union 239..239 union 241..241 union 243..243 union 245..245 union 247..247 union 249..249 union 251..251 union 253..253 union 255..255 union 257..257 union 259..259 union 261..261 union 263..263 union 265..265 union 267..267 union 269..269 union 271..271 union 273..273 union 275..275 union 277..277 union 279..279 union 281..281 union 283..283 union 285..285 union 287..287 union 289..289 union 291..291 union 293..293 union 295..295 union 297..297 union 299..299 union 301..301 union 303..303 union 305..305 union 307..307 union 309..309 union 311..311 union 313..313 union 315..315 union 317..317 union 319..319 union 321..321 union 323..323 union 325..325 union 327..327 union 329..329 union 331..331 union 333..333 union 335..335 union 337..337 union 339..339 union 341..341 union 343..343 union 345..345 union 347..347 union 349..349 union 351..351 union 353..353 union 355..355 union 357..357 union 359..359 union 361..361 union 363..363 union 365..365 union 367..367 union 369..369 union 371..371 union 373..373 union 375..375 union 377..377 union 379..379 union 381..381 union 383..383 union 385..385 union 387..387 union 389..389 union 391..391 union 393..393 union 395..395 union 397..397 union 399..399 union 401..401 union 403..403 union 405..405 union 407..407 union 409..409 union 411..411 union 413..413 union 415..415 union 417..417 union 419..419 union 421..421 union 423..423 union 425..425 union 427..427 union 429..429 union 431..431 union 433..433 union 435..435 union 437..437 union 439..439 union 441..441 union 443..443 union 445..445 union 447..447 union 449..449 union 451..451 union 453..453 union 455..455 union 457..457 union 459..459 union 461..461 union 463..463 union 465..465 union 467..467 union 469..469 union 471..471 union 473..473 union 475..475 union 477..477 union 479..479 union 481..481 union 483..483 union 485..485 union 487..487 union 489..489 union 491..491 union 493..493 union 495..495 union 497..497 union 499..499 union 501..501 union 503..503 union 505..505 union 507..507 union 509..509 union 511..511 union 513..513 union 515..515 union 517..517 union 519..519 union 521..521 union 523..523 union 525..525 union 527..527 union 529..529 union 531..531 union 533..533 union 535..535 union 537..537 union 539..539 union 541..541 union 543..543 union 545..545 union 547..547 union 549..549 union 551..551 union 553..553 union 555..555 union 557..557 union 559..559 union 561..561 union 563..563 union 565..565 union 567..567 union 569..569 union 571..571 union 573..573 union 575..575 union 577..577, 579..1090, 579..579 union 581..581 union 583..583 union 585..585 union 587..587 union 589..589 union 591..591 union 593..593 union 595..595 union 597..597 union 599..599 union 601..601 union 603..603 union 605..605 union 607..607 union 609..609 union 611..611 union 613..613 union 615..615 union 617..617 union 619..619 union 621..621 union 623..623 union 625..625 union 627..627 union 629..629 union 631..631 union 633..633 union 635..635 union 637..637 union 639..639 union 641..641 union 643..643 union 645..645 union 647..647 union 649..649 union 651..651 union 653..653 union 655..655 union 657..657 union 659..659 union 661..661 union 663..663 union 665..665 union 667..667 union 669..669 union 671..671 union 673..673 union 675..675 union 677..677 union 679..679 union 681..681 union 683..683 union 685..685 union 687..687 union 689..689 union 691..691 union 693..693 union 695..695 union 697..697 union 699..699 union 701..701 union 703..703 union 705..705 union 707..707 union 709..709 union 711..711 union 713..713 union 715..715 union 717..717 union 719..719 union 721..721 union 723..723 union 725..725 union 727..727 union 729..729 union 731..731 union 733..733 union 735..735 union 737..737 union 739..739 union 741..741 union 743..743 union 745..745 union 747..747 union 749..749 union 751..751 union 753..753 union 755..755 union 757..757 union 759..759 union 761..761 union 763..763 union 765..765 union 767..767 union 769..769 union 771..771 union 773..773 union 775..775 union 777..777 union 779..779 union 781..781 union 783..783 union 785..785 union 787..787 union 789..789 union 791..791 union 793..793 union 795..795 union 797..797 union 799..799 union 801..801 union 803..803 union 805..805 union 807..807 union 809..809 union 811..811 union 813..813 union 815..815 union 817..817 union 819..819 union 821..821 union 823..823 union 825..825 union 827..827 union 829..829 union 831..831 union 833..833 union 835..835 union 837..837 union 839..839 union 841..841 union 843..843 union 845..845 union 847..847 union 849..849 union 851..851 union 853..853 union 855..855 union 857..857 union 859..859 union 861..861 union 863..863 union 865..865 union 867..867 union 869..869 union 871..871 union 873..873 union 875..875 union 877..877 union 879..879 union 881..881 union 883..883 union 885..885 union 887..887 union 889..889 union 891..891 union 893..893 union 895..895 union 897..897 union 899..899 union 901..901 union 903..903 union 905..905 union 907..907 union 909..909 union 911..911 union 913..913 union 915..915 union 917..917 union 919..919 union 921..921 union 923..923 union 925..925 union 927..927 union 929..929 union 931..931 union 933..933 union 935..935 union 937..937 union 939..939 union 941..941 union 943..943 union 945..945 union 947..947 union 949..949 union 951..951 union 953..953 union 955..955 union 957..957 union 959..959 union 961..961 union 963..963 union 965..965 union 967..967 union 969..969 union 971..971 union 973..973 union 975..975 union 977..977 union 979..979 union 981..981 union 983..983 union 985..985 union 987..987 union 989..989 union 991..991 union 993..993 union 995..995 union 997..997 union 999..999 union 1001..1001 union 1003..1003 union 1005..1005 union 1007..1007 union 1009..1009 union 1011..1011 union 1013..1013 union 1015..1015 union 1017..1017 union 1019..1019 union 1021..1021 union 1023..1023 union 1025..1025 union 1027..1027 union 1029..1029 union 1031..1031 union 1033..1033 union 1035..1035 union 1037..1037 union 1039..1039 union 1041..1041 union 1043..1043 union 1045..1045 union 1047..1047 union 1049..1049 union 1051..1051 union 1053..1053 union 1055..1055 union 1057..1057 union 1059..1059 union 1061..1061 union 1063..1063 union 1065..1065 union 1067..1067 union 1069..1069 union 1071..1071 union 1073..1073 union 1075..1075 union 1077..1077 union 1079..1079 union 1081..1081 union 1083..1083 union 1085..1085 union 1087..1087 union 1089..1089]);
|
|
calleesaved = 16..23 union 53..64;
|
|
callersaved = 1..15 union 24..25 union 28..28 union 30..52;
|
|
infinite = 67..1090;
|
|
range = [0..1090, 0..31, 1..15, 24..25, 30..31, 32..32, 33..64, 33..52, 65..65, 66..66, 67..578, 579..1090];
|
|
bounded = [false, false, false, false, false, false, false, false, false, false, false, false];
|
|
res_cap = [2, 1, 1, 1, 1];
|
|
res_con = array2d(1..5, 0..40, [0, 0, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 1, 1, 0, 0, 0, 0, 1, 0, 0, 1, 1, 1, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, 1, 0, 1, 0, 1, 1, 0, 0, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]);
|
|
res_dur = array2d(1..5, 0..40, [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 2, 2, 1, 1, 1, 1, 16, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 2, 1, 1, 2, 1, 2, 2, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 3, 1, 1, 1, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 2, 3, 2, 1, 3, 1, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 17, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]);
|
|
res_off = array2d(1..5, 0..40, [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 1, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]);
|
|
congr = [17..17 union 87..87 union 103..103 union 125..125 union 161..161 union 194..194 union 216..216 union 263..263 union 390..390 union 412..412 union 484..484 union 515..515 union 538..538 union 591..591 union 606..606 union 629..629 union 714..714 union 740..740 union 764..764 union 785..785 union 842..842, 18..18 union 104..104 union 126..126 union 195..195 union 217..217 union 391..391 union 413..413 union 516..516 union 539..539 union 607..607 union 630..630 union 765..765 union 786..786 union 843..843, 19..19 union 105..105 union 127..127 union 196..196 union 218..218 union 392..392 union 414..414 union 517..517 union 540..540 union 608..608 union 631..631 union 766..766 union 787..787 union 844..844, 20..20 union 106..106 union 128..128 union 197..197 union 219..219 union 393..393 union 415..415 union 518..518 union 541..541 union 609..609 union 632..632 union 767..767 union 788..788 union 845..845, 88..88 union 110..110 union 179..179 union 201..201 union 375..375 union 397..397, 89..89 union 111..111 union 180..180 union 202..202 union 376..376 union 398..398 union 501..501 union 524..524 union 592..592 union 615..615 union 750..750 union 771..771, 90..90 union 112..112 union 181..181 union 203..203 union 377..377 union 399..399 union 502..502 union 525..525 union 593..593 union 616..616 union 751..751 union 772..772, 91..91 union 113..113 union 182..182 union 204..204 union 378..378 union 400..400 union 503..503 union 526..526 union 594..594 union 617..617 union 752..752 union 773..773, 92..92 union 114..114 union 183..183 union 205..205 union 379..379 union 401..401 union 504..504 union 527..527 union 595..595 union 618..618 union 753..753 union 774..774, 93..93 union 115..115 union 184..184 union 206..206 union 380..380 union 402..402 union 505..505 union 528..528 union 596..596 union 619..619 union 754..754 union 775..775, 94..94 union 116..116 union 185..185 union 207..207 union 381..381 union 403..403 union 506..506 union 529..529 union 597..597 union 620..620 union 755..755 union 776..776, 95..95 union 117..117 union 186..186 union 208..208 union 382..382 union 404..404 union 507..507 union 530..530 union 598..598 union 621..621 union 756..756 union 777..777, 96..96 union 118..118 union 187..187 union 209..209 union 383..383 union 405..405 union 508..508 union 531..531 union 599..599 union 622..622 union 757..757 union 778..778, 97..97 union 119..119 union 188..188 union 210..210 union 384..384 union 406..406 union 509..509 union 532..532 union 600..600 union 623..623 union 758..758 union 779..779, 98..98 union 120..120 union 189..189 union 211..211 union 385..385 union 407..407 union 510..510 union 533..533 union 601..601 union 624..624 union 759..759 union 780..780, 99..99 union 121..121 union 190..190 union 212..212 union 386..386 union 408..408 union 511..511 union 534..534 union 602..602 union 625..625 union 760..760 union 781..781, 100..100 union 122..122 union 191..191 union 213..213 union 387..387 union 409..409 union 512..512 union 535..535 union 603..603 union 626..626 union 761..761 union 782..782, 101..101 union 123..123 union 192..192 union 214..214 union 388..388 union 410..410 union 513..513 union 536..536 union 604..604 union 627..627 union 762..762 union 783..783, 102..102 union 124..124 union 193..193 union 215..215 union 389..389 union 411..411 union 514..514 union 537..537 union 605..605 union 628..628 union 763..763 union 784..784, 107..107 union 129..129 union 198..198 union 220..220 union 394..394 union 416..416, 108..108 union 130..130 union 199..199 union 221..221 union 395..395 union 417..417, 109..109 union 131..131 union 200..200 union 222..222 union 396..396 union 418..418, 231..232, 336..336 union 348..348, 337..337 union 354..354, 355..355 union 361..361, 356..356 union 362..362, 357..357 union 363..363, 358..358 union 364..364, 359..359 union 365..365, 360..360 union 366..366, 519..519 union 542..542, 520..520 union 543..543 union 611..611 union 634..634 union 768..768 union 789..789, 521..521 union 544..544, 522..522 union 545..545, 523..523 union 546..546 union 614..614 union 769..770, 610..610 union 633..633, 612..612 union 635..635, 613..613 union 636..636, 742..743];
|
|
strictly_congr = [0..0 union 349..349, 1..1 union 336..336 union 348..348, 2..2 union 827..827, 3..3 union 828..828, 4..4 union 829..829, 5..5 union 830..830, 6..6 union 831..831, 7..7 union 832..832, 8..8 union 833..833, 9..9 union 834..834, 10..10 union 835..835, 11..11 union 836..836, 12..12 union 837..837, 13..13 union 838..838, 14..14 union 839..839, 15..15 union 840..840, 16..16 union 841..841, 17..17 union 87..87 union 103..103 union 125..125 union 161..161 union 194..194 union 216..216 union 263..263 union 390..390 union 412..412 union 484..484 union 515..515 union 538..538 union 591..591 union 606..606 union 629..629 union 714..714 union 740..740 union 764..764 union 785..785 union 842..842, 18..18 union 104..104 union 126..126 union 195..195 union 217..217 union 391..391 union 413..413 union 516..516 union 539..539 union 607..607 union 630..630 union 765..765 union 786..786 union 843..843, 19..19 union 105..105 union 127..127 union 196..196 union 218..218 union 392..392 union 414..414 union 517..517 union 540..540 union 608..608 union 631..631 union 766..766 union 787..787 union 844..844, 20..20 union 106..106 union 128..128 union 197..197 union 219..219 union 393..393 union 415..415 union 518..518 union 541..541 union 609..609 union 632..632 union 767..767 union 788..788 union 845..845, 22..22 union 337..337 union 354..354, 88..88 union 110..110 union 179..179 union 201..201 union 375..375 union 397..397, 89..89 union 111..111 union 180..180 union 202..202 union 376..376 union 398..398 union 501..501 union 524..524 union 592..592 union 615..615 union 750..750 union 771..771, 90..90 union 112..112 union 181..181 union 203..203 union 377..377 union 399..399 union 502..502 union 525..525 union 593..593 union 616..616 union 751..751 union 772..772, 91..91 union 113..113 union 182..182 union 204..204 union 378..378 union 400..400 union 503..503 union 526..526 union 594..594 union 617..617 union 752..752 union 773..773, 92..92 union 114..114 union 183..183 union 205..205 union 379..379 union 401..401 union 504..504 union 527..527 union 595..595 union 618..618 union 753..753 union 774..774, 93..93 union 115..115 union 184..184 union 206..206 union 380..380 union 402..402 union 505..505 union 528..528 union 596..596 union 619..619 union 754..754 union 775..775, 94..94 union 116..116 union 185..185 union 207..207 union 381..381 union 403..403 union 506..506 union 529..529 union 597..597 union 620..620 union 755..755 union 776..776, 95..95 union 117..117 union 186..186 union 208..208 union 382..382 union 404..404 union 507..507 union 530..530 union 598..598 union 621..621 union 756..756 union 777..777, 96..96 union 118..118 union 187..187 union 209..209 union 383..383 union 405..405 union 508..508 union 531..531 union 599..599 union 622..622 union 757..757 union 778..778, 97..97 union 119..119 union 188..188 union 210..210 union 384..384 union 406..406 union 509..509 union 532..532 union 600..600 union 623..623 union 758..758 union 779..779, 98..98 union 120..120 union 189..189 union 211..211 union 385..385 union 407..407 union 510..510 union 533..533 union 601..601 union 624..624 union 759..759 union 780..780, 99..99 union 121..121 union 190..190 union 212..212 union 386..386 union 408..408 union 511..511 union 534..534 union 602..602 union 625..625 union 760..760 union 781..781, 100..100 union 122..122 union 191..191 union 213..213 union 387..387 union 409..409 union 512..512 union 535..535 union 603..603 union 626..626 union 761..761 union 782..782, 101..101 union 123..123 union 192..192 union 214..214 union 388..388 union 410..410 union 513..513 union 536..536 union 604..604 union 627..627 union 762..762 union 783..783, 102..102 union 124..124 union 193..193 union 215..215 union 389..389 union 411..411 union 514..514 union 537..537 union 605..605 union 628..628 union 763..763 union 784..784, 107..107 union 129..129 union 198..198 union 220..220 union 394..394 union 416..416, 108..108 union 130..130 union 199..199 union 221..221 union 395..395 union 417..417, 109..109 union 131..131 union 200..200 union 222..222 union 396..396 union 418..418, 231..232, 353..353 union 357..357 union 363..363, 355..355 union 361..361, 356..356 union 362..362, 358..358 union 364..364, 359..359 union 365..365, 360..360 union 366..366, 519..519 union 542..542, 520..520 union 543..543 union 611..611 union 634..634 union 768..768 union 789..789, 521..521 union 544..544, 522..522 union 545..545, 523..523 union 546..546 union 614..614 union 769..770, 610..610 union 633..633, 612..612 union 635..635, 613..613 union 636..636, 742..743];
|
|
preassign_operand = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 337, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845];
|
|
preassign_reg = [4, 25, 2, 16, 17, 18, 19, 20, 21, 22, 23, 53, 55, 57, 59, 61, 63, 0, 26, 27, 29, 65, 31, 31, 25, 4, 5, 6, 7, 28, 31, 1, 24, 28, 30, 32, 33, 2, 16, 17, 18, 19, 20, 21, 22, 23, 53, 55, 57, 59, 61, 63, 0, 26, 27, 29];
|
|
aligned_def = [742];
|
|
aligned_use = [743];
|
|
aligned_defi = [38];
|
|
aligned_usei = [38];
|
|
aligned_dist = [0];
|
|
adj_from = [88, 88, 89, 89, 90, 90, 91, 91, 92, 92, 93, 93, 94, 94, 95, 95, 96, 96, 97, 97, 98, 98, 99, 99, 100, 100, 101, 101, 102, 102, 103, 103, 104, 104, 105, 105, 106, 106, 107, 107, 108, 108, 109, 109, 179, 179, 180, 180, 181, 181, 182, 182, 183, 183, 184, 184, 185, 185, 186, 186, 187, 187, 188, 188, 189, 189, 190, 190, 191, 191, 192, 192, 193, 193, 194, 194, 195, 195, 196, 196, 197, 197, 198, 198, 199, 199, 200, 200, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 501, 501, 502, 502, 503, 503, 504, 504, 505, 505, 506, 506, 507, 507, 508, 508, 509, 509, 510, 510, 511, 511, 512, 512, 513, 513, 514, 514, 515, 515, 516, 516, 517, 517, 518, 518, 519, 520, 520, 521, 522, 523, 523, 592, 592, 593, 593, 594, 594, 595, 595, 596, 596, 597, 597, 598, 598, 599, 599, 600, 600, 601, 601, 602, 602, 603, 603, 604, 604, 605, 605, 606, 606, 607, 607, 608, 608, 609, 609, 610, 611, 611, 612, 613, 614, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769];
|
|
adj_to = [110, 201, 111, 202, 112, 203, 113, 204, 114, 205, 115, 206, 116, 207, 117, 208, 118, 209, 119, 210, 120, 211, 121, 212, 122, 213, 123, 214, 124, 215, 125, 216, 126, 217, 127, 218, 128, 219, 129, 220, 130, 221, 131, 222, 201, 397, 202, 398, 203, 399, 204, 400, 205, 401, 206, 402, 207, 403, 208, 404, 209, 405, 210, 406, 211, 407, 212, 408, 213, 409, 214, 410, 215, 411, 216, 412, 217, 413, 218, 414, 219, 415, 220, 416, 221, 417, 222, 418, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 524, 771, 525, 772, 526, 773, 527, 774, 528, 775, 529, 776, 530, 777, 531, 778, 532, 779, 533, 780, 534, 781, 535, 782, 536, 783, 537, 784, 538, 785, 539, 786, 540, 787, 541, 788, 542, 543, 789, 544, 545, 546, 770, 615, 771, 616, 772, 617, 773, 618, 774, 619, 775, 620, 776, 621, 777, 622, 778, 623, 779, 624, 780, 625, 781, 626, 782, 627, 783, 628, 784, 629, 785, 630, 786, 631, 787, 632, 788, 633, 634, 789, 635, 636, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 770];
|
|
quasi_adj_from = [];
|
|
quasi_adj_to = [];
|
|
long_latency_index = array2d(1..30, 1..4, [125..125 union 216..216 union 412..412 union 538..538 union 629..629 union 785..785, {}, 103..103 union 194..194 union 390..390 union 515..515 union 606..606 union 764..764, {}, 126..126 union 217..217 union 413..413 union 539..539 union 630..630 union 786..786, {}, 104..104 union 195..195 union 391..391 union 516..516 union 607..607 union 765..765, {}, 127..127 union 218..218 union 414..414 union 540..540 union 631..631 union 787..787, {}, 105..105 union 196..196 union 392..392 union 517..517 union 608..608 union 766..766, {}, 128..128 union 219..219 union 415..415 union 541..541 union 632..632 union 788..788, {}, 106..106 union 197..197 union 393..393 union 518..518 union 609..609 union 767..767, {}, 110..110 union 201..201 union 397..397, 69..70, 88..88 union 179..179 union 375..375, 0..1 union 6..7 union 11..11 union 14..14 union 17..17 union 69..70, 111..111 union 202..202 union 398..398 union 524..524 union 615..615 union 771..771, {}, 89..89 union 180..180 union 376..376 union 501..501 union 592..592 union 750..750, {}, 112..112 union 203..203 union 399..399 union 525..525 union 616..616 union 772..772, {}, 90..90 union 181..181 union 377..377 union 502..502 union 593..593 union 751..751, {}, 113..113 union 204..204 union 400..400 union 526..526 union 617..617 union 773..773, {}, 91..91 union 182..182 union 378..378 union 503..503 union 594..594 union 752..752, {}, 114..114 union 205..205 union 401..401 union 527..527 union 618..618 union 774..774, {}, 92..92 union 183..183 union 379..379 union 504..504 union 595..595 union 753..753, {}, 115..115 union 206..206 union 402..402 union 528..528 union 619..619 union 775..775, {}, 93..93 union 184..184 union 380..380 union 505..505 union 596..596 union 754..754, {}, 116..116 union 207..207 union 403..403 union 529..529 union 620..620 union 776..776, {}, 94..94 union 185..185 union 381..381 union 506..506 union 597..597 union 755..755, {}, 117..117 union 208..208 union 404..404 union 530..530 union 621..621 union 777..777, {}, 95..95 union 186..186 union 382..382 union 507..507 union 598..598 union 756..756, {}, 118..118 union 209..209 union 405..405 union 531..531 union 622..622 union 778..778, {}, 96..96 union 187..187 union 383..383 union 508..508 union 599..599 union 757..757, {}, 119..119 union 210..210 union 406..406 union 532..532 union 623..623 union 779..779, {}, 97..97 union 188..188 union 384..384 union 509..509 union 600..600 union 758..758, {}, 120..120 union 211..211 union 407..407 union 533..533 union 624..624 union 780..780, {}, 98..98 union 189..189 union 385..385 union 510..510 union 601..601 union 759..759, {}, 121..121 union 212..212 union 408..408 union 534..534 union 625..625 union 781..781, {}, 99..99 union 190..190 union 386..386 union 511..511 union 602..602 union 760..760, {}, 122..122 union 213..213 union 409..409 union 535..535 union 626..626 union 782..782, {}, 100..100 union 191..191 union 387..387 union 512..512 union 603..603 union 761..761, {}, 123..123 union 214..214 union 410..410 union 536..536 union 627..627 union 783..783, {}, 101..101 union 192..192 union 388..388 union 513..513 union 604..604 union 762..762, {}, 124..124 union 215..215 union 411..411 union 537..537 union 628..628 union 784..784, {}, 102..102 union 193..193 union 389..389 union 514..514 union 605..605 union 763..763, {}, 129..129 union 220..220 union 416..416, 66..68, 107..107 union 198..198 union 394..394, 2..2 union 8..8 union 18..18 union 66..67, 130..130 union 221..221 union 417..417, 63..65, 108..108 union 199..199 union 395..395, 3..3 union 9..9 union 19..19 union 63..64, 131..131 union 222..222 union 418..418, 60..62, 109..109 union 200..200 union 396..396, 4..5 union 10..10 union 12..13 union 15..16 union 20..20 union 60..61, 542..542, 59..59, 519..519, 24..24 union 68..68, 543..543 union 634..634 union 789..789, 55..56, 520..520 union 611..611 union 768..768, 25..25 union 32..32 union 36..36 union 55..56 union 65..65, 544..544, 58..58, 521..521, 21..21 union 26..26 union 62..62, 545..545, 57..57, 522..522, 22..23 union 27..27, 546..546 union 770..770, 53..54, 523..523 union 614..614 union 769..769, 28..28 union 35..35 union 37..37 union 53..53, 633..633, {}, 610..610, 31..31 union 59..59, 635..635, {}, 612..612, 29..29 union 33..33 union 58..58, 636..636, {}, 613..613, 30..30 union 34..34 union 57..57]);
|
|
long_latency_def = array1d(0..70, [71, 79, 81, 83, 85, 141, 147, 170, 172, 174, 176, 237, 252, 258, 310, 334, 339, 368, 370, 372, 374, 464, 481, 489, 491, 493, 495, 497, 499, 558, 570, 581, 583, 585, 587, 589, 747, 749, 797, 799, 801, 803, 805, 807, 809, 811, 813, 815, 817, 819, 821, 823, 825, 546, 770, 543, 634, 545, 544, 542, 131, 222, 418, 130, 221, 417, 129, 220, 416, 110, 201]);
|
|
long_latency_use = array1d(0..70, [88, 88, 107, 108, 109, 200, 179, 179, 198, 199, 200, 375, 396, 396, 375, 396, 396, 375, 394, 395, 396, 521, 522, 522, 519, 520, 521, 522, 523, 612, 613, 610, 611, 612, 613, 614, 768, 769, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 827, 614, 827, 611, 768, 613, 612, 610, 200, 396, 521, 199, 395, 520, 198, 394, 519, 179, 375]);
|
|
operand_definer = array1d(0..845, [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9, 10, 10, 11, 11, 12, 12, 13, 13, 14, 14, 15, 15, 16, 16, 17, 17, 18, 18, 19, 19, 20, 20, 21, 21, 22, 22, 23, 23, 24, 24, 24, 25, 25, 26, 26, 27, 27, 28, 28, 29, 29, 30, 30, 31, 31, 32, 32, 33, 33, 34, 34, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 37, 37, 38, 38, 39, 39, 40, 40, 41, 41, 42, 42, 43, 43, 44, 44, 45, 45, 46, 46, 46, 47, 47, 48, 48, 49, 49, 50, 50, 51, 51, 52, 52, 53, 53, 54, 54, 55, 55, 56, 56, 57, 57, 58, 58, 59, 59, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 62, 62, 63, 63, 64, 64, 65, 65, 66, 67, 67, 68, 68, 69, 69, 70, 70, 71, 71, 71, 72, 72, 73, 73, 74, 74, 75, 75, 76, 76, 77, 77, 78, 78, 79, 79, 80, 80, 81, 81, 82, 82, 83, 83, 84, 84, 85, 85, 86, 86, 87, 87, 88, 88, 89, 89, 90, 90, 91, 91, 92, 92, 92, 93, 93, 94, 94, 95, 95, 96, 96, 97, 97, 98, 98, 99, 99, 100, 100, 101, 101, 102, 102, 102, 103, 103, 104, 104, 105, 105, 106, 106, 106, 107, 107, 108, 108, 109, 109, 110, 110, 111, 111, 112, 113, 113, 114, 114, 115, 115, 116, 116, 117, 117, 118, 119, 119, 120, 120, 121, 121, 122, 122, 123, 123, 124, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 126, 126, 126, 126, 126, 126, 127, 127, 128, 128, 129, 129, 130, 130, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 132, 132, 132, 132, 132, 132, 132, 132, 132, 132, 132, 132, 132, 132, 132, 132, 132, 132, 132, 132, 132, 132, 133, 133, 134, 134, 135, 135, 136, 136, 137, 137, 138, 138, 139, 139, 140, 140, 141, 141, 142, 142, 143, 143, 144, 144, 145, 145, 145, 146, 146, 147, 147, 148, 148, 149, 149, 150, 150, 151, 151, 152, 152, 152, 153, 153, 154, 154, 155, 155, 156, 156, 157, 157, 158, 158, 159, 159, 159, 160, 160, 161, 161, 162, 162, 163, 163, 164, 164, 165, 165, 166, 166, 167, 167, 168, 168, 169, 169, 170, 170, 171, 171, 172, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 175, 175, 176, 176, 177, 177, 178, 178, 179, 179, 180, 180, 181, 181, 182, 182, 183, 183, 184, 184, 185, 185, 186, 186, 187, 187, 188, 188, 188, 189, 189, 190, 190, 191, 191, 192, 192, 193, 193, 194, 194, 195, 195, 196, 196, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 199, 199, 200, 200, 201, 201, 202, 202, 203, 203, 204, 204, 205, 205, 206, 206, 207, 207, 208, 208, 209, 209, 210, 210, 211, 211, 211, 212, 212, 213, 213, 214, 214, 215, 215, 216, 216, 217, 217, 218, 218, 218, 219, 219, 220, 220, 221, 221, 222, 222, 223, 223, 224, 224, 225, 225, 226, 226, 227, 227, 228, 228, 228, 229, 229, 230, 230, 231, 231, 232, 232, 233, 233, 234, 234, 235, 235, 236, 236, 237, 237, 238, 238, 239, 239, 240, 240, 241, 241, 242, 242, 243, 243, 244, 244, 245, 245, 246, 246, 247, 247, 248, 248, 249, 249, 249, 249, 250, 250, 251, 251, 252, 252, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 255, 255, 256, 256, 257, 257, 258, 258, 259, 259, 260, 260, 261, 261, 262, 262, 263, 263, 264, 264, 265, 265, 266, 266, 267, 267, 268, 268, 269, 269, 270, 270, 271, 271, 272, 272, 274, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275]);
|
|
operand_use = array1d(0..845, [false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, true, false, true, false, true, false, true, false, false, true, false, true, false, true, false, true, false, true, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, true, false, true, false, true, false, true, false, true, true, false, true, false, true, false, true, false, true, false, true, false, true, true, false, true, false, true, false, true, false, true, false, false, true, false, true, false, true, false, true, false, true, false, true, true, true, true, true, true, true, false, false, false, false, false, false, true, true, true, true, true, true, true, false, true, false, true, false, true, false, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, true, true, false, true, false, true, true, true, false, true, false, true, false, true, false, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true]);
|
|
operand_lastuse = array1d(0..845, [false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, true, true, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, true, false, false, false, false, false, false, true, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, true, false, false, false, false, false, false, false, false, true, false, false, false, false, false, true, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, true, true, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, true, true, false, false, false, false, false, false, false, false, true, false, false, false, false, false, true, false, false, false, false, false, true, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, true, true, true, true, true, true, true, false, false, false, false, false, false, true, true, true, true, true, true, false, false, false, false, false, false, false, false, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, true, true, false, false, false, false, false, false, false, false, false, false, false, false, false, true, true, false, false, false, false, false, false, false, false, false, false, false, false, false, true, true, false, false, false, false, false, true, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, true, false, false, false, false, false, false, false, false, true, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, true, true, false, false, false, false, false, false, false, false, false, false, false, false, false, true, true, false, false, false, false, false, false, false, false, false, false, false, true, false, false, false, false, false, false, false, true, true, false, false, false, false, false, false, false, false, false, false, false, true, false, false, false, false, false, false, false, false, false, true, false, false, false, false, false, true, false, false, false, false, false, false, false, true, true, false, false, false, false, false, true, true, false, false, false, false, false, false, false, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true]);
|
|
operand_temps = array1d(0..845, [0..0, 1..1, 2..2, 3..3, 4..4, 5..5, 6..6, 7..7, 8..8, 9..9, 10..10, 11..11, 12..12, 13..13, 14..14, 15..15, 16..16, 17..17, 18..18, 19..19, 20..20, 21..21, 22..22, -1..0, -1..-1 union 23..23, -1..-1 union 1..1, -1..-1 union 24..24, -1..-1 union 2..2, -1..-1 union 25..25, -1..-1 union 3..3, -1..-1 union 26..26, -1..-1 union 4..4, -1..-1 union 27..27, -1..-1 union 5..5, -1..-1 union 28..28, -1..-1 union 6..6, -1..-1 union 29..29, -1..-1 union 7..7, -1..-1 union 30..30, -1..-1 union 8..8, -1..-1 union 31..31, -1..-1 union 9..9, -1..-1 union 32..32, -1..-1 union 10..10, -1..-1 union 33..33, -1..-1 union 11..11, -1..-1 union 34..34, -1..-1 union 12..12, -1..-1 union 35..35, -1..-1 union 13..13, -1..-1 union 36..36, -1..-1 union 14..14, -1..-1 union 37..37, -1..-1 union 15..15, -1..-1 union 38..38, -1..-1 union 16..16, -1..-1 union 39..39, -1..-1 union 21..21, -1..-1 union 40..40, -1..-1 union 22..22, -1..-1 union 41..41, -1..-1 union 1..1 union 24..24, -1..-1 union 42..42, -1..-1 union 2..2 union 25..25, -1..-1 union 43..43, 2..2 union 25..25 union 43..43, 1..1 union 24..24 union 42..42, 44..44, -1..-1 union 44..44, -1..-1 union 45..45, -1..0 union 23..23, -1..-1 union 46..46, 0..0 union 23..23 union 46..46 union 50..50, 47..47, -1..-1 union 47..47, -1..-1 union 48..48, -1..-1 union 47..48, -1..-1 union 49..49, -1..0 union 23..23, -1..-1 union 50..50, -1..-1 union 21..21 union 40..40, -1..-1 union 51..51, -1..-1 union 22..22 union 41..41, -1..-1 union 52..52, -1..-1 union 44..45, -1..-1 union 53..53, 47..49, 17..17, 0..0 union 23..23 union 46..46 union 50..50, 3..3 union 26..26, 4..4 union 27..27, 5..5 union 28..28, 6..6 union 29..29, 7..7 union 30..30, 8..8 union 31..31, 9..9 union 32..32, 10..10 union 33..33, 11..11 union 34..34, 12..12 union 35..35, 13..13 union 36..36, 14..14 union 37..37, 15..15 union 38..38, 16..16 union 39..39, 17..17, 18..18, 19..19, 20..20, 21..21 union 40..40 union 51..51, 22..22 union 41..41 union 52..52, 44..45 union 53..53, 54..54, 55..55, 56..56, 57..57, 58..58, 59..59, 60..60, 61..61, 62..62, 63..63, 64..64, 65..65, 66..66, 67..67, 68..68, 69..69, 70..70, 71..71, 72..72, 73..73, 74..74, 75..75, -1..-1 union 54..54, -1..-1 union 76..76, -1..-1 union 73..73, -1..-1 union 77..77, -1..-1 union 74..74, -1..-1 union 78..78, -1..-1 union 75..75, -1..-1 union 79..79, -1..-1 union 75..75 union 79..79, -1..-1 union 80..80, 75..75 union 79..80 union 97..97, 81..81, -1..-1 union 81..81, -1..-1 union 82..82, -1..-1 union 54..54 union 76..76, -1..-1 union 83..83, -1..-1 union 81..82, -1..-1 union 84..84, 81..82 union 84..84, 54..54 union 76..76 union 83..83 union 94..94, 85..85, -1..-1 union 85..85, -1..-1 union 86..86, -1..-1 union 85..86, -1..-1 union 87..87, 85..87, 88..88, -1..-1 union 88..88, -1..-1 union 89..89, 69..69, 90..90, -1..-1 union 90..90, -1..-1 union 91..91, -1..-1 union 88..89, -1..-1 union 92..92, -1..-1 union 90..91, -1..-1 union 93..93, -1..-1 union 54..54 union 76..76, -1..-1 union 94..94, -1..-1 union 73..73 union 77..77, -1..-1 union 95..95, -1..-1 union 74..74 union 78..78, -1..-1 union 96..96, -1..-1 union 75..75 union 79..79, -1..-1 union 97..97, 88..89 union 92..92, 90..91 union 93..93, 54..54 union 76..76 union 83..83 union 94..94, 55..55, 56..56, 57..57, 58..58, 59..59, 60..60, 61..61, 62..62, 63..63, 64..64, 65..65, 66..66, 67..67, 68..68, 69..69, 70..70, 71..71, 72..72, 73..73 union 77..77 union 95..95, 74..74 union 78..78 union 96..96, 75..75 union 79..80 union 97..97, 98..98, 99..99, 100..100, 101..101, 102..102, 103..103, 104..104, 105..105, 106..106, 107..107, 108..108, 109..109, 110..110, 111..111, 112..112, 113..113, 114..114, 115..115, 116..116, 117..117, 118..118, 119..119, -1..-1 union 98..98, -1..-1 union 120..120, -1..-1 union 117..117, -1..-1 union 121..121, -1..-1 union 118..118, -1..-1 union 122..122, -1..-1 union 119..119, -1..-1 union 123..123, 124..124, 124..124, 125..125, -1..-1 union 125..125, -1..-1 union 126..126, -1..-1 union 98..98 union 120..120, -1..-1 union 127..127, -1..-1 union 125..126, -1..-1 union 128..128, 98..98 union 120..120 union 127..127 union 162..162 union 187..187, 125..126 union 128..128, 129..129, -1..-1 union 129..129, -1..-1 union 130..130, -1..-1 union 129..130, -1..-1 union 131..131, 129..131, 132..132, -1..-1 union 132..132, -1..-1 union 133..133, -1..-1 union 119..119 union 123..123, -1..-1 union 134..134, 119..119 union 123..123 union 134..134 union 137..137 union 173..173 union 176..176 union 190..190, 135..135, -1..-1 union 135..135, -1..-1 union 136..136, -1..-1 union 119..119 union 123..123, -1..-1 union 137..137, 119..119 union 123..123 union 134..134 union 137..137 union 173..173 union 176..176 union 190..190, 138..138, -1..-1 union 138..138, -1..-1 union 139..139, 113..113, 140..140, -1..-1 union 140..140, -1..-1 union 141..141, -1..-1 union 132..133, -1..-1 union 142..142, 132..133 union 142..142 union 145..145, 143..143, -1..-1 union 143..143, -1..-1 union 144..144, -1..-1 union 132..133, -1..-1 union 145..145, 132..133 union 142..142 union 145..145, 146..146, -1..-1 union 146..146, -1..-1 union 147..147, -1..-1 union 143..144, -1..-1 union 148..148, -1..-1 union 146..147, -1..-1 union 149..149, 146..147 union 149..149, 143..144 union 148..148, 150..150, -1..-1 union 150..150, -1..-1 union 151..151, -1..-1 union 150..151, -1..-1 union 152..152, 150..152 union 155..155 union 170..170, 153..153, -1..-1 union 153..153, -1..-1 union 154..154, -1..-1 union 150..151, -1..-1 union 155..155, 150..152 union 155..155 union 170..170, 156..156, -1..-1 union 156..156, -1..-1 union 157..157, -1..-1 union 153..154, -1..-1 union 158..158, -1..-1 union 156..157, -1..-1 union 159..159, 156..157 union 159..159, 153..154 union 158..158, 160..160, -1..-1 union 160..160, -1..-1 union 161..161, -1..-1 union 98..98 union 120..120, -1..-1 union 162..162, -1..-1 union 160..161, -1..-1 union 163..163, 98..98 union 120..120 union 127..127 union 162..162 union 187..187, 160..161 union 163..163, 164..164, -1..-1 union 164..164, -1..-1 union 165..165, -1..-1 union 164..165, -1..-1 union 166..166, 164..166, 167..167, -1..-1 union 167..167, -1..-1 union 168..168, -1..-1 union 167..168, -1..-1 union 169..169, 167..169, -1..-1 union 150..151, -1..-1 union 170..170, 150..152 union 155..155 union 170..170, 171..171, -1..-1 union 171..171, -1..-1 union 172..172, -1..-1 union 119..119 union 123..123, -1..-1 union 173..173, 119..119 union 123..123 union 134..134 union 137..137 union 173..173 union 176..176 union 190..190, 174..174, 175..175, -1..-1 union 119..119 union 123..123, -1..-1 union 176..176, -1..-1 union 135..136, -1..-1 union 177..177, -1..-1 union 138..139, -1..-1 union 178..178, -1..-1 union 140..141, -1..-1 union 179..179, -1..-1 union 171..172, -1..-1 union 180..180, 174..174, 135..136 union 177..177, 140..141 union 179..179, 138..139 union 178..178, 171..172 union 180..180, 119..119 union 123..123 union 134..134 union 137..137 union 173..173 union 176..176 union 190..190, 175..175, 181..181, 182..182, 183..183, 184..184, 185..185, 186..186, 181..181, 182..182, 183..183, 184..184, 185..185, 186..186, -1..-1 union 98..98 union 120..120, -1..-1 union 187..187, -1..-1 union 117..117 union 121..121, -1..-1 union 188..188, -1..-1 union 118..118 union 122..122, -1..-1 union 189..189, -1..-1 union 119..119 union 123..123, -1..-1 union 190..190, 98..98 union 120..120 union 127..127 union 162..162 union 187..187, 99..99, 100..100, 101..101, 102..102, 103..103, 104..104, 105..105, 106..106, 107..107, 108..108, 109..109, 110..110, 111..111, 112..112, 113..113, 114..114, 115..115, 116..116, 117..117 union 121..121 union 188..188, 118..118 union 122..122 union 189..189, 119..119 union 123..123 union 134..134 union 137..137 union 173..173 union 176..176 union 190..190, 191..191, 192..192, 193..193, 194..194, 195..195, 196..196, 197..197, 198..198, 199..199, 200..200, 201..201, 202..202, 203..203, 204..204, 205..205, 206..206, 207..207, 208..208, 209..209, 210..210, 211..211, 212..212, -1..-1 union 191..191, -1..-1 union 213..213, -1..-1 union 210..210, -1..-1 union 214..214, -1..-1 union 211..211, -1..-1 union 215..215, -1..-1 union 212..212, -1..-1 union 216..216, -1..-1 union 191..191 union 213..213, -1..-1 union 217..217, 191..191 union 213..213 union 217..217 union 220..220 union 227..227, 218..218, -1..-1 union 218..218, -1..-1 union 219..219, -1..-1 union 191..191 union 213..213, -1..-1 union 220..220, 191..191 union 213..213 union 217..217 union 220..220 union 227..227, 221..221, -1..-1 union 221..221, -1..-1 union 222..222, -1..-1 union 218..219, -1..-1 union 223..223, -1..-1 union 221..222, -1..-1 union 224..224, 221..222 union 224..224, 218..219 union 223..223, 225..225, -1..-1 union 225..225, -1..-1 union 226..226, -1..-1 union 191..191 union 213..213, -1..-1 union 227..227, 191..191 union 213..213 union 217..217 union 220..220 union 227..227, 228..228, -1..-1 union 228..228, -1..-1 union 229..229, -1..-1 union 225..226, -1..-1 union 230..230, -1..-1 union 228..229, -1..-1 union 231..231, 228..229 union 231..231, 225..226 union 230..230, 232..232, -1..-1 union 232..232, -1..-1 union 233..233, -1..-1 union 212..212 union 216..216, -1..-1 union 234..234, 212..212 union 216..216 union 234..234 union 249..249, 235..235, -1..-1 union 235..235, -1..-1 union 236..236, -1..-1 union 232..233, -1..-1 union 237..237, -1..-1 union 235..236, -1..-1 union 238..238, 235..236 union 238..238, 232..233 union 237..237, 239..239, -1..-1 union 239..239, -1..-1 union 240..240, -1..-1 union 239..240, -1..-1 union 241..241, 239..241, 242..242, -1..-1 union 242..242, -1..-1 union 243..243, 206..206, 244..244, -1..-1 union 244..244, -1..-1 union 245..245, -1..-1 union 242..243, -1..-1 union 246..246, -1..-1 union 210..210 union 214..214, -1..-1 union 247..247, -1..-1 union 211..211 union 215..215, -1..-1 union 248..248, -1..-1 union 212..212 union 216..216, -1..-1 union 249..249, -1..-1 union 242..243, -1..-1 union 250..250, -1..-1 union 244..245, -1..-1 union 251..251, 242..243 union 246..246 union 250..250, 192..192, 193..193, 194..194, 195..195, 196..196, 197..197, 198..198, 199..199, 200..200, 201..201, 202..202, 203..203, 204..204, 205..205, 206..206, 207..207, 208..208, 209..209, 210..210 union 214..214 union 247..247, 211..211 union 215..215 union 248..248, 212..212 union 216..216 union 234..234 union 249..249, 242..243 union 246..246 union 250..250, 244..245 union 251..251, 252..252, 253..253, 254..254, 255..255, 256..256, 257..257, 258..258, 259..259, 260..260, 261..261, 262..262, 263..263, 264..264, 265..265, 266..266, 267..267, 268..268, 269..269, 270..270, 271..271, 272..272, 273..273, 274..274, -1..-1 union 270..270, -1..-1 union 275..275, -1..-1 union 271..271, -1..-1 union 276..276, -1..-1 union 272..272, -1..-1 union 277..277, -1..-1 union 273..273, -1..-1 union 278..278, -1..-1 union 274..274, -1..-1 union 279..279, -1..-1 union 272..272 union 277..277, -1..-1 union 280..280, 272..272 union 277..277 union 280..280 union 293..293, 281..281, -1..-1 union 281..281, -1..-1 union 282..282, -1..-1 union 281..282, -1..-1 union 283..283, 281..283, 284..284, -1..-1 union 284..284, -1..-1 union 285..285, -1..-1 union 273..273 union 278..278, -1..-1 union 286..286, -1..-1 union 284..285, -1..-1 union 287..287, 273..273 union 278..278 union 286..286 union 294..294, 284..285 union 287..287, 288..288, -1..-1 union 288..288, -1..-1 union 289..289, -1..-1 union 288..289, -1..-1 union 290..290, -1..-1 union 270..270 union 275..275, -1..-1 union 291..291, -1..-1 union 271..271 union 276..276, -1..-1 union 292..292, -1..-1 union 272..272 union 277..277, -1..-1 union 293..293, -1..-1 union 273..273 union 278..278, -1..-1 union 294..294, -1..-1 union 274..274 union 279..279, -1..-1 union 295..295, 288..290, 266..266, 252..252, 253..253, 254..254, 255..255, 256..256, 257..257, 258..258, 259..259, 260..260, 261..261, 262..262, 263..263, 264..264, 265..265, 266..266, 267..267, 268..268, 269..269, 270..270 union 275..275 union 291..291, 271..271 union 276..276 union 292..292, 272..272 union 277..277 union 280..280 union 293..293, 273..273 union 278..278 union 286..286 union 294..294, 274..274 union 279..279 union 295..295, 296..296, 297..297, 298..298, 299..299, 300..300, 301..301, 302..302, 303..303, 304..304, 305..305, 306..306, 307..307, 308..308, 309..309, 310..310, 311..311, 312..312, 313..313, 314..314, 315..315, 316..316, 317..317, -1..-1 union 314..314, -1..-1 union 318..318, -1..-1 union 315..315, -1..-1 union 319..319, -1..-1 union 316..316, -1..-1 union 320..320, -1..-1 union 317..317, -1..-1 union 321..321, -1..-1 union 317..317 union 321..321, -1..-1 union 322..322, 317..317 union 321..322 union 325..325 union 332..332, 323..323, -1..-1 union 323..323, -1..-1 union 324..324, -1..-1 union 317..317 union 321..321, -1..-1 union 325..325, 317..317 union 321..322 union 325..325 union 332..332, 326..326, -1..-1 union 326..326, -1..-1 union 327..327, -1..-1 union 323..324, -1..-1 union 328..328, -1..-1 union 326..327, -1..-1 union 329..329, 326..327 union 329..329, 323..324 union 328..328, 330..330, -1..-1 union 330..330, -1..-1 union 331..331, -1..-1 union 317..317 union 321..321, -1..-1 union 332..332, 317..317 union 321..322 union 325..325 union 332..332, 333..333, -1..-1 union 333..333, -1..-1 union 334..334, -1..-1 union 330..331, -1..-1 union 335..335, -1..-1 union 333..334, -1..-1 union 336..336, 333..334 union 336..336, 330..331 union 335..335, 337..337, -1..-1 union 337..337, -1..-1 union 338..338, -1..-1 union 316..316 union 320..320, -1..-1 union 339..339, 316..316 union 320..320 union 339..339 union 349..349, 340..340, -1..-1 union 340..340, -1..-1 union 341..341, -1..-1 union 340..341, -1..-1 union 342..342, 340..342, 343..343, -1..-1 union 343..343, -1..-1 union 344..344, -1..-1 union 337..338, -1..-1 union 345..345, -1..-1 union 343..344, -1..-1 union 346..346, 343..344 union 346..346, 337..338 union 345..345, 347..347, -1..-1 union 347..347, -1..-1 union 348..348, -1..-1 union 316..316 union 320..320, -1..-1 union 349..349, 316..316 union 320..320 union 339..339 union 349..349, 350..350, -1..-1 union 350..350, -1..-1 union 351..351, -1..-1 union 350..351, -1..-1 union 352..352, 350..352, 353..353, -1..-1 union 353..353, -1..-1 union 354..354, 310..310, 355..355, -1..-1 union 355..355, -1..-1 union 356..356, -1..-1 union 347..348, -1..-1 union 357..357, 347..348 union 357..357, 358..358, -1..-1 union 358..358, -1..-1 union 359..359, -1..-1 union 358..359, -1..-1 union 360..360, 358..360, 361..361, -1..-1 union 361..361, -1..-1 union 362..362, -1..-1 union 353..354, -1..-1 union 363..363, -1..-1 union 361..362, -1..-1 union 364..364, 361..362 union 364..364, 353..354 union 363..363, -1..-1 union 314..314 union 318..318, -1..-1 union 365..365, -1..-1 union 355..356, -1..-1 union 366..366, 310..310, 314..314 union 318..318 union 365..365, 355..356 union 366..366, 367..367, -1..-1 union 367..367, -1..-1 union 368..368, -1..-1 union 315..315 union 319..319, -1..-1 union 369..369, -1..-1 union 367..368, -1..-1 union 370..370, 296..296, 297..297, 298..298, 299..299, 300..300, 301..301, 302..302, 303..303, 304..304, 305..305, 306..306, 307..307, 308..308, 309..309, 310..310, 311..311, 312..312, 313..313, 315..315 union 319..319 union 369..369, 367..368 union 370..370, 371..371, 372..372, 373..373, 374..374, 375..375, 376..376, 377..377, 378..378, 379..379, 380..380, 381..381, 382..382, 383..383, 384..384, 385..385, 386..386, 387..387, 388..388, 389..389, 390..390, -1..-1 union 371..371, -1..-1 union 391..391, -1..-1 union 390..390, -1..-1 union 392..392, -1..-1 union 390..390 union 392..392, -1..-1 union 393..393, -1..-1 union 372..372, -1..-1 union 394..394, -1..-1 union 373..373, -1..-1 union 395..395, -1..-1 union 374..374, -1..-1 union 396..396, -1..-1 union 375..375, -1..-1 union 397..397, -1..-1 union 376..376, -1..-1 union 398..398, -1..-1 union 377..377, -1..-1 union 399..399, -1..-1 union 378..378, -1..-1 union 400..400, -1..-1 union 379..379, -1..-1 union 401..401, -1..-1 union 380..380, -1..-1 union 402..402, -1..-1 union 381..381, -1..-1 union 403..403, -1..-1 union 382..382, -1..-1 union 404..404, -1..-1 union 383..383, -1..-1 union 405..405, -1..-1 union 384..384, -1..-1 union 406..406, -1..-1 union 385..385, -1..-1 union 407..407, -1..-1 union 371..371 union 391..391, -1..-1 union 408..408, 390..390 union 392..393, 371..371 union 391..391 union 408..408, 372..372 union 394..394, 373..373 union 395..395, 374..374 union 396..396, 375..375 union 397..397, 376..376 union 398..398, 377..377 union 399..399, 378..378 union 400..400, 379..379 union 401..401, 380..380 union 402..402, 381..381 union 403..403, 382..382 union 404..404, 383..383 union 405..405, 384..384 union 406..406, 385..385 union 407..407, 386..386, 387..387, 388..388, 389..389]);
|
|
operand_atom = array2d(0..845, 0..40, [-1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, 15, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, 15, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, 15, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, 15, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, 15, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, 15, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 6, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 6, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 2, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, 15, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 7, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 7, 7, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 7, 14, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 7, -1, 14, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 7, -1, 7, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 7, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 9, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, 15, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 9, -1, -1, -1, -1, -1, 15, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 9, -1, -1, -1, -1, -1, 9, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 9, -1, -1, -1, -1, -1, 15, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 9, -1, -1, -1, -1, -1, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 10, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 10, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 12, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 15, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 9, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 15, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 9, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 15, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 9, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 15, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 9, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 15, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 9, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 15, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 9, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 14, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1]);
|
|
related_temps = [0..0 union 23..23 union 46..46 union 50..50, 1..1 union 24..24 union 42..42, 2..2 union 25..25 union 43..43, 3..3 union 26..26, 4..4 union 27..27, 5..5 union 28..28, 6..6 union 29..29, 7..7 union 30..30, 8..8 union 31..31, 9..9 union 32..32, 10..10 union 33..33, 11..11 union 34..34, 12..12 union 35..35, 13..13 union 36..36, 14..14 union 37..37, 15..15 union 38..38, 16..16 union 39..39, 21..21 union 40..40 union 51..51, 22..22 union 41..41 union 52..52, 44..45 union 53..53, 47..49, 54..54 union 76..76 union 83..83 union 94..94, 73..73 union 77..77 union 95..95, 74..74 union 78..78 union 96..96, 75..75 union 79..80 union 97..97, 81..82 union 84..84, 85..87, 88..89 union 92..92, 90..91 union 93..93, 98..98 union 120..120 union 127..127 union 162..162 union 187..187, 117..117 union 121..121 union 188..188, 118..118 union 122..122 union 189..189, 119..119 union 123..123 union 134..134 union 137..137 union 173..173 union 176..176 union 190..190, 125..126 union 128..128, 129..131, 132..133 union 142..142 union 145..145, 135..136 union 177..177, 138..139 union 178..178, 140..141 union 179..179, 143..144 union 148..148, 146..147 union 149..149, 150..152 union 155..155 union 170..170, 153..154 union 158..158, 156..157 union 159..159, 160..161 union 163..163, 164..166, 167..169, 171..172 union 180..180, 191..191 union 213..213 union 217..217 union 220..220 union 227..227, 210..210 union 214..214 union 247..247, 211..211 union 215..215 union 248..248, 212..212 union 216..216 union 234..234 union 249..249, 218..219 union 223..223, 221..222 union 224..224, 225..226 union 230..230, 228..229 union 231..231, 232..233 union 237..237, 235..236 union 238..238, 239..241, 242..243 union 246..246 union 250..250, 244..245 union 251..251, 270..270 union 275..275 union 291..291, 271..271 union 276..276 union 292..292, 272..272 union 277..277 union 280..280 union 293..293, 273..273 union 278..278 union 286..286 union 294..294, 274..274 union 279..279 union 295..295, 281..283, 284..285 union 287..287, 288..290, 314..314 union 318..318 union 365..365, 315..315 union 319..319 union 369..369, 316..316 union 320..320 union 339..339 union 349..349, 317..317 union 321..322 union 325..325 union 332..332, 323..324 union 328..328, 326..327 union 329..329, 330..331 union 335..335, 333..334 union 336..336, 337..338 union 345..345, 340..342, 343..344 union 346..346, 347..348 union 357..357, 350..352, 353..354 union 363..363, 355..356 union 366..366, 358..360, 361..362 union 364..364, 367..368 union 370..370, 371..371 union 391..391 union 408..408, 372..372 union 394..394, 373..373 union 395..395, 374..374 union 396..396, 375..375 union 397..397, 376..376 union 398..398, 377..377 union 399..399, 378..378 union 400..400, 379..379 union 401..401, 380..380 union 402..402, 381..381 union 403..403, 382..382 union 404..404, 383..383 union 405..405, 384..384 union 406..406, 385..385 union 407..407, 390..390 union 392..393];
|
|
temp_definer = array1d(0..408, [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 125, 125, 125, 125, 125, 125, 127, 128, 129, 130, 132, 132, 132, 132, 132, 132, 132, 132, 132, 132, 132, 132, 132, 132, 132, 132, 132, 132, 132, 132, 132, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 247, 248, 249, 250, 251, 252, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272]);
|
|
temp_def = array1d(0..408, [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48, 50, 52, 54, 56, 58, 60, 62, 64, 67, 69, 71, 73, 75, 77, 79, 81, 83, 85, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 133, 135, 137, 139, 141, 143, 145, 147, 149, 152, 154, 156, 158, 160, 162, 164, 166, 168, 170, 172, 174, 176, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 224, 226, 228, 230, 231, 233, 235, 237, 239, 242, 244, 246, 248, 250, 252, 254, 256, 258, 260, 262, 264, 266, 268, 270, 272, 274, 276, 278, 280, 282, 285, 287, 289, 291, 293, 295, 297, 299, 301, 303, 306, 308, 310, 312, 315, 317, 319, 321, 323, 325, 328, 330, 332, 334, 336, 337, 339, 341, 343, 345, 347, 355, 356, 357, 358, 359, 360, 368, 370, 372, 374, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 420, 422, 424, 426, 428, 430, 432, 434, 436, 438, 440, 442, 445, 447, 449, 451, 453, 455, 457, 460, 462, 464, 466, 468, 470, 472, 475, 477, 479, 481, 483, 485, 487, 489, 491, 493, 495, 497, 499, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 548, 550, 552, 554, 556, 558, 560, 562, 564, 566, 568, 570, 572, 575, 577, 579, 581, 583, 585, 587, 589, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 638, 640, 642, 644, 646, 648, 650, 652, 654, 656, 658, 660, 663, 665, 667, 669, 671, 673, 675, 678, 680, 682, 684, 686, 688, 690, 692, 694, 696, 699, 701, 703, 705, 707, 709, 711, 713, 715, 717, 719, 721, 723, 725, 727, 729, 731, 733, 737, 739, 743, 745, 747, 749, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 791, 793, 795, 797, 799, 801, 803, 805, 807, 809, 811, 813, 815, 817, 819, 821, 823, 825]);
|
|
temp_width = array1d(0..408, [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 15, 2, 1, 2, 1, 20, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 1]);
|
|
temp_minlive = array1d(0..408, [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]);
|
|
temp_uses = array1d(0..408, [23..23 union 70..70 union 72..72 union 78..78 union 88..88, 25..25 union 61..61 union 66..66, 27..27 union 63..63 union 65..65, 29..29 union 89..89, 31..31 union 90..90, 33..33 union 91..91, 35..35 union 92..92, 37..37 union 93..93, 39..39 union 94..94, 41..41 union 95..95, 43..43 union 96..96, 45..45 union 97..97, 47..47 union 98..98, 49..49 union 99..99, 51..51 union 100..100, 53..53 union 101..101, 55..55 union 102..102, 87..87 union 103..103, 104..104, 105..105, 106..106, 57..57 union 80..80 union 107..107, 59..59 union 82..82 union 108..108, 70..70 union 72..72 union 78..78 union 88..88, 61..61 union 66..66, 63..63 union 65..65, 89..89, 90..90, 91..91, 92..92, 93..93, 94..94, 95..95, 96..96, 97..97, 98..98, 99..99, 100..100, 101..101, 102..102, 80..80 union 107..107, 82..82 union 108..108, 66..66, 65..65, 68..68 union 84..84 union 109..109, 84..84 union 109..109, 72..72 union 88..88, 74..74 union 76..76 union 86..86, 76..76 union 86..86, 86..86, 72..72 union 88..88, 107..107, 108..108, 109..109, 132..132 union 146..146 union 151..151 union 169..169 union 179..179, 180..180, 181..181, 182..182, 183..183, 184..184, 185..185, 186..186, 187..187, 188..188, 189..189, 190..190, 191..191, 192..192, 193..193, 161..161 union 194..194, 195..195, 196..196, 197..197, 134..134 union 171..171 union 198..198, 136..136 union 173..173 union 199..199, 138..138 union 140..140 union 142..142 union 175..175 union 200..200, 146..146 union 151..151 union 169..169 union 179..179, 171..171 union 198..198, 173..173 union 199..199, 140..140 union 142..142 union 175..175 union 200..200, 142..142 union 200..200, 144..144 union 148..148 union 150..150, 148..148 union 150..150, 151..151 union 179..179, 150..150, 153..153 union 155..155 union 157..157, 155..155 union 157..157, 157..157, 159..159 union 165..165 union 177..177, 165..165 union 177..177, 163..163 union 167..167 union 178..178, 167..167 union 178..178, 177..177, 178..178, 151..151 union 179..179, 198..198, 199..199, 142..142 union 200..200, 223..223 union 236..236 union 240..240 union 309..309 union 313..313 union 367..367 union 375..375, 376..376, 377..377, 378..378, 379..379, 380..380, 381..381, 382..382, 383..383, 384..384, 385..385, 386..386, 387..387, 388..388, 389..389, 263..263 union 390..390, 391..391, 392..392, 393..393, 225..225 union 369..369 union 394..394, 227..227 union 371..371 union 395..395, 229..229 union 251..251 union 253..253 union 257..257 union 259..259 union 333..333 union 335..335 union 338..338 union 353..353 union 373..373 union 396..396, 236..236 union 240..240 union 309..309 union 313..313 union 367..367 union 375..375, 369..369 union 394..394, 371..371 union 395..395, 251..251 union 253..253 union 257..257 union 259..259 union 333..333 union 335..335 union 338..338 union 353..353 union 373..373 union 396..396, 232..232, 234..234 union 238..238 union 241..241, 238..238 union 241..241, 240..240 union 313..313 union 375..375, 241..241, 243..243 union 245..245 union 247..247, 245..245 union 247..247, 247..247, 249..249 union 267..267 union 269..269 union 273..273 union 275..275, 267..267 union 269..269 union 273..273 union 275..275, 253..253 union 259..259 union 335..335 union 353..353 union 396..396, 255..255 union 340..340 union 349..349, 340..340 union 349..349, 253..253 union 259..259 union 335..335 union 353..353 union 396..396, 261..261 union 342..342 union 351..351, 342..342 union 351..351, 265..265 union 344..344 union 350..350, 344..344 union 350..350, 269..269 union 275..275, 271..271 union 279..279 union 284..284, 279..279 union 284..284, 269..269 union 275..275, 277..277 union 281..281 union 283..283, 281..281 union 283..283, 284..284, 283..283, 286..286 union 288..288 union 290..290 union 294..294 union 296..296 union 327..327 union 329..329, 288..288 union 290..290 union 294..294 union 296..296 union 327..327 union 329..329, 290..290 union 296..296 union 329..329, 292..292 union 300..300 union 305..305, 300..300 union 305..305, 290..290 union 296..296 union 329..329, 298..298 union 302..302 union 304..304, 302..302 union 304..304, 305..305, 304..304, 307..307 union 311..311 union 314..314, 311..311 union 314..314, 240..240 union 313..313 union 375..375, 314..314, 316..316 union 318..318 union 320..320, 318..318 union 320..320, 320..320, 322..322 union 324..324 union 326..326, 324..324 union 326..326, 326..326, 290..290 union 296..296 union 329..329, 331..331 union 346..346 union 352..352, 346..346 union 352..352, 253..253 union 259..259 union 335..335 union 353..353 union 396..396, 348..348, 354..354, 253..253 union 259..259 union 335..335 union 353..353 union 396..396, 349..349, 351..351, 350..350, 352..352, 361..361, 362..362, 363..363, 364..364, 365..365, 366..366, 240..240 union 313..313 union 375..375, 394..394, 395..395, 253..253 union 259..259 union 335..335 union 353..353 union 396..396, 419..419 union 427..427 union 429..429 union 433..433 union 435..435 union 448..448 union 450..450, 501..501, 502..502, 503..503, 504..504, 505..505, 506..506, 507..507, 508..508, 509..509, 510..510, 511..511, 512..512, 513..513, 514..514, 484..484 union 515..515, 516..516, 517..517, 518..518, 421..421 union 490..490 union 519..519, 423..423 union 492..492 union 520..520, 425..425 union 463..463 union 465..465 union 494..494 union 521..521, 427..427 union 429..429 union 433..433 union 435..435 union 448..448 union 450..450, 490..490 union 519..519, 492..492 union 520..520, 463..463 union 465..465 union 494..494 union 521..521, 429..429 union 435..435 union 450..450, 431..431 union 439..439 union 444..444, 439..439 union 444..444, 429..429 union 435..435 union 450..450, 437..437 union 441..441 union 443..443, 441..441 union 443..443, 444..444, 443..443, 446..446 union 454..454 union 459..459, 454..454 union 459..459, 429..429 union 435..435 union 450..450, 452..452 union 456..456 union 458..458, 456..456 union 458..458, 459..459, 458..458, 461..461 union 469..469 union 474..474, 469..469 union 474..474, 465..465 union 521..521, 467..467 union 471..471 union 473..473, 471..471 union 473..473, 474..474, 473..473, 476..476 union 478..478 union 480..480, 478..478 union 480..480, 480..480, 482..482 union 488..488 union 496..496 union 500..500 union 522..522, 488..488 union 496..496 union 500..500 union 522..522, 486..486 union 498..498 union 523..523, 498..498 union 523..523, 500..500 union 522..522, 519..519, 520..520, 465..465 union 521..521, 500..500 union 522..522, 523..523, 592..592, 593..593, 594..594, 595..595, 596..596, 597..597, 598..598, 599..599, 600..600, 601..601, 602..602, 603..603, 604..604, 605..605, 591..591 union 606..606, 607..607, 608..608, 609..609, 547..547 union 580..580 union 610..610, 549..549 union 582..582 union 611..611, 551..551 union 557..557 union 559..559 union 584..584 union 612..612, 553..553 union 569..569 union 573..573 union 586..586 union 613..613, 555..555 union 588..588 union 614..614, 580..580 union 610..610, 582..582 union 611..611, 557..557 union 559..559 union 584..584 union 612..612, 569..569 union 573..573 union 586..586 union 613..613, 588..588 union 614..614, 559..559 union 612..612, 561..561 union 563..563 union 565..565, 563..563 union 565..565, 565..565, 567..567 union 571..571 union 574..574, 571..571 union 574..574, 573..573 union 613..613, 574..574, 576..576 union 578..578 union 590..590, 578..578 union 590..590, 590..590, 610..610, 611..611, 559..559 union 612..612, 573..573 union 613..613, 614..614, 750..750, 751..751, 752..752, 753..753, 754..754, 755..755, 756..756, 757..757, 758..758, 759..759, 760..760, 761..761, 762..762, 763..763, 714..714 union 740..740 union 764..764, 765..765, 766..766, 767..767, 637..637 union 736..736 union 741..741, 639..639 union 746..746 union 768..768, 641..641 union 681..681 union 683..683 union 702..702 union 704..704, 643..643 union 645..645 union 647..647 union 651..651 union 653..653 union 666..666 union 668..668, 736..736 union 741..741, 746..746 union 768..768, 681..681 union 683..683 union 702..702 union 704..704, 645..645 union 647..647 union 651..651 union 653..653 union 666..666 union 668..668, 647..647 union 653..653 union 668..668, 649..649 union 657..657 union 662..662, 657..657 union 662..662, 647..647 union 653..653 union 668..668, 655..655 union 659..659 union 661..661, 659..659 union 661..661, 662..662, 661..661, 664..664 union 672..672 union 677..677, 672..672 union 677..677, 647..647 union 653..653 union 668..668, 670..670 union 674..674 union 676..676, 674..674 union 676..676, 677..677, 676..676, 679..679 union 693..693 union 698..698, 693..693 union 698..698, 683..683 union 704..704, 685..685 union 687..687 union 689..689, 687..687 union 689..689, 689..689, 691..691 union 695..695 union 697..697, 695..695 union 697..697, 698..698, 697..697, 700..700 union 718..718 union 720..720, 718..718 union 720..720, 683..683 union 704..704, 706..706 union 708..708 union 710..710, 708..708 union 710..710, 710..710, 712..712 union 730..730 union 735..735, 730..730 union 735..735, 716..716 union 738..738 union 742..742, 738..738 union 742..742, 720..720, 722..722 union 724..724 union 726..726, 724..724 union 726..726, 726..726, 728..728 union 732..732 union 734..734, 732..732 union 734..734, 735..735, 734..734, 741..741, 742..742, 744..744 union 748..748 union 769..769, 748..748 union 769..769, 768..768, 769..769, 790..790 union 824..824 union 827..827, 796..796 union 828..828, 798..798 union 829..829, 800..800 union 830..830, 802..802 union 831..831, 804..804 union 832..832, 806..806 union 833..833, 808..808 union 834..834, 810..810 union 835..835, 812..812 union 836..836, 814..814 union 837..837, 816..816 union 838..838, 818..818 union 839..839, 820..820 union 840..840, 822..822 union 841..841, 842..842, 843..843, 844..844, 845..845, 792..792 union 794..794 union 826..826, 824..824 union 827..827, 794..794 union 826..826, 826..826, 828..828, 829..829, 830..830, 831..831, 832..832, 833..833, 834..834, 835..835, 836..836, 837..837, 838..838, 839..839, 840..840, 841..841, 827..827]);
|
|
packed_pq = array2d(1..0, 1..0, []);
|
|
before_pred = [65, 66, 150, 157, 231, 232, 241, 247, 283, 284, 304, 305, 314, 320, 337, 337, 337, 337, 337, 337, 348, 349, 349, 349, 349, 349, 349, 350, 350, 350, 350, 350, 350, 351, 351, 351, 351, 351, 351, 352, 352, 352, 352, 352, 352, 353, 353, 353, 353, 353, 353, 354, 354, 354, 354, 354, 354, 443, 444, 458, 459, 473, 474, 480, 565, 574, 661, 662, 676, 677, 689, 697, 698, 710, 720, 726, 741, 742];
|
|
before_succ = [67, 67, 152, 158, 233, 233, 242, 248, 285, 285, 306, 306, 315, 321, 355, 356, 357, 358, 359, 360, 356, 355, 356, 357, 358, 359, 360, 355, 356, 357, 358, 359, 360, 355, 356, 357, 358, 359, 360, 355, 356, 357, 358, 359, 360, 355, 356, 357, 358, 359, 360, 355, 356, 357, 358, 359, 360, 445, 445, 460, 460, 475, 475, 481, 566, 575, 663, 663, 678, 678, 690, 699, 699, 711, 721, 727, 743, 743];
|
|
before_cond = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1];
|
|
nogood = [6, 10, 14, 18, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 44, 49, 54, 58, 60, 62, 66, 68, 70, 74, 76, 78, 81, 83, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103];
|
|
across_op = [125];
|
|
across_regs = [{}];
|
|
across_items = [1..33];
|
|
across_item_temp = [98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 122, 123, 127, 134, 137, 162, 173, 176, 187, 190];
|
|
across_item_cond = [108, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 79, 110, 117, 125, 131, 138, 139, 142, 145, 146, 149, 152, 153, 156];
|
|
setacross_op = [125];
|
|
setacross_regs = [{}];
|
|
setacross_tempsets = [1..22];
|
|
difftemp = [353..353 union 396..396];
|
|
diffreg = [65..66, 86..87, 88..109, 110..131, 150..151, 177..178, 179..200, 201..222, 240..241, 283..284, 304..305, 313..314, 375..396, 397..418, 443..444, 458..459, 473..474, 501..523, 524..546, 573..574, 590..591, 592..614, 615..636, 661..662, 676..677, 697..698, 734..735, 740..742, 750..769, 770..789, 827..845];
|
|
domop_operands = [253..253 union 259..259 union 335..335 union 353..353 union 396..396];
|
|
domop_temps = [134..134 union 137..137 union 173..173 union 176..176 union 190..190];
|
|
domuse_p = [23, 25, 27, 29, 31, 33, 35, 37, 39, 41, 43, 45, 47, 49, 51, 53, 55, 57, 59, 61, 63, 68, 70, 72, 74, 76, 78, 80, 82, 84, 87, 132, 134, 136, 138, 140, 142, 144, 146, 148, 151, 153, 155, 159, 161, 163, 165, 167, 169, 171, 173, 175, 223, 225, 227, 229, 234, 236, 238, 240, 240, 243, 245, 251, 253, 253, 253, 255, 257, 259, 259, 259, 261, 263, 265, 271, 277, 279, 281, 292, 298, 300, 302, 307, 309, 311, 313, 316, 318, 322, 324, 331, 333, 335, 335, 338, 340, 342, 344, 346, 353, 367, 369, 371, 373, 421, 423, 425, 431, 437, 439, 441, 446, 452, 454, 456, 461, 463, 465, 467, 469, 471, 476, 478, 482, 482, 484, 486, 488, 488, 490, 492, 494, 496, 496, 498, 500, 547, 549, 551, 553, 555, 557, 559, 561, 563, 567, 569, 571, 573, 576, 578, 580, 582, 584, 586, 588, 591, 637, 639, 649, 655, 657, 659, 664, 670, 672, 674, 679, 685, 687, 691, 693, 695, 700, 706, 708, 712, 714, 714, 716, 718, 722, 724, 728, 730, 732, 736, 738, 740, 744, 746, 748, 790, 792, 794, 796, 798, 800, 802, 804, 806, 808, 810, 812, 814, 816, 818, 820, 822, 824];
|
|
domuse_q = [88, 66, 65, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 107, 108, 66, 65, 109, 88, 88, 86, 86, 88, 107, 108, 109, 103, 179, 198, 199, 200, 200, 200, 150, 179, 150, 179, 157, 157, 177, 194, 178, 177, 178, 179, 198, 199, 200, 375, 394, 395, 396, 241, 375, 241, 313, 375, 247, 247, 396, 335, 353, 396, 349, 396, 335, 353, 396, 351, 390, 350, 284, 283, 284, 283, 305, 304, 305, 304, 314, 375, 314, 375, 320, 320, 326, 326, 352, 396, 353, 396, 396, 349, 351, 350, 352, 396, 375, 394, 395, 396, 519, 520, 521, 444, 443, 444, 443, 459, 458, 459, 458, 474, 521, 521, 473, 474, 473, 480, 480, 500, 522, 515, 523, 500, 522, 519, 520, 521, 500, 522, 523, 522, 610, 611, 612, 613, 614, 612, 612, 565, 565, 574, 613, 574, 613, 590, 590, 610, 611, 612, 613, 614, 606, 741, 768, 662, 661, 662, 661, 677, 676, 677, 676, 698, 689, 689, 697, 698, 697, 720, 710, 710, 735, 740, 764, 742, 720, 726, 726, 734, 735, 734, 741, 742, 764, 769, 768, 769, 827, 826, 826, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 827];
|
|
domuse_r = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 21, 22, 1, 2, 67, 0, 0, 73, 73, 0, 21, 22, 67, 17, 110, 129, 130, 131, 131, 131, 143, 110, 143, 110, 152, 152, 158, 125, 162, 158, 162, 110, 129, 130, 131, 201, 220, 221, 222, 233, 201, 233, 201, 201, 242, 242, 222, 222, 222, 222, 254, 222, 222, 222, 222, 260, 216, 264, 270, 276, 270, 276, 291, 297, 291, 297, 306, 201, 306, 201, 315, 315, 321, 321, 330, 222, 222, 222, 222, 254, 260, 264, 330, 222, 201, 220, 221, 222, 416, 417, 418, 430, 436, 430, 436, 445, 451, 445, 451, 460, 418, 418, 466, 460, 466, 475, 475, 481, 481, 412, 485, 481, 481, 416, 417, 418, 481, 481, 485, 481, 542, 543, 544, 545, 546, 544, 544, 560, 560, 566, 545, 566, 545, 575, 575, 542, 543, 544, 545, 546, 538, 633, 634, 648, 654, 648, 654, 663, 669, 663, 669, 678, 684, 684, 690, 678, 690, 699, 705, 705, 711, 629, 629, 715, 699, 721, 721, 727, 711, 727, 633, 715, 629, 743, 634, 743, 770, 789, 789, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 770];
|
|
infassign = array2d(1..89, 1..4, [23, 10, 83, 86, 24, 10, 87, 87, 25, 10, 88, 88, 26, 10, 89, 89, 27, 10, 90, 90, 28, 10, 91, 91, 29, 10, 92, 92, 30, 10, 93, 93, 31, 10, 94, 94, 32, 10, 95, 95, 33, 10, 96, 96, 34, 10, 67, 67, 35, 10, 69, 69, 36, 10, 71, 71, 37, 10, 73, 73, 38, 10, 75, 75, 39, 10, 77, 77, 40, 10, 97, 102, 41, 10, 103, 109, 45, 10, 110, 115, 48, 10, 116, 116, 76, 10, 83, 86, 77, 10, 97, 102, 78, 10, 103, 109, 79, 10, 110, 115, 82, 10, 117, 117, 86, 10, 118, 118, 89, 10, 119, 119, 91, 10, 120, 120, 120, 10, 83, 86, 121, 10, 97, 102, 122, 10, 103, 109, 123, 10, 110, 115, 126, 10, 121, 121, 130, 10, 122, 122, 133, 10, 123, 123, 136, 10, 124, 124, 139, 10, 125, 125, 141, 10, 126, 126, 144, 10, 127, 127, 147, 10, 128, 128, 151, 10, 129, 129, 154, 10, 130, 130, 157, 10, 131, 131, 161, 10, 132, 132, 165, 10, 133, 133, 168, 10, 134, 134, 172, 10, 135, 135, 213, 10, 83, 86, 214, 10, 97, 102, 215, 10, 103, 109, 216, 10, 110, 115, 219, 10, 136, 136, 222, 10, 137, 137, 226, 10, 138, 138, 229, 10, 139, 139, 233, 10, 140, 140, 236, 10, 141, 141, 240, 10, 142, 142, 243, 10, 143, 145, 245, 10, 146, 150, 275, 10, 97, 102, 276, 10, 103, 109, 277, 10, 110, 115, 278, 10, 143, 145, 279, 10, 146, 150, 282, 10, 151, 151, 285, 10, 152, 152, 289, 10, 153, 153, 318, 10, 97, 102, 319, 10, 103, 109, 320, 10, 110, 115, 321, 10, 143, 145, 324, 10, 154, 154, 327, 10, 155, 155, 331, 10, 156, 156, 334, 10, 157, 157, 338, 10, 158, 158, 341, 10, 159, 159, 344, 10, 160, 160, 348, 10, 161, 161, 351, 10, 162, 162, 354, 10, 79, 79, 356, 10, 146, 150, 359, 10, 163, 163, 362, 10, 81, 81, 368, 10, 146, 150, 391, 10, 146, 150, 392, 10, 103, 109]);
|
|
space = array1d(-1..17, [-1, 0, 1, 1, 2, 3, 4, 5, 6, 6, 6, 6, 7, 8, 9, 10, 10, 11, 11]);
|
|
dominate_ing = [3, 4, 5, 20, 21, 25, 26, 28, 37, 37, 38, 39, 40, 40, 41, 43, 44, 47, 50, 52, 62, 62, 62, 63, 64, 65, 65, 65, 65, 65, 68, 69, 72, 75, 76, 76, 78, 79, 79, 81, 83, 84, 86, 89, 93, 94, 96, 97, 99, 103, 104, 107, 110, 115, 116, 116, 119, 133, 133, 133, 134, 135, 136, 136, 137, 139, 140, 142, 146, 149, 153, 154, 156, 160, 163, 165, 166, 175, 176, 177, 177, 178, 178, 179, 180, 182, 185, 186, 189, 199, 200, 201, 201, 202, 202, 202, 203, 205, 206, 208, 212, 215, 219, 220, 222, 225, 229, 232, 235, 237, 240, 243, 250, 255, 256];
|
|
dominate_ed = [26, 22, 23, 31, 32, 33, 30, 29, 44, 55, 56, 57, 41, 58, 58, 45, 55, 48, 53, 54, 69, 104, 127, 128, 129, 76, 79, 116, 119, 130, 70, 104, 73, 84, 79, 130, 120, 116, 130, 121, 122, 87, 90, 91, 94, 97, 100, 113, 101, 105, 127, 108, 111, 123, 119, 130, 130, 137, 140, 147, 167, 168, 154, 169, 140, 143, 147, 144, 150, 151, 157, 169, 158, 161, 166, 171, 170, 191, 192, 180, 193, 186, 194, 195, 193, 183, 187, 194, 190, 247, 251, 220, 230, 203, 206, 213, 206, 209, 213, 210, 216, 217, 226, 230, 223, 227, 238, 233, 244, 248, 241, 245, 252, 272, 257];
|
|
dominate_instructions = [{}, {}, {}, 8..8, {}, {}, {}, {}, 8..8, {}, 8..8, {}, 8..8, {}, {}, {}, {}, {}, {}, {}, 8..8, 8..8, {}, 8..8, {}, 8..8, 8..8, 8..8, 8..8, {}, {}, {}, 8..8, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, 8..8, 8..8, 8..8, 8..8, 8..8, 8..8, 8..8, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, 8..8, {}, 8..8, 8..8, 8..8, 8..8, {}, {}, {}, {}, {}, {}, 8..8, {}, 8..8, 8..8, 8..8, 8..8, 8..8, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, 8..8, 8..8];
|
|
dominate_temps = [{}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}];
|
|
precedence = [206, 218, 224, 230, 246, 252, 268, 274, 286, 300, 316, 336, 342, 350, 360, 374, 382, 388, 394, 408, 424, 446, 475, 508, 514, 522, 534, 549, 563, 569, 573, 579, 609, 615, 619, 623, 627, 631, 635, 639, 643, 647, 651, 655, 659, 663, 667, 671, 675, 679, 683, 687, 691, 695, 699, 703, 707, 711, 715, 719, 723, 727, 731, 735, 739, 743, 747, 751, 755, 759, 765, 771, 777, 783, 789, 795, 801, 807, 813, 819, 825, 829, 835, 839, 845, 849, 855, 859, 865, 869, 875, 879, 885, 889, 895, 899, 905, 909, 915, 919, 925, 929, 935, 939, 945, 949, 955, 959, 965, 969, 975, 979, 985, 989, 995, 999, 1005, 1009, 1015, 1019, 1025, 1029, 1035, 1039, 1045, 1049, 1055, 1059, 1065, 1069, 1075, 1079, 1085, 1089, 1095, 1099, 1105, 1111, 1117, 1123, 1129, 1135, 1141, 1147, 1153, 1159, 1165, 1171, 1177, 1183, 1189, 1195, 1201, 1207, 1213, 1219, 1225, 1231, 1237, 1243, 1249, 1255, 1259, 1265, 1269, 1275, 1279, 1285, 1289, 1295, 1299, 1305, 1309, 1315, 1319, 1325, 1329, 1335, 1339, 1345, 1349, 1355, 1359, 1365, 1369, 1375, 1379, 1385, 1389, 1395, 1399, 1405, 1409, 1415, 1419, 1425, 1429, 1435, 1439, 1445, 1449, 1455, 1459, 1465, 1469, 1473, 1477, 1481, 1485, 1489, 1493, 1497, 1501, 1505, 1509, 1513, 1517, 1521, 1525, 1529, 1533, 1537, 1541, 1543, 1545, 1547, 1549, 1551, 1553, 1555, 1557, 1559, 1561, 1563, 1565, 1567, 1569, 1571, 1573, 1575, 1577, 1579, 1581, 1583, 1585, 1587, 1589, 1591, 1593, 1595, 1597, 1599, 1601, 1603, 1605, 1607, 1609, 1611, 1613, 1615, 1617, 1619, 1621, 1623, 1625, 1627, 1629, 1631, 1633, 1635, 1637, 1639, 1641, 1643, 1645, 1647, 1649, 1651, 1653, 1655, 1657, 1659, 1661, 1664, 1666, 1669, 1671, 1674, 1676, 1679, 1681, 1683, 1685, 1688, 1690, 1692, 1694, 1696, 1698, 1701, 1703, 1705, 1707, 1710, 1712, 1715, 1717, 1719, 1721, 1723, 1725, 1727, 1729, 1731, 1733, 1735, 1737, 1739, 1741, 1744, 1746, 1749, 1751, 1754, 1756, 1759, 1761, 1764, 1766, 1768, 1770, 1773, 1775, 1777, 1780, 1782, 1784, 1787, 1789, 1791, 1794, 1796, 1799, 1801, 1803, 1806, 1808, 1810, 1813, 1815, 1817, 1819, 1822, 1824, 1826, 1829, 1831, 1833, 1836, 1838, 1840, 1842, 1845, 1847, 1849, 1851, 1854, 1856, 1858, 1861, 1863, 1865, 1867, 1870, 1872, 1874, 1876, 1878, 1880, 1882, 1884, 1886, 1888, 1890, 1892, 1895, 1897, 1900, 1902, 1905, 1907, 1910, 1912, 1914, 1916, 1919, 1921, 1924, 1926, 1928, 1930, 1932, 1934, 1937, 1939, 1942, 1944, 1946, 1948, 1950, 1952, 1955, 1957, 1959, 1961, 1964, 1966, 1968, 1970, 1972, 1974, 1977, 1979, 1981, 1983, 1986, 1988, 1991, 1993, 1995, 1997, 1999, 2001, 2003, 2005, 2007, 2009, 2011, 2013, 2015, 2017, 2020, 2022, 2025, 2027, 2030, 2032, 2035, 2037, 2040, 2042, 2044, 2046, 2049, 2051, 2053, 2055, 2058, 2060, 2062, 2064, 2066, 2068, 2071, 2073, 2075, 2077, 2079, 2081, 2083, 2085, 2087, 2089, 2091, 2093, 2095, 2097, 2100, 2102, 2105, 2107, 2110, 2112, 2115, 2117, 2119, 2122, 2124, 2127, 2129, 2131, 2133, 2136, 2138, 2141, 2143, 2145, 2147, 2150, 2152, 2154, 2157, 2159, 2161, 2164, 2166, 2168, 2170, 2173, 2175, 2178, 2180, 2182, 2184, 2187, 2189, 2191, 2193, 2195, 2197, 2199, 2201, 2203, 2205, 2208, 2210, 2212, 2214, 2216, 2218, 2220, 2222, 2224, 2226, 2228, 2230, 2232, 2234, 2236, 2238, 2240, 2242, 2244, 2246, 2248, 2250, 2252, 2254, 2256, 2258, 2260, 2262, 2264, 2266, 2268, 2270, 2272, 2274, 2276, 2278, 2280, 2282, 2284, 2286, 2288, 2290, 2292, 2294, 2296, 2298, 2300, 2302, 2304, 2306, 2308, 2310, 2312, 2314, 2316, 2318, 2321, 2324, 2327, 2330, 2333, 2336, 2339, 2342, 2345, 2348, 2350, 2351, 2352, 2353, 2354, 2355, 2356, 2357, 2358, 2359, 2360, 2361, 2362, 2363, 2364, 2365, 2366, 2367, 2368, 2369, 2370, 2371, 2372, 2373, 2374, 2375, 2376, 2377, 2378, 2379, 2380, 2381, 2382, 2383, 2384, 2385, 2386, 2387, 2388, 2389, 2390, 2391, 2392, 2393, 2394, 2395, 2396, 2397, 2398, 2399, 2400, 2401, 2402, 2403, 2404, 2405, 2406, 2407, 2408, 2409, 2410, 2411, 2412, 2413, 2414, 2415, 2416, 2417, 2418, 2419, 2420, 2421, 2422, 2423, 2424, 2425, 2426, 2427, 2428, 2429, 2430, 2431, 2432, 2433, 2434, 2435, 2436, 2437, 2438, 2439, 2440, 2441, 2442, 2443, 2444, 2445, 2446, 2447, 2448, 2449, 2450, 2451, 2452, 2453, 2454, 2455, 2456, 2457, 2458, 2459, 2460, 2461, 2462, 2463, 2464, 2465, 2466, 2467, 2468, 2469, 2470, 2471, 2472, 2473, 2474, 2475, 2476, 2477, 2478, 2479, 2480, 2481, 2482, 2483, 2484, 2485, 2486, 2487, 2488, 2489, 2490, 2491, 2492, 2493, 2494, 2495, 2496, 2497, 2498, 2499, 2500, 2501, 2502, 2503, 2504, 2505, 2506, 2507, 2508, 2509, 2510, 2511, 2512, 2513, 2514, 2515, 2516, 2517, 2518, 2519, 2520, 2521, 2522, 2523, 2524, 2525, 2526, 2527, 2528, 2529, 2530, 2531, 2532, 2533, 2534, 2535, 2536, 2537, 2538, 2539, 2540, 2541, 2542, 2543, 2544, 2545, 2546, 2547];
|
|
table_exists_ops = [2..2, 273..273];
|
|
table_iffall_ops = [];
|
|
relation_ops = [20..20 union 31..31, 38..38 union 56..56, 63..63 union 128..128, 65..65 union 76..76 union 79..79 union 116..116 union 119..119, 72..73, 134..134 union 167..167, 140..140 union 147..147, 175..175 union 191..191, 199..199 union 247..247, 206..206 union 213..213, 230..230, 6..6, 7..7, 8..8, 9..9, 10..10, 11..11, 12..12, 13..13, 14..14, 15..15, 16..16, 17..17, 18..18, 19..19, 258..258, 259..259, 260..260, 261..261, 262..262, 263..263, 264..264, 265..265, 266..266, 267..267, 268..268, 269..269, 270..270, 271..271, 4..4 union 22..22, 5..5 union 23..23, 20..20 union 31..31, 21..21 union 32..32, 25..25 union 33..33, 28..29, 38..38 union 56..56, 39..39 union 57..57, 43..43 union 45..45, 47..48, 50..50 union 53..53, 52..52 union 54..54, 63..63 union 128..128, 64..64 union 129..129, 68..68 union 70..70, 72..73, 78..78 union 120..120, 81..81 union 121..121, 83..83 union 122..122, 86..86 union 90..90, 89..89 union 91..91, 96..96 union 100..100, 99..99 union 101..101, 103..103 union 105..105, 107..108, 110..111, 115..115 union 123..123, 134..134 union 167..167, 135..135 union 168..168, 139..139 union 143..143, 142..142 union 144..144, 146..146 union 150..150, 149..149 union 151..151, 153..153 union 157..157, 156..156 union 158..158, 160..161, 165..165 union 171..171, 175..175 union 191..191, 176..176 union 192..192, 179..179 union 195..195, 182..183, 185..185 union 187..187, 189..190, 199..199 union 247..247, 200..200 union 251..251, 205..205 union 209..209, 208..208 union 210..210, 212..212 union 216..216, 215..215 union 217..217, 219..219 union 226..226, 222..223, 225..225 union 227..227, 229..229 union 238..238, 232..233, 235..235 union 244..244, 237..237 union 248..248, 240..241, 243..243 union 245..245, 250..250 union 252..252, 255..255 union 272..272, 256..257, 3..3 union 26..26 union 30..30, 37..37 union 44..44 union 55..55, 40..41 union 58..58, 75..75 union 84..84 union 87..87, 136..136 union 154..154 union 169..169, 163..163 union 166..166 union 170..170, 177..177 union 180..180 union 193..193, 178..178 union 186..186 union 194..194, 201..201 union 220..220 union 230..230, 62..62 union 69..69 union 104..104 union 127..127, 93..94 union 97..97 union 113..113, 133..133 union 137..137 union 140..140 union 147..147, 202..203 union 206..206 union 213..213];
|
|
relation_temps = [{}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, 89..89, 90..90, 91..91, 92..92, 93..93, 94..94, 95..95, 96..96, 97..97, 98..98, 99..99, 100..100, 101..101, 102..102, 828..828, 829..829, 830..830, 831..831, 832..832, 833..833, 834..834, 835..835, 836..836, 837..837, 838..838, 839..839, 840..840, 841..841, 61..61 union 66..66, 63..63 union 65..65, 80..80 union 107..107, 82..82 union 108..108, 84..84 union 109..109, 76..76 union 86..86, 171..171 union 198..198, 173..173 union 199..199, 148..148 union 150..150, 155..155 union 157..157, 165..165 union 177..177, 167..167 union 178..178, 369..369 union 394..394, 371..371 union 395..395, 238..238 union 241..241, 245..245 union 247..247, 340..340 union 349..349, 342..342 union 351..351, 344..344 union 350..350, 279..279 union 284..284, 281..281 union 283..283, 300..300 union 305..305, 302..302 union 304..304, 311..311 union 314..314, 318..318 union 320..320, 324..324 union 326..326, 346..346 union 352..352, 490..490 union 519..519, 492..492 union 520..520, 439..439 union 444..444, 441..441 union 443..443, 454..454 union 459..459, 456..456 union 458..458, 469..469 union 474..474, 471..471 union 473..473, 478..478 union 480..480, 498..498 union 523..523, 580..580 union 610..610, 582..582 union 611..611, 588..588 union 614..614, 563..563 union 565..565, 571..571 union 574..574, 578..578 union 590..590, 736..736 union 741..741, 746..746 union 768..768, 657..657 union 662..662, 659..659 union 661..661, 672..672 union 677..677, 674..674 union 676..676, 693..693 union 698..698, 687..687 union 689..689, 695..695 union 697..697, 718..718 union 720..720, 708..708 union 710..710, 730..730 union 735..735, 738..738 union 742..742, 724..724 union 726..726, 732..732 union 734..734, 748..748 union 769..769, 824..824 union 827..827, 794..794 union 826..826, 70..70 union 72..72 union 78..78 union 88..88, 146..146 union 151..151 union 169..169 union 179..179, 140..140 union 142..142 union 175..175 union 200..200, 267..267 union 269..269 union 273..273 union 275..275, 463..463 union 465..465 union 494..494 union 521..521, 488..488 union 496..496 union 500..500 union 522..522, 557..557 union 559..559 union 584..584 union 612..612, 569..569 union 573..573 union 586..586 union 613..613, 681..681 union 683..683 union 702..702 union 704..704, 236..236 union 240..240 union 309..309 union 313..313 union 367..367 union 375..375, 288..288 union 290..290 union 294..294 union 296..296 union 327..327 union 329..329, 427..427 union 429..429 union 433..433 union 435..435 union 448..448 union 450..450, 645..645 union 647..647 union 651..651 union 653..653 union 666..666 union 668..668];
|
|
relation_ntuples = [1, 1, 1, 9, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 1, 3, 3, 3, 1, 3, 3, 3, 3, 3, 1, 3, 3, 1, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 4, 3, 3, 3, 3, 3, 3, 3, 3, 1, 3, 3, 3, 3, 3, 1, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 10, 11, 11, 12, 13, 10, 13, 13, 10, 35, 51, 26, 26];
|
|
relation_range = [1..2, 3..4, 5..6, 7..51, 52..53, 54..55, 56..57, 58..59, 60..61, 62..63, 64..64, 65..68, 69..72, 73..76, 77..80, 81..84, 85..88, 89..92, 93..96, 97..100, 101..104, 105..108, 109..112, 113..116, 117..120, 121..124, 125..128, 129..132, 133..136, 137..140, 141..144, 145..148, 149..152, 153..156, 157..160, 161..164, 165..168, 169..172, 173..176, 177..188, 189..200, 201..204, 205..216, 217..228, 229..240, 241..244, 245..256, 257..268, 269..280, 281..292, 293..304, 305..308, 309..320, 321..332, 333..336, 337..348, 349..360, 361..372, 373..384, 385..396, 397..408, 409..420, 421..432, 433..444, 445..456, 457..468, 469..472, 473..488, 489..500, 501..512, 513..524, 525..536, 537..548, 549..560, 561..572, 573..584, 585..588, 589..600, 601..612, 613..624, 625..636, 637..648, 649..652, 653..664, 665..676, 677..688, 689..700, 701..712, 713..724, 725..736, 737..748, 749..760, 761..772, 773..784, 785..796, 797..808, 809..820, 821..832, 833..848, 849..864, 865..934, 935..1011, 1012..1088, 1089..1172, 1173..1263, 1264..1333, 1334..1424, 1425..1515, 1516..1585, 1586..1935, 1936..2445, 2446..2705, 2706..2965];
|
|
ints = [0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0, 1, 1, 1, 0, 0, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 1, 26, 0, 4, 1, 27, 0, 5, 1, 28, 0, 6, 1, 29, 0, 7, 1, 30, 0, 8, 1, 31, 0, 9, 1, 32, 0, 10, 1, 33, 0, 11, 1, 34, 0, 12, 1, 35, 0, 13, 1, 36, 0, 14, 1, 37, 0, 15, 1, 38, 0, 16, 1, 39, 0, 372, 1, 394, 0, 373, 1, 395, 0, 374, 1, 396, 0, 375, 1, 397, 0, 376, 1, 398, 0, 377, 1, 399, 0, 378, 1, 400, 0, 379, 1, 401, 0, 380, 1, 402, 0, 381, 1, 403, 0, 382, 1, 404, 0, 383, 1, 405, 0, 384, 1, 406, 0, 385, 1, 407, 0, 0, -1, 1, 1, 0, -1, 24, 1, 1, 24, 42, 0, 0, -1, 2, 1, 0, -1, 25, 1, 1, 25, 43, 0, 0, -1, 21, 0, 0, -1, 22, 1, 0, -1, 41, 1, 1, 41, 52, 0, 0, -1, 44, 1, 0, -1, 45, 1, 1, 45, 53, 0, 0, -1, 47, 1, 0, -1, 48, 1, 1, 48, 49, 0, 0, -1, 73, 0, 0, -1, 74, 1, 0, -1, 78, 1, 1, 78, 96, 0, 0, -1, 81, 1, 0, -1, 82, 1, 1, 82, 84, 0, 0, -1, 85, 1, 0, -1, 86, 1, 1, 86, 87, 0, 0, -1, 88, 1, 0, -1, 89, 1, 1, 89, 92, 0, 0, -1, 90, 1, 0, -1, 91, 1, 1, 91, 93, 0, 0, -1, 117, 0, 0, -1, 118, 1, 0, -1, 122, 1, 1, 122, 189, 0, 0, -1, 125, 1, 0, -1, 126, 1, 1, 126, 128, 0, 0, -1, 129, 0, 0, -1, 135, 1, 0, -1, 136, 1, 1, 136, 177, 0, 0, -1, 138, 1, 0, -1, 139, 1, 1, 139, 178, 0, 0, -1, 140, 1, 0, -1, 141, 1, 1, 141, 179, 0, 0, -1, 143, 1, 0, -1, 144, 1, 1, 144, 148, 0, 0, -1, 146, 1, 0, -1, 147, 1, 1, 147, 149, 0, 0, -1, 153, 1, 0, -1, 154, 1, 1, 154, 158, 0, 0, -1, 156, 1, 0, -1, 157, 1, 1, 157, 159, 0, 0, -1, 160, 1, 0, -1, 161, 1, 1, 161, 163, 0, 0, -1, 164, 1, 0, -1, 165, 1, 1, 165, 166, 0, 0, -1, 167, 1, 0, -1, 168, 1, 1, 168, 169, 0, 0, -1, 171, 1, 0, -1, 172, 1, 1, 172, 180, 0, 0, -1, 210, 0, 0, -1, 211, 0, 1, 211, 248, 1, 0, -1, 215, 1, 1, 215, 248, 0, 0, -1, 218, 1, 0, -1, 219, 1, 1, 219, 223, 0, 0, -1, 221, 1, 0, -1, 222, 1, 1, 222, 224, 0, 0, -1, 225, 1, 0, -1, 226, 1, 1, 226, 230, 0, 0, -1, 228, 1, 0, -1, 229, 1, 1, 229, 231, 0, 0, -1, 232, 1, 0, -1, 233, 1, 1, 233, 237, 0, 0, -1, 235, 1, 0, -1, 236, 1, 1, 236, 238, 0, 0, -1, 239, 1, 0, -1, 240, 1, 1, 240, 241, 0, 0, -1, 244, 1, 0, -1, 245, 1, 1, 245, 251, 0, 0, -1, 270, 0, 0, -1, 271, 1, 0, -1, 276, 1, 1, 276, 292, 0, 0, -1, 274, 1, 0, -1, 279, 1, 1, 279, 295, 0, 0, -1, 281, 1, 0, -1, 282, 1, 1, 282, 283, 0, 0, -1, 284, 1, 0, -1, 285, 1, 1, 285, 287, 0, 0, -1, 288, 1, 0, -1, 289, 1, 1, 289, 290, 0, 0, -1, 314, 0, 0, -1, 315, 1, 0, -1, 319, 1, 1, 319, 369, 0, 0, -1, 323, 1, 0, -1, 324, 1, 1, 324, 328, 0, 0, -1, 326, 1, 0, -1, 327, 1, 1, 327, 329, 0, 0, -1, 330, 1, 0, -1, 331, 1, 1, 331, 335, 0, 0, -1, 333, 1, 0, -1, 334, 1, 1, 334, 336, 0, 0, -1, 337, 1, 0, -1, 338, 1, 1, 338, 345, 0, 0, -1, 340, 1, 0, -1, 341, 1, 1, 341, 342, 0, 0, -1, 343, 1, 0, -1, 344, 1, 1, 344, 346, 0, 0, -1, 347, 1, 0, -1, 348, 1, 1, 348, 357, 0, 0, -1, 350, 1, 0, -1, 351, 1, 1, 351, 352, 0, 0, -1, 353, 1, 0, -1, 354, 1, 1, 354, 363, 0, 0, -1, 355, 1, 0, -1, 356, 1, 1, 356, 366, 0, 0, -1, 358, 1, 0, -1, 359, 1, 1, 359, 360, 0, 0, -1, 361, 1, 0, -1, 362, 1, 1, 362, 364, 0, 0, -1, 367, 1, 0, -1, 368, 1, 1, 368, 370, 0, 0, -1, 371, 0, 1, 371, 408, 1, 0, -1, 391, 1, 1, 391, 408, 0, 0, -1, 390, 0, 1, 390, 393, 1, 0, -1, 392, 1, 1, 392, 393, 0, 0, 0, -1, 0, -1, 0, 1, 0, 0, -1, 0, -1, 23, 1, 0, 0, -1, 23, -1, 23, 1, 1, 0, 0, 23, -1, 46, 1, 1, 0, 23, 0, -1, 46, 1, 1, 0, 23, 23, -1, 46, 1, 1, 0, 23, 46, -1, 46, 1, 1, 1, 0, 46, 23, 50, 1, 1, 1, 23, 46, 0, 50, 1, 1, 1, 23, 46, 23, 50, 0, 0, 0, -1, 54, -1, 54, 0, 1, 0, 54, 83, -1, 54, 1, 0, 0, -1, 54, -1, 76, 1, 0, 0, -1, 76, -1, 76, 1, 1, 0, 54, 76, -1, 83, 1, 1, 0, 76, 54, -1, 83, 1, 1, 0, 76, 76, -1, 83, 1, 1, 0, 76, 83, -1, 83, 1, 1, 1, 54, 83, 76, 94, 1, 1, 1, 76, 83, 54, 94, 1, 1, 1, 76, 83, 76, 94, 0, 0, 0, -1, 75, -1, 75, 0, 1, 0, 75, 80, -1, 75, 1, 0, 0, -1, 75, -1, 79, 1, 0, 0, -1, 79, -1, 79, 1, 1, 0, 75, 79, -1, 80, 1, 1, 0, 79, 75, -1, 80, 1, 1, 0, 79, 79, -1, 80, 1, 1, 0, 79, 80, -1, 80, 1, 1, 1, 75, 80, 79, 97, 1, 1, 1, 79, 80, 75, 97, 1, 1, 1, 79, 80, 79, 97, 0, 0, 0, -1, 132, -1, 132, 1, 0, 0, -1, 132, -1, 133, 1, 0, 0, -1, 133, -1, 132, 1, 0, 0, -1, 133, -1, 133, 1, 1, 0, 132, 133, -1, 142, 1, 1, 0, 133, 132, -1, 142, 1, 1, 0, 133, 133, -1, 142, 1, 1, 0, 133, 142, -1, 132, 1, 1, 0, 133, 142, -1, 142, 1, 1, 1, 132, 142, 133, 145, 1, 1, 1, 133, 142, 132, 145, 1, 1, 1, 133, 142, 133, 145, 0, 0, 0, -1, 212, -1, 212, 0, 1, 0, 212, 234, -1, 212, 0, 1, 0, 212, 234, -1, 234, 0, 1, 1, 212, 234, 212, 249, 1, 0, 0, -1, 212, -1, 216, 1, 0, 0, -1, 216, -1, 216, 1, 1, 0, 212, 216, -1, 234, 1, 1, 0, 216, 212, -1, 234, 1, 1, 0, 216, 216, -1, 234, 1, 1, 0, 216, 234, -1, 234, 1, 1, 1, 212, 234, 216, 249, 1, 1, 1, 216, 234, 212, 249, 1, 1, 1, 216, 234, 216, 249, 0, 0, 0, -1, -1, 242, 242, 1, 0, 0, -1, -1, 242, 243, 1, 0, 0, -1, -1, 243, 243, 1, 1, 0, 242, -1, 243, 246, 1, 1, 0, 243, -1, 242, 246, 1, 1, 0, 243, -1, 243, 246, 1, 1, 0, 243, -1, 246, 246, 1, 1, 1, 242, 243, 246, 250, 1, 1, 1, 243, 242, 246, 250, 1, 1, 1, 243, 243, 246, 250, 0, 0, 0, -1, 272, -1, 272, 0, 1, 0, 272, 280, -1, 272, 0, 1, 0, 272, 280, -1, 280, 0, 1, 1, 272, 280, 272, 293, 1, 0, 0, -1, 272, -1, 277, 1, 0, 0, -1, 277, -1, 277, 1, 1, 0, 272, 277, -1, 280, 1, 1, 0, 277, 272, -1, 280, 1, 1, 0, 277, 277, -1, 280, 1, 1, 0, 277, 280, -1, 280, 1, 1, 1, 272, 280, 277, 293, 1, 1, 1, 277, 280, 272, 293, 1, 1, 1, 277, 280, 277, 293, 0, 0, 0, -1, 273, -1, 273, 0, 1, 0, 273, 286, -1, 273, 0, 1, 0, 273, 286, -1, 286, 0, 1, 1, 273, 286, 273, 294, 1, 0, 0, -1, 273, -1, 278, 1, 0, 0, -1, 278, -1, 278, 1, 1, 0, 273, 278, -1, 286, 1, 1, 0, 278, 273, -1, 286, 1, 1, 0, 278, 278, -1, 286, 1, 1, 0, 278, 286, -1, 286, 1, 1, 1, 273, 286, 278, 294, 1, 1, 1, 278, 286, 273, 294, 1, 1, 1, 278, 286, 278, 294, 0, 0, 0, -1, 316, -1, 316, 0, 1, 0, 316, 339, -1, 339, 1, 0, 0, -1, 316, -1, 320, 1, 0, 0, -1, 320, -1, 316, 1, 0, 0, -1, 320, -1, 320, 1, 1, 0, 316, 320, -1, 339, 1, 1, 0, 320, 316, -1, 339, 1, 1, 0, 320, 320, -1, 339, 1, 1, 0, 320, 339, -1, 316, 1, 1, 0, 320, 339, -1, 339, 0, 0, 0, 0, -1, 98, -1, 98, -1, 98, 0, 1, 0, 0, 98, 127, -1, 127, -1, 98, 0, 1, 1, 0, 98, 127, 98, 162, -1, 98, 1, 0, 0, 0, -1, 98, -1, 98, -1, 120, 1, 0, 0, 0, -1, 98, -1, 120, -1, 120, 1, 0, 0, 0, -1, 120, -1, 120, -1, 120, 1, 1, 0, 0, 98, 98, -1, 120, -1, 127, 1, 1, 0, 0, 98, 120, -1, 120, -1, 127, 1, 1, 0, 0, 98, 120, -1, 127, -1, 127, 1, 1, 0, 0, 120, 98, -1, 98, -1, 127, 1, 1, 0, 0, 120, 98, -1, 120, -1, 127, 1, 1, 0, 0, 120, 98, -1, 127, -1, 127, 1, 1, 0, 0, 120, 120, -1, 120, -1, 127, 1, 1, 0, 0, 120, 120, -1, 127, -1, 127, 1, 1, 0, 0, 120, 127, -1, 127, -1, 127, 1, 1, 1, 0, 98, 98, 120, 127, -1, 162, 1, 1, 1, 0, 98, 120, 98, 127, -1, 162, 1, 1, 1, 0, 98, 120, 120, 127, -1, 162, 1, 1, 1, 0, 98, 127, 120, 127, -1, 162, 1, 1, 1, 0, 98, 127, 120, 162, -1, 162, 1, 1, 1, 0, 120, 98, 98, 127, -1, 162, 1, 1, 1, 0, 120, 98, 120, 127, -1, 162, 1, 1, 1, 0, 120, 120, 98, 127, -1, 162, 1, 1, 1, 0, 120, 120, 120, 127, -1, 162, 1, 1, 1, 0, 120, 127, 98, 127, -1, 162, 1, 1, 1, 0, 120, 127, 98, 162, -1, 162, 1, 1, 1, 0, 120, 127, 120, 127, -1, 162, 1, 1, 1, 0, 120, 127, 120, 162, -1, 162, 1, 1, 1, 1, 98, 127, 98, 162, 120, 187, 1, 1, 1, 1, 98, 127, 120, 162, 98, 187, 1, 1, 1, 1, 98, 127, 120, 162, 120, 187, 1, 1, 1, 1, 120, 127, 98, 162, 98, 187, 1, 1, 1, 1, 120, 127, 98, 162, 120, 187, 1, 1, 1, 1, 120, 127, 120, 162, 98, 187, 1, 1, 1, 1, 120, 127, 120, 162, 120, 187, 0, 0, 0, 0, -1, 150, -1, 150, -1, 150, 1, 0, 0, 0, -1, 150, -1, 150, -1, 151, 1, 0, 0, 0, -1, 150, -1, 151, -1, 150, 1, 0, 0, 0, -1, 150, -1, 151, -1, 151, 1, 0, 0, 0, -1, 151, -1, 150, -1, 150, 1, 0, 0, 0, -1, 151, -1, 150, -1, 151, 1, 0, 0, 0, -1, 151, -1, 151, -1, 150, 1, 0, 0, 0, -1, 151, -1, 151, -1, 151, 1, 1, 0, 0, 150, 150, -1, 151, -1, 152, 1, 1, 0, 0, 150, 151, -1, 150, -1, 152, 1, 1, 0, 0, 150, 151, -1, 151, -1, 152, 1, 1, 0, 0, 150, 151, -1, 152, -1, 150, 1, 1, 0, 0, 150, 151, -1, 152, -1, 152, 1, 1, 0, 0, 151, 150, -1, 150, -1, 152, 1, 1, 0, 0, 151, 150, -1, 151, -1, 152, 1, 1, 0, 0, 151, 150, -1, 152, -1, 150, 1, 1, 0, 0, 151, 150, -1, 152, -1, 152, 1, 1, 0, 0, 151, 151, -1, 150, -1, 152, 1, 1, 0, 0, 151, 151, -1, 151, -1, 152, 1, 1, 0, 0, 151, 151, -1, 152, -1, 150, 1, 1, 0, 0, 151, 151, -1, 152, -1, 152, 1, 1, 0, 0, 151, 152, -1, 150, -1, 150, 1, 1, 0, 0, 151, 152, -1, 150, -1, 152, 1, 1, 0, 0, 151, 152, -1, 152, -1, 150, 1, 1, 0, 0, 151, 152, -1, 152, -1, 152, 1, 1, 1, 0, 150, 150, 151, 152, -1, 155, 1, 1, 1, 0, 150, 151, 150, 152, -1, 155, 1, 1, 1, 0, 150, 151, 151, 152, -1, 155, 1, 1, 1, 0, 150, 152, 151, 150, -1, 155, 1, 1, 1, 0, 150, 152, 151, 152, -1, 155, 1, 1, 1, 0, 150, 152, 151, 155, -1, 150, 1, 1, 1, 0, 150, 152, 151, 155, -1, 155, 1, 1, 1, 0, 151, 150, 150, 152, -1, 155, 1, 1, 1, 0, 151, 150, 151, 152, -1, 155, 1, 1, 1, 0, 151, 151, 150, 152, -1, 155, 1, 1, 1, 0, 151, 151, 151, 152, -1, 155, 1, 1, 1, 0, 151, 152, 150, 150, -1, 155, 1, 1, 1, 0, 151, 152, 150, 152, -1, 155, 1, 1, 1, 0, 151, 152, 150, 155, -1, 150, 1, 1, 1, 0, 151, 152, 150, 155, -1, 155, 1, 1, 1, 0, 151, 152, 151, 150, -1, 155, 1, 1, 1, 0, 151, 152, 151, 152, -1, 155, 1, 1, 1, 0, 151, 152, 151, 155, -1, 150, 1, 1, 1, 0, 151, 152, 151, 155, -1, 155, 1, 1, 1, 1, 150, 152, 150, 155, 151, 170, 1, 1, 1, 1, 150, 152, 151, 155, 150, 170, 1, 1, 1, 1, 150, 152, 151, 155, 151, 170, 1, 1, 1, 1, 151, 152, 150, 155, 150, 170, 1, 1, 1, 1, 151, 152, 150, 155, 151, 170, 1, 1, 1, 1, 151, 152, 151, 155, 150, 170, 1, 1, 1, 1, 151, 152, 151, 155, 151, 170, 0, 0, 0, 0, -1, 191, -1, 191, -1, 191, 0, 1, 0, 0, 191, 217, -1, 217, -1, 217, 1, 0, 0, 0, -1, 191, -1, 191, -1, 213, 1, 0, 0, 0, -1, 191, -1, 213, -1, 191, 1, 0, 0, 0, -1, 191, -1, 213, -1, 213, 1, 0, 0, 0, -1, 213, -1, 191, -1, 191, 1, 0, 0, 0, -1, 213, -1, 191, -1, 213, 1, 0, 0, 0, -1, 213, -1, 213, -1, 191, 1, 0, 0, 0, -1, 213, -1, 213, -1, 213, 1, 1, 0, 0, 191, 191, -1, 213, -1, 217, 1, 1, 0, 0, 191, 213, -1, 191, -1, 217, 1, 1, 0, 0, 191, 213, -1, 213, -1, 217, 1, 1, 0, 0, 191, 213, -1, 217, -1, 191, 1, 1, 0, 0, 191, 213, -1, 217, -1, 217, 1, 1, 0, 0, 213, 191, -1, 191, -1, 217, 1, 1, 0, 0, 213, 191, -1, 213, -1, 217, 1, 1, 0, 0, 213, 191, -1, 217, -1, 191, 1, 1, 0, 0, 213, 191, -1, 217, -1, 217, 1, 1, 0, 0, 213, 213, -1, 191, -1, 217, 1, 1, 0, 0, 213, 213, -1, 213, -1, 217, 1, 1, 0, 0, 213, 213, -1, 217, -1, 191, 1, 1, 0, 0, 213, 213, -1, 217, -1, 217, 1, 1, 0, 0, 213, 217, -1, 191, -1, 191, 1, 1, 0, 0, 213, 217, -1, 191, -1, 217, 1, 1, 0, 0, 213, 217, -1, 217, -1, 191, 1, 1, 0, 0, 213, 217, -1, 217, -1, 217, 0, 0, 0, 0, -1, 317, -1, 317, -1, 317, 0, 1, 0, 0, 317, 322, -1, 322, -1, 322, 1, 0, 0, 0, -1, 317, -1, 317, -1, 321, 1, 0, 0, 0, -1, 317, -1, 321, -1, 317, 1, 0, 0, 0, -1, 317, -1, 321, -1, 321, 1, 0, 0, 0, -1, 321, -1, 317, -1, 317, 1, 0, 0, 0, -1, 321, -1, 317, -1, 321, 1, 0, 0, 0, -1, 321, -1, 321, -1, 317, 1, 0, 0, 0, -1, 321, -1, 321, -1, 321, 1, 1, 0, 0, 317, 317, -1, 321, -1, 322, 1, 1, 0, 0, 317, 321, -1, 317, -1, 322, 1, 1, 0, 0, 317, 321, -1, 321, -1, 322, 1, 1, 0, 0, 317, 321, -1, 322, -1, 317, 1, 1, 0, 0, 317, 321, -1, 322, -1, 322, 1, 1, 0, 0, 321, 317, -1, 317, -1, 322, 1, 1, 0, 0, 321, 317, -1, 321, -1, 322, 1, 1, 0, 0, 321, 317, -1, 322, -1, 317, 1, 1, 0, 0, 321, 317, -1, 322, -1, 322, 1, 1, 0, 0, 321, 321, -1, 317, -1, 322, 1, 1, 0, 0, 321, 321, -1, 321, -1, 322, 1, 1, 0, 0, 321, 321, -1, 322, -1, 317, 1, 1, 0, 0, 321, 321, -1, 322, -1, 322, 1, 1, 0, 0, 321, 322, -1, 317, -1, 317, 1, 1, 0, 0, 321, 322, -1, 317, -1, 322, 1, 1, 0, 0, 321, 322, -1, 322, -1, 317, 1, 1, 0, 0, 321, 322, -1, 322, -1, 322];
|
|
calleesaved_spill = [6..6 union 258..258, 7..7 union 259..259, 8..8 union 260..260, 9..9 union 261..261, 10..10 union 262..262, 11..11 union 263..263, 12..12 union 264..264, 13..13 union 265..265, 14..14 union 266..266, 15..15 union 267..267, 16..16 union 268..268, 17..17 union 269..269, 18..18 union 270..270, 19..19 union 271..271];
|
|
cs_spill_transpose = array2d(1..2, 1..14, [6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271]);
|
|
activator_insns = [6..8 union 24..24 union 33..34 union 36..36];
|
|
activator_ops = [2..2 union 273..273];
|
|
value_precede_min = [1, 1, 210, 210];
|
|
value_precede_max = [209, 209, 218, 218];
|
|
value_precede_regs = [1..1 union 3..3 union 8..15 union 24..24 union 30..30, 16..23, 33..52, 53..64];
|
|
value_precede_temps = [23, 24, 25, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 120, 121, 122, 123, 124, 125, 126, 127, 128, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 176, 177, 178, 179, 180, 187, 188, 189, 190, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 355, 356, 357, 365, 366, 368, 369, 370, 391, 392, 393, 408, 353, 354, 361, 362, 363, 364, 358, 359, 360];
|
|
lat_table = array2d(1..1586, 1..4, [0, 2, 0, 1, 0, 2, 1, 1, 0, 2, 2, 1, 0, 2, 3, 1, 0, 2, 4, 1, 0, 2, 5, 1, 0, 2, 6, 1, 0, 2, 7, 1, 0, 2, 8, 1, 0, 2, 9, 1, 0, 2, 10, 1, 0, 2, 11, 1, 0, 2, 12, 1, 0, 2, 13, 1, 0, 2, 14, 1, 0, 2, 15, 1, 0, 2, 16, 1, 0, 2, 17, 1, 0, 2, 18, 1, 0, 2, 19, 1, 0, 2, 20, 1, 0, 2, 21, 1, 0, 2, 22, 1, 3, 0, 23, 0, 3, 0, 24, 0, 3, 5, 23, 0, 3, 5, 24, 1, 3, 6, 23, 0, 3, 6, 24, 1, 4, 0, 25, 0, 4, 0, 26, 0, 4, 5, 25, 0, 4, 5, 26, 1, 4, 6, 25, 0, 4, 6, 26, 1, 5, 0, 27, 0, 5, 0, 28, 0, 5, 5, 27, 0, 5, 5, 28, 1, 5, 6, 27, 0, 5, 6, 28, 1, 6, 0, 29, 0, 6, 0, 30, 0, 6, 6, 29, 0, 6, 6, 30, 1, 7, 0, 31, 0, 7, 0, 32, 0, 7, 6, 31, 0, 7, 6, 32, 1, 8, 0, 33, 0, 8, 0, 34, 0, 8, 6, 33, 0, 8, 6, 34, 1, 9, 0, 35, 0, 9, 0, 36, 0, 9, 6, 35, 0, 9, 6, 36, 1, 10, 0, 37, 0, 10, 0, 38, 0, 10, 6, 37, 0, 10, 6, 38, 1, 11, 0, 39, 0, 11, 0, 40, 0, 11, 6, 39, 0, 11, 6, 40, 1, 12, 0, 41, 0, 12, 0, 42, 0, 12, 6, 41, 0, 12, 6, 42, 1, 13, 0, 43, 0, 13, 0, 44, 0, 13, 6, 43, 0, 13, 6, 44, 1, 14, 0, 45, 0, 14, 0, 46, 0, 14, 7, 45, 0, 14, 7, 46, 1, 15, 0, 47, 0, 15, 0, 48, 0, 15, 7, 47, 0, 15, 7, 48, 1, 16, 0, 49, 0, 16, 0, 50, 0, 16, 7, 49, 0, 16, 7, 50, 1, 17, 0, 51, 0, 17, 0, 52, 0, 17, 7, 51, 0, 17, 7, 52, 1, 18, 0, 53, 0, 18, 0, 54, 0, 18, 7, 53, 0, 18, 7, 54, 1, 19, 0, 55, 0, 19, 0, 56, 0, 19, 7, 55, 0, 19, 7, 56, 1, 20, 0, 57, 0, 20, 0, 58, 0, 20, 5, 57, 0, 20, 5, 58, 1, 20, 6, 57, 0, 20, 6, 58, 1, 21, 0, 59, 0, 21, 0, 60, 0, 21, 5, 59, 0, 21, 5, 60, 1, 21, 6, 59, 0, 21, 6, 60, 1, 22, 0, 61, 0, 22, 0, 62, 0, 22, 5, 61, 0, 22, 5, 62, 1, 22, 8, 61, 0, 22, 8, 62, 3, 23, 0, 63, 0, 23, 0, 64, 0, 23, 5, 63, 0, 23, 5, 64, 1, 23, 8, 63, 0, 23, 8, 64, 3, 24, 9, 65, 0, 24, 9, 66, 0, 24, 9, 67, 1, 25, 0, 68, 0, 25, 0, 69, 0, 25, 5, 68, 0, 25, 5, 69, 1, 25, 6, 68, 0, 25, 6, 69, 1, 26, 0, 70, 0, 26, 0, 71, 0, 26, 5, 70, 0, 26, 5, 71, 1, 26, 8, 70, 0, 26, 8, 71, 3, 27, 10, 72, 0, 27, 10, 73, 1, 28, 0, 74, 0, 28, 0, 75, 0, 28, 5, 74, 0, 28, 5, 75, 1, 28, 6, 74, 0, 28, 6, 75, 1, 29, 0, 76, 0, 29, 0, 77, 0, 29, 5, 76, 0, 29, 5, 77, 1, 29, 8, 76, 0, 29, 8, 77, 3, 30, 0, 78, 0, 30, 0, 79, 0, 30, 5, 78, 0, 30, 5, 79, 1, 30, 8, 78, 0, 30, 8, 79, 3, 31, 0, 80, 0, 31, 0, 81, 0, 31, 5, 80, 0, 31, 5, 81, 1, 31, 8, 80, 0, 31, 8, 81, 3, 32, 0, 82, 0, 32, 0, 83, 0, 32, 5, 82, 0, 32, 5, 83, 1, 32, 8, 82, 0, 32, 8, 83, 3, 33, 0, 84, 0, 33, 0, 85, 0, 33, 5, 84, 0, 33, 5, 85, 1, 33, 8, 84, 0, 33, 8, 85, 3, 34, 11, 86, 0, 34, 11, 87, 0, 35, 2, 88, 0, 35, 2, 89, 0, 35, 2, 90, 0, 35, 2, 91, 0, 35, 2, 92, 0, 35, 2, 93, 0, 35, 2, 94, 0, 35, 2, 95, 0, 35, 2, 96, 0, 35, 2, 97, 0, 35, 2, 98, 0, 35, 2, 99, 0, 35, 2, 100, 0, 35, 2, 101, 0, 35, 2, 102, 0, 35, 2, 103, 0, 35, 2, 104, 0, 35, 2, 105, 0, 35, 2, 106, 0, 35, 2, 107, 0, 35, 2, 108, 0, 35, 2, 109, 0, 36, 2, 110, 1, 36, 2, 111, 1, 36, 2, 112, 1, 36, 2, 113, 1, 36, 2, 114, 1, 36, 2, 115, 1, 36, 2, 116, 1, 36, 2, 117, 1, 36, 2, 118, 1, 36, 2, 119, 1, 36, 2, 120, 1, 36, 2, 121, 1, 36, 2, 122, 1, 36, 2, 123, 1, 36, 2, 124, 1, 36, 2, 125, 1, 36, 2, 126, 1, 36, 2, 127, 1, 36, 2, 128, 1, 36, 2, 129, 1, 36, 2, 130, 1, 36, 2, 131, 1, 37, 0, 132, 0, 37, 0, 133, 0, 37, 5, 132, 0, 37, 5, 133, 1, 37, 6, 132, 0, 37, 6, 133, 1, 38, 0, 134, 0, 38, 0, 135, 0, 38, 5, 134, 0, 38, 5, 135, 1, 38, 6, 134, 0, 38, 6, 135, 1, 39, 0, 136, 0, 39, 0, 137, 0, 39, 5, 136, 0, 39, 5, 137, 1, 39, 6, 136, 0, 39, 6, 137, 1, 40, 0, 138, 0, 40, 0, 139, 0, 40, 5, 138, 0, 40, 5, 139, 1, 40, 6, 138, 0, 40, 6, 139, 1, 41, 0, 140, 0, 41, 0, 141, 0, 41, 5, 140, 0, 41, 5, 141, 1, 41, 8, 140, 0, 41, 8, 141, 3, 42, 12, 142, 0, 42, 12, 143, 3, 43, 0, 144, 0, 43, 0, 145, 0, 43, 5, 144, 0, 43, 5, 145, 1, 43, 6, 144, 0, 43, 6, 145, 1, 44, 0, 146, 0, 44, 0, 147, 0, 44, 5, 146, 0, 44, 5, 147, 1, 44, 8, 146, 0, 44, 8, 147, 3, 45, 0, 148, 0, 45, 0, 149, 0, 45, 5, 148, 0, 45, 5, 149, 1, 45, 8, 148, 0, 45, 8, 149, 3, 46, 9, 150, 0, 46, 9, 151, 0, 46, 9, 152, 1, 47, 0, 153, 0, 47, 0, 154, 0, 47, 5, 153, 0, 47, 5, 154, 1, 47, 6, 153, 0, 47, 6, 154, 1, 48, 0, 155, 0, 48, 0, 156, 0, 48, 5, 155, 0, 48, 5, 156, 1, 48, 8, 155, 0, 48, 8, 156, 3, 49, 13, 157, 0, 49, 13, 158, 3, 50, 0, 159, 0, 50, 0, 160, 0, 50, 5, 159, 0, 50, 5, 160, 1, 50, 6, 159, 0, 50, 6, 160, 1, 51, 14, 161, 0, 51, 14, 162, 1, 52, 0, 163, 0, 52, 0, 164, 0, 52, 5, 163, 0, 52, 5, 164, 1, 52, 6, 163, 0, 52, 6, 164, 1, 53, 0, 165, 0, 53, 0, 166, 0, 53, 5, 165, 0, 53, 5, 166, 1, 53, 8, 165, 0, 53, 8, 166, 3, 54, 0, 167, 0, 54, 0, 168, 0, 54, 5, 167, 0, 54, 5, 168, 1, 54, 8, 167, 0, 54, 8, 168, 3, 55, 0, 169, 0, 55, 0, 170, 0, 55, 5, 169, 0, 55, 5, 170, 1, 55, 8, 169, 0, 55, 8, 170, 3, 56, 0, 171, 0, 56, 0, 172, 0, 56, 5, 171, 0, 56, 5, 172, 1, 56, 8, 171, 0, 56, 8, 172, 3, 57, 0, 173, 0, 57, 0, 174, 0, 57, 5, 173, 0, 57, 5, 174, 1, 57, 8, 173, 0, 57, 8, 174, 3, 58, 0, 175, 0, 58, 0, 176, 0, 58, 5, 175, 0, 58, 5, 176, 1, 58, 8, 175, 0, 58, 8, 176, 3, 59, 15, 177, 0, 59, 15, 178, 0, 60, 2, 179, 0, 60, 2, 180, 0, 60, 2, 181, 0, 60, 2, 182, 0, 60, 2, 183, 0, 60, 2, 184, 0, 60, 2, 185, 0, 60, 2, 186, 0, 60, 2, 187, 0, 60, 2, 188, 0, 60, 2, 189, 0, 60, 2, 190, 0, 60, 2, 191, 0, 60, 2, 192, 0, 60, 2, 193, 0, 60, 2, 194, 0, 60, 2, 195, 0, 60, 2, 196, 0, 60, 2, 197, 0, 60, 2, 198, 0, 60, 2, 199, 0, 60, 2, 200, 0, 61, 2, 201, 1, 61, 2, 202, 1, 61, 2, 203, 1, 61, 2, 204, 1, 61, 2, 205, 1, 61, 2, 206, 1, 61, 2, 207, 1, 61, 2, 208, 1, 61, 2, 209, 1, 61, 2, 210, 1, 61, 2, 211, 1, 61, 2, 212, 1, 61, 2, 213, 1, 61, 2, 214, 1, 61, 2, 215, 1, 61, 2, 216, 1, 61, 2, 217, 1, 61, 2, 218, 1, 61, 2, 219, 1, 61, 2, 220, 1, 61, 2, 221, 1, 61, 2, 222, 1, 62, 0, 223, 0, 62, 0, 224, 0, 62, 5, 223, 0, 62, 5, 224, 1, 62, 6, 223, 0, 62, 6, 224, 1, 63, 0, 225, 0, 63, 0, 226, 0, 63, 5, 225, 0, 63, 5, 226, 1, 63, 6, 225, 0, 63, 6, 226, 1, 64, 0, 227, 0, 64, 0, 228, 0, 64, 5, 227, 0, 64, 5, 228, 1, 64, 6, 227, 0, 64, 6, 228, 1, 65, 0, 229, 0, 65, 0, 230, 0, 65, 5, 229, 0, 65, 5, 230, 1, 65, 6, 229, 0, 65, 6, 230, 1, 66, 16, 231, 1, 67, 17, 232, 0, 67, 17, 233, 1, 68, 0, 234, 0, 68, 0, 235, 0, 68, 5, 234, 0, 68, 5, 235, 1, 68, 6, 234, 0, 68, 6, 235, 1, 69, 0, 236, 0, 69, 0, 237, 0, 69, 5, 236, 0, 69, 5, 237, 1, 69, 8, 236, 0, 69, 8, 237, 3, 70, 0, 238, 0, 70, 0, 239, 0, 70, 5, 238, 0, 70, 5, 239, 1, 70, 8, 238, 0, 70, 8, 239, 3, 71, 18, 240, 0, 71, 18, 241, 0, 71, 18, 242, 17, 72, 0, 243, 0, 72, 0, 244, 0, 72, 5, 243, 0, 72, 5, 244, 1, 72, 6, 243, 0, 72, 6, 244, 1, 73, 0, 245, 0, 73, 0, 246, 0, 73, 5, 245, 0, 73, 5, 246, 1, 73, 8, 245, 0, 73, 8, 246, 3, 74, 19, 247, 0, 74, 19, 248, 1, 75, 0, 249, 0, 75, 0, 250, 0, 75, 5, 249, 0, 75, 5, 250, 1, 75, 6, 249, 0, 75, 6, 250, 1, 76, 0, 251, 0, 76, 0, 252, 0, 76, 5, 251, 0, 76, 5, 252, 1, 76, 8, 251, 0, 76, 8, 252, 3, 77, 12, 253, 0, 77, 12, 254, 3, 78, 0, 255, 0, 78, 0, 256, 0, 78, 5, 255, 0, 78, 5, 256, 1, 78, 6, 255, 0, 78, 6, 256, 1, 79, 0, 257, 0, 79, 0, 258, 0, 79, 5, 257, 0, 79, 5, 258, 1, 79, 8, 257, 0, 79, 8, 258, 3, 80, 12, 259, 0, 80, 12, 260, 3, 81, 0, 261, 0, 81, 0, 262, 0, 81, 5, 261, 0, 81, 5, 262, 1, 81, 6, 261, 0, 81, 6, 262, 1, 82, 14, 263, 0, 82, 14, 264, 1, 83, 0, 265, 0, 83, 0, 266, 0, 83, 5, 265, 0, 83, 5, 266, 1, 83, 6, 265, 0, 83, 6, 266, 1, 84, 0, 267, 0, 84, 0, 268, 0, 84, 5, 267, 0, 84, 5, 268, 1, 84, 8, 267, 0, 84, 8, 268, 3, 85, 20, 269, 0, 85, 20, 270, 1, 86, 0, 271, 0, 86, 0, 272, 0, 86, 5, 271, 0, 86, 5, 272, 1, 86, 6, 271, 0, 86, 6, 272, 1, 87, 0, 273, 0, 87, 0, 274, 0, 87, 5, 273, 0, 87, 5, 274, 1, 87, 8, 273, 0, 87, 8, 274, 3, 88, 21, 275, 0, 88, 21, 276, 1, 89, 0, 277, 0, 89, 0, 278, 0, 89, 5, 277, 0, 89, 5, 278, 1, 89, 6, 277, 0, 89, 6, 278, 1, 90, 0, 279, 0, 90, 0, 280, 0, 90, 5, 279, 0, 90, 5, 280, 1, 90, 8, 279, 0, 90, 8, 280, 3, 91, 0, 281, 0, 91, 0, 282, 0, 91, 5, 281, 0, 91, 5, 282, 1, 91, 8, 281, 0, 91, 8, 282, 3, 92, 9, 283, 0, 92, 9, 284, 0, 92, 9, 285, 1, 93, 0, 286, 0, 93, 0, 287, 0, 93, 5, 286, 0, 93, 5, 287, 1, 93, 6, 286, 0, 93, 6, 287, 1, 94, 0, 288, 0, 94, 0, 289, 0, 94, 5, 288, 0, 94, 5, 289, 1, 94, 8, 288, 0, 94, 8, 289, 3, 95, 22, 290, 0, 95, 22, 291, 1, 96, 0, 292, 0, 96, 0, 293, 0, 96, 5, 292, 0, 96, 5, 293, 1, 96, 6, 292, 0, 96, 6, 293, 1, 97, 0, 294, 0, 97, 0, 295, 0, 97, 5, 294, 0, 97, 5, 295, 1, 97, 8, 294, 0, 97, 8, 295, 3, 98, 22, 296, 0, 98, 22, 297, 1, 99, 0, 298, 0, 99, 0, 299, 0, 99, 5, 298, 0, 99, 5, 299, 1, 99, 6, 298, 0, 99, 6, 299, 1, 100, 0, 300, 0, 100, 0, 301, 0, 100, 5, 300, 0, 100, 5, 301, 1, 100, 8, 300, 0, 100, 8, 301, 3, 101, 0, 302, 0, 101, 0, 303, 0, 101, 5, 302, 0, 101, 5, 303, 1, 101, 8, 302, 0, 101, 8, 303, 3, 102, 9, 304, 0, 102, 9, 305, 0, 102, 9, 306, 1, 103, 0, 307, 0, 103, 0, 308, 0, 103, 5, 307, 0, 103, 5, 308, 1, 103, 6, 307, 0, 103, 6, 308, 1, 104, 0, 309, 0, 104, 0, 310, 0, 104, 5, 309, 0, 104, 5, 310, 1, 104, 8, 309, 0, 104, 8, 310, 3, 105, 0, 311, 0, 105, 0, 312, 0, 105, 5, 311, 0, 105, 5, 312, 1, 105, 8, 311, 0, 105, 8, 312, 3, 106, 23, 313, 0, 106, 23, 314, 0, 106, 23, 315, 1, 107, 0, 316, 0, 107, 0, 317, 0, 107, 5, 316, 0, 107, 5, 317, 1, 107, 6, 316, 0, 107, 6, 317, 1, 108, 0, 318, 0, 108, 0, 319, 0, 108, 5, 318, 0, 108, 5, 319, 1, 108, 8, 318, 0, 108, 8, 319, 3, 109, 14, 320, 0, 109, 14, 321, 1, 110, 0, 322, 0, 110, 0, 323, 0, 110, 5, 322, 0, 110, 5, 323, 1, 110, 6, 322, 0, 110, 6, 323, 1, 111, 0, 324, 0, 111, 0, 325, 0, 111, 5, 324, 0, 111, 5, 325, 1, 111, 8, 324, 0, 111, 8, 325, 3, 112, 24, 326, 0, 113, 0, 327, 0, 113, 0, 328, 0, 113, 5, 327, 0, 113, 5, 328, 1, 113, 8, 327, 0, 113, 8, 328, 3, 114, 14, 329, 0, 114, 14, 330, 1, 115, 0, 331, 0, 115, 0, 332, 0, 115, 5, 331, 0, 115, 5, 332, 1, 115, 6, 331, 0, 115, 6, 332, 1, 116, 0, 333, 0, 116, 0, 334, 0, 116, 5, 333, 0, 116, 5, 334, 1, 116, 8, 333, 0, 116, 8, 334, 3, 117, 12, 335, 0, 117, 12, 336, 3, 118, 25, 337, 2, 119, 0, 338, 0, 119, 0, 339, 0, 119, 5, 338, 0, 119, 5, 339, 1, 119, 8, 338, 0, 119, 8, 339, 3, 120, 0, 340, 0, 120, 0, 341, 0, 120, 5, 340, 0, 120, 5, 341, 1, 120, 8, 340, 0, 120, 8, 341, 3, 121, 0, 342, 0, 121, 0, 343, 0, 121, 5, 342, 0, 121, 5, 343, 1, 121, 8, 342, 0, 121, 8, 343, 3, 122, 0, 344, 0, 122, 0, 345, 0, 122, 5, 344, 0, 122, 5, 345, 1, 122, 8, 344, 0, 122, 8, 345, 3, 123, 0, 346, 0, 123, 0, 347, 0, 123, 5, 346, 0, 123, 5, 347, 1, 123, 8, 346, 0, 123, 8, 347, 3, 124, 26, 348, 0, 125, 2, 349, 0, 125, 2, 350, 0, 125, 2, 351, 0, 125, 2, 352, 0, 125, 2, 353, 0, 125, 2, 354, 0, 125, 2, 355, 1, 125, 2, 356, 1, 125, 2, 357, 1, 125, 2, 358, 1, 125, 2, 359, 1, 125, 2, 360, 1, 126, 1, 361, 0, 126, 1, 362, 0, 126, 1, 363, 0, 126, 1, 364, 0, 126, 1, 365, 0, 126, 1, 366, 0, 127, 0, 367, 0, 127, 0, 368, 0, 127, 5, 367, 0, 127, 5, 368, 1, 127, 8, 367, 0, 127, 8, 368, 3, 128, 0, 369, 0, 128, 0, 370, 0, 128, 5, 369, 0, 128, 5, 370, 1, 128, 8, 369, 0, 128, 8, 370, 3, 129, 0, 371, 0, 129, 0, 372, 0, 129, 5, 371, 0, 129, 5, 372, 1, 129, 8, 371, 0, 129, 8, 372, 3, 130, 0, 373, 0, 130, 0, 374, 0, 130, 5, 373, 0, 130, 5, 374, 1, 130, 8, 373, 0, 130, 8, 374, 3, 131, 2, 375, 0, 131, 2, 376, 0, 131, 2, 377, 0, 131, 2, 378, 0, 131, 2, 379, 0, 131, 2, 380, 0, 131, 2, 381, 0, 131, 2, 382, 0, 131, 2, 383, 0, 131, 2, 384, 0, 131, 2, 385, 0, 131, 2, 386, 0, 131, 2, 387, 0, 131, 2, 388, 0, 131, 2, 389, 0, 131, 2, 390, 0, 131, 2, 391, 0, 131, 2, 392, 0, 131, 2, 393, 0, 131, 2, 394, 0, 131, 2, 395, 0, 131, 2, 396, 0, 132, 2, 397, 1, 132, 2, 398, 1, 132, 2, 399, 1, 132, 2, 400, 1, 132, 2, 401, 1, 132, 2, 402, 1, 132, 2, 403, 1, 132, 2, 404, 1, 132, 2, 405, 1, 132, 2, 406, 1, 132, 2, 407, 1, 132, 2, 408, 1, 132, 2, 409, 1, 132, 2, 410, 1, 132, 2, 411, 1, 132, 2, 412, 1, 132, 2, 413, 1, 132, 2, 414, 1, 132, 2, 415, 1, 132, 2, 416, 1, 132, 2, 417, 1, 132, 2, 418, 1, 133, 0, 419, 0, 133, 0, 420, 0, 133, 5, 419, 0, 133, 5, 420, 1, 133, 6, 419, 0, 133, 6, 420, 1, 134, 0, 421, 0, 134, 0, 422, 0, 134, 5, 421, 0, 134, 5, 422, 1, 134, 6, 421, 0, 134, 6, 422, 1, 135, 0, 423, 0, 135, 0, 424, 0, 135, 5, 423, 0, 135, 5, 424, 1, 135, 6, 423, 0, 135, 6, 424, 1, 136, 0, 425, 0, 136, 0, 426, 0, 136, 5, 425, 0, 136, 5, 426, 1, 136, 6, 425, 0, 136, 6, 426, 1, 137, 0, 427, 0, 137, 0, 428, 0, 137, 5, 427, 0, 137, 5, 428, 1, 137, 8, 427, 0, 137, 8, 428, 3, 138, 22, 429, 0, 138, 22, 430, 1, 139, 0, 431, 0, 139, 0, 432, 0, 139, 5, 431, 0, 139, 5, 432, 1, 139, 6, 431, 0, 139, 6, 432, 1, 140, 0, 433, 0, 140, 0, 434, 0, 140, 5, 433, 0, 140, 5, 434, 1, 140, 8, 433, 0, 140, 8, 434, 3, 141, 22, 435, 0, 141, 22, 436, 1, 142, 0, 437, 0, 142, 0, 438, 0, 142, 5, 437, 0, 142, 5, 438, 1, 142, 6, 437, 0, 142, 6, 438, 1, 143, 0, 439, 0, 143, 0, 440, 0, 143, 5, 439, 0, 143, 5, 440, 1, 143, 8, 439, 0, 143, 8, 440, 3, 144, 0, 441, 0, 144, 0, 442, 0, 144, 5, 441, 0, 144, 5, 442, 1, 144, 8, 441, 0, 144, 8, 442, 3, 145, 9, 443, 0, 145, 9, 444, 0, 145, 9, 445, 1, 146, 0, 446, 0, 146, 0, 447, 0, 146, 5, 446, 0, 146, 5, 447, 1, 146, 6, 446, 0, 146, 6, 447, 1, 147, 0, 448, 0, 147, 0, 449, 0, 147, 5, 448, 0, 147, 5, 449, 1, 147, 8, 448, 0, 147, 8, 449, 3, 148, 22, 450, 0, 148, 22, 451, 1, 149, 0, 452, 0, 149, 0, 453, 0, 149, 5, 452, 0, 149, 5, 453, 1, 149, 6, 452, 0, 149, 6, 453, 1, 150, 0, 454, 0, 150, 0, 455, 0, 150, 5, 454, 0, 150, 5, 455, 1, 150, 8, 454, 0, 150, 8, 455, 3, 151, 0, 456, 0, 151, 0, 457, 0, 151, 5, 456, 0, 151, 5, 457, 1, 151, 8, 456, 0, 151, 8, 457, 3, 152, 9, 458, 0, 152, 9, 459, 0, 152, 9, 460, 1, 153, 0, 461, 0, 153, 0, 462, 0, 153, 5, 461, 0, 153, 5, 462, 1, 153, 6, 461, 0, 153, 6, 462, 1, 154, 0, 463, 0, 154, 0, 464, 0, 154, 5, 463, 0, 154, 5, 464, 1, 154, 8, 463, 0, 154, 8, 464, 3, 155, 12, 465, 0, 155, 12, 466, 3, 156, 0, 467, 0, 156, 0, 468, 0, 156, 5, 467, 0, 156, 5, 468, 1, 156, 6, 467, 0, 156, 6, 468, 1, 157, 0, 469, 0, 157, 0, 470, 0, 157, 5, 469, 0, 157, 5, 470, 1, 157, 8, 469, 0, 157, 8, 470, 3, 158, 0, 471, 0, 158, 0, 472, 0, 158, 5, 471, 0, 158, 5, 472, 1, 158, 8, 471, 0, 158, 8, 472, 3, 159, 9, 473, 0, 159, 9, 474, 0, 159, 9, 475, 1, 160, 0, 476, 0, 160, 0, 477, 0, 160, 5, 476, 0, 160, 5, 477, 1, 160, 6, 476, 0, 160, 6, 477, 1, 161, 0, 478, 0, 161, 0, 479, 0, 161, 5, 478, 0, 161, 5, 479, 1, 161, 8, 478, 0, 161, 8, 479, 3, 162, 12, 480, 0, 162, 12, 481, 3, 163, 0, 482, 0, 163, 0, 483, 0, 163, 5, 482, 0, 163, 5, 483, 1, 163, 6, 482, 0, 163, 6, 483, 1, 164, 14, 484, 0, 164, 14, 485, 1, 165, 0, 486, 0, 165, 0, 487, 0, 165, 5, 486, 0, 165, 5, 487, 1, 165, 6, 486, 0, 165, 6, 487, 1, 166, 0, 488, 0, 166, 0, 489, 0, 166, 5, 488, 0, 166, 5, 489, 1, 166, 8, 488, 0, 166, 8, 489, 3, 167, 0, 490, 0, 167, 0, 491, 0, 167, 5, 490, 0, 167, 5, 491, 1, 167, 8, 490, 0, 167, 8, 491, 3, 168, 0, 492, 0, 168, 0, 493, 0, 168, 5, 492, 0, 168, 5, 493, 1, 168, 8, 492, 0, 168, 8, 493, 3, 169, 0, 494, 0, 169, 0, 495, 0, 169, 5, 494, 0, 169, 5, 495, 1, 169, 8, 494, 0, 169, 8, 495, 3, 170, 0, 496, 0, 170, 0, 497, 0, 170, 5, 496, 0, 170, 5, 497, 1, 170, 8, 496, 0, 170, 8, 497, 3, 171, 0, 498, 0, 171, 0, 499, 0, 171, 5, 498, 0, 171, 5, 499, 1, 171, 8, 498, 0, 171, 8, 499, 3, 172, 27, 500, 0, 173, 2, 501, 0, 173, 2, 502, 0, 173, 2, 503, 0, 173, 2, 504, 0, 173, 2, 505, 0, 173, 2, 506, 0, 173, 2, 507, 0, 173, 2, 508, 0, 173, 2, 509, 0, 173, 2, 510, 0, 173, 2, 511, 0, 173, 2, 512, 0, 173, 2, 513, 0, 173, 2, 514, 0, 173, 2, 515, 0, 173, 2, 516, 0, 173, 2, 517, 0, 173, 2, 518, 0, 173, 2, 519, 0, 173, 2, 520, 0, 173, 2, 521, 0, 173, 2, 522, 0, 173, 2, 523, 0, 174, 2, 524, 1, 174, 2, 525, 1, 174, 2, 526, 1, 174, 2, 527, 1, 174, 2, 528, 1, 174, 2, 529, 1, 174, 2, 530, 1, 174, 2, 531, 1, 174, 2, 532, 1, 174, 2, 533, 1, 174, 2, 534, 1, 174, 2, 535, 1, 174, 2, 536, 1, 174, 2, 537, 1, 174, 2, 538, 1, 174, 2, 539, 1, 174, 2, 540, 1, 174, 2, 541, 1, 174, 2, 542, 1, 174, 2, 543, 1, 174, 2, 544, 1, 174, 2, 545, 1, 174, 2, 546, 1, 175, 0, 547, 0, 175, 0, 548, 0, 175, 5, 547, 0, 175, 5, 548, 1, 175, 6, 547, 0, 175, 6, 548, 1, 176, 0, 549, 0, 176, 0, 550, 0, 176, 5, 549, 0, 176, 5, 550, 1, 176, 6, 549, 0, 176, 6, 550, 1, 177, 0, 551, 0, 177, 0, 552, 0, 177, 5, 551, 0, 177, 5, 552, 1, 177, 6, 551, 0, 177, 6, 552, 1, 178, 0, 553, 0, 178, 0, 554, 0, 178, 5, 553, 0, 178, 5, 554, 1, 178, 6, 553, 0, 178, 6, 554, 1, 179, 0, 555, 0, 179, 0, 556, 0, 179, 5, 555, 0, 179, 5, 556, 1, 179, 6, 555, 0, 179, 6, 556, 1, 180, 0, 557, 0, 180, 0, 558, 0, 180, 5, 557, 0, 180, 5, 558, 1, 180, 8, 557, 0, 180, 8, 558, 3, 181, 12, 559, 0, 181, 12, 560, 3, 182, 0, 561, 0, 182, 0, 562, 0, 182, 5, 561, 0, 182, 5, 562, 1, 182, 6, 561, 0, 182, 6, 562, 1, 183, 0, 563, 0, 183, 0, 564, 0, 183, 5, 563, 0, 183, 5, 564, 1, 183, 8, 563, 0, 183, 8, 564, 3, 184, 12, 565, 0, 184, 12, 566, 3, 185, 0, 567, 0, 185, 0, 568, 0, 185, 5, 567, 0, 185, 5, 568, 1, 185, 6, 567, 0, 185, 6, 568, 1, 186, 0, 569, 0, 186, 0, 570, 0, 186, 5, 569, 0, 186, 5, 570, 1, 186, 8, 569, 0, 186, 8, 570, 3, 187, 0, 571, 0, 187, 0, 572, 0, 187, 5, 571, 0, 187, 5, 572, 1, 187, 8, 571, 0, 187, 8, 572, 3, 188, 28, 573, 0, 188, 28, 574, 0, 188, 28, 575, 1, 189, 0, 576, 0, 189, 0, 577, 0, 189, 5, 576, 0, 189, 5, 577, 1, 189, 6, 576, 0, 189, 6, 577, 1, 190, 0, 578, 0, 190, 0, 579, 0, 190, 5, 578, 0, 190, 5, 579, 1, 190, 8, 578, 0, 190, 8, 579, 3, 191, 0, 580, 0, 191, 0, 581, 0, 191, 5, 580, 0, 191, 5, 581, 1, 191, 8, 580, 0, 191, 8, 581, 3, 192, 0, 582, 0, 192, 0, 583, 0, 192, 5, 582, 0, 192, 5, 583, 1, 192, 8, 582, 0, 192, 8, 583, 3, 193, 0, 584, 0, 193, 0, 585, 0, 193, 5, 584, 0, 193, 5, 585, 1, 193, 8, 584, 0, 193, 8, 585, 3, 194, 0, 586, 0, 194, 0, 587, 0, 194, 5, 586, 0, 194, 5, 587, 1, 194, 8, 586, 0, 194, 8, 587, 3, 195, 0, 588, 0, 195, 0, 589, 0, 195, 5, 588, 0, 195, 5, 589, 1, 195, 8, 588, 0, 195, 8, 589, 3, 196, 11, 590, 0, 196, 11, 591, 0, 197, 2, 592, 0, 197, 2, 593, 0, 197, 2, 594, 0, 197, 2, 595, 0, 197, 2, 596, 0, 197, 2, 597, 0, 197, 2, 598, 0, 197, 2, 599, 0, 197, 2, 600, 0, 197, 2, 601, 0, 197, 2, 602, 0, 197, 2, 603, 0, 197, 2, 604, 0, 197, 2, 605, 0, 197, 2, 606, 0, 197, 2, 607, 0, 197, 2, 608, 0, 197, 2, 609, 0, 197, 2, 610, 0, 197, 2, 611, 0, 197, 2, 612, 0, 197, 2, 613, 0, 197, 2, 614, 0, 198, 2, 615, 1, 198, 2, 616, 1, 198, 2, 617, 1, 198, 2, 618, 1, 198, 2, 619, 1, 198, 2, 620, 1, 198, 2, 621, 1, 198, 2, 622, 1, 198, 2, 623, 1, 198, 2, 624, 1, 198, 2, 625, 1, 198, 2, 626, 1, 198, 2, 627, 1, 198, 2, 628, 1, 198, 2, 629, 1, 198, 2, 630, 1, 198, 2, 631, 1, 198, 2, 632, 1, 198, 2, 633, 1, 198, 2, 634, 1, 198, 2, 635, 1, 198, 2, 636, 1, 199, 0, 637, 0, 199, 0, 638, 0, 199, 5, 637, 0, 199, 5, 638, 1, 199, 6, 637, 0, 199, 6, 638, 1, 200, 0, 639, 0, 200, 0, 640, 0, 200, 5, 639, 0, 200, 5, 640, 1, 200, 6, 639, 0, 200, 6, 640, 1, 201, 0, 641, 0, 201, 0, 642, 0, 201, 5, 641, 0, 201, 5, 642, 1, 201, 6, 641, 0, 201, 6, 642, 1, 202, 0, 643, 0, 202, 0, 644, 0, 202, 5, 643, 0, 202, 5, 644, 1, 202, 6, 643, 0, 202, 6, 644, 1, 203, 0, 645, 0, 203, 0, 646, 0, 203, 5, 645, 0, 203, 5, 646, 1, 203, 8, 645, 0, 203, 8, 646, 3, 204, 22, 647, 0, 204, 22, 648, 1, 205, 0, 649, 0, 205, 0, 650, 0, 205, 5, 649, 0, 205, 5, 650, 1, 205, 6, 649, 0, 205, 6, 650, 1, 206, 0, 651, 0, 206, 0, 652, 0, 206, 5, 651, 0, 206, 5, 652, 1, 206, 8, 651, 0, 206, 8, 652, 3, 207, 22, 653, 0, 207, 22, 654, 1, 208, 0, 655, 0, 208, 0, 656, 0, 208, 5, 655, 0, 208, 5, 656, 1, 208, 6, 655, 0, 208, 6, 656, 1, 209, 0, 657, 0, 209, 0, 658, 0, 209, 5, 657, 0, 209, 5, 658, 1, 209, 8, 657, 0, 209, 8, 658, 3, 210, 0, 659, 0, 210, 0, 660, 0, 210, 5, 659, 0, 210, 5, 660, 1, 210, 8, 659, 0, 210, 8, 660, 3, 211, 9, 661, 0, 211, 9, 662, 0, 211, 9, 663, 1, 212, 0, 664, 0, 212, 0, 665, 0, 212, 5, 664, 0, 212, 5, 665, 1, 212, 6, 664, 0, 212, 6, 665, 1, 213, 0, 666, 0, 213, 0, 667, 0, 213, 5, 666, 0, 213, 5, 667, 1, 213, 8, 666, 0, 213, 8, 667, 3, 214, 22, 668, 0, 214, 22, 669, 1, 215, 0, 670, 0, 215, 0, 671, 0, 215, 5, 670, 0, 215, 5, 671, 1, 215, 6, 670, 0, 215, 6, 671, 1, 216, 0, 672, 0, 216, 0, 673, 0, 216, 5, 672, 0, 216, 5, 673, 1, 216, 8, 672, 0, 216, 8, 673, 3, 217, 0, 674, 0, 217, 0, 675, 0, 217, 5, 674, 0, 217, 5, 675, 1, 217, 8, 674, 0, 217, 8, 675, 3, 218, 23, 676, 0, 218, 23, 677, 0, 218, 23, 678, 1, 219, 0, 679, 0, 219, 0, 680, 0, 219, 5, 679, 0, 219, 5, 680, 1, 219, 6, 679, 0, 219, 6, 680, 1, 220, 0, 681, 0, 220, 0, 682, 0, 220, 5, 681, 0, 220, 5, 682, 1, 220, 8, 681, 0, 220, 8, 682, 3, 221, 12, 683, 0, 221, 12, 684, 3, 222, 0, 685, 0, 222, 0, 686, 0, 222, 5, 685, 0, 222, 5, 686, 1, 222, 6, 685, 0, 222, 6, 686, 1, 223, 0, 687, 0, 223, 0, 688, 0, 223, 5, 687, 0, 223, 5, 688, 1, 223, 8, 687, 0, 223, 8, 688, 3, 224, 12, 689, 0, 224, 12, 690, 3, 225, 0, 691, 0, 225, 0, 692, 0, 225, 5, 691, 0, 225, 5, 692, 1, 225, 6, 691, 0, 225, 6, 692, 1, 226, 0, 693, 0, 226, 0, 694, 0, 226, 5, 693, 0, 226, 5, 694, 1, 226, 8, 693, 0, 226, 8, 694, 3, 227, 0, 695, 0, 227, 0, 696, 0, 227, 5, 695, 0, 227, 5, 696, 1, 227, 8, 695, 0, 227, 8, 696, 3, 228, 9, 697, 0, 228, 9, 698, 0, 228, 9, 699, 1, 229, 0, 700, 0, 229, 0, 701, 0, 229, 5, 700, 0, 229, 5, 701, 1, 229, 6, 700, 0, 229, 6, 701, 1, 230, 0, 702, 0, 230, 0, 703, 0, 230, 5, 702, 0, 230, 5, 703, 1, 230, 8, 702, 0, 230, 8, 703, 3, 231, 12, 704, 0, 231, 12, 705, 3, 232, 0, 706, 0, 232, 0, 707, 0, 232, 5, 706, 0, 232, 5, 707, 1, 232, 6, 706, 0, 232, 6, 707, 1, 233, 0, 708, 0, 233, 0, 709, 0, 233, 5, 708, 0, 233, 5, 709, 1, 233, 8, 708, 0, 233, 8, 709, 3, 234, 29, 710, 0, 234, 29, 711, 3, 235, 0, 712, 0, 235, 0, 713, 0, 235, 7, 712, 0, 235, 7, 713, 1, 235, 30, 712, 0, 235, 30, 713, 2, 236, 14, 714, 0, 236, 14, 715, 1, 237, 0, 716, 0, 237, 0, 717, 0, 237, 5, 716, 0, 237, 5, 717, 1, 237, 6, 716, 0, 237, 6, 717, 1, 238, 0, 718, 0, 238, 0, 719, 0, 238, 5, 718, 0, 238, 5, 719, 1, 238, 8, 718, 0, 238, 8, 719, 3, 239, 31, 720, 0, 239, 31, 721, 3, 240, 0, 722, 0, 240, 0, 723, 0, 240, 32, 722, 0, 240, 32, 723, 2, 240, 33, 722, 0, 240, 33, 723, 1, 241, 0, 724, 0, 241, 0, 725, 0, 241, 32, 724, 0, 241, 32, 725, 2, 241, 34, 724, 0, 241, 34, 725, 3, 242, 35, 726, 0, 242, 35, 727, 1, 243, 0, 728, 0, 243, 0, 729, 0, 243, 7, 728, 0, 243, 7, 729, 1, 243, 30, 728, 0, 243, 30, 729, 2, 244, 0, 730, 0, 244, 0, 731, 0, 244, 30, 730, 0, 244, 30, 731, 2, 244, 36, 730, 0, 244, 36, 731, 3, 245, 0, 732, 0, 245, 0, 733, 0, 245, 30, 732, 0, 245, 30, 733, 2, 245, 36, 732, 0, 245, 36, 733, 3, 246, 37, 734, 0, 246, 37, 735, 0, 247, 0, 736, 0, 247, 0, 737, 0, 247, 5, 736, 0, 247, 5, 737, 1, 247, 8, 736, 0, 247, 8, 737, 3, 248, 0, 738, 0, 248, 0, 739, 0, 248, 5, 738, 0, 248, 5, 739, 1, 248, 8, 738, 0, 248, 8, 739, 3, 249, 38, 740, 0, 249, 38, 741, 0, 249, 38, 742, 0, 249, 38, 743, 1, 250, 0, 744, 0, 250, 0, 745, 0, 250, 5, 744, 0, 250, 5, 745, 1, 250, 6, 744, 0, 250, 6, 745, 1, 251, 0, 746, 0, 251, 0, 747, 0, 251, 5, 746, 0, 251, 5, 747, 1, 251, 8, 746, 0, 251, 8, 747, 3, 252, 0, 748, 0, 252, 0, 749, 0, 252, 5, 748, 0, 252, 5, 749, 1, 252, 8, 748, 0, 252, 8, 749, 3, 253, 2, 750, 0, 253, 2, 751, 0, 253, 2, 752, 0, 253, 2, 753, 0, 253, 2, 754, 0, 253, 2, 755, 0, 253, 2, 756, 0, 253, 2, 757, 0, 253, 2, 758, 0, 253, 2, 759, 0, 253, 2, 760, 0, 253, 2, 761, 0, 253, 2, 762, 0, 253, 2, 763, 0, 253, 2, 764, 0, 253, 2, 765, 0, 253, 2, 766, 0, 253, 2, 767, 0, 253, 2, 768, 0, 253, 2, 769, 0, 254, 2, 770, 1, 254, 2, 771, 1, 254, 2, 772, 1, 254, 2, 773, 1, 254, 2, 774, 1, 254, 2, 775, 1, 254, 2, 776, 1, 254, 2, 777, 1, 254, 2, 778, 1, 254, 2, 779, 1, 254, 2, 780, 1, 254, 2, 781, 1, 254, 2, 782, 1, 254, 2, 783, 1, 254, 2, 784, 1, 254, 2, 785, 1, 254, 2, 786, 1, 254, 2, 787, 1, 254, 2, 788, 1, 254, 2, 789, 1, 255, 0, 790, 0, 255, 0, 791, 0, 255, 5, 790, 0, 255, 5, 791, 1, 255, 6, 790, 0, 255, 6, 791, 1, 256, 0, 792, 0, 256, 0, 793, 0, 256, 5, 792, 0, 256, 5, 793, 1, 256, 6, 792, 0, 256, 6, 793, 1, 257, 0, 794, 0, 257, 0, 795, 0, 257, 5, 794, 0, 257, 5, 795, 1, 257, 8, 794, 0, 257, 8, 795, 3, 258, 0, 796, 0, 258, 0, 797, 0, 258, 8, 796, 0, 258, 8, 797, 3, 259, 0, 798, 0, 259, 0, 799, 0, 259, 8, 798, 0, 259, 8, 799, 3, 260, 0, 800, 0, 260, 0, 801, 0, 260, 8, 800, 0, 260, 8, 801, 3, 261, 0, 802, 0, 261, 0, 803, 0, 261, 8, 802, 0, 261, 8, 803, 3, 262, 0, 804, 0, 262, 0, 805, 0, 262, 8, 804, 0, 262, 8, 805, 3, 263, 0, 806, 0, 263, 0, 807, 0, 263, 8, 806, 0, 263, 8, 807, 3, 264, 0, 808, 0, 264, 0, 809, 0, 264, 8, 808, 0, 264, 8, 809, 3, 265, 0, 810, 0, 265, 0, 811, 0, 265, 8, 810, 0, 265, 8, 811, 3, 266, 0, 812, 0, 266, 0, 813, 0, 266, 36, 812, 0, 266, 36, 813, 3, 267, 0, 814, 0, 267, 0, 815, 0, 267, 36, 814, 0, 267, 36, 815, 3, 268, 0, 816, 0, 268, 0, 817, 0, 268, 36, 816, 0, 268, 36, 817, 3, 269, 0, 818, 0, 269, 0, 819, 0, 269, 36, 818, 0, 269, 36, 819, 3, 270, 0, 820, 0, 270, 0, 821, 0, 270, 36, 820, 0, 270, 36, 821, 3, 271, 0, 822, 0, 271, 0, 823, 0, 271, 36, 822, 0, 271, 36, 823, 3, 272, 0, 824, 0, 272, 0, 825, 0, 272, 5, 824, 0, 272, 5, 825, 1, 272, 8, 824, 0, 272, 8, 825, 3, 274, 40, 826, 0, 275, 2, 827, 0, 275, 2, 828, 0, 275, 2, 829, 0, 275, 2, 830, 0, 275, 2, 831, 0, 275, 2, 832, 0, 275, 2, 833, 0, 275, 2, 834, 0, 275, 2, 835, 0, 275, 2, 836, 0, 275, 2, 837, 0, 275, 2, 838, 0, 275, 2, 839, 0, 275, 2, 840, 0, 275, 2, 841, 0, 275, 2, 842, 0, 275, 2, 843, 0, 275, 2, 844, 0, 275, 2, 845, 0]);
|
|
MINL = 0;
|
|
MAXL = 17;
|
|
preschedule_op = [];
|
|
preschedule_cycle = [];
|
|
exrelated_p = [];
|
|
exrelated_q = [];
|
|
exrelated_rows = [];
|
|
exrelated_ext = array2d(1..0, 1..0, []);
|
|
bypass_table = array2d(1..0, 1..0, []);
|
|
adhoc = [2548];
|
|
temp_domain = array1d(0..408, [4..4, 25..25, 2..2, 16..16, 17..17, 18..18, 19..19, 20..20, 21..21, 22..22, 23..23, 53..53, 55..55, 57..57, 59..59, 61..61, 63..63, 0..0, 26..26, 27..27, 29..29, 65..65, 31..31, -1..31 union 83..86, -1..31 union 87..87, -1..31 union 88..88, -1..-1 union 89..89, -1..-1 union 90..90, -1..-1 union 91..91, -1..-1 union 92..92, -1..-1 union 93..93, -1..-1 union 94..94, -1..-1 union 95..95, -1..-1 union 96..96, -1..-1 union 67..67, -1..-1 union 69..69, -1..-1 union 71..71, -1..-1 union 73..73, -1..-1 union 75..75, -1..-1 union 77..77, -1..-1, -1..31 union 103..109, -1..31, -1..31, 0..31, -1..31 union 110..115, -1..31, 0..31, -1..31 union 116..116, -1..-1 union 1..31, -1..31, -1..-1, -1..-1 union 1..25 union 28..28 union 30..31, -1..-1 union 1..25 union 28..28 union 30..31, 1..25 union 28..28 union 30..31 union 83..86, 16..16 union 89..89, 17..17 union 90..90, 18..18 union 91..91, 19..19 union 92..92, 20..20 union 93..93, 21..21 union 94..94, 22..22 union 95..95, 23..23 union 96..96, 53..53 union 67..67, 55..55 union 69..69, 57..57 union 71..71, 59..59 union 73..73, 61..61 union 75..75, 63..63 union 77..77, 0..0, 26..26, 27..27, 29..29, 65..65, 1..25 union 28..28 union 30..31 union 103..109, 1..25 union 28..28 union 30..31 union 110..115, -1..31 union 83..86, -1..-1, -1..31 union 103..109, -1..31 union 110..115, -1..31, 0..31, -1..31 union 117..117, -1..31, -1..31, 0..31, -1..31 union 118..118, -1..31, 0..31, -1..31 union 119..119, 0..31, -1..31 union 120..120, -1..31, -1..31, -1..31, -1..-1, -1..-1 union 1..25 union 28..28 union 30..31, -1..31, 1..25 union 28..28 union 30..31 union 83..86, 16..16 union 89..89, 17..17 union 90..90, 18..18 union 91..91, 19..19 union 92..92, 20..20 union 93..93, 21..21 union 94..94, 22..22 union 95..95, 23..23 union 96..96, 53..53 union 67..67, 55..55 union 69..69, 57..57 union 71..71, 59..59 union 73..73, 61..61 union 75..75, 63..63 union 77..77, 0..0, 26..26, 27..27, 29..29, 65..65, 1..25 union 28..28 union 30..31 union 103..109, 1..25 union 28..28 union 30..31 union 110..115, -1..31 union 83..86, -1..-1, -1..31 union 103..109, -1..31 union 110..115, 0..31, 0..31, -1..31 union 121..121, -1..31, -1..31, 32..32, -1..-1, -1..-1, 0..31, -1..31 union 123..123, -1..31, 0..31, -1..31 union 124..124, -1..31, 0..31, -1..31 union 125..125, 0..31, -1..31 union 126..126, -1..31, 0..31, -1..31 union 127..127, -1..31, 0..31, -1..31 union 128..128, -1..31, -1..31, 0..31, -1..31 union 129..129, -1..31, 0..31, -1..31 union 130..130, -1..31, 0..31, -1..31 union 131..131, -1..31, -1..31, 0..31, -1..31 union 132..132, -1..31, -1..31, 0..31, -1..31 union 133..133, -1..31, 0..31, -1..31 union 134..134, -1..31, -1..31, 0..31, -1..31 union 135..135, -1..31, 25..25, 31..31, -1..31, -1..-1 union 4..4, -1..-1 union 6..6, -1..-1 union 5..5, -1..-1 union 7..7, 1..1, 24..24, 28..28, 30..30, 32..32, 33..33, -1..31, -1..-1, -1..-1 union 1..25 union 28..28 union 30..31, -1..31, 1..25 union 28..28 union 30..31 union 83..86, 16..16 union 89..89, 17..17 union 90..90, 18..18 union 91..91, 19..19 union 92..92, 20..20 union 93..93, 21..21 union 94..94, 22..22 union 95..95, 23..23 union 96..96, 53..53 union 67..67, 55..55 union 69..69, 57..57 union 71..71, 59..59 union 73..73, 61..61 union 75..75, 63..63 union 77..77, 0..0, 26..26, 27..27, 29..29, 65..65, 1..25 union 28..28 union 30..31 union 103..109, 1..25 union 28..28 union 30..31 union 110..115, -1..31 union 83..86, -1..-1, -1..31 union 103..109, -1..31 union 110..115, -1..31, 0..31, -1..31 union 136..136, -1..-1, 0..31, -1..31 union 137..137, -1..31, -1..31, 0..31, -1..31 union 138..138, -1..-1, 0..31, -1..31 union 139..139, -1..31, -1..31, 0..31, -1..31 union 140..140, -1..31, 0..31, -1..31 union 141..141, -1..31, -1..31, 0..31, -1..31 union 142..142, -1..31, 0..31, -1..31 union 143..145, 0..31, -1..31 union 146..150, -1..31, -1..-1, -1..-1 union 1..25 union 28..28 union 30..31, -1..31, -1..31, -1..-1 union 1..25 union 28..28 union 30..31, 16..16 union 89..89, 17..17 union 90..90, 18..18 union 91..91, 19..19 union 92..92, 20..20 union 93..93, 21..21 union 94..94, 22..22 union 95..95, 23..23 union 96..96, 53..53 union 67..67, 55..55 union 69..69, 57..57 union 71..71, 59..59 union 73..73, 61..61 union 75..75, 63..63 union 77..77, 0..0, 26..26, 27..27, 29..29, 65..65, 1..25 union 28..28 union 30..31 union 103..109, 1..25 union 28..28 union 30..31 union 110..115, 1..25 union 28..28 union 30..31 union 143..145, 1..25 union 28..28 union 30..31 union 146..150, -1..-1, -1..31 union 103..109, -1..31 union 110..115, -1..31 union 143..145, -1..31 union 146..150, -1..31, 0..31, -1..31 union 151..151, -1..31, 0..31, -1..31 union 152..152, -1..31, -1..31, 0..31, -1..31 union 153..153, -1..-1 union 1..31, -1..-1, -1..-1 union 1..25 union 28..28 union 30..31, -1..31, -1..31, -1..-1 union 1..25 union 28..28 union 30..31, 16..16 union 89..89, 17..17 union 90..90, 18..18 union 91..91, 19..19 union 92..92, 20..20 union 93..93, 21..21 union 94..94, 22..22 union 95..95, 23..23 union 96..96, 53..53 union 67..67, 55..55 union 69..69, 57..57 union 71..71, 59..59 union 73..73, 61..61 union 75..75, 63..63 union 77..77, 0..0, 26..26, 27..27, 29..29, 65..65, 1..25 union 28..28 union 30..31 union 103..109, 1..25 union 28..28 union 30..31 union 110..115, 1..25 union 28..28 union 30..31 union 143..145, -1..-1, -1..31 union 103..109, -1..31 union 110..115, -1..31 union 143..145, -1..31, 0..31, -1..31 union 154..154, -1..-1, 0..31, -1..31 union 155..155, -1..31, -1..31, 0..31, -1..31 union 156..156, -1..-1, 0..31, -1..31 union 157..157, -1..31, -1..31, 0..31, -1..31 union 158..158, -1..31, 0..31, -1..31 union 159..159, -1..31, 0..31, -1..31 union 160..160, -1..31, -1..31, 0..31, -1..31 union 161..161, -1..-1, 0..31, -1..31 union 162..162, -1..31, 33..33 union 35..35 union 37..37 union 39..39 union 41..41 union 43..43 union 45..45 union 47..47 union 49..49 union 51..51 union 53..53 union 55..55 union 57..57 union 59..59 union 61..61 union 63..63, -1..-1 union 33..33 union 35..35 union 37..37 union 39..39 union 41..41 union 43..43 union 45..45 union 47..47 union 49..49 union 51..51 union 53..53 union 55..55 union 57..57 union 59..59 union 61..61 union 63..63 union 79..79, 0..31, -1..31 union 146..150, -1..31, 33..64, -1..-1 union 33..64 union 163..163, -1..-1 union 33..64, 33..33 union 35..35 union 37..37 union 39..39 union 41..41 union 43..43 union 45..45 union 47..47 union 49..49 union 51..51 union 53..53 union 55..55 union 57..57 union 59..59 union 61..61 union 63..63, -1..-1 union 33..33 union 35..35 union 37..37 union 39..39 union 41..41 union 43..43 union 45..45 union 47..47 union 49..49 union 51..51 union 53..53 union 55..55 union 57..57 union 59..59 union 61..61 union 63..63 union 81..81, -1..-1 union 33..33 union 35..35 union 37..37 union 39..39 union 41..41 union 43..43 union 45..45 union 47..47 union 49..49 union 51..51 union 53..53 union 55..55 union 57..57 union 59..59 union 61..61 union 63..63, -1..-1 union 33..33 union 35..35 union 37..37 union 39..39 union 41..41 union 43..43 union 45..45 union 47..47 union 49..49 union 51..51 union 53..53 union 55..55 union 57..57 union 59..59 union 61..61 union 63..63, -1..-1, -1..-1 union 1..31, 1..31, -1..31 union 146..150, -1..-1 union 1..25 union 28..28 union 30..31, -1..-1 union 1..25 union 28..28 union 30..31, 1..25 union 28..28 union 30..31 union 146..150, 16..16 union 89..89, 17..17 union 90..90, 18..18 union 91..91, 19..19 union 92..92, 20..20 union 93..93, 21..21 union 94..94, 22..22 union 95..95, 23..23 union 96..96, 53..53 union 67..67, 55..55 union 69..69, 57..57 union 71..71, 59..59 union 73..73, 61..61 union 75..75, 63..63 union 77..77, 0..0, 26..26, 27..27, 29..29, 1..25 union 28..28 union 30..31 union 103..109, -1..31 union 146..150, -1..31 union 103..109, -1..31, -1..-1 union 16..16, -1..-1 union 17..17, -1..-1 union 18..18, -1..-1 union 19..19, -1..-1 union 20..20, -1..-1 union 21..21, -1..-1 union 22..22, -1..-1 union 23..23, -1..-1 union 53..53, -1..-1 union 55..55, -1..-1 union 57..57, -1..-1 union 59..59, -1..-1 union 61..61, -1..-1 union 63..63, -1..-1 union 2..2]);
|
|
wcet = array2d(1..648, 1..3, [0, 2, 1, 1, 3, 2, 2, 0, 0, 2, 4, 1, 3, 0, 0, 3, 5, 1, 3, 6, 1, 4, 0, 0, 4, 5, 1, 4, 6, 1, 5, 0, 0, 5, 5, 1, 5, 6, 1, 6, 0, 0, 6, 6, 1, 7, 0, 0, 7, 6, 1, 8, 0, 0, 8, 6, 1, 9, 0, 0, 9, 6, 1, 10, 0, 0, 10, 6, 1, 11, 0, 0, 11, 6, 1, 12, 0, 0, 12, 6, 1, 13, 0, 0, 13, 6, 1, 14, 0, 0, 14, 7, 1, 15, 0, 0, 15, 7, 1, 16, 0, 0, 16, 7, 1, 17, 0, 0, 17, 7, 1, 18, 0, 0, 18, 7, 1, 19, 0, 0, 19, 7, 1, 20, 0, 0, 20, 5, 1, 20, 6, 1, 21, 0, 0, 21, 5, 1, 21, 6, 1, 22, 0, 0, 22, 5, 1, 22, 8, 3, 23, 0, 0, 23, 5, 1, 23, 8, 3, 24, 9, 1, 25, 0, 0, 25, 5, 1, 25, 6, 1, 26, 0, 0, 26, 5, 1, 26, 8, 3, 27, 10, 1, 28, 0, 0, 28, 5, 1, 28, 6, 1, 29, 0, 0, 29, 5, 1, 29, 8, 3, 30, 0, 0, 30, 5, 1, 30, 8, 3, 31, 0, 0, 31, 5, 1, 31, 8, 3, 32, 0, 0, 32, 5, 1, 32, 8, 3, 33, 0, 0, 33, 5, 1, 33, 8, 3, 34, 11, 1, 35, 0, 0, 36, 2, 1, 37, 0, 0, 37, 5, 1, 37, 6, 1, 38, 0, 0, 38, 5, 1, 38, 6, 1, 39, 0, 0, 39, 5, 1, 39, 6, 1, 40, 0, 0, 40, 5, 1, 40, 6, 1, 41, 0, 0, 41, 5, 1, 41, 8, 3, 42, 12, 3, 43, 0, 0, 43, 5, 1, 43, 6, 1, 44, 0, 0, 44, 5, 1, 44, 8, 3, 45, 0, 0, 45, 5, 1, 45, 8, 3, 46, 9, 1, 47, 0, 0, 47, 5, 1, 47, 6, 1, 48, 0, 0, 48, 5, 1, 48, 8, 3, 49, 13, 3, 50, 0, 0, 50, 5, 1, 50, 6, 1, 51, 14, 1, 52, 0, 0, 52, 5, 1, 52, 6, 1, 53, 0, 0, 53, 5, 1, 53, 8, 3, 54, 0, 0, 54, 5, 1, 54, 8, 3, 55, 0, 0, 55, 5, 1, 55, 8, 3, 56, 0, 0, 56, 5, 1, 56, 8, 3, 57, 0, 0, 57, 5, 1, 57, 8, 3, 58, 0, 0, 58, 5, 1, 58, 8, 3, 59, 15, 1, 60, 0, 0, 61, 2, 1, 62, 0, 0, 62, 5, 1, 62, 6, 1, 63, 0, 0, 63, 5, 1, 63, 6, 1, 64, 0, 0, 64, 5, 1, 64, 6, 1, 65, 0, 0, 65, 5, 1, 65, 6, 1, 66, 16, 1, 67, 17, 1, 68, 0, 0, 68, 5, 1, 68, 6, 1, 69, 0, 0, 69, 5, 1, 69, 8, 3, 70, 0, 0, 70, 5, 1, 70, 8, 3, 71, 18, 17, 72, 0, 0, 72, 5, 1, 72, 6, 1, 73, 0, 0, 73, 5, 1, 73, 8, 3, 74, 19, 1, 75, 0, 0, 75, 5, 1, 75, 6, 1, 76, 0, 0, 76, 5, 1, 76, 8, 3, 77, 12, 3, 78, 0, 0, 78, 5, 1, 78, 6, 1, 79, 0, 0, 79, 5, 1, 79, 8, 3, 80, 12, 3, 81, 0, 0, 81, 5, 1, 81, 6, 1, 82, 14, 1, 83, 0, 0, 83, 5, 1, 83, 6, 1, 84, 0, 0, 84, 5, 1, 84, 8, 3, 85, 20, 1, 86, 0, 0, 86, 5, 1, 86, 6, 1, 87, 0, 0, 87, 5, 1, 87, 8, 3, 88, 21, 1, 89, 0, 0, 89, 5, 1, 89, 6, 1, 90, 0, 0, 90, 5, 1, 90, 8, 3, 91, 0, 0, 91, 5, 1, 91, 8, 3, 92, 9, 1, 93, 0, 0, 93, 5, 1, 93, 6, 1, 94, 0, 0, 94, 5, 1, 94, 8, 3, 95, 22, 1, 96, 0, 0, 96, 5, 1, 96, 6, 1, 97, 0, 0, 97, 5, 1, 97, 8, 3, 98, 22, 1, 99, 0, 0, 99, 5, 1, 99, 6, 1, 100, 0, 0, 100, 5, 1, 100, 8, 3, 101, 0, 0, 101, 5, 1, 101, 8, 3, 102, 9, 1, 103, 0, 0, 103, 5, 1, 103, 6, 1, 104, 0, 0, 104, 5, 1, 104, 8, 3, 105, 0, 0, 105, 5, 1, 105, 8, 3, 106, 23, 1, 107, 0, 0, 107, 5, 1, 107, 6, 1, 108, 0, 0, 108, 5, 1, 108, 8, 3, 109, 14, 1, 110, 0, 0, 110, 5, 1, 110, 6, 1, 111, 0, 0, 111, 5, 1, 111, 8, 3, 112, 24, 1, 113, 0, 0, 113, 5, 1, 113, 8, 3, 114, 14, 1, 115, 0, 0, 115, 5, 1, 115, 6, 1, 116, 0, 0, 116, 5, 1, 116, 8, 3, 117, 12, 3, 118, 25, 2, 119, 0, 0, 119, 5, 1, 119, 8, 3, 120, 0, 0, 120, 5, 1, 120, 8, 3, 121, 0, 0, 121, 5, 1, 121, 8, 3, 122, 0, 0, 122, 5, 1, 122, 8, 3, 123, 0, 0, 123, 5, 1, 123, 8, 3, 124, 26, 1, 125, 2, 1, 126, 1, 0, 127, 0, 0, 127, 5, 1, 127, 8, 3, 128, 0, 0, 128, 5, 1, 128, 8, 3, 129, 0, 0, 129, 5, 1, 129, 8, 3, 130, 0, 0, 130, 5, 1, 130, 8, 3, 131, 0, 0, 132, 2, 1, 133, 0, 0, 133, 5, 1, 133, 6, 1, 134, 0, 0, 134, 5, 1, 134, 6, 1, 135, 0, 0, 135, 5, 1, 135, 6, 1, 136, 0, 0, 136, 5, 1, 136, 6, 1, 137, 0, 0, 137, 5, 1, 137, 8, 3, 138, 22, 1, 139, 0, 0, 139, 5, 1, 139, 6, 1, 140, 0, 0, 140, 5, 1, 140, 8, 3, 141, 22, 1, 142, 0, 0, 142, 5, 1, 142, 6, 1, 143, 0, 0, 143, 5, 1, 143, 8, 3, 144, 0, 0, 144, 5, 1, 144, 8, 3, 145, 9, 1, 146, 0, 0, 146, 5, 1, 146, 6, 1, 147, 0, 0, 147, 5, 1, 147, 8, 3, 148, 22, 1, 149, 0, 0, 149, 5, 1, 149, 6, 1, 150, 0, 0, 150, 5, 1, 150, 8, 3, 151, 0, 0, 151, 5, 1, 151, 8, 3, 152, 9, 1, 153, 0, 0, 153, 5, 1, 153, 6, 1, 154, 0, 0, 154, 5, 1, 154, 8, 3, 155, 12, 3, 156, 0, 0, 156, 5, 1, 156, 6, 1, 157, 0, 0, 157, 5, 1, 157, 8, 3, 158, 0, 0, 158, 5, 1, 158, 8, 3, 159, 9, 1, 160, 0, 0, 160, 5, 1, 160, 6, 1, 161, 0, 0, 161, 5, 1, 161, 8, 3, 162, 12, 3, 163, 0, 0, 163, 5, 1, 163, 6, 1, 164, 14, 1, 165, 0, 0, 165, 5, 1, 165, 6, 1, 166, 0, 0, 166, 5, 1, 166, 8, 3, 167, 0, 0, 167, 5, 1, 167, 8, 3, 168, 0, 0, 168, 5, 1, 168, 8, 3, 169, 0, 0, 169, 5, 1, 169, 8, 3, 170, 0, 0, 170, 5, 1, 170, 8, 3, 171, 0, 0, 171, 5, 1, 171, 8, 3, 172, 27, 1, 173, 0, 0, 174, 2, 1, 175, 0, 0, 175, 5, 1, 175, 6, 1, 176, 0, 0, 176, 5, 1, 176, 6, 1, 177, 0, 0, 177, 5, 1, 177, 6, 1, 178, 0, 0, 178, 5, 1, 178, 6, 1, 179, 0, 0, 179, 5, 1, 179, 6, 1, 180, 0, 0, 180, 5, 1, 180, 8, 3, 181, 12, 3, 182, 0, 0, 182, 5, 1, 182, 6, 1, 183, 0, 0, 183, 5, 1, 183, 8, 3, 184, 12, 3, 185, 0, 0, 185, 5, 1, 185, 6, 1, 186, 0, 0, 186, 5, 1, 186, 8, 3, 187, 0, 0, 187, 5, 1, 187, 8, 3, 188, 28, 1, 189, 0, 0, 189, 5, 1, 189, 6, 1, 190, 0, 0, 190, 5, 1, 190, 8, 3, 191, 0, 0, 191, 5, 1, 191, 8, 3, 192, 0, 0, 192, 5, 1, 192, 8, 3, 193, 0, 0, 193, 5, 1, 193, 8, 3, 194, 0, 0, 194, 5, 1, 194, 8, 3, 195, 0, 0, 195, 5, 1, 195, 8, 3, 196, 11, 1, 197, 0, 0, 198, 2, 1, 199, 0, 0, 199, 5, 1, 199, 6, 1, 200, 0, 0, 200, 5, 1, 200, 6, 1, 201, 0, 0, 201, 5, 1, 201, 6, 1, 202, 0, 0, 202, 5, 1, 202, 6, 1, 203, 0, 0, 203, 5, 1, 203, 8, 3, 204, 22, 1, 205, 0, 0, 205, 5, 1, 205, 6, 1, 206, 0, 0, 206, 5, 1, 206, 8, 3, 207, 22, 1, 208, 0, 0, 208, 5, 1, 208, 6, 1, 209, 0, 0, 209, 5, 1, 209, 8, 3, 210, 0, 0, 210, 5, 1, 210, 8, 3, 211, 9, 1, 212, 0, 0, 212, 5, 1, 212, 6, 1, 213, 0, 0, 213, 5, 1, 213, 8, 3, 214, 22, 1, 215, 0, 0, 215, 5, 1, 215, 6, 1, 216, 0, 0, 216, 5, 1, 216, 8, 3, 217, 0, 0, 217, 5, 1, 217, 8, 3, 218, 23, 1, 219, 0, 0, 219, 5, 1, 219, 6, 1, 220, 0, 0, 220, 5, 1, 220, 8, 3, 221, 12, 3, 222, 0, 0, 222, 5, 1, 222, 6, 1, 223, 0, 0, 223, 5, 1, 223, 8, 3, 224, 12, 3, 225, 0, 0, 225, 5, 1, 225, 6, 1, 226, 0, 0, 226, 5, 1, 226, 8, 3, 227, 0, 0, 227, 5, 1, 227, 8, 3, 228, 9, 1, 229, 0, 0, 229, 5, 1, 229, 6, 1, 230, 0, 0, 230, 5, 1, 230, 8, 3, 231, 12, 3, 232, 0, 0, 232, 5, 1, 232, 6, 1, 233, 0, 0, 233, 5, 1, 233, 8, 3, 234, 29, 3, 235, 0, 0, 235, 7, 2, 235, 30, 2, 236, 14, 1, 237, 0, 0, 237, 5, 1, 237, 6, 1, 238, 0, 0, 238, 5, 1, 238, 8, 3, 239, 31, 3, 240, 0, 0, 240, 32, 2, 240, 33, 1, 241, 0, 0, 241, 32, 2, 241, 34, 3, 242, 35, 1, 243, 0, 0, 243, 7, 2, 243, 30, 2, 244, 0, 0, 244, 30, 2, 244, 36, 3, 245, 0, 0, 245, 30, 2, 245, 36, 3, 246, 37, 3, 247, 0, 0, 247, 5, 1, 247, 8, 3, 248, 0, 0, 248, 5, 1, 248, 8, 3, 249, 38, 1, 250, 0, 0, 250, 5, 1, 250, 6, 1, 251, 0, 0, 251, 5, 1, 251, 8, 3, 252, 0, 0, 252, 5, 1, 252, 8, 3, 253, 0, 0, 254, 2, 1, 255, 0, 0, 255, 5, 1, 255, 6, 1, 256, 0, 0, 256, 5, 1, 256, 6, 1, 257, 0, 0, 257, 5, 1, 257, 8, 3, 258, 0, 0, 258, 8, 3, 259, 0, 0, 259, 8, 3, 260, 0, 0, 260, 8, 3, 261, 0, 0, 261, 8, 3, 262, 0, 0, 262, 8, 3, 263, 0, 0, 263, 8, 3, 264, 0, 0, 264, 8, 3, 265, 0, 0, 265, 8, 3, 266, 0, 0, 266, 36, 3, 267, 0, 0, 267, 36, 3, 268, 0, 0, 268, 36, 3, 269, 0, 0, 269, 36, 3, 270, 0, 0, 270, 36, 3, 271, 0, 0, 271, 36, 3, 272, 0, 0, 272, 5, 1, 272, 8, 3, 273, 0, 0, 273, 39, 1, 274, 40, 1, 275, 0, 0]);
|
|
expr_op = [1, 6, 6, 6, 12, 1, 6, 6, 12, 1, 6, 6, 12, 1, 6, 6, 12, 1, 6, 6, 12, 1, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 12, 12, 1, 6, 6, 12, 12, 1, 6, 6, 12, 12, 1, 6, 6, 12, 1, 6, 1, 6, 1, 6, 6, 12, 1, 6, 1, 6, 1, 6, 6, 12, 1, 6, 1, 6, 1, 6, 12, 1, 6, 1, 6, 1, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 0, 6, 1, 6, 1, 6, 1, 1, 0, 6, 6, 12, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 0, 6, 8, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 1, 6, 8, 3, 6, 3, 6, 3, 6, 3, 6, 3, 1, 6, 8, 3, 6, 3, 1, 6, 8, 3, 6, 3, 1, 6, 8, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 1, 6, 8, 3, 6, 3, 1, 6, 8, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 1, 6, 8, 3, 6, 3, 1, 6, 8, 3, 6, 3, 6, 3, 6, 3, 6, 3, 1, 6, 8, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 1, 8, 3, 3, 3, 3, 3, 3, 6, 3, 6, 3, 6, 3, 6, 3, 1, 8, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 6, 3, 6, 3, 6, 3, 6, 3, 1, 6, 8, 3, 6, 3, 1, 8, 3, 3, 6, 3, 6, 3, 1, 8, 3, 3, 3, 3, 6, 3, 6, 3, 1, 6, 8, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 1, 6, 8, 3, 6, 3, 6, 3, 1, 6, 8, 3, 6, 3, 1, 6, 8, 3, 6, 3, 1, 6, 8, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 1, 8, 3, 3, 3, 3, 3, 3, 6, 3, 6, 3, 6, 3, 6, 3, 1, 8, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 1, 8, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 1, 8, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 1, 6, 8, 3, 6, 3, 1, 8, 3, 3, 6, 3, 6, 3, 1, 8, 3, 3, 3, 3, 6, 3, 6, 3, 6, 3, 1, 8, 3, 3, 3, 3, 3, 3, 3, 6, 3, 6, 3, 6, 3, 1, 8, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 6, 3, 1, 6, 8, 3, 6, 3, 1, 8, 3, 3, 1, 6, 8, 3, 6, 3, 1, 6, 8, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 1, 8, 5, 4, 5, 4, 0, 8, 5, 4, 0, 8, 5, 4, 0, 8, 5, 4, 0, 8, 5, 4, 0, 8, 5, 4, 0, 8, 5, 4, 0, 8, 5, 4, 0, 8, 5, 4, 0, 8, 5, 4, 0, 8, 5, 4, 0, 8, 5, 4, 0, 8, 5, 4, 0, 8, 5, 4, 0, 8, 5, 4, 0, 8, 5, 4, 0, 8, 5, 4, 0, 8, 5, 4, 0, 8, 5, 4, 0, 8, 5, 4, 0, 8, 5, 4, 0, 8, 5, 4, 0, 8, 5, 4, 0, 8, 5, 4, 0, 8, 5, 4, 0, 8, 5, 4, 0, 8, 5, 4, 0, 8, 5, 4, 0, 8, 5, 4, 0, 8, 7, 4, 0, 8, 7, 4, 0, 8, 7, 4, 0, 8, 7, 4, 0, 8, 7, 4, 0, 8, 7, 4, 0, 8, 7, 4, 0, 8, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 7, 4, 0, 8, 5, 4, 7, 4, 0, 8, 7, 4, 0, 8, 5, 4, 5, 4, 0, 8, 5, 4, 0, 8, 5, 4, 0, 8, 7, 4, 0, 8, 5, 4, 0, 8, 5, 4, 0, 8, 5, 4, 0, 8, 5, 4, 0, 8, 5, 4, 0, 8, 5, 4, 0, 8, 5, 4, 0, 8, 5, 4, 0, 8, 5, 4, 0, 8, 5, 4, 0, 8, 5, 4, 0, 8, 5, 4, 0, 8, 5, 4, 0, 8, 5, 4, 0, 8, 5, 4, 0, 8, 7, 4, 0, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 5, 8, 3, 8, 3, 5, 8, 3, 8, 3, 5, 8, 3, 8, 3, 5, 8, 3, 8, 3, 8, 3, 8, 3, 5, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 5, 8, 3, 8, 3, 8, 3, 8, 3, 5, 8, 3, 8, 3, 5, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 5, 8, 3, 8, 3, 5, 8, 3, 8, 3, 5, 8, 3, 8, 3, 5, 8, 3, 8, 3, 5, 8, 3, 8, 3, 8, 3, 8, 3, 5, 8, 3, 8, 3, 8, 3, 5, 8, 3, 8, 3, 8, 3, 5, 8, 3, 8, 3, 8, 3, 5, 8, 3, 8, 3, 5, 8, 3, 8, 3, 8, 3, 5, 8, 3, 8, 3, 8, 3, 5, 8, 3, 8, 3, 8, 3, 8, 3, 5, 8, 3, 8, 3, 8, 3, 5, 8, 3, 8, 3, 8, 3, 5, 8, 3, 8, 3, 8, 3, 8, 3, 5, 8, 3, 8, 3, 8, 3, 8, 3, 5, 8, 3, 8, 3, 8, 3, 5, 8, 3, 8, 3, 8, 3, 8, 3, 5, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 5, 8, 3, 8, 3, 5, 8, 3, 8, 3, 5, 8, 3, 8, 3, 5, 8, 3, 8, 3, 8, 3, 8, 3, 5, 8, 3, 8, 3, 5, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 5, 8, 3, 8, 3, 5, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 5, 8, 3, 8, 3, 8, 3, 8, 3, 5, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 5, 8, 3, 8, 3, 8, 3, 8, 3, 5, 8, 3, 8, 3, 5, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 5, 8, 3, 8, 3, 5, 8, 3, 8, 3, 5, 8, 3, 8, 3, 5, 8, 3, 8, 3, 5, 8, 3, 8, 3, 8, 3, 8, 3, 5, 8, 3, 8, 3, 8, 3, 8, 3, 5, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 5, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 5, 8, 3, 8, 3, 5, 8, 3, 8, 3, 5, 8, 3, 8, 3, 5, 8, 3, 8, 3, 8, 3, 5, 8, 3, 8, 3, 5, 8, 3, 8, 3, 8, 3, 8, 3, 5, 8, 3, 8, 3, 5, 8, 3, 8, 3, 8, 3, 8, 3, 5, 8, 3, 8, 3, 8, 3, 5, 8, 3, 8, 3, 8, 3, 5, 8, 3, 8, 3, 8, 3, 8, 3, 5, 8, 3, 8, 3, 5, 8, 3, 8, 3, 8, 3, 8, 3, 5, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 5, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 6, 8, 3, 6, 8, 3, 6, 8, 3, 6, 8, 3, 6, 8, 3, 6, 8, 3, 6, 8, 3, 6, 8, 3, 6, 8, 3, 6, 8, 3, 8, 3, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8];
|
|
expr_arg1 = [0, 251, 353, 396, 134, 0, 257, 396, 137, 0, 333, 396, 173, 0, 338, 396, 176, 0, 373, 396, 190, 0, 140, 147, 206, 213, 230, 57, 243, 253, 253, 253, 253, 259, 259, 259, 335, 335, 353, 223, 375, 98, 120, 0, 227, 395, 118, 122, 0, 229, 396, 119, 123, 0, 236, 375, 127, 0, 251, 0, 257, 0, 309, 375, 162, 0, 333, 0, 338, 0, 367, 375, 187, 0, 373, 0, 375, 0, 394, 117, 0, 395, 0, 396, 0, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 236, 0, 309, 0, 367, 0, 0, 0, 371, 395, 189, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 65, 1, 157, 66, 160, 72, 162, 72, 164, 86, 166, 88, 168, 88, 170, 88, 172, 89, 174, 90, 176, 91, 178, 92, 180, 93, 182, 94, 184, 95, 186, 96, 188, 97, 190, 98, 192, 99, 194, 100, 196, 101, 198, 102, 200, 108, 202, 109, 204, 0, 65, 1, 207, 66, 210, 86, 212, 108, 214, 109, 216, 0, 151, 36, 219, 151, 222, 0, 240, 61, 225, 240, 228, 0, 269, 74, 231, 269, 234, 275, 236, 275, 238, 275, 240, 283, 242, 284, 244, 0, 283, 74, 247, 284, 250, 0, 290, 92, 253, 290, 256, 296, 258, 296, 260, 296, 262, 304, 264, 305, 266, 0, 304, 92, 269, 305, 272, 0, 329, 92, 275, 329, 278, 329, 280, 329, 282, 352, 284, 0, 429, 132, 287, 429, 290, 435, 292, 435, 294, 443, 296, 444, 298, 0, 132, 287, 290, 292, 294, 296, 298, 450, 308, 450, 310, 458, 312, 459, 314, 0, 132, 287, 290, 292, 294, 296, 298, 308, 310, 312, 314, 465, 328, 465, 330, 473, 332, 474, 334, 0, 443, 132, 337, 444, 340, 0, 132, 337, 340, 458, 346, 459, 348, 0, 132, 337, 340, 346, 348, 473, 356, 474, 358, 0, 520, 132, 361, 520, 364, 521, 366, 521, 368, 521, 370, 523, 372, 0, 522, 132, 375, 522, 378, 522, 380, 0, 573, 174, 383, 573, 386, 0, 611, 174, 389, 614, 392, 0, 647, 198, 395, 647, 398, 653, 400, 653, 402, 661, 404, 662, 406, 0, 198, 395, 398, 400, 402, 404, 406, 668, 416, 668, 418, 676, 420, 677, 422, 0, 198, 395, 398, 400, 402, 404, 406, 416, 418, 420, 422, 683, 436, 683, 438, 689, 440, 697, 442, 698, 444, 0, 198, 395, 398, 400, 402, 404, 406, 416, 418, 420, 422, 436, 438, 440, 442, 444, 704, 463, 704, 465, 710, 467, 720, 469, 734, 471, 735, 473, 0, 198, 395, 398, 400, 402, 404, 406, 416, 418, 420, 422, 436, 438, 440, 442, 444, 463, 465, 467, 469, 471, 473, 742, 498, 768, 500, 768, 502, 769, 504, 769, 506, 0, 661, 198, 509, 662, 512, 0, 198, 509, 512, 676, 518, 677, 520, 0, 198, 509, 512, 518, 520, 689, 528, 697, 530, 698, 532, 0, 198, 509, 512, 518, 520, 528, 530, 532, 710, 543, 720, 545, 726, 547, 0, 198, 509, 512, 518, 520, 528, 530, 532, 543, 545, 547, 742, 561, 0, 734, 198, 564, 735, 567, 0, 198, 564, 567, 0, 827, 254, 574, 827, 577, 0, 828, 254, 580, 829, 583, 830, 585, 831, 587, 832, 589, 833, 591, 834, 593, 835, 595, 836, 597, 837, 599, 838, 601, 839, 603, 840, 605, 841, 607, 0, 2, 2, 611, 3, 613, 0, 2, 4, 617, 0, 2, 5, 621, 0, 2, 6, 625, 0, 2, 7, 629, 0, 2, 8, 633, 0, 2, 9, 637, 0, 2, 10, 641, 0, 2, 11, 645, 0, 2, 12, 649, 0, 2, 13, 653, 0, 2, 14, 657, 0, 2, 15, 661, 0, 2, 16, 665, 0, 2, 17, 669, 0, 2, 18, 673, 0, 2, 19, 677, 0, 2, 20, 681, 0, 2, 21, 685, 0, 2, 22, 689, 0, 2, 23, 693, 0, 2, 25, 697, 0, 2, 26, 701, 0, 2, 28, 705, 0, 2, 29, 709, 0, 2, 30, 713, 0, 2, 31, 717, 0, 2, 32, 721, 0, 2, 33, 725, 0, 22, 22, 729, 0, 23, 23, 733, 0, 26, 26, 737, 0, 29, 29, 741, 0, 30, 30, 745, 0, 31, 31, 749, 0, 32, 32, 753, 0, 33, 33, 757, 0, 41, 41, 761, 41, 763, 0, 44, 44, 767, 44, 769, 0, 45, 45, 773, 45, 775, 0, 48, 48, 779, 48, 781, 0, 53, 53, 785, 53, 787, 0, 54, 54, 791, 54, 793, 0, 55, 55, 797, 55, 799, 0, 56, 56, 803, 56, 805, 0, 57, 57, 809, 57, 811, 0, 58, 58, 815, 58, 817, 0, 69, 69, 821, 69, 823, 0, 69, 69, 827, 0, 70, 70, 831, 70, 833, 0, 70, 70, 837, 0, 73, 73, 841, 73, 843, 0, 73, 73, 847, 0, 76, 76, 851, 76, 853, 0, 76, 76, 857, 0, 79, 79, 861, 79, 863, 0, 79, 79, 867, 0, 84, 84, 871, 84, 873, 0, 84, 84, 877, 0, 87, 87, 881, 87, 883, 0, 87, 87, 887, 0, 90, 90, 891, 90, 893, 0, 90, 90, 897, 0, 91, 91, 901, 91, 903, 0, 91, 91, 907, 0, 94, 94, 911, 94, 913, 0, 94, 94, 917, 0, 97, 97, 921, 97, 923, 0, 97, 97, 927, 0, 100, 100, 931, 100, 933, 0, 100, 100, 937, 0, 101, 101, 941, 101, 943, 0, 101, 101, 947, 0, 104, 104, 951, 104, 953, 0, 104, 104, 957, 0, 105, 105, 961, 105, 963, 0, 105, 105, 967, 0, 108, 108, 971, 108, 973, 0, 108, 108, 977, 0, 111, 111, 981, 111, 983, 0, 111, 111, 987, 0, 113, 113, 991, 113, 993, 0, 113, 113, 997, 0, 116, 116, 1001, 116, 1003, 0, 116, 116, 1007, 0, 119, 119, 1011, 119, 1013, 0, 119, 119, 1017, 0, 120, 120, 1021, 120, 1023, 0, 120, 120, 1027, 0, 121, 121, 1031, 121, 1033, 0, 121, 121, 1037, 0, 122, 122, 1041, 122, 1043, 0, 122, 122, 1047, 0, 123, 123, 1051, 123, 1053, 0, 123, 123, 1057, 0, 127, 127, 1061, 127, 1063, 0, 127, 127, 1067, 0, 128, 128, 1071, 128, 1073, 0, 128, 128, 1077, 0, 129, 129, 1081, 129, 1083, 0, 129, 129, 1087, 0, 130, 130, 1091, 130, 1093, 0, 130, 130, 1097, 0, 137, 137, 1101, 137, 1103, 0, 143, 143, 1107, 143, 1109, 0, 144, 144, 1113, 144, 1115, 0, 150, 150, 1119, 150, 1121, 0, 151, 151, 1125, 151, 1127, 0, 154, 154, 1131, 154, 1133, 0, 157, 157, 1137, 157, 1139, 0, 158, 158, 1143, 158, 1145, 0, 161, 161, 1149, 161, 1151, 0, 166, 166, 1155, 166, 1157, 0, 167, 167, 1161, 167, 1163, 0, 168, 168, 1167, 168, 1169, 0, 169, 169, 1173, 169, 1175, 0, 170, 170, 1179, 170, 1181, 0, 171, 171, 1185, 171, 1187, 0, 180, 180, 1191, 180, 1193, 0, 183, 183, 1197, 183, 1199, 0, 186, 186, 1203, 186, 1205, 0, 187, 187, 1209, 187, 1211, 0, 190, 190, 1215, 190, 1217, 0, 191, 191, 1221, 191, 1223, 0, 192, 192, 1227, 192, 1229, 0, 193, 193, 1233, 193, 1235, 0, 194, 194, 1239, 194, 1241, 0, 195, 195, 1245, 195, 1247, 0, 203, 203, 1251, 203, 1253, 0, 203, 203, 1257, 0, 209, 209, 1261, 209, 1263, 0, 209, 209, 1267, 0, 210, 210, 1271, 210, 1273, 0, 210, 210, 1277, 0, 216, 216, 1281, 216, 1283, 0, 216, 216, 1287, 0, 217, 217, 1291, 217, 1293, 0, 217, 217, 1297, 0, 220, 220, 1301, 220, 1303, 0, 220, 220, 1307, 0, 223, 223, 1311, 223, 1313, 0, 223, 223, 1317, 0, 226, 226, 1321, 226, 1323, 0, 226, 226, 1327, 0, 227, 227, 1331, 227, 1333, 0, 227, 227, 1337, 0, 233, 233, 1341, 233, 1343, 0, 233, 233, 1347, 0, 235, 235, 1351, 235, 1353, 0, 235, 235, 1357, 0, 238, 238, 1361, 238, 1363, 0, 238, 238, 1367, 0, 240, 240, 1371, 240, 1373, 0, 240, 240, 1377, 0, 241, 241, 1381, 241, 1383, 0, 241, 241, 1387, 0, 243, 243, 1391, 243, 1393, 0, 243, 243, 1397, 0, 244, 244, 1401, 244, 1403, 0, 244, 244, 1407, 0, 245, 245, 1411, 245, 1413, 0, 245, 245, 1417, 0, 247, 247, 1421, 247, 1423, 0, 247, 247, 1427, 0, 248, 248, 1431, 248, 1433, 0, 248, 248, 1437, 0, 251, 251, 1441, 251, 1443, 0, 251, 251, 1447, 0, 252, 252, 1451, 252, 1453, 0, 252, 252, 1457, 0, 255, 255, 1461, 273, 1463, 0, 256, 256, 1467, 0, 257, 257, 1471, 0, 257, 257, 1475, 0, 258, 258, 1479, 0, 259, 259, 1483, 0, 260, 260, 1487, 0, 261, 261, 1491, 0, 262, 262, 1495, 0, 263, 263, 1499, 0, 264, 264, 1503, 0, 265, 265, 1507, 0, 266, 266, 1511, 0, 267, 267, 1515, 0, 268, 268, 1519, 0, 269, 269, 1523, 0, 270, 270, 1527, 0, 271, 271, 1531, 0, 272, 272, 1535, 0, 272, 272, 1539, 0, 1, 611, 2, 611, 1, 613, 3, 613, 1, 617, 4, 617, 1, 621, 5, 621, 1, 625, 6, 625, 1, 629, 7, 629, 1, 633, 8, 633, 1, 637, 9, 637, 1, 641, 10, 641, 1, 645, 11, 645, 1, 649, 12, 649, 1, 653, 13, 653, 1, 657, 14, 657, 1, 661, 15, 661, 1, 665, 16, 665, 1, 669, 17, 669, 1, 673, 18, 673, 1, 677, 19, 677, 1, 681, 20, 681, 1, 685, 21, 685, 1, 689, 22, 689, 1, 693, 23, 693, 1, 697, 25, 697, 1, 701, 26, 701, 1, 705, 28, 705, 1, 709, 29, 709, 1, 713, 30, 713, 1, 717, 31, 717, 1, 721, 32, 721, 1, 725, 33, 725, 37, 36, 1662, 37, 1662, 38, 36, 1667, 38, 1667, 39, 36, 1672, 39, 1672, 40, 36, 1677, 40, 1677, 36, 761, 41, 761, 43, 36, 1686, 43, 1686, 36, 767, 44, 767, 36, 773, 45, 773, 47, 36, 1699, 47, 1699, 36, 779, 48, 779, 50, 36, 1708, 50, 1708, 52, 36, 1713, 52, 1713, 36, 785, 53, 785, 36, 791, 54, 791, 36, 797, 55, 797, 36, 803, 56, 803, 36, 809, 57, 809, 36, 815, 58, 815, 62, 61, 1742, 62, 1742, 63, 61, 1747, 63, 1747, 64, 61, 1752, 64, 1752, 65, 61, 1757, 65, 1757, 68, 61, 1762, 68, 1762, 61, 821, 61, 831, 72, 61, 1771, 72, 1771, 61, 841, 75, 61, 1778, 75, 1778, 61, 851, 78, 61, 1785, 78, 1785, 61, 861, 81, 61, 1792, 81, 1792, 83, 61, 1797, 83, 1797, 61, 871, 86, 61, 1804, 86, 1804, 61, 881, 89, 61, 1811, 89, 1811, 61, 891, 61, 901, 93, 61, 1820, 93, 1820, 61, 911, 96, 61, 1827, 96, 1827, 61, 921, 99, 61, 1834, 99, 1834, 61, 931, 61, 941, 103, 61, 1843, 103, 1843, 61, 951, 61, 961, 107, 61, 1852, 107, 1852, 61, 971, 110, 61, 1859, 110, 1859, 61, 981, 61, 991, 115, 61, 1868, 115, 1868, 61, 1001, 61, 1011, 61, 1021, 61, 1031, 61, 1041, 61, 1051, 61, 1061, 61, 1071, 61, 1081, 61, 1091, 133, 132, 1893, 133, 1893, 134, 132, 1898, 134, 1898, 135, 132, 1903, 135, 1903, 136, 132, 1908, 136, 1908, 132, 1101, 137, 1101, 139, 132, 1917, 139, 1917, 142, 132, 1922, 142, 1922, 132, 1107, 143, 1107, 132, 1113, 144, 1113, 146, 132, 1935, 146, 1935, 149, 132, 1940, 149, 1940, 132, 1119, 150, 1119, 132, 1125, 151, 1125, 153, 132, 1953, 153, 1953, 132, 1131, 154, 1131, 156, 132, 1962, 156, 1962, 132, 1137, 157, 1137, 132, 1143, 158, 1143, 160, 132, 1975, 160, 1975, 132, 1149, 161, 1149, 163, 132, 1984, 163, 1984, 165, 132, 1989, 165, 1989, 132, 1155, 166, 1155, 132, 1161, 167, 1161, 132, 1167, 168, 1167, 132, 1173, 169, 1173, 132, 1179, 170, 1179, 132, 1185, 171, 1185, 175, 174, 2018, 175, 2018, 176, 174, 2023, 176, 2023, 177, 174, 2028, 177, 2028, 178, 174, 2033, 178, 2033, 179, 174, 2038, 179, 2038, 174, 1191, 180, 1191, 182, 174, 2047, 182, 2047, 174, 1197, 183, 1197, 185, 174, 2056, 185, 2056, 174, 1203, 186, 1203, 174, 1209, 187, 1209, 189, 174, 2069, 189, 2069, 174, 1215, 190, 1215, 174, 1221, 191, 1221, 174, 1227, 192, 1227, 174, 1233, 193, 1233, 174, 1239, 194, 1239, 174, 1245, 195, 1245, 199, 198, 2098, 199, 2098, 200, 198, 2103, 200, 2103, 201, 198, 2108, 201, 2108, 202, 198, 2113, 202, 2113, 198, 1251, 205, 198, 2120, 205, 2120, 208, 198, 2125, 208, 2125, 198, 1261, 198, 1271, 212, 198, 2134, 212, 2134, 215, 198, 2139, 215, 2139, 198, 1281, 198, 1291, 219, 198, 2148, 219, 2148, 198, 1301, 222, 198, 2155, 222, 2155, 198, 1311, 225, 198, 2162, 225, 2162, 198, 1321, 198, 1331, 229, 198, 2171, 229, 2171, 232, 198, 2176, 232, 2176, 198, 1341, 198, 1351, 237, 198, 2185, 237, 2185, 198, 1361, 198, 1371, 198, 1381, 198, 1391, 198, 1401, 198, 1411, 198, 1421, 198, 1431, 250, 198, 2206, 250, 2206, 198, 1441, 198, 1451, 254, 1461, 255, 1461, 254, 1467, 256, 1467, 254, 1471, 257, 1471, 254, 1479, 258, 1479, 258, 1479, 254, 1483, 259, 1483, 259, 1483, 254, 1487, 260, 1487, 260, 1487, 254, 1491, 261, 1491, 261, 1491, 254, 1495, 262, 1495, 262, 1495, 254, 1499, 263, 1499, 263, 1499, 254, 1503, 264, 1503, 264, 1503, 254, 1507, 265, 1507, 265, 1507, 254, 1511, 266, 1511, 266, 1511, 254, 1515, 267, 1515, 267, 1515, 254, 1519, 268, 1519, 268, 1519, 254, 1523, 269, 1523, 269, 1523, 254, 1527, 270, 1527, 270, 1527, 254, 1531, 271, 1531, 271, 1531, 254, 1535, 272, 1535, 254, 1463, 273, 1463, 177, 36, 2319, 177, 36, 2322, 178, 36, 2325, 349, 77, 2328, 349, 77, 2331, 351, 80, 2334, 351, 80, 2337, 352, 92, 2340, 523, 132, 2343, 726, 198, 2346, 198, 2346, 0, 0, 0, 0, 0, 1, 1, 1, 1, 24, 24, 27, 34, 35, 36, 36, 36, 36, 36, 36, 42, 42, 46, 46, 49, 51, 59, 60, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 66, 66, 67, 67, 71, 71, 74, 74, 74, 74, 77, 77, 80, 80, 82, 82, 85, 85, 88, 88, 92, 92, 92, 92, 92, 95, 95, 98, 98, 102, 102, 106, 106, 109, 109, 112, 112, 114, 114, 117, 117, 118, 118, 124, 124, 125, 125, 125, 126, 132, 132, 132, 132, 132, 132, 132, 132, 132, 132, 132, 132, 132, 132, 138, 138, 141, 141, 145, 145, 148, 148, 152, 152, 155, 155, 159, 159, 162, 162, 164, 164, 172, 173, 174, 174, 174, 174, 174, 181, 181, 184, 184, 188, 196, 197, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 204, 204, 207, 207, 211, 211, 214, 214, 218, 218, 221, 221, 224, 224, 228, 228, 231, 231, 234, 234, 236, 236, 239, 239, 242, 242, 246, 249, 254, 254, 274, 275, 125];
|
|
expr_arg2 = [0, 123, 123, 134, 0, 0, 123, 137, 0, 0, 123, 173, 0, 0, 123, 176, 0, 0, 123, 190, 0, 0, 0, 0, 0, 0, 0, 21, 129, 137, 173, 176, 190, 173, 176, 190, 176, 190, 190, 98, 120, 0, 0, 0, 118, 122, 0, 0, 0, 119, 123, 0, 0, 0, 98, 127, 0, 0, 119, 0, 119, 0, 98, 162, 0, 0, 119, 0, 119, 0, 98, 187, 0, 0, 119, 0, 98, 0, 117, 0, 0, 118, 0, 119, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 120, 0, 120, 0, 120, 0, 0, 0, 122, 189, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 25, 34, 158, 24, 158, 23, 158, 46, 158, 48, 158, 23, 158, 46, 158, 50, 158, 26, 158, 27, 158, 28, 158, 29, 158, 30, 158, 31, 158, 32, 158, 33, 158, 34, 158, 35, 158, 36, 158, 37, 158, 38, 158, 39, 158, 41, 158, 45, 158, 0, 43, 34, 208, 42, 208, 49, 208, 52, 208, 53, 208, 0, 76, 46, 220, 83, 220, 0, 120, 71, 226, 127, 226, 0, 133, 92, 232, 142, 232, 133, 232, 142, 232, 145, 232, 147, 232, 144, 232, 0, 149, 92, 248, 148, 248, 0, 151, 102, 254, 152, 254, 151, 254, 152, 254, 155, 254, 157, 254, 154, 254, 0, 159, 102, 270, 158, 270, 0, 151, 125, 276, 152, 276, 155, 276, 170, 276, 172, 276, 0, 213, 145, 288, 217, 288, 213, 288, 217, 288, 222, 288, 219, 288, 0, 152, 301, 301, 301, 301, 301, 301, 213, 301, 217, 301, 229, 301, 226, 301, 0, 159, 317, 317, 317, 317, 317, 317, 317, 317, 317, 317, 216, 317, 234, 317, 236, 317, 233, 317, 0, 224, 145, 338, 223, 338, 0, 152, 343, 343, 231, 343, 230, 343, 0, 159, 351, 351, 351, 351, 238, 351, 237, 351, 0, 215, 173, 362, 248, 362, 216, 362, 234, 362, 249, 362, 245, 362, 0, 243, 172, 376, 246, 376, 250, 376, 0, 278, 188, 384, 286, 384, 0, 292, 196, 390, 295, 390, 0, 321, 211, 396, 322, 396, 321, 396, 322, 396, 327, 396, 324, 396, 0, 218, 409, 409, 409, 409, 409, 409, 321, 409, 322, 409, 334, 409, 331, 409, 0, 228, 425, 425, 425, 425, 425, 425, 425, 425, 425, 425, 320, 425, 339, 425, 341, 425, 344, 425, 338, 425, 0, 246, 447, 447, 447, 447, 447, 447, 447, 447, 447, 447, 447, 447, 447, 447, 447, 320, 447, 339, 447, 351, 447, 348, 447, 362, 447, 354, 447, 0, 253, 476, 476, 476, 476, 476, 476, 476, 476, 476, 476, 476, 476, 476, 476, 476, 476, 476, 476, 476, 476, 476, 356, 476, 319, 476, 369, 476, 368, 476, 370, 476, 0, 329, 211, 510, 328, 510, 0, 218, 515, 515, 336, 515, 335, 515, 0, 228, 523, 523, 523, 523, 342, 523, 346, 523, 345, 523, 0, 246, 535, 535, 535, 535, 535, 535, 535, 352, 535, 357, 535, 359, 535, 0, 253, 550, 550, 550, 550, 550, 550, 550, 550, 550, 550, 366, 550, 0, 364, 246, 565, 363, 565, 0, 253, 570, 570, 0, 391, 274, 575, 408, 575, 0, 394, 275, 581, 395, 581, 396, 581, 397, 581, 398, 581, 399, 581, 400, 581, 401, 581, 402, 581, 403, 581, 404, 581, 405, 581, 406, 581, 407, 581, 0, 3, 0, 0, 0, 0, 0, 4, 0, 0, 0, 5, 0, 0, 0, 6, 0, 0, 0, 7, 0, 0, 0, 8, 0, 0, 0, 9, 0, 0, 0, 10, 0, 0, 0, 11, 0, 0, 0, 12, 0, 0, 0, 13, 0, 0, 0, 14, 0, 0, 0, 15, 0, 0, 0, 16, 0, 0, 0, 17, 0, 0, 0, 18, 0, 0, 0, 19, 0, 0, 0, 20, 0, 0, 0, 21, 0, 0, 0, 22, 0, 0, 0, 23, 0, 0, 0, 25, 0, 0, 0, 26, 0, 0, 0, 28, 0, 0, 0, 29, 0, 0, 0, 30, 0, 0, 0, 31, 0, 0, 0, 32, 0, 0, 0, 33, 0, 0, 0, 34, 8, 0, 0, 34, 8, 0, 0, 34, 8, 0, 0, 34, 8, 0, 0, 34, 8, 0, 0, 34, 8, 0, 0, 34, 8, 0, 0, 34, 8, 0, 0, 59, 0, 0, 8, 0, 0, 59, 0, 0, 8, 0, 0, 59, 0, 0, 8, 0, 0, 59, 0, 0, 8, 0, 0, 59, 0, 0, 8, 0, 0, 59, 0, 0, 8, 0, 0, 59, 0, 0, 8, 0, 0, 59, 0, 0, 8, 0, 0, 59, 0, 0, 8, 0, 0, 59, 0, 0, 8, 0, 0, 131, 0, 0, 5, 0, 0, 131, 8, 0, 0, 131, 0, 0, 5, 0, 0, 131, 8, 0, 0, 131, 0, 0, 5, 0, 0, 131, 8, 0, 0, 131, 0, 0, 5, 0, 0, 131, 8, 0, 0, 131, 0, 0, 5, 0, 0, 131, 8, 0, 0, 131, 0, 0, 5, 0, 0, 131, 8, 0, 0, 131, 0, 0, 5, 0, 0, 131, 8, 0, 0, 131, 0, 0, 5, 0, 0, 131, 8, 0, 0, 131, 0, 0, 5, 0, 0, 131, 8, 0, 0, 131, 0, 0, 5, 0, 0, 131, 8, 0, 0, 131, 0, 0, 5, 0, 0, 131, 8, 0, 0, 131, 0, 0, 5, 0, 0, 131, 8, 0, 0, 131, 0, 0, 5, 0, 0, 131, 8, 0, 0, 131, 0, 0, 5, 0, 0, 131, 8, 0, 0, 131, 0, 0, 5, 0, 0, 131, 8, 0, 0, 131, 0, 0, 5, 0, 0, 131, 8, 0, 0, 131, 0, 0, 5, 0, 0, 131, 8, 0, 0, 131, 0, 0, 5, 0, 0, 131, 8, 0, 0, 131, 0, 0, 5, 0, 0, 131, 8, 0, 0, 131, 0, 0, 5, 0, 0, 131, 8, 0, 0, 131, 0, 0, 5, 0, 0, 131, 8, 0, 0, 131, 0, 0, 5, 0, 0, 131, 8, 0, 0, 131, 0, 0, 5, 0, 0, 131, 8, 0, 0, 131, 0, 0, 5, 0, 0, 131, 8, 0, 0, 131, 0, 0, 5, 0, 0, 131, 8, 0, 0, 131, 0, 0, 5, 0, 0, 131, 8, 0, 0, 131, 0, 0, 5, 0, 0, 131, 8, 0, 0, 131, 0, 0, 5, 0, 0, 131, 8, 0, 0, 172, 0, 0, 8, 0, 0, 172, 0, 0, 8, 0, 0, 172, 0, 0, 8, 0, 0, 172, 0, 0, 8, 0, 0, 172, 0, 0, 8, 0, 0, 172, 0, 0, 8, 0, 0, 172, 0, 0, 8, 0, 0, 172, 0, 0, 8, 0, 0, 172, 0, 0, 8, 0, 0, 172, 0, 0, 8, 0, 0, 172, 0, 0, 8, 0, 0, 172, 0, 0, 8, 0, 0, 172, 0, 0, 8, 0, 0, 172, 0, 0, 8, 0, 0, 172, 0, 0, 8, 0, 0, 196, 0, 0, 8, 0, 0, 196, 0, 0, 8, 0, 0, 196, 0, 0, 8, 0, 0, 196, 0, 0, 8, 0, 0, 196, 0, 0, 8, 0, 0, 196, 0, 0, 8, 0, 0, 196, 0, 0, 8, 0, 0, 196, 0, 0, 8, 0, 0, 196, 0, 0, 8, 0, 0, 196, 0, 0, 8, 0, 0, 253, 0, 0, 5, 0, 0, 253, 8, 0, 0, 253, 0, 0, 5, 0, 0, 253, 8, 0, 0, 253, 0, 0, 5, 0, 0, 253, 8, 0, 0, 253, 0, 0, 5, 0, 0, 253, 8, 0, 0, 253, 0, 0, 5, 0, 0, 253, 8, 0, 0, 253, 0, 0, 5, 0, 0, 253, 8, 0, 0, 253, 0, 0, 5, 0, 0, 253, 8, 0, 0, 253, 0, 0, 5, 0, 0, 253, 8, 0, 0, 253, 0, 0, 5, 0, 0, 253, 8, 0, 0, 253, 0, 0, 5, 0, 0, 253, 8, 0, 0, 253, 0, 0, 7, 0, 0, 253, 30, 0, 0, 253, 0, 0, 5, 0, 0, 253, 8, 0, 0, 253, 0, 0, 32, 0, 0, 253, 33, 0, 0, 253, 0, 0, 32, 0, 0, 253, 34, 0, 0, 253, 0, 0, 7, 0, 0, 253, 30, 0, 0, 253, 0, 0, 30, 0, 0, 253, 36, 0, 0, 253, 0, 0, 30, 0, 0, 253, 36, 0, 0, 253, 0, 0, 5, 0, 0, 253, 8, 0, 0, 253, 0, 0, 5, 0, 0, 253, 8, 0, 0, 253, 0, 0, 5, 0, 0, 253, 8, 0, 0, 253, 0, 0, 5, 0, 0, 253, 8, 0, 0, 273, 0, 0, 0, 0, 0, 273, 0, 0, 0, 273, 0, 0, 0, 274, 8, 0, 0, 273, 0, 0, 0, 273, 0, 0, 0, 273, 0, 0, 0, 273, 0, 0, 0, 273, 0, 0, 0, 273, 0, 0, 0, 273, 0, 0, 0, 273, 0, 0, 0, 273, 0, 0, 0, 273, 0, 0, 0, 273, 0, 0, 0, 273, 0, 0, 0, 273, 0, 0, 0, 273, 0, 0, 0, 273, 0, 0, 0, 274, 8, 0, 0, 2, 1542, 34, 1544, 3, 1546, 34, 1548, 4, 1550, 34, 1552, 5, 1554, 34, 1556, 6, 1558, 34, 1560, 7, 1562, 34, 1564, 8, 1566, 34, 1568, 9, 1570, 34, 1572, 10, 1574, 34, 1576, 11, 1578, 34, 1580, 12, 1582, 34, 1584, 13, 1586, 34, 1588, 14, 1590, 34, 1592, 15, 1594, 34, 1596, 16, 1598, 34, 1600, 17, 1602, 34, 1604, 18, 1606, 34, 1608, 19, 1610, 34, 1612, 20, 1614, 34, 1616, 21, 1618, 34, 1620, 22, 1622, 34, 1624, 23, 1626, 34, 1628, 25, 1630, 34, 1632, 26, 1634, 34, 1636, 28, 1638, 34, 1640, 29, 1642, 34, 1644, 30, 1646, 34, 1648, 31, 1650, 34, 1652, 32, 1654, 34, 1656, 33, 1658, 34, 1660, 0, 37, 1663, 59, 1665, 0, 38, 1668, 59, 1670, 0, 39, 1673, 59, 1675, 0, 40, 1678, 59, 1680, 41, 1682, 59, 1684, 0, 43, 1687, 59, 1689, 44, 1691, 59, 1693, 45, 1695, 59, 1697, 0, 47, 1700, 59, 1702, 48, 1704, 59, 1706, 0, 50, 1709, 59, 1711, 0, 52, 1714, 59, 1716, 53, 1718, 59, 1720, 54, 1722, 59, 1724, 55, 1726, 59, 1728, 56, 1730, 59, 1732, 57, 1734, 59, 1736, 58, 1738, 59, 1740, 0, 62, 1743, 131, 1745, 0, 63, 1748, 131, 1750, 0, 64, 1753, 131, 1755, 0, 65, 1758, 131, 1760, 0, 68, 1763, 131, 1765, 69, 1767, 70, 1769, 0, 72, 1772, 131, 1774, 73, 1776, 0, 75, 1779, 131, 1781, 76, 1783, 0, 78, 1786, 131, 1788, 79, 1790, 0, 81, 1793, 131, 1795, 0, 83, 1798, 131, 1800, 84, 1802, 0, 86, 1805, 131, 1807, 87, 1809, 0, 89, 1812, 131, 1814, 90, 1816, 91, 1818, 0, 93, 1821, 131, 1823, 94, 1825, 0, 96, 1828, 131, 1830, 97, 1832, 0, 99, 1835, 131, 1837, 100, 1839, 101, 1841, 0, 103, 1844, 131, 1846, 104, 1848, 105, 1850, 0, 107, 1853, 131, 1855, 108, 1857, 0, 110, 1860, 131, 1862, 111, 1864, 113, 1866, 0, 115, 1869, 131, 1871, 116, 1873, 119, 1875, 120, 1877, 121, 1879, 122, 1881, 123, 1883, 127, 1885, 128, 1887, 129, 1889, 130, 1891, 0, 133, 1894, 172, 1896, 0, 134, 1899, 172, 1901, 0, 135, 1904, 172, 1906, 0, 136, 1909, 172, 1911, 137, 1913, 172, 1915, 0, 139, 1918, 172, 1920, 0, 142, 1923, 172, 1925, 143, 1927, 172, 1929, 144, 1931, 172, 1933, 0, 146, 1936, 172, 1938, 0, 149, 1941, 172, 1943, 150, 1945, 172, 1947, 151, 1949, 172, 1951, 0, 153, 1954, 172, 1956, 154, 1958, 172, 1960, 0, 156, 1963, 172, 1965, 157, 1967, 172, 1969, 158, 1971, 172, 1973, 0, 160, 1976, 172, 1978, 161, 1980, 172, 1982, 0, 163, 1985, 172, 1987, 0, 165, 1990, 172, 1992, 166, 1994, 172, 1996, 167, 1998, 172, 2000, 168, 2002, 172, 2004, 169, 2006, 172, 2008, 170, 2010, 172, 2012, 171, 2014, 172, 2016, 0, 175, 2019, 196, 2021, 0, 176, 2024, 196, 2026, 0, 177, 2029, 196, 2031, 0, 178, 2034, 196, 2036, 0, 179, 2039, 196, 2041, 180, 2043, 196, 2045, 0, 182, 2048, 196, 2050, 183, 2052, 196, 2054, 0, 185, 2057, 196, 2059, 186, 2061, 196, 2063, 187, 2065, 196, 2067, 0, 189, 2070, 196, 2072, 190, 2074, 196, 2076, 191, 2078, 196, 2080, 192, 2082, 196, 2084, 193, 2086, 196, 2088, 194, 2090, 196, 2092, 195, 2094, 196, 2096, 0, 199, 2099, 253, 2101, 0, 200, 2104, 253, 2106, 0, 201, 2109, 253, 2111, 0, 202, 2114, 253, 2116, 203, 2118, 0, 205, 2121, 253, 2123, 0, 208, 2126, 253, 2128, 209, 2130, 210, 2132, 0, 212, 2135, 253, 2137, 0, 215, 2140, 253, 2142, 216, 2144, 217, 2146, 0, 219, 2149, 253, 2151, 220, 2153, 0, 222, 2156, 253, 2158, 223, 2160, 0, 225, 2163, 253, 2165, 226, 2167, 227, 2169, 0, 229, 2172, 253, 2174, 0, 232, 2177, 253, 2179, 233, 2181, 235, 2183, 0, 237, 2186, 253, 2188, 238, 2190, 240, 2192, 241, 2194, 243, 2196, 244, 2198, 245, 2200, 247, 2202, 248, 2204, 0, 250, 2207, 253, 2209, 251, 2211, 252, 2213, 255, 2215, 274, 2217, 256, 2219, 274, 2221, 257, 2223, 274, 2225, 258, 2227, 274, 2229, 274, 2231, 259, 2233, 274, 2235, 274, 2237, 260, 2239, 274, 2241, 274, 2243, 261, 2245, 274, 2247, 274, 2249, 262, 2251, 274, 2253, 274, 2255, 263, 2257, 274, 2259, 274, 2261, 264, 2263, 274, 2265, 274, 2267, 265, 2269, 274, 2271, 274, 2273, 266, 2275, 274, 2277, 274, 2279, 267, 2281, 274, 2283, 274, 2285, 268, 2287, 274, 2289, 274, 2291, 269, 2293, 274, 2295, 274, 2297, 270, 2299, 274, 2301, 274, 2303, 271, 2305, 274, 2307, 274, 2309, 272, 2311, 274, 2313, 273, 2315, 274, 2317, 89, 59, 2320, 92, 59, 2323, 93, 59, 2326, 136, 125, 2329, 177, 125, 2332, 139, 125, 2335, 178, 125, 2338, 180, 125, 2341, 251, 173, 2344, 360, 246, 2347, 253, 2349, 1, 24, 27, 34, 35, 24, 27, 34, 34, 34, 35, 34, 35, 34, 42, 46, 49, 51, 59, 60, 46, 59, 49, 59, 59, 59, 60, 59, 66, 67, 71, 74, 77, 80, 82, 85, 88, 92, 95, 98, 102, 106, 109, 114, 117, 118, 124, 126, 131, 67, 131, 71, 131, 74, 131, 85, 88, 92, 131, 112, 124, 112, 124, 125, 131, 92, 131, 92, 131, 95, 98, 102, 114, 131, 102, 131, 102, 131, 106, 131, 109, 131, 112, 131, 117, 125, 125, 131, 124, 125, 125, 131, 125, 131, 124, 126, 131, 131, 138, 141, 145, 145, 148, 152, 152, 155, 159, 159, 162, 164, 172, 173, 145, 172, 145, 172, 152, 172, 152, 172, 159, 172, 159, 172, 162, 172, 172, 173, 172, 173, 173, 172, 181, 184, 188, 196, 197, 184, 196, 188, 196, 196, 197, 196, 204, 207, 211, 211, 214, 218, 218, 221, 224, 228, 228, 231, 234, 236, 239, 242, 246, 246, 249, 253, 253, 211, 253, 211, 253, 218, 253, 218, 253, 228, 253, 224, 253, 228, 253, 239, 253, 234, 253, 246, 253, 249, 253, 242, 253, 246, 253, 253, 253, 274, 275, 275, 274, 118];
|
|
expr_arg3 = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 14, 0, 0, 0, 0, 0, 0, 0, 8, 0, 0, 0, 0, 0, 9, 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 29, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 25, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 30, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 0, 0, 0, 31, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 2, 0, 0, 0, 2, 0, 0, 0, 2, 0, 0, 0, 2, 0, 0, 0, 2, 0, 0, 0, 2, 0, 0, 0, 2, 0, 0, 0, 2, 0, 0, 0, 2, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0, 0, 0, 3, 0, 0, 0, 2, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0, 0, 0, 3, 0, 0, 0, 2, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 3, 0, 0, 0, 2, 0, 0, 0, 0, 0, 1, 0, 0, 0, 2, 0, 0, 0, 0, 0, 3, 0, 0, 0, 2, 0, 0, 0, 0, 0, 1, 0, 0, 0, 2, 0, 0, 0, 0, 0, 3, 0, 0, 0, 2, 0, 0, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 2, 0, 0, 0, 2, 0, 0, 0, 2, 0, 0, 0, 2, 0, 0, 0, 2, 0, 0, 0, 2, 0, 0, 0, 2, 0, 0, 0, 2, 0, 0, 0, 2, 0, 0, 0, 2, 0, 0, 0, 2, 0, 0, 0, 2, 0, 0, 0, 2, 0, 0, 0, 2, 0, 0, 0, 2, 0, 0, 0, 2, 0, 0, 0, 2, 0, 0, 0, 2, 0, 0, 0, 2, 0, 0, 0, 2, 0, 0, 0, 2, 0, 0, 0, 2, 0, 0, 0, 2, 0, 0, 0, 2, 0, 0, 0, 2, 0, 0, 0, 2, 0, 0, 0, 2, 0, 0, 0, 2, 0, 0, 0, 2, 0, 0, 0, 2, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 2, 0, 1, 0, 0, 0, 2, 0, 1, 0, 0, 0, 2, 0, 1, 0, 0, 0, 2, 0, 1, 0, 0, 0, 2, 0, 1, 0, 0, 0, 2, 0, 1, 0, 0, 0, 2, 0, 1, 0, 0, 0, 2, 0, 1, 0, 0, 0, 2, 0, 1, 0, 0, 0, 2, 0, 1, 0, 0, 0, 2, 0, 1, 0, 0, 0, 2, 0, 1, 0, 0, 0, 2, 0, 1, 0, 0, 0, 2, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 10, 0, 0, 11, 0, 0, 9, 0, 0, 8, 0, 0, 9, 0, 0, 8, 0, 0, 9, 0, 0, 13, 0, 0, 16, 0, 0, 27, 0, 32, 0, 1, 1, 1, 1, 1, 2, 2, 2, 4, 0, 1, 1, 1, -1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1, -1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 17, 1, 1, 3, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, -1, 1, 1, 0, 1, 1, 1, 3, 1, 1, 5, 1, 1, 9, 1, 1, 1, 1, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 1, 0, 1, 1, -1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 1, 1, -1, 1, 1, 1, 3, 1, 1, 5, 1, 1, 1, 12, 1, 1, 1, 1, 1, 1, 23, 1, 1, 28, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 3, 1, 1, 1, 3, 1, 3, 1, 1, 1, 3, 1, 1, 3, 1, 1, 1, 1, -1, -2];
|
|
expr_children = [{}, {}, {}, {}, {}, 2..5, {}, {}, {}, 3..3 union 7..9, {}, {}, {}, 3..3 union 11..13, {}, {}, {}, 3..3 union 15..17, {}, {}, {}, 3..3 union 19..21, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, 40..43, {}, {}, {}, {}, 45..48, {}, {}, {}, {}, 50..53, {}, {}, {}, 42..42 union 55..57, {}, 4..5 union 52..52 union 59..59, {}, 8..9 union 52..52 union 61..61, {}, {}, {}, 42..42 union 63..65, {}, 12..13 union 52..52 union 67..67, {}, 16..17 union 52..52 union 69..69, {}, {}, {}, 42..42 union 71..73, {}, 20..21 union 52..52 union 75..75, {}, 42..42 union 77..77, {}, {}, 79..80, {}, 47..47 union 82..82, {}, 52..52 union 84..84, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, 55..57, 63..65, 71..73, 41..41 union 43..43, 77..77 union 104..107, 46..46 union 48..48, 82..82 union 109..109, 4..5 union 59..59, 8..9 union 61..61, 12..13 union 67..67, 16..17 union 69..69, 20..21 union 75..75, 51..51 union 53..53, 84..84 union 111..116, {}, 42..42 union 56..57 union 118..118, {}, 42..42 union 64..65 union 120..120, {}, 42..42 union 72..73 union 122..122, 41..42, 119..119 union 121..121 union 123..124, {}, {}, {}, 47..47 union 126..128, 46..47, 129..130, 2..2 union 4..5 union 52..52, 7..9 union 52..52, 11..13 union 52..52, 15..17 union 52..52, 19..21 union 52..52, 51..52, 132..137, 42..42 union 55..56, 4..4 union 52..52 union 59..59, 2..4, 140..141, 8..8 union 52..52 union 61..61, 3..3 union 7..8, 143..144, 42..42 union 63..64, 12..12 union 52..52 union 67..67, 3..3 union 11..12, 147..148, 16..16 union 52..52 union 69..69, 3..3 union 15..16, 150..151, 42..42 union 71..72, 3..3 union 19..20, 20..20 union 52..52 union 75..75, 154..155, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, 159..159 union 161..161 union 163..163 union 165..165 union 167..167 union 169..169 union 171..171 union 173..173 union 175..175 union 177..177 union 179..179 union 181..181 union 183..183 union 185..185 union 187..187 union 189..189 union 191..191 union 193..193 union 195..195 union 197..197 union 199..199 union 201..201 union 203..203 union 205..205, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, 209..209 union 211..211 union 213..213 union 215..215 union 217..217, {}, {}, {}, {}, {}, 221..221 union 223..223, {}, {}, {}, {}, {}, 227..227 union 229..229, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, 233..233 union 235..235 union 237..237 union 239..239 union 241..241 union 243..243 union 245..245, {}, {}, {}, {}, {}, 249..249 union 251..251, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, 255..255 union 257..257 union 259..259 union 261..261 union 263..263 union 265..265 union 267..267, {}, {}, {}, {}, {}, 271..271 union 273..273, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, 277..277 union 279..279 union 281..281 union 283..283 union 285..285, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, 289..289 union 291..291 union 293..293 union 295..295 union 297..297 union 299..299, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, 302..307 union 309..309 union 311..311 union 313..313 union 315..315, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, 318..327 union 329..329 union 331..331 union 333..333 union 335..335, {}, {}, {}, {}, {}, 339..339 union 341..341, {}, {}, {}, {}, {}, {}, {}, 344..345 union 347..347 union 349..349, {}, {}, {}, {}, {}, {}, {}, {}, {}, 352..355 union 357..357 union 359..359, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, 363..363 union 365..365 union 367..367 union 369..369 union 371..371 union 373..373, {}, {}, {}, {}, {}, {}, {}, 377..377 union 379..379 union 381..381, {}, {}, {}, {}, {}, 385..385 union 387..387, {}, {}, {}, {}, {}, 391..391 union 393..393, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, 397..397 union 399..399 union 401..401 union 403..403 union 405..405 union 407..407, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, 410..415 union 417..417 union 419..419 union 421..421 union 423..423, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, 426..435 union 437..437 union 439..439 union 441..441 union 443..443 union 445..445, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, 448..462 union 464..464 union 466..466 union 468..468 union 470..470 union 472..472 union 474..474, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, 477..497 union 499..499 union 501..501 union 503..503 union 505..505 union 507..507, {}, {}, {}, {}, {}, 511..511 union 513..513, {}, {}, {}, {}, {}, {}, {}, 516..517 union 519..519 union 521..521, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, 524..527 union 529..529 union 531..531 union 533..533, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, 536..542 union 544..544 union 546..546 union 548..548, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, 551..560 union 562..562, {}, {}, {}, {}, {}, 566..566 union 568..568, {}, {}, {}, 571..572, {}, {}, {}, {}, {}, 576..576 union 578..578, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, 582..582 union 584..584 union 586..586 union 588..588 union 590..590 union 592..592 union 594..594 union 596..596 union 598..598 union 600..600 union 602..602 union 604..604 union 606..606 union 608..608, {}, {}, {}, {}, {}, 610..610 union 612..612 union 614..614, {}, {}, {}, 612..612 union 616..616 union 618..618, {}, {}, {}, 612..612 union 620..620 union 622..622, {}, {}, {}, 612..612 union 624..624 union 626..626, {}, {}, {}, 612..612 union 628..628 union 630..630, {}, {}, {}, 612..612 union 632..632 union 634..634, {}, {}, {}, 612..612 union 636..636 union 638..638, {}, {}, {}, 612..612 union 640..640 union 642..642, {}, {}, {}, 612..612 union 644..644 union 646..646, {}, {}, {}, 612..612 union 648..648 union 650..650, {}, {}, {}, 612..612 union 652..652 union 654..654, {}, {}, {}, 612..612 union 656..656 union 658..658, {}, {}, {}, 612..612 union 660..660 union 662..662, {}, {}, {}, 612..612 union 664..664 union 666..666, {}, {}, {}, 612..612 union 668..668 union 670..670, {}, {}, {}, 612..612 union 672..672 union 674..674, {}, {}, {}, 612..612 union 676..676 union 678..678, {}, {}, {}, 612..612 union 680..680 union 682..682, {}, {}, {}, 612..612 union 684..684 union 686..686, {}, {}, {}, 612..612 union 688..688 union 690..690, {}, {}, {}, 612..612 union 692..692 union 694..694, {}, {}, {}, 612..612 union 696..696 union 698..698, {}, {}, {}, 612..612 union 700..700 union 702..702, {}, {}, {}, 612..612 union 704..704 union 706..706, {}, {}, {}, 612..612 union 708..708 union 710..710, {}, {}, {}, 612..612 union 712..712 union 714..714, {}, {}, {}, 612..612 union 716..716 union 718..718, {}, {}, {}, 612..612 union 720..720 union 722..722, {}, {}, {}, 612..612 union 724..724 union 726..726, {}, {}, {}, 690..690 union 728..728 union 730..730, {}, {}, {}, 694..694 union 732..732 union 734..734, {}, {}, {}, 702..702 union 736..736 union 738..738, {}, {}, {}, 710..710 union 740..740 union 742..742, {}, {}, {}, 714..714 union 744..744 union 746..746, {}, {}, {}, 718..718 union 748..748 union 750..750, {}, {}, {}, 722..722 union 752..752 union 754..754, {}, {}, {}, 726..726 union 756..756 union 758..758, {}, {}, {}, {}, {}, 760..760 union 762..762 union 764..764, {}, {}, {}, {}, {}, 766..766 union 768..768 union 770..770, {}, {}, {}, {}, {}, 772..772 union 774..774 union 776..776, {}, {}, {}, {}, {}, 778..778 union 780..780 union 782..782, {}, {}, {}, {}, {}, 784..784 union 786..786 union 788..788, {}, {}, {}, {}, {}, 790..790 union 792..792 union 794..794, {}, {}, {}, {}, {}, 796..796 union 798..798 union 800..800, {}, {}, {}, {}, {}, 802..802 union 804..804 union 806..806, {}, {}, {}, {}, {}, 808..808 union 810..810 union 812..812, {}, {}, {}, {}, {}, 814..814 union 816..816 union 818..818, {}, {}, {}, {}, {}, 820..820 union 822..822 union 824..824, {}, {}, {}, 822..822 union 826..826 union 828..828, {}, {}, {}, {}, {}, 830..830 union 832..832 union 834..834, {}, {}, {}, 832..832 union 836..836 union 838..838, {}, {}, {}, {}, {}, 840..840 union 842..842 union 844..844, {}, {}, {}, 842..842 union 846..846 union 848..848, {}, {}, {}, {}, {}, 850..850 union 852..852 union 854..854, {}, {}, {}, 852..852 union 856..856 union 858..858, {}, {}, {}, {}, {}, 860..860 union 862..862 union 864..864, {}, {}, {}, 862..862 union 866..866 union 868..868, {}, {}, {}, {}, {}, 870..870 union 872..872 union 874..874, {}, {}, {}, 872..872 union 876..876 union 878..878, {}, {}, {}, {}, {}, 880..880 union 882..882 union 884..884, {}, {}, {}, 882..882 union 886..886 union 888..888, {}, {}, {}, {}, {}, 890..890 union 892..892 union 894..894, {}, {}, {}, 892..892 union 896..896 union 898..898, {}, {}, {}, {}, {}, 900..900 union 902..902 union 904..904, {}, {}, {}, 902..902 union 906..906 union 908..908, {}, {}, {}, {}, {}, 910..910 union 912..912 union 914..914, {}, {}, {}, 912..912 union 916..916 union 918..918, {}, {}, {}, {}, {}, 920..920 union 922..922 union 924..924, {}, {}, {}, 922..922 union 926..926 union 928..928, {}, {}, {}, {}, {}, 930..930 union 932..932 union 934..934, {}, {}, {}, 932..932 union 936..936 union 938..938, {}, {}, {}, {}, {}, 940..940 union 942..942 union 944..944, {}, {}, {}, 942..942 union 946..946 union 948..948, {}, {}, {}, {}, {}, 950..950 union 952..952 union 954..954, {}, {}, {}, 952..952 union 956..956 union 958..958, {}, {}, {}, {}, {}, 960..960 union 962..962 union 964..964, {}, {}, {}, 962..962 union 966..966 union 968..968, {}, {}, {}, {}, {}, 970..970 union 972..972 union 974..974, {}, {}, {}, 972..972 union 976..976 union 978..978, {}, {}, {}, {}, {}, 980..980 union 982..982 union 984..984, {}, {}, {}, 982..982 union 986..986 union 988..988, {}, {}, {}, {}, {}, 990..990 union 992..992 union 994..994, {}, {}, {}, 992..992 union 996..996 union 998..998, {}, {}, {}, {}, {}, 1000..1000 union 1002..1002 union 1004..1004, {}, {}, {}, 1002..1002 union 1006..1006 union 1008..1008, {}, {}, {}, {}, {}, 1010..1010 union 1012..1012 union 1014..1014, {}, {}, {}, 1012..1012 union 1016..1016 union 1018..1018, {}, {}, {}, {}, {}, 1020..1020 union 1022..1022 union 1024..1024, {}, {}, {}, 1022..1022 union 1026..1026 union 1028..1028, {}, {}, {}, {}, {}, 1030..1030 union 1032..1032 union 1034..1034, {}, {}, {}, 1032..1032 union 1036..1036 union 1038..1038, {}, {}, {}, {}, {}, 1040..1040 union 1042..1042 union 1044..1044, {}, {}, {}, 1042..1042 union 1046..1046 union 1048..1048, {}, {}, {}, {}, {}, 1050..1050 union 1052..1052 union 1054..1054, {}, {}, {}, 1052..1052 union 1056..1056 union 1058..1058, {}, {}, {}, {}, {}, 1060..1060 union 1062..1062 union 1064..1064, {}, {}, {}, 1062..1062 union 1066..1066 union 1068..1068, {}, {}, {}, {}, {}, 1070..1070 union 1072..1072 union 1074..1074, {}, {}, {}, 1072..1072 union 1076..1076 union 1078..1078, {}, {}, {}, {}, {}, 1080..1080 union 1082..1082 union 1084..1084, {}, {}, {}, 1082..1082 union 1086..1086 union 1088..1088, {}, {}, {}, {}, {}, 1090..1090 union 1092..1092 union 1094..1094, {}, {}, {}, 1092..1092 union 1096..1096 union 1098..1098, {}, {}, {}, {}, {}, 1100..1100 union 1102..1102 union 1104..1104, {}, {}, {}, {}, {}, 1106..1106 union 1108..1108 union 1110..1110, {}, {}, {}, {}, {}, 1112..1112 union 1114..1114 union 1116..1116, {}, {}, {}, {}, {}, 1118..1118 union 1120..1120 union 1122..1122, {}, {}, {}, {}, {}, 1124..1124 union 1126..1126 union 1128..1128, {}, {}, {}, {}, {}, 1130..1130 union 1132..1132 union 1134..1134, {}, {}, {}, {}, {}, 1136..1136 union 1138..1138 union 1140..1140, {}, {}, {}, {}, {}, 1142..1142 union 1144..1144 union 1146..1146, {}, {}, {}, {}, {}, 1148..1148 union 1150..1150 union 1152..1152, {}, {}, {}, {}, {}, 1154..1154 union 1156..1156 union 1158..1158, {}, {}, {}, {}, {}, 1160..1160 union 1162..1162 union 1164..1164, {}, {}, {}, {}, {}, 1166..1166 union 1168..1168 union 1170..1170, {}, {}, {}, {}, {}, 1172..1172 union 1174..1174 union 1176..1176, {}, {}, {}, {}, {}, 1178..1178 union 1180..1180 union 1182..1182, {}, {}, {}, {}, {}, 1184..1184 union 1186..1186 union 1188..1188, {}, {}, {}, {}, {}, 1190..1190 union 1192..1192 union 1194..1194, {}, {}, {}, {}, {}, 1196..1196 union 1198..1198 union 1200..1200, {}, {}, {}, {}, {}, 1202..1202 union 1204..1204 union 1206..1206, {}, {}, {}, {}, {}, 1208..1208 union 1210..1210 union 1212..1212, {}, {}, {}, {}, {}, 1214..1214 union 1216..1216 union 1218..1218, {}, {}, {}, {}, {}, 1220..1220 union 1222..1222 union 1224..1224, {}, {}, {}, {}, {}, 1226..1226 union 1228..1228 union 1230..1230, {}, {}, {}, {}, {}, 1232..1232 union 1234..1234 union 1236..1236, {}, {}, {}, {}, {}, 1238..1238 union 1240..1240 union 1242..1242, {}, {}, {}, {}, {}, 1244..1244 union 1246..1246 union 1248..1248, {}, {}, {}, {}, {}, 1250..1250 union 1252..1252 union 1254..1254, {}, {}, {}, 1252..1252 union 1256..1256 union 1258..1258, {}, {}, {}, {}, {}, 1260..1260 union 1262..1262 union 1264..1264, {}, {}, {}, 1262..1262 union 1266..1266 union 1268..1268, {}, {}, {}, {}, {}, 1270..1270 union 1272..1272 union 1274..1274, {}, {}, {}, 1272..1272 union 1276..1276 union 1278..1278, {}, {}, {}, {}, {}, 1280..1280 union 1282..1282 union 1284..1284, {}, {}, {}, 1282..1282 union 1286..1286 union 1288..1288, {}, {}, {}, {}, {}, 1290..1290 union 1292..1292 union 1294..1294, {}, {}, {}, 1292..1292 union 1296..1296 union 1298..1298, {}, {}, {}, {}, {}, 1300..1300 union 1302..1302 union 1304..1304, {}, {}, {}, 1302..1302 union 1306..1306 union 1308..1308, {}, {}, {}, {}, {}, 1310..1310 union 1312..1312 union 1314..1314, {}, {}, {}, 1312..1312 union 1316..1316 union 1318..1318, {}, {}, {}, {}, {}, 1320..1320 union 1322..1322 union 1324..1324, {}, {}, {}, 1322..1322 union 1326..1326 union 1328..1328, {}, {}, {}, {}, {}, 1330..1330 union 1332..1332 union 1334..1334, {}, {}, {}, 1332..1332 union 1336..1336 union 1338..1338, {}, {}, {}, {}, {}, 1340..1340 union 1342..1342 union 1344..1344, {}, {}, {}, 1342..1342 union 1346..1346 union 1348..1348, {}, {}, {}, {}, {}, 1350..1350 union 1352..1352 union 1354..1354, {}, {}, {}, 1352..1352 union 1356..1356 union 1358..1358, {}, {}, {}, {}, {}, 1360..1360 union 1362..1362 union 1364..1364, {}, {}, {}, 1362..1362 union 1366..1366 union 1368..1368, {}, {}, {}, {}, {}, 1370..1370 union 1372..1372 union 1374..1374, {}, {}, {}, 1372..1372 union 1376..1376 union 1378..1378, {}, {}, {}, {}, {}, 1380..1380 union 1382..1382 union 1384..1384, {}, {}, {}, 1382..1382 union 1386..1386 union 1388..1388, {}, {}, {}, {}, {}, 1390..1390 union 1392..1392 union 1394..1394, {}, {}, {}, 1392..1392 union 1396..1396 union 1398..1398, {}, {}, {}, {}, {}, 1400..1400 union 1402..1402 union 1404..1404, {}, {}, {}, 1402..1402 union 1406..1406 union 1408..1408, {}, {}, {}, {}, {}, 1410..1410 union 1412..1412 union 1414..1414, {}, {}, {}, 1412..1412 union 1416..1416 union 1418..1418, {}, {}, {}, {}, {}, 1420..1420 union 1422..1422 union 1424..1424, {}, {}, {}, 1422..1422 union 1426..1426 union 1428..1428, {}, {}, {}, {}, {}, 1430..1430 union 1432..1432 union 1434..1434, {}, {}, {}, 1432..1432 union 1436..1436 union 1438..1438, {}, {}, {}, {}, {}, 1440..1440 union 1442..1442 union 1444..1444, {}, {}, {}, 1442..1442 union 1446..1446 union 1448..1448, {}, {}, {}, {}, {}, 1450..1450 union 1452..1452 union 1454..1454, {}, {}, {}, 1452..1452 union 1456..1456 union 1458..1458, {}, {}, {}, {}, {}, 1460..1460 union 1462..1462 union 1464..1464, {}, {}, {}, 1464..1464 union 1466..1466 union 1468..1468, {}, {}, {}, 1464..1464 union 1470..1470 union 1472..1472, {}, {}, {}, 1472..1472 union 1474..1474 union 1476..1476, {}, {}, {}, 1464..1464 union 1478..1478 union 1480..1480, {}, {}, {}, 1464..1464 union 1482..1482 union 1484..1484, {}, {}, {}, 1464..1464 union 1486..1486 union 1488..1488, {}, {}, {}, 1464..1464 union 1490..1490 union 1492..1492, {}, {}, {}, 1464..1464 union 1494..1494 union 1496..1496, {}, {}, {}, 1464..1464 union 1498..1498 union 1500..1500, {}, {}, {}, 1464..1464 union 1502..1502 union 1504..1504, {}, {}, {}, 1464..1464 union 1506..1506 union 1508..1508, {}, {}, {}, 1464..1464 union 1510..1510 union 1512..1512, {}, {}, {}, 1464..1464 union 1514..1514 union 1516..1516, {}, {}, {}, 1464..1464 union 1518..1518 union 1520..1520, {}, {}, {}, 1464..1464 union 1522..1522 union 1524..1524, {}, {}, {}, 1464..1464 union 1526..1526 union 1528..1528, {}, {}, {}, 1464..1464 union 1530..1530 union 1532..1532, {}, {}, {}, 1464..1464 union 1534..1534 union 1536..1536, {}, {}, {}, 1536..1536 union 1538..1538 union 1540..1540, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}];
|
|
sets = [98..98 union 120..120 union 127..127 union 162..162 union 187..187, 99..99, 100..100, 101..101, 102..102, 103..103, 104..104, 105..105, 106..106, 107..107, 108..108, 109..109, 110..110, 111..111, 112..112, 113..113, 114..114, 115..115, 116..116, 117..117 union 121..121 union 188..188, 118..118 union 122..122 union 189..189, 119..119 union 123..123 union 134..134 union 137..137 union 173..173 union 176..176 union 190..190];
|