[project @ 1999-01-24 14:18:55 by sof]
[ghc-hetmet.git] / ghc / tests / numeric / should_run / arith011.stdout
1 --------------------------------
2 --Testing Int8
3 --------------------------------
4 testBounded
5 (127,-128,-127)
6 (126,127,-128)
7 testEnum
8 [0,1,2,3,4,5,6,7,8,9]
9 [0,2,4,6,8,10,12,14,16,18]
10 [0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
11 [0,2,4,6,8,10,12,14,16,18,20]
12 testReadShow
13 [-3,-2,-1,0,1,2,3]
14 [-3,-2,-1,0,1,2,3]
15 testEq
16 -3 == -3 = True
17 -3 == -2 = False
18 -3 == -1 = False
19 -3 == 0 = False
20 -3 == 1 = False
21 -3 == 2 = False
22 -3 == 3 = False
23  
24 -2 == -3 = False
25 -2 == -2 = True
26 -2 == -1 = False
27 -2 == 0 = False
28 -2 == 1 = False
29 -2 == 2 = False
30 -2 == 3 = False
31  
32 -1 == -3 = False
33 -1 == -2 = False
34 -1 == -1 = True
35 -1 == 0 = False
36 -1 == 1 = False
37 -1 == 2 = False
38 -1 == 3 = False
39  
40 0 == -3 = False
41 0 == -2 = False
42 0 == -1 = False
43 0 == 0 = True
44 0 == 1 = False
45 0 == 2 = False
46 0 == 3 = False
47  
48 1 == -3 = False
49 1 == -2 = False
50 1 == -1 = False
51 1 == 0 = False
52 1 == 1 = True
53 1 == 2 = False
54 1 == 3 = False
55  
56 2 == -3 = False
57 2 == -2 = False
58 2 == -1 = False
59 2 == 0 = False
60 2 == 1 = False
61 2 == 2 = True
62 2 == 3 = False
63  
64 3 == -3 = False
65 3 == -2 = False
66 3 == -1 = False
67 3 == 0 = False
68 3 == 1 = False
69 3 == 2 = False
70 3 == 3 = True
71  
72 #
73 -3 /= -3 = False
74 -3 /= -2 = True
75 -3 /= -1 = True
76 -3 /= 0 = True
77 -3 /= 1 = True
78 -3 /= 2 = True
79 -3 /= 3 = True
80  
81 -2 /= -3 = True
82 -2 /= -2 = False
83 -2 /= -1 = True
84 -2 /= 0 = True
85 -2 /= 1 = True
86 -2 /= 2 = True
87 -2 /= 3 = True
88  
89 -1 /= -3 = True
90 -1 /= -2 = True
91 -1 /= -1 = False
92 -1 /= 0 = True
93 -1 /= 1 = True
94 -1 /= 2 = True
95 -1 /= 3 = True
96  
97 0 /= -3 = True
98 0 /= -2 = True
99 0 /= -1 = True
100 0 /= 0 = False
101 0 /= 1 = True
102 0 /= 2 = True
103 0 /= 3 = True
104  
105 1 /= -3 = True
106 1 /= -2 = True
107 1 /= -1 = True
108 1 /= 0 = True
109 1 /= 1 = False
110 1 /= 2 = True
111 1 /= 3 = True
112  
113 2 /= -3 = True
114 2 /= -2 = True
115 2 /= -1 = True
116 2 /= 0 = True
117 2 /= 1 = True
118 2 /= 2 = False
119 2 /= 3 = True
120  
121 3 /= -3 = True
122 3 /= -2 = True
123 3 /= -1 = True
124 3 /= 0 = True
125 3 /= 1 = True
126 3 /= 2 = True
127 3 /= 3 = False
128  
129 #
130 testOrd
131 -3 <= -3 = True
132 -3 <= -2 = True
133 -3 <= -1 = True
134 -3 <= 0 = True
135 -3 <= 1 = True
136 -3 <= 2 = True
137 -3 <= 3 = True
138  
139 -2 <= -3 = False
140 -2 <= -2 = True
141 -2 <= -1 = True
142 -2 <= 0 = True
143 -2 <= 1 = True
144 -2 <= 2 = True
145 -2 <= 3 = True
146  
147 -1 <= -3 = False
148 -1 <= -2 = False
149 -1 <= -1 = True
150 -1 <= 0 = True
151 -1 <= 1 = True
152 -1 <= 2 = True
153 -1 <= 3 = True
154  
155 0 <= -3 = False
156 0 <= -2 = False
157 0 <= -1 = False
158 0 <= 0 = True
159 0 <= 1 = True
160 0 <= 2 = True
161 0 <= 3 = True
162  
163 1 <= -3 = False
164 1 <= -2 = False
165 1 <= -1 = False
166 1 <= 0 = False
167 1 <= 1 = True
168 1 <= 2 = True
169 1 <= 3 = True
170  
171 2 <= -3 = False
172 2 <= -2 = False
173 2 <= -1 = False
174 2 <= 0 = False
175 2 <= 1 = False
176 2 <= 2 = True
177 2 <= 3 = True
178  
179 3 <= -3 = False
180 3 <= -2 = False
181 3 <= -1 = False
182 3 <= 0 = False
183 3 <= 1 = False
184 3 <= 2 = False
185 3 <= 3 = True
186  
187 #
188 -3 <  -3 = False
189 -3 <  -2 = True
190 -3 <  -1 = True
191 -3 <  0 = True
192 -3 <  1 = True
193 -3 <  2 = True
194 -3 <  3 = True
195  
196 -2 <  -3 = False
197 -2 <  -2 = False
198 -2 <  -1 = True
199 -2 <  0 = True
200 -2 <  1 = True
201 -2 <  2 = True
202 -2 <  3 = True
203  
204 -1 <  -3 = False
205 -1 <  -2 = False
206 -1 <  -1 = False
207 -1 <  0 = True
208 -1 <  1 = True
209 -1 <  2 = True
210 -1 <  3 = True
211  
212 0 <  -3 = False
213 0 <  -2 = False
214 0 <  -1 = False
215 0 <  0 = False
216 0 <  1 = True
217 0 <  2 = True
218 0 <  3 = True
219  
220 1 <  -3 = False
221 1 <  -2 = False
222 1 <  -1 = False
223 1 <  0 = False
224 1 <  1 = False
225 1 <  2 = True
226 1 <  3 = True
227  
228 2 <  -3 = False
229 2 <  -2 = False
230 2 <  -1 = False
231 2 <  0 = False
232 2 <  1 = False
233 2 <  2 = False
234 2 <  3 = True
235  
236 3 <  -3 = False
237 3 <  -2 = False
238 3 <  -1 = False
239 3 <  0 = False
240 3 <  1 = False
241 3 <  2 = False
242 3 <  3 = False
243  
244 #
245 -3 >  -3 = False
246 -3 >  -2 = False
247 -3 >  -1 = False
248 -3 >  0 = False
249 -3 >  1 = False
250 -3 >  2 = False
251 -3 >  3 = False
252  
253 -2 >  -3 = True
254 -2 >  -2 = False
255 -2 >  -1 = False
256 -2 >  0 = False
257 -2 >  1 = False
258 -2 >  2 = False
259 -2 >  3 = False
260  
261 -1 >  -3 = True
262 -1 >  -2 = True
263 -1 >  -1 = False
264 -1 >  0 = False
265 -1 >  1 = False
266 -1 >  2 = False
267 -1 >  3 = False
268  
269 0 >  -3 = True
270 0 >  -2 = True
271 0 >  -1 = True
272 0 >  0 = False
273 0 >  1 = False
274 0 >  2 = False
275 0 >  3 = False
276  
277 1 >  -3 = True
278 1 >  -2 = True
279 1 >  -1 = True
280 1 >  0 = True
281 1 >  1 = False
282 1 >  2 = False
283 1 >  3 = False
284  
285 2 >  -3 = True
286 2 >  -2 = True
287 2 >  -1 = True
288 2 >  0 = True
289 2 >  1 = True
290 2 >  2 = False
291 2 >  3 = False
292  
293 3 >  -3 = True
294 3 >  -2 = True
295 3 >  -1 = True
296 3 >  0 = True
297 3 >  1 = True
298 3 >  2 = True
299 3 >  3 = False
300  
301 #
302 -3 >= -3 = True
303 -3 >= -2 = False
304 -3 >= -1 = False
305 -3 >= 0 = False
306 -3 >= 1 = False
307 -3 >= 2 = False
308 -3 >= 3 = False
309  
310 -2 >= -3 = True
311 -2 >= -2 = True
312 -2 >= -1 = False
313 -2 >= 0 = False
314 -2 >= 1 = False
315 -2 >= 2 = False
316 -2 >= 3 = False
317  
318 -1 >= -3 = True
319 -1 >= -2 = True
320 -1 >= -1 = True
321 -1 >= 0 = False
322 -1 >= 1 = False
323 -1 >= 2 = False
324 -1 >= 3 = False
325  
326 0 >= -3 = True
327 0 >= -2 = True
328 0 >= -1 = True
329 0 >= 0 = True
330 0 >= 1 = False
331 0 >= 2 = False
332 0 >= 3 = False
333  
334 1 >= -3 = True
335 1 >= -2 = True
336 1 >= -1 = True
337 1 >= 0 = True
338 1 >= 1 = True
339 1 >= 2 = False
340 1 >= 3 = False
341  
342 2 >= -3 = True
343 2 >= -2 = True
344 2 >= -1 = True
345 2 >= 0 = True
346 2 >= 1 = True
347 2 >= 2 = True
348 2 >= 3 = False
349  
350 3 >= -3 = True
351 3 >= -2 = True
352 3 >= -1 = True
353 3 >= 0 = True
354 3 >= 1 = True
355 3 >= 2 = True
356 3 >= 3 = True
357  
358 #
359 -3 `compare` -3 = EQ
360 -3 `compare` -2 = LT
361 -3 `compare` -1 = LT
362 -3 `compare` 0 = LT
363 -3 `compare` 1 = LT
364 -3 `compare` 2 = LT
365 -3 `compare` 3 = LT
366  
367 -2 `compare` -3 = GT
368 -2 `compare` -2 = EQ
369 -2 `compare` -1 = LT
370 -2 `compare` 0 = LT
371 -2 `compare` 1 = LT
372 -2 `compare` 2 = LT
373 -2 `compare` 3 = LT
374  
375 -1 `compare` -3 = GT
376 -1 `compare` -2 = GT
377 -1 `compare` -1 = EQ
378 -1 `compare` 0 = LT
379 -1 `compare` 1 = LT
380 -1 `compare` 2 = LT
381 -1 `compare` 3 = LT
382  
383 0 `compare` -3 = GT
384 0 `compare` -2 = GT
385 0 `compare` -1 = GT
386 0 `compare` 0 = EQ
387 0 `compare` 1 = LT
388 0 `compare` 2 = LT
389 0 `compare` 3 = LT
390  
391 1 `compare` -3 = GT
392 1 `compare` -2 = GT
393 1 `compare` -1 = GT
394 1 `compare` 0 = GT
395 1 `compare` 1 = EQ
396 1 `compare` 2 = LT
397 1 `compare` 3 = LT
398  
399 2 `compare` -3 = GT
400 2 `compare` -2 = GT
401 2 `compare` -1 = GT
402 2 `compare` 0 = GT
403 2 `compare` 1 = GT
404 2 `compare` 2 = EQ
405 2 `compare` 3 = LT
406  
407 3 `compare` -3 = GT
408 3 `compare` -2 = GT
409 3 `compare` -1 = GT
410 3 `compare` 0 = GT
411 3 `compare` 1 = GT
412 3 `compare` 2 = GT
413 3 `compare` 3 = EQ
414  
415 #
416 testNum
417 -3 + -3 = -6
418 -3 + -2 = -5
419 -3 + -1 = -4
420 -3 + 0 = -3
421 -3 + 1 = -2
422 -3 + 2 = -1
423 -3 + 3 = 0
424  
425 -2 + -3 = -5
426 -2 + -2 = -4
427 -2 + -1 = -3
428 -2 + 0 = -2
429 -2 + 1 = -1
430 -2 + 2 = 0
431 -2 + 3 = 1
432  
433 -1 + -3 = -4
434 -1 + -2 = -3
435 -1 + -1 = -2
436 -1 + 0 = -1
437 -1 + 1 = 0
438 -1 + 2 = 1
439 -1 + 3 = 2
440  
441 0 + -3 = -3
442 0 + -2 = -2
443 0 + -1 = -1
444 0 + 0 = 0
445 0 + 1 = 1
446 0 + 2 = 2
447 0 + 3 = 3
448  
449 1 + -3 = -2
450 1 + -2 = -1
451 1 + -1 = 0
452 1 + 0 = 1
453 1 + 1 = 2
454 1 + 2 = 3
455 1 + 3 = 4
456  
457 2 + -3 = -1
458 2 + -2 = 0
459 2 + -1 = 1
460 2 + 0 = 2
461 2 + 1 = 3
462 2 + 2 = 4
463 2 + 3 = 5
464  
465 3 + -3 = 0
466 3 + -2 = 1
467 3 + -1 = 2
468 3 + 0 = 3
469 3 + 1 = 4
470 3 + 2 = 5
471 3 + 3 = 6
472  
473 #
474 -3 - -3 = 0
475 -3 - -2 = -1
476 -3 - -1 = -2
477 -3 - 0 = -3
478 -3 - 1 = -4
479 -3 - 2 = -5
480 -3 - 3 = -6
481  
482 -2 - -3 = 1
483 -2 - -2 = 0
484 -2 - -1 = -1
485 -2 - 0 = -2
486 -2 - 1 = -3
487 -2 - 2 = -4
488 -2 - 3 = -5
489  
490 -1 - -3 = 2
491 -1 - -2 = 1
492 -1 - -1 = 0
493 -1 - 0 = -1
494 -1 - 1 = -2
495 -1 - 2 = -3
496 -1 - 3 = -4
497  
498 0 - -3 = 3
499 0 - -2 = 2
500 0 - -1 = 1
501 0 - 0 = 0
502 0 - 1 = -1
503 0 - 2 = -2
504 0 - 3 = -3
505  
506 1 - -3 = 4
507 1 - -2 = 3
508 1 - -1 = 2
509 1 - 0 = 1
510 1 - 1 = 0
511 1 - 2 = -1
512 1 - 3 = -2
513  
514 2 - -3 = 5
515 2 - -2 = 4
516 2 - -1 = 3
517 2 - 0 = 2
518 2 - 1 = 1
519 2 - 2 = 0
520 2 - 3 = -1
521  
522 3 - -3 = 6
523 3 - -2 = 5
524 3 - -1 = 4
525 3 - 0 = 3
526 3 - 1 = 2
527 3 - 2 = 1
528 3 - 3 = 0
529  
530 #
531 -3 * -3 = 9
532 -3 * -2 = 6
533 -3 * -1 = 3
534 -3 * 0 = 0
535 -3 * 1 = -3
536 -3 * 2 = -6
537 -3 * 3 = -9
538  
539 -2 * -3 = 6
540 -2 * -2 = 4
541 -2 * -1 = 2
542 -2 * 0 = 0
543 -2 * 1 = -2
544 -2 * 2 = -4
545 -2 * 3 = -6
546  
547 -1 * -3 = 3
548 -1 * -2 = 2
549 -1 * -1 = 1
550 -1 * 0 = 0
551 -1 * 1 = -1
552 -1 * 2 = -2
553 -1 * 3 = -3
554  
555 0 * -3 = 0
556 0 * -2 = 0
557 0 * -1 = 0
558 0 * 0 = 0
559 0 * 1 = 0
560 0 * 2 = 0
561 0 * 3 = 0
562  
563 1 * -3 = -3
564 1 * -2 = -2
565 1 * -1 = -1
566 1 * 0 = 0
567 1 * 1 = 1
568 1 * 2 = 2
569 1 * 3 = 3
570  
571 2 * -3 = -6
572 2 * -2 = -4
573 2 * -1 = -2
574 2 * 0 = 0
575 2 * 1 = 2
576 2 * 2 = 4
577 2 * 3 = 6
578  
579 3 * -3 = -9
580 3 * -2 = -6
581 3 * -1 = -3
582 3 * 0 = 0
583 3 * 1 = 3
584 3 * 2 = 6
585 3 * 3 = 9
586  
587 #
588 negate -3 = 3
589 negate -2 = 2
590 negate -1 = 1
591 negate 0 = 0
592 negate 1 = -1
593 negate 2 = -2
594 negate 3 = -3
595 #
596 testReal
597 toRational -3 = -3 % 1
598 toRational -2 = -2 % 1
599 toRational -1 = -1 % 1
600 toRational 0 = 0 % 1
601 toRational 1 = 1 % 1
602 toRational 2 = 2 % 1
603 toRational 3 = 3 % 1
604 #
605 testIntegral
606 -3 `divMod`  -3 = (1,0)
607 -3 `divMod`  -2 = (1,-1)
608 -3 `divMod`  -1 = (3,0)
609 -3 `divMod`  1 = (-3,0)
610 -3 `divMod`  2 = (-2,1)
611 -3 `divMod`  3 = (-1,0)
612  
613 -2 `divMod`  -3 = (0,-2)
614 -2 `divMod`  -2 = (1,0)
615 -2 `divMod`  -1 = (2,0)
616 -2 `divMod`  1 = (-2,0)
617 -2 `divMod`  2 = (-1,0)
618 -2 `divMod`  3 = (-1,1)
619  
620 -1 `divMod`  -3 = (0,-1)
621 -1 `divMod`  -2 = (0,-1)
622 -1 `divMod`  -1 = (1,0)
623 -1 `divMod`  1 = (-1,0)
624 -1 `divMod`  2 = (-1,1)
625 -1 `divMod`  3 = (-1,2)
626  
627 0 `divMod`  -3 = (0,0)
628 0 `divMod`  -2 = (0,0)
629 0 `divMod`  -1 = (0,0)
630 0 `divMod`  1 = (0,0)
631 0 `divMod`  2 = (0,0)
632 0 `divMod`  3 = (0,0)
633  
634 1 `divMod`  -3 = (-1,-2)
635 1 `divMod`  -2 = (-1,-1)
636 1 `divMod`  -1 = (-1,0)
637 1 `divMod`  1 = (1,0)
638 1 `divMod`  2 = (0,1)
639 1 `divMod`  3 = (0,1)
640  
641 2 `divMod`  -3 = (-1,-1)
642 2 `divMod`  -2 = (-1,0)
643 2 `divMod`  -1 = (-2,0)
644 2 `divMod`  1 = (2,0)
645 2 `divMod`  2 = (1,0)
646 2 `divMod`  3 = (0,2)
647  
648 3 `divMod`  -3 = (-1,0)
649 3 `divMod`  -2 = (-2,-1)
650 3 `divMod`  -1 = (-3,0)
651 3 `divMod`  1 = (3,0)
652 3 `divMod`  2 = (1,1)
653 3 `divMod`  3 = (1,0)
654  
655 #
656 -3 `div`     -3 = 1
657 -3 `div`     -2 = 1
658 -3 `div`     -1 = 3
659 -3 `div`     1 = -3
660 -3 `div`     2 = -2
661 -3 `div`     3 = -1
662  
663 -2 `div`     -3 = 0
664 -2 `div`     -2 = 1
665 -2 `div`     -1 = 2
666 -2 `div`     1 = -2
667 -2 `div`     2 = -1
668 -2 `div`     3 = -1
669  
670 -1 `div`     -3 = 0
671 -1 `div`     -2 = 0
672 -1 `div`     -1 = 1
673 -1 `div`     1 = -1
674 -1 `div`     2 = -1
675 -1 `div`     3 = -1
676  
677 0 `div`     -3 = 0
678 0 `div`     -2 = 0
679 0 `div`     -1 = 0
680 0 `div`     1 = 0
681 0 `div`     2 = 0
682 0 `div`     3 = 0
683  
684 1 `div`     -3 = -1
685 1 `div`     -2 = -1
686 1 `div`     -1 = -1
687 1 `div`     1 = 1
688 1 `div`     2 = 0
689 1 `div`     3 = 0
690  
691 2 `div`     -3 = -1
692 2 `div`     -2 = -1
693 2 `div`     -1 = -2
694 2 `div`     1 = 2
695 2 `div`     2 = 1
696 2 `div`     3 = 0
697  
698 3 `div`     -3 = -1
699 3 `div`     -2 = -2
700 3 `div`     -1 = -3
701 3 `div`     1 = 3
702 3 `div`     2 = 1
703 3 `div`     3 = 1
704  
705 #
706 -3 `mod`     -3 = 0
707 -3 `mod`     -2 = -1
708 -3 `mod`     -1 = 0
709 -3 `mod`     1 = 0
710 -3 `mod`     2 = 1
711 -3 `mod`     3 = 0
712  
713 -2 `mod`     -3 = -2
714 -2 `mod`     -2 = 0
715 -2 `mod`     -1 = 0
716 -2 `mod`     1 = 0
717 -2 `mod`     2 = 0
718 -2 `mod`     3 = 1
719  
720 -1 `mod`     -3 = -1
721 -1 `mod`     -2 = -1
722 -1 `mod`     -1 = 0
723 -1 `mod`     1 = 0
724 -1 `mod`     2 = 1
725 -1 `mod`     3 = 2
726  
727 0 `mod`     -3 = 0
728 0 `mod`     -2 = 0
729 0 `mod`     -1 = 0
730 0 `mod`     1 = 0
731 0 `mod`     2 = 0
732 0 `mod`     3 = 0
733  
734 1 `mod`     -3 = -2
735 1 `mod`     -2 = -1
736 1 `mod`     -1 = 0
737 1 `mod`     1 = 0
738 1 `mod`     2 = 1
739 1 `mod`     3 = 1
740  
741 2 `mod`     -3 = -1
742 2 `mod`     -2 = 0
743 2 `mod`     -1 = 0
744 2 `mod`     1 = 0
745 2 `mod`     2 = 0
746 2 `mod`     3 = 2
747  
748 3 `mod`     -3 = 0
749 3 `mod`     -2 = -1
750 3 `mod`     -1 = 0
751 3 `mod`     1 = 0
752 3 `mod`     2 = 1
753 3 `mod`     3 = 0
754  
755 #
756 -3 `quotRem` -3 = (1,0)
757 -3 `quotRem` -2 = (1,-1)
758 -3 `quotRem` -1 = (3,0)
759 -3 `quotRem` 1 = (-3,0)
760 -3 `quotRem` 2 = (-1,-1)
761 -3 `quotRem` 3 = (-1,0)
762  
763 -2 `quotRem` -3 = (0,-2)
764 -2 `quotRem` -2 = (1,0)
765 -2 `quotRem` -1 = (2,0)
766 -2 `quotRem` 1 = (-2,0)
767 -2 `quotRem` 2 = (-1,0)
768 -2 `quotRem` 3 = (0,-2)
769  
770 -1 `quotRem` -3 = (0,-1)
771 -1 `quotRem` -2 = (0,-1)
772 -1 `quotRem` -1 = (1,0)
773 -1 `quotRem` 1 = (-1,0)
774 -1 `quotRem` 2 = (0,-1)
775 -1 `quotRem` 3 = (0,-1)
776  
777 0 `quotRem` -3 = (0,0)
778 0 `quotRem` -2 = (0,0)
779 0 `quotRem` -1 = (0,0)
780 0 `quotRem` 1 = (0,0)
781 0 `quotRem` 2 = (0,0)
782 0 `quotRem` 3 = (0,0)
783  
784 1 `quotRem` -3 = (0,1)
785 1 `quotRem` -2 = (0,1)
786 1 `quotRem` -1 = (-1,0)
787 1 `quotRem` 1 = (1,0)
788 1 `quotRem` 2 = (0,1)
789 1 `quotRem` 3 = (0,1)
790  
791 2 `quotRem` -3 = (0,2)
792 2 `quotRem` -2 = (-1,0)
793 2 `quotRem` -1 = (-2,0)
794 2 `quotRem` 1 = (2,0)
795 2 `quotRem` 2 = (1,0)
796 2 `quotRem` 3 = (0,2)
797  
798 3 `quotRem` -3 = (-1,0)
799 3 `quotRem` -2 = (-1,1)
800 3 `quotRem` -1 = (-3,0)
801 3 `quotRem` 1 = (3,0)
802 3 `quotRem` 2 = (1,1)
803 3 `quotRem` 3 = (1,0)
804  
805 #
806 -3 `quot`    -3 = 1
807 -3 `quot`    -2 = 1
808 -3 `quot`    -1 = 3
809 -3 `quot`    1 = -3
810 -3 `quot`    2 = -1
811 -3 `quot`    3 = -1
812  
813 -2 `quot`    -3 = 0
814 -2 `quot`    -2 = 1
815 -2 `quot`    -1 = 2
816 -2 `quot`    1 = -2
817 -2 `quot`    2 = -1
818 -2 `quot`    3 = 0
819  
820 -1 `quot`    -3 = 0
821 -1 `quot`    -2 = 0
822 -1 `quot`    -1 = 1
823 -1 `quot`    1 = -1
824 -1 `quot`    2 = 0
825 -1 `quot`    3 = 0
826  
827 0 `quot`    -3 = 0
828 0 `quot`    -2 = 0
829 0 `quot`    -1 = 0
830 0 `quot`    1 = 0
831 0 `quot`    2 = 0
832 0 `quot`    3 = 0
833  
834 1 `quot`    -3 = 0
835 1 `quot`    -2 = 0
836 1 `quot`    -1 = -1
837 1 `quot`    1 = 1
838 1 `quot`    2 = 0
839 1 `quot`    3 = 0
840  
841 2 `quot`    -3 = 0
842 2 `quot`    -2 = -1
843 2 `quot`    -1 = -2
844 2 `quot`    1 = 2
845 2 `quot`    2 = 1
846 2 `quot`    3 = 0
847  
848 3 `quot`    -3 = -1
849 3 `quot`    -2 = -1
850 3 `quot`    -1 = -3
851 3 `quot`    1 = 3
852 3 `quot`    2 = 1
853 3 `quot`    3 = 1
854  
855 #
856 -3 `rem`     -3 = 0
857 -3 `rem`     -2 = -1
858 -3 `rem`     -1 = 0
859 -3 `rem`     1 = 0
860 -3 `rem`     2 = -1
861 -3 `rem`     3 = 0
862  
863 -2 `rem`     -3 = -2
864 -2 `rem`     -2 = 0
865 -2 `rem`     -1 = 0
866 -2 `rem`     1 = 0
867 -2 `rem`     2 = 0
868 -2 `rem`     3 = -2
869  
870 -1 `rem`     -3 = -1
871 -1 `rem`     -2 = -1
872 -1 `rem`     -1 = 0
873 -1 `rem`     1 = 0
874 -1 `rem`     2 = -1
875 -1 `rem`     3 = -1
876  
877 0 `rem`     -3 = 0
878 0 `rem`     -2 = 0
879 0 `rem`     -1 = 0
880 0 `rem`     1 = 0
881 0 `rem`     2 = 0
882 0 `rem`     3 = 0
883  
884 1 `rem`     -3 = 1
885 1 `rem`     -2 = 1
886 1 `rem`     -1 = 0
887 1 `rem`     1 = 0
888 1 `rem`     2 = 1
889 1 `rem`     3 = 1
890  
891 2 `rem`     -3 = 2
892 2 `rem`     -2 = 0
893 2 `rem`     -1 = 0
894 2 `rem`     1 = 0
895 2 `rem`     2 = 0
896 2 `rem`     3 = 2
897  
898 3 `rem`     -3 = 0
899 3 `rem`     -2 = 1
900 3 `rem`     -1 = 0
901 3 `rem`     1 = 0
902 3 `rem`     2 = 1
903 3 `rem`     3 = 0
904  
905 #
906 testBits
907 -3 .&.   -3 = -3
908 -3 .&.   -2 = -4
909 -3 .&.   -1 = -3
910 -3 .&.   1 = 1
911 -3 .&.   2 = 0
912 -3 .&.   3 = 1
913  
914 -2 .&.   -3 = -4
915 -2 .&.   -2 = -2
916 -2 .&.   -1 = -2
917 -2 .&.   1 = 0
918 -2 .&.   2 = 2
919 -2 .&.   3 = 2
920  
921 -1 .&.   -3 = -3
922 -1 .&.   -2 = -2
923 -1 .&.   -1 = -1
924 -1 .&.   1 = 1
925 -1 .&.   2 = 2
926 -1 .&.   3 = 3
927  
928 0 .&.   -3 = 0
929 0 .&.   -2 = 0
930 0 .&.   -1 = 0
931 0 .&.   1 = 0
932 0 .&.   2 = 0
933 0 .&.   3 = 0
934  
935 1 .&.   -3 = 1
936 1 .&.   -2 = 0
937 1 .&.   -1 = 1
938 1 .&.   1 = 1
939 1 .&.   2 = 0
940 1 .&.   3 = 1
941  
942 2 .&.   -3 = 0
943 2 .&.   -2 = 2
944 2 .&.   -1 = 2
945 2 .&.   1 = 0
946 2 .&.   2 = 2
947 2 .&.   3 = 2
948  
949 3 .&.   -3 = 1
950 3 .&.   -2 = 2
951 3 .&.   -1 = 3
952 3 .&.   1 = 1
953 3 .&.   2 = 2
954 3 .&.   3 = 3
955  
956 #
957 -3 .|.   -3 = -3
958 -3 .|.   -2 = -1
959 -3 .|.   -1 = -1
960 -3 .|.   1 = -3
961 -3 .|.   2 = -1
962 -3 .|.   3 = -1
963  
964 -2 .|.   -3 = -1
965 -2 .|.   -2 = -2
966 -2 .|.   -1 = -1
967 -2 .|.   1 = -1
968 -2 .|.   2 = -2
969 -2 .|.   3 = -1
970  
971 -1 .|.   -3 = -1
972 -1 .|.   -2 = -1
973 -1 .|.   -1 = -1
974 -1 .|.   1 = -1
975 -1 .|.   2 = -1
976 -1 .|.   3 = -1
977  
978 0 .|.   -3 = -3
979 0 .|.   -2 = -2
980 0 .|.   -1 = -1
981 0 .|.   1 = 1
982 0 .|.   2 = 2
983 0 .|.   3 = 3
984  
985 1 .|.   -3 = -3
986 1 .|.   -2 = -1
987 1 .|.   -1 = -1
988 1 .|.   1 = 1
989 1 .|.   2 = 3
990 1 .|.   3 = 3
991  
992 2 .|.   -3 = -1
993 2 .|.   -2 = -2
994 2 .|.   -1 = -1
995 2 .|.   1 = 3
996 2 .|.   2 = 2
997 2 .|.   3 = 3
998  
999 3 .|.   -3 = -1
1000 3 .|.   -2 = -1
1001 3 .|.   -1 = -1
1002 3 .|.   1 = 3
1003 3 .|.   2 = 3
1004 3 .|.   3 = 3
1005  
1006 #
1007 -3 `xor` -3 = 0
1008 -3 `xor` -2 = 3
1009 -3 `xor` -1 = 2
1010 -3 `xor` 1 = -4
1011 -3 `xor` 2 = -1
1012 -3 `xor` 3 = -2
1013  
1014 -2 `xor` -3 = 3
1015 -2 `xor` -2 = 0
1016 -2 `xor` -1 = 1
1017 -2 `xor` 1 = -1
1018 -2 `xor` 2 = -4
1019 -2 `xor` 3 = -3
1020  
1021 -1 `xor` -3 = 2
1022 -1 `xor` -2 = 1
1023 -1 `xor` -1 = 0
1024 -1 `xor` 1 = -2
1025 -1 `xor` 2 = -3
1026 -1 `xor` 3 = -4
1027  
1028 0 `xor` -3 = -3
1029 0 `xor` -2 = -2
1030 0 `xor` -1 = -1
1031 0 `xor` 1 = 1
1032 0 `xor` 2 = 2
1033 0 `xor` 3 = 3
1034  
1035 1 `xor` -3 = -4
1036 1 `xor` -2 = -1
1037 1 `xor` -1 = -2
1038 1 `xor` 1 = 0
1039 1 `xor` 2 = 3
1040 1 `xor` 3 = 2
1041  
1042 2 `xor` -3 = -1
1043 2 `xor` -2 = -4
1044 2 `xor` -1 = -3
1045 2 `xor` 1 = 3
1046 2 `xor` 2 = 0
1047 2 `xor` 3 = 1
1048  
1049 3 `xor` -3 = -2
1050 3 `xor` -2 = -3
1051 3 `xor` -1 = -4
1052 3 `xor` 1 = 2
1053 3 `xor` 2 = 1
1054 3 `xor` 3 = 0
1055  
1056 #
1057 complement -3 = 2
1058 complement -2 = 1
1059 complement -1 = 0
1060 complement 0 = -1
1061 complement 1 = -2
1062 complement 2 = -3
1063 complement 3 = -4
1064 #
1065 -3 `shiftL` 0 = -3
1066 -3 `shiftL` 1 = -6
1067 -3 `shiftL` 2 = -12
1068 -3 `shiftL` 3 = -24
1069  
1070 -2 `shiftL` 0 = -2
1071 -2 `shiftL` 1 = -4
1072 -2 `shiftL` 2 = -8
1073 -2 `shiftL` 3 = -16
1074  
1075 -1 `shiftL` 0 = -1
1076 -1 `shiftL` 1 = -2
1077 -1 `shiftL` 2 = -4
1078 -1 `shiftL` 3 = -8
1079  
1080 0 `shiftL` 0 = 0
1081 0 `shiftL` 1 = 0
1082 0 `shiftL` 2 = 0
1083 0 `shiftL` 3 = 0
1084  
1085 1 `shiftL` 0 = 1
1086 1 `shiftL` 1 = 2
1087 1 `shiftL` 2 = 4
1088 1 `shiftL` 3 = 8
1089  
1090 2 `shiftL` 0 = 2
1091 2 `shiftL` 1 = 4
1092 2 `shiftL` 2 = 8
1093 2 `shiftL` 3 = 16
1094  
1095 3 `shiftL` 0 = 3
1096 3 `shiftL` 1 = 6
1097 3 `shiftL` 2 = 12
1098 3 `shiftL` 3 = 24
1099  
1100 #
1101 -3 `shiftR` 0 = -3
1102 -3 `shiftR` 1 = -2
1103 -3 `shiftR` 2 = -1
1104 -3 `shiftR` 3 = -1
1105  
1106 -2 `shiftR` 0 = -2
1107 -2 `shiftR` 1 = -1
1108 -2 `shiftR` 2 = -1
1109 -2 `shiftR` 3 = -1
1110  
1111 -1 `shiftR` 0 = -1
1112 -1 `shiftR` 1 = -1
1113 -1 `shiftR` 2 = -1
1114 -1 `shiftR` 3 = -1
1115  
1116 0 `shiftR` 0 = 0
1117 0 `shiftR` 1 = 0
1118 0 `shiftR` 2 = 0
1119 0 `shiftR` 3 = 0
1120  
1121 1 `shiftR` 0 = 1
1122 1 `shiftR` 1 = 0
1123 1 `shiftR` 2 = 0
1124 1 `shiftR` 3 = 0
1125  
1126 2 `shiftR` 0 = 2
1127 2 `shiftR` 1 = 1
1128 2 `shiftR` 2 = 0
1129 2 `shiftR` 3 = 0
1130  
1131 3 `shiftR` 0 = 3
1132 3 `shiftR` 1 = 1
1133 3 `shiftR` 2 = 0
1134 3 `shiftR` 3 = 0
1135  
1136 #
1137 -3 `rotate` -3 = -65
1138 -3 `rotate` -2 = 127
1139 -3 `rotate` -1 = -2
1140 -3 `rotate` 0 = -3
1141 -3 `rotate` 1 = -5
1142 -3 `rotate` 2 = -9
1143 -3 `rotate` 3 = -17
1144  
1145 -2 `rotate` -3 = -33
1146 -2 `rotate` -2 = -65
1147 -2 `rotate` -1 = 127
1148 -2 `rotate` 0 = -2
1149 -2 `rotate` 1 = -3
1150 -2 `rotate` 2 = -5
1151 -2 `rotate` 3 = -9
1152  
1153 -1 `rotate` -3 = -1
1154 -1 `rotate` -2 = -1
1155 -1 `rotate` -1 = -1
1156 -1 `rotate` 0 = -1
1157 -1 `rotate` 1 = -1
1158 -1 `rotate` 2 = -1
1159 -1 `rotate` 3 = -1
1160  
1161 0 `rotate` -3 = 0
1162 0 `rotate` -2 = 0
1163 0 `rotate` -1 = 0
1164 0 `rotate` 0 = 0
1165 0 `rotate` 1 = 0
1166 0 `rotate` 2 = 0
1167 0 `rotate` 3 = 0
1168  
1169 1 `rotate` -3 = 32
1170 1 `rotate` -2 = 64
1171 1 `rotate` -1 = -128
1172 1 `rotate` 0 = 1
1173 1 `rotate` 1 = 2
1174 1 `rotate` 2 = 4
1175 1 `rotate` 3 = 8
1176  
1177 2 `rotate` -3 = 64
1178 2 `rotate` -2 = -128
1179 2 `rotate` -1 = 1
1180 2 `rotate` 0 = 2
1181 2 `rotate` 1 = 4
1182 2 `rotate` 2 = 8
1183 2 `rotate` 3 = 16
1184  
1185 3 `rotate` -3 = 96
1186 3 `rotate` -2 = -64
1187 3 `rotate` -1 = -127
1188 3 `rotate` 0 = 3
1189 3 `rotate` 1 = 6
1190 3 `rotate` 2 = 12
1191 3 `rotate` 3 = 24
1192  
1193 #
1194 bit 0 = 1
1195 bit 1 = 2
1196 bit 2 = 4
1197 bit 3 = 8
1198 #
1199 -3 `setBit` 0 = -3
1200 -3 `setBit` 1 = -1
1201 -3 `setBit` 2 = -3
1202 -3 `setBit` 3 = -3
1203  
1204 -2 `setBit` 0 = -1
1205 -2 `setBit` 1 = -2
1206 -2 `setBit` 2 = -2
1207 -2 `setBit` 3 = -2
1208  
1209 -1 `setBit` 0 = -1
1210 -1 `setBit` 1 = -1
1211 -1 `setBit` 2 = -1
1212 -1 `setBit` 3 = -1
1213  
1214 0 `setBit` 0 = 1
1215 0 `setBit` 1 = 2
1216 0 `setBit` 2 = 4
1217 0 `setBit` 3 = 8
1218  
1219 1 `setBit` 0 = 1
1220 1 `setBit` 1 = 3
1221 1 `setBit` 2 = 5
1222 1 `setBit` 3 = 9
1223  
1224 2 `setBit` 0 = 3
1225 2 `setBit` 1 = 2
1226 2 `setBit` 2 = 6
1227 2 `setBit` 3 = 10
1228  
1229 3 `setBit` 0 = 3
1230 3 `setBit` 1 = 3
1231 3 `setBit` 2 = 7
1232 3 `setBit` 3 = 11
1233  
1234 #
1235 -3 `clearBit` 0 = -4
1236 -3 `clearBit` 1 = -3
1237 -3 `clearBit` 2 = -7
1238 -3 `clearBit` 3 = -11
1239  
1240 -2 `clearBit` 0 = -2
1241 -2 `clearBit` 1 = -4
1242 -2 `clearBit` 2 = -6
1243 -2 `clearBit` 3 = -10
1244  
1245 -1 `clearBit` 0 = -2
1246 -1 `clearBit` 1 = -3
1247 -1 `clearBit` 2 = -5
1248 -1 `clearBit` 3 = -9
1249  
1250 0 `clearBit` 0 = 0
1251 0 `clearBit` 1 = 0
1252 0 `clearBit` 2 = 0
1253 0 `clearBit` 3 = 0
1254  
1255 1 `clearBit` 0 = 0
1256 1 `clearBit` 1 = 1
1257 1 `clearBit` 2 = 1
1258 1 `clearBit` 3 = 1
1259  
1260 2 `clearBit` 0 = 2
1261 2 `clearBit` 1 = 0
1262 2 `clearBit` 2 = 2
1263 2 `clearBit` 3 = 2
1264  
1265 3 `clearBit` 0 = 2
1266 3 `clearBit` 1 = 1
1267 3 `clearBit` 2 = 3
1268 3 `clearBit` 3 = 3
1269  
1270 #
1271 -3 `complementBit` 0 = -4
1272 -3 `complementBit` 1 = -1
1273 -3 `complementBit` 2 = -7
1274 -3 `complementBit` 3 = -11
1275  
1276 -2 `complementBit` 0 = -1
1277 -2 `complementBit` 1 = -4
1278 -2 `complementBit` 2 = -6
1279 -2 `complementBit` 3 = -10
1280  
1281 -1 `complementBit` 0 = -2
1282 -1 `complementBit` 1 = -3
1283 -1 `complementBit` 2 = -5
1284 -1 `complementBit` 3 = -9
1285  
1286 0 `complementBit` 0 = 1
1287 0 `complementBit` 1 = 2
1288 0 `complementBit` 2 = 4
1289 0 `complementBit` 3 = 8
1290  
1291 1 `complementBit` 0 = 0
1292 1 `complementBit` 1 = 3
1293 1 `complementBit` 2 = 5
1294 1 `complementBit` 3 = 9
1295  
1296 2 `complementBit` 0 = 3
1297 2 `complementBit` 1 = 0
1298 2 `complementBit` 2 = 6
1299 2 `complementBit` 3 = 10
1300  
1301 3 `complementBit` 0 = 2
1302 3 `complementBit` 1 = 1
1303 3 `complementBit` 2 = 7
1304 3 `complementBit` 3 = 11
1305  
1306 #
1307 -3 `testBit` 0 = True
1308 -3 `testBit` 1 = False
1309 -3 `testBit` 2 = True
1310 -3 `testBit` 3 = True
1311  
1312 -2 `testBit` 0 = False
1313 -2 `testBit` 1 = True
1314 -2 `testBit` 2 = True
1315 -2 `testBit` 3 = True
1316  
1317 -1 `testBit` 0 = True
1318 -1 `testBit` 1 = True
1319 -1 `testBit` 2 = True
1320 -1 `testBit` 3 = True
1321  
1322 0 `testBit` 0 = False
1323 0 `testBit` 1 = False
1324 0 `testBit` 2 = False
1325 0 `testBit` 3 = False
1326  
1327 1 `testBit` 0 = True
1328 1 `testBit` 1 = False
1329 1 `testBit` 2 = False
1330 1 `testBit` 3 = False
1331  
1332 2 `testBit` 0 = False
1333 2 `testBit` 1 = True
1334 2 `testBit` 2 = False
1335 2 `testBit` 3 = False
1336  
1337 3 `testBit` 0 = True
1338 3 `testBit` 1 = True
1339 3 `testBit` 2 = False
1340 3 `testBit` 3 = False
1341  
1342 #
1343 bitSize -3 = 8
1344 bitSize -2 = 8
1345 bitSize -1 = 8
1346 bitSize 0 = 8
1347 bitSize 1 = 8
1348 bitSize 2 = 8
1349 bitSize 3 = 8
1350 #
1351 isSigned -3 = True
1352 isSigned -2 = True
1353 isSigned -1 = True
1354 isSigned 0 = True
1355 isSigned 1 = True
1356 isSigned 2 = True
1357 isSigned 3 = True
1358 #
1359 --------------------------------
1360 --------------------------------
1361 --Testing Int16
1362 --------------------------------
1363 testBounded
1364 (32767,-32768,-32767)
1365 (32766,32767,-32768)
1366 testEnum
1367 [0,1,2,3,4,5,6,7,8,9]
1368 [0,2,4,6,8,10,12,14,16,18]
1369 [0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
1370 [0,2,4,6,8,10,12,14,16,18,20]
1371 testReadShow
1372 [-3,-2,-1,0,1,2,3]
1373 [-3,-2,-1,0,1,2,3]
1374 testEq
1375 -3 == -3 = True
1376 -3 == -2 = False
1377 -3 == -1 = False
1378 -3 == 0 = False
1379 -3 == 1 = False
1380 -3 == 2 = False
1381 -3 == 3 = False
1382  
1383 -2 == -3 = False
1384 -2 == -2 = True
1385 -2 == -1 = False
1386 -2 == 0 = False
1387 -2 == 1 = False
1388 -2 == 2 = False
1389 -2 == 3 = False
1390  
1391 -1 == -3 = False
1392 -1 == -2 = False
1393 -1 == -1 = True
1394 -1 == 0 = False
1395 -1 == 1 = False
1396 -1 == 2 = False
1397 -1 == 3 = False
1398  
1399 0 == -3 = False
1400 0 == -2 = False
1401 0 == -1 = False
1402 0 == 0 = True
1403 0 == 1 = False
1404 0 == 2 = False
1405 0 == 3 = False
1406  
1407 1 == -3 = False
1408 1 == -2 = False
1409 1 == -1 = False
1410 1 == 0 = False
1411 1 == 1 = True
1412 1 == 2 = False
1413 1 == 3 = False
1414  
1415 2 == -3 = False
1416 2 == -2 = False
1417 2 == -1 = False
1418 2 == 0 = False
1419 2 == 1 = False
1420 2 == 2 = True
1421 2 == 3 = False
1422  
1423 3 == -3 = False
1424 3 == -2 = False
1425 3 == -1 = False
1426 3 == 0 = False
1427 3 == 1 = False
1428 3 == 2 = False
1429 3 == 3 = True
1430  
1431 #
1432 -3 /= -3 = False
1433 -3 /= -2 = True
1434 -3 /= -1 = True
1435 -3 /= 0 = True
1436 -3 /= 1 = True
1437 -3 /= 2 = True
1438 -3 /= 3 = True
1439  
1440 -2 /= -3 = True
1441 -2 /= -2 = False
1442 -2 /= -1 = True
1443 -2 /= 0 = True
1444 -2 /= 1 = True
1445 -2 /= 2 = True
1446 -2 /= 3 = True
1447  
1448 -1 /= -3 = True
1449 -1 /= -2 = True
1450 -1 /= -1 = False
1451 -1 /= 0 = True
1452 -1 /= 1 = True
1453 -1 /= 2 = True
1454 -1 /= 3 = True
1455  
1456 0 /= -3 = True
1457 0 /= -2 = True
1458 0 /= -1 = True
1459 0 /= 0 = False
1460 0 /= 1 = True
1461 0 /= 2 = True
1462 0 /= 3 = True
1463  
1464 1 /= -3 = True
1465 1 /= -2 = True
1466 1 /= -1 = True
1467 1 /= 0 = True
1468 1 /= 1 = False
1469 1 /= 2 = True
1470 1 /= 3 = True
1471  
1472 2 /= -3 = True
1473 2 /= -2 = True
1474 2 /= -1 = True
1475 2 /= 0 = True
1476 2 /= 1 = True
1477 2 /= 2 = False
1478 2 /= 3 = True
1479  
1480 3 /= -3 = True
1481 3 /= -2 = True
1482 3 /= -1 = True
1483 3 /= 0 = True
1484 3 /= 1 = True
1485 3 /= 2 = True
1486 3 /= 3 = False
1487  
1488 #
1489 testOrd
1490 -3 <= -3 = True
1491 -3 <= -2 = True
1492 -3 <= -1 = True
1493 -3 <= 0 = True
1494 -3 <= 1 = True
1495 -3 <= 2 = True
1496 -3 <= 3 = True
1497  
1498 -2 <= -3 = False
1499 -2 <= -2 = True
1500 -2 <= -1 = True
1501 -2 <= 0 = True
1502 -2 <= 1 = True
1503 -2 <= 2 = True
1504 -2 <= 3 = True
1505  
1506 -1 <= -3 = False
1507 -1 <= -2 = False
1508 -1 <= -1 = True
1509 -1 <= 0 = True
1510 -1 <= 1 = True
1511 -1 <= 2 = True
1512 -1 <= 3 = True
1513  
1514 0 <= -3 = False
1515 0 <= -2 = False
1516 0 <= -1 = False
1517 0 <= 0 = True
1518 0 <= 1 = True
1519 0 <= 2 = True
1520 0 <= 3 = True
1521  
1522 1 <= -3 = False
1523 1 <= -2 = False
1524 1 <= -1 = False
1525 1 <= 0 = False
1526 1 <= 1 = True
1527 1 <= 2 = True
1528 1 <= 3 = True
1529  
1530 2 <= -3 = False
1531 2 <= -2 = False
1532 2 <= -1 = False
1533 2 <= 0 = False
1534 2 <= 1 = False
1535 2 <= 2 = True
1536 2 <= 3 = True
1537  
1538 3 <= -3 = False
1539 3 <= -2 = False
1540 3 <= -1 = False
1541 3 <= 0 = False
1542 3 <= 1 = False
1543 3 <= 2 = False
1544 3 <= 3 = True
1545  
1546 #
1547 -3 <  -3 = False
1548 -3 <  -2 = True
1549 -3 <  -1 = True
1550 -3 <  0 = True
1551 -3 <  1 = True
1552 -3 <  2 = True
1553 -3 <  3 = True
1554  
1555 -2 <  -3 = False
1556 -2 <  -2 = False
1557 -2 <  -1 = True
1558 -2 <  0 = True
1559 -2 <  1 = True
1560 -2 <  2 = True
1561 -2 <  3 = True
1562  
1563 -1 <  -3 = False
1564 -1 <  -2 = False
1565 -1 <  -1 = False
1566 -1 <  0 = True
1567 -1 <  1 = True
1568 -1 <  2 = True
1569 -1 <  3 = True
1570  
1571 0 <  -3 = False
1572 0 <  -2 = False
1573 0 <  -1 = False
1574 0 <  0 = False
1575 0 <  1 = True
1576 0 <  2 = True
1577 0 <  3 = True
1578  
1579 1 <  -3 = False
1580 1 <  -2 = False
1581 1 <  -1 = False
1582 1 <  0 = False
1583 1 <  1 = False
1584 1 <  2 = True
1585 1 <  3 = True
1586  
1587 2 <  -3 = False
1588 2 <  -2 = False
1589 2 <  -1 = False
1590 2 <  0 = False
1591 2 <  1 = False
1592 2 <  2 = False
1593 2 <  3 = True
1594  
1595 3 <  -3 = False
1596 3 <  -2 = False
1597 3 <  -1 = False
1598 3 <  0 = False
1599 3 <  1 = False
1600 3 <  2 = False
1601 3 <  3 = False
1602  
1603 #
1604 -3 >  -3 = False
1605 -3 >  -2 = False
1606 -3 >  -1 = False
1607 -3 >  0 = False
1608 -3 >  1 = False
1609 -3 >  2 = False
1610 -3 >  3 = False
1611  
1612 -2 >  -3 = True
1613 -2 >  -2 = False
1614 -2 >  -1 = False
1615 -2 >  0 = False
1616 -2 >  1 = False
1617 -2 >  2 = False
1618 -2 >  3 = False
1619  
1620 -1 >  -3 = True
1621 -1 >  -2 = True
1622 -1 >  -1 = False
1623 -1 >  0 = False
1624 -1 >  1 = False
1625 -1 >  2 = False
1626 -1 >  3 = False
1627  
1628 0 >  -3 = True
1629 0 >  -2 = True
1630 0 >  -1 = True
1631 0 >  0 = False
1632 0 >  1 = False
1633 0 >  2 = False
1634 0 >  3 = False
1635  
1636 1 >  -3 = True
1637 1 >  -2 = True
1638 1 >  -1 = True
1639 1 >  0 = True
1640 1 >  1 = False
1641 1 >  2 = False
1642 1 >  3 = False
1643  
1644 2 >  -3 = True
1645 2 >  -2 = True
1646 2 >  -1 = True
1647 2 >  0 = True
1648 2 >  1 = True
1649 2 >  2 = False
1650 2 >  3 = False
1651  
1652 3 >  -3 = True
1653 3 >  -2 = True
1654 3 >  -1 = True
1655 3 >  0 = True
1656 3 >  1 = True
1657 3 >  2 = True
1658 3 >  3 = False
1659  
1660 #
1661 -3 >= -3 = True
1662 -3 >= -2 = False
1663 -3 >= -1 = False
1664 -3 >= 0 = False
1665 -3 >= 1 = False
1666 -3 >= 2 = False
1667 -3 >= 3 = False
1668  
1669 -2 >= -3 = True
1670 -2 >= -2 = True
1671 -2 >= -1 = False
1672 -2 >= 0 = False
1673 -2 >= 1 = False
1674 -2 >= 2 = False
1675 -2 >= 3 = False
1676  
1677 -1 >= -3 = True
1678 -1 >= -2 = True
1679 -1 >= -1 = True
1680 -1 >= 0 = False
1681 -1 >= 1 = False
1682 -1 >= 2 = False
1683 -1 >= 3 = False
1684  
1685 0 >= -3 = True
1686 0 >= -2 = True
1687 0 >= -1 = True
1688 0 >= 0 = True
1689 0 >= 1 = False
1690 0 >= 2 = False
1691 0 >= 3 = False
1692  
1693 1 >= -3 = True
1694 1 >= -2 = True
1695 1 >= -1 = True
1696 1 >= 0 = True
1697 1 >= 1 = True
1698 1 >= 2 = False
1699 1 >= 3 = False
1700  
1701 2 >= -3 = True
1702 2 >= -2 = True
1703 2 >= -1 = True
1704 2 >= 0 = True
1705 2 >= 1 = True
1706 2 >= 2 = True
1707 2 >= 3 = False
1708  
1709 3 >= -3 = True
1710 3 >= -2 = True
1711 3 >= -1 = True
1712 3 >= 0 = True
1713 3 >= 1 = True
1714 3 >= 2 = True
1715 3 >= 3 = True
1716  
1717 #
1718 -3 `compare` -3 = EQ
1719 -3 `compare` -2 = LT
1720 -3 `compare` -1 = LT
1721 -3 `compare` 0 = LT
1722 -3 `compare` 1 = LT
1723 -3 `compare` 2 = LT
1724 -3 `compare` 3 = LT
1725  
1726 -2 `compare` -3 = GT
1727 -2 `compare` -2 = EQ
1728 -2 `compare` -1 = LT
1729 -2 `compare` 0 = LT
1730 -2 `compare` 1 = LT
1731 -2 `compare` 2 = LT
1732 -2 `compare` 3 = LT
1733  
1734 -1 `compare` -3 = GT
1735 -1 `compare` -2 = GT
1736 -1 `compare` -1 = EQ
1737 -1 `compare` 0 = LT
1738 -1 `compare` 1 = LT
1739 -1 `compare` 2 = LT
1740 -1 `compare` 3 = LT
1741  
1742 0 `compare` -3 = GT
1743 0 `compare` -2 = GT
1744 0 `compare` -1 = GT
1745 0 `compare` 0 = EQ
1746 0 `compare` 1 = LT
1747 0 `compare` 2 = LT
1748 0 `compare` 3 = LT
1749  
1750 1 `compare` -3 = GT
1751 1 `compare` -2 = GT
1752 1 `compare` -1 = GT
1753 1 `compare` 0 = GT
1754 1 `compare` 1 = EQ
1755 1 `compare` 2 = LT
1756 1 `compare` 3 = LT
1757  
1758 2 `compare` -3 = GT
1759 2 `compare` -2 = GT
1760 2 `compare` -1 = GT
1761 2 `compare` 0 = GT
1762 2 `compare` 1 = GT
1763 2 `compare` 2 = EQ
1764 2 `compare` 3 = LT
1765  
1766 3 `compare` -3 = GT
1767 3 `compare` -2 = GT
1768 3 `compare` -1 = GT
1769 3 `compare` 0 = GT
1770 3 `compare` 1 = GT
1771 3 `compare` 2 = GT
1772 3 `compare` 3 = EQ
1773  
1774 #
1775 testNum
1776 -3 + -3 = -6
1777 -3 + -2 = -5
1778 -3 + -1 = -4
1779 -3 + 0 = -3
1780 -3 + 1 = -2
1781 -3 + 2 = -1
1782 -3 + 3 = 0
1783  
1784 -2 + -3 = -5
1785 -2 + -2 = -4
1786 -2 + -1 = -3
1787 -2 + 0 = -2
1788 -2 + 1 = -1
1789 -2 + 2 = 0
1790 -2 + 3 = 1
1791  
1792 -1 + -3 = -4
1793 -1 + -2 = -3
1794 -1 + -1 = -2
1795 -1 + 0 = -1
1796 -1 + 1 = 0
1797 -1 + 2 = 1
1798 -1 + 3 = 2
1799  
1800 0 + -3 = -3
1801 0 + -2 = -2
1802 0 + -1 = -1
1803 0 + 0 = 0
1804 0 + 1 = 1
1805 0 + 2 = 2
1806 0 + 3 = 3
1807  
1808 1 + -3 = -2
1809 1 + -2 = -1
1810 1 + -1 = 0
1811 1 + 0 = 1
1812 1 + 1 = 2
1813 1 + 2 = 3
1814 1 + 3 = 4
1815  
1816 2 + -3 = -1
1817 2 + -2 = 0
1818 2 + -1 = 1
1819 2 + 0 = 2
1820 2 + 1 = 3
1821 2 + 2 = 4
1822 2 + 3 = 5
1823  
1824 3 + -3 = 0
1825 3 + -2 = 1
1826 3 + -1 = 2
1827 3 + 0 = 3
1828 3 + 1 = 4
1829 3 + 2 = 5
1830 3 + 3 = 6
1831  
1832 #
1833 -3 - -3 = 0
1834 -3 - -2 = -1
1835 -3 - -1 = -2
1836 -3 - 0 = -3
1837 -3 - 1 = -4
1838 -3 - 2 = -5
1839 -3 - 3 = -6
1840  
1841 -2 - -3 = 1
1842 -2 - -2 = 0
1843 -2 - -1 = -1
1844 -2 - 0 = -2
1845 -2 - 1 = -3
1846 -2 - 2 = -4
1847 -2 - 3 = -5
1848  
1849 -1 - -3 = 2
1850 -1 - -2 = 1
1851 -1 - -1 = 0
1852 -1 - 0 = -1
1853 -1 - 1 = -2
1854 -1 - 2 = -3
1855 -1 - 3 = -4
1856  
1857 0 - -3 = 3
1858 0 - -2 = 2
1859 0 - -1 = 1
1860 0 - 0 = 0
1861 0 - 1 = -1
1862 0 - 2 = -2
1863 0 - 3 = -3
1864  
1865 1 - -3 = 4
1866 1 - -2 = 3
1867 1 - -1 = 2
1868 1 - 0 = 1
1869 1 - 1 = 0
1870 1 - 2 = -1
1871 1 - 3 = -2
1872  
1873 2 - -3 = 5
1874 2 - -2 = 4
1875 2 - -1 = 3
1876 2 - 0 = 2
1877 2 - 1 = 1
1878 2 - 2 = 0
1879 2 - 3 = -1
1880  
1881 3 - -3 = 6
1882 3 - -2 = 5
1883 3 - -1 = 4
1884 3 - 0 = 3
1885 3 - 1 = 2
1886 3 - 2 = 1
1887 3 - 3 = 0
1888  
1889 #
1890 -3 * -3 = 9
1891 -3 * -2 = 6
1892 -3 * -1 = 3
1893 -3 * 0 = 0
1894 -3 * 1 = -3
1895 -3 * 2 = -6
1896 -3 * 3 = -9
1897  
1898 -2 * -3 = 6
1899 -2 * -2 = 4
1900 -2 * -1 = 2
1901 -2 * 0 = 0
1902 -2 * 1 = -2
1903 -2 * 2 = -4
1904 -2 * 3 = -6
1905  
1906 -1 * -3 = 3
1907 -1 * -2 = 2
1908 -1 * -1 = 1
1909 -1 * 0 = 0
1910 -1 * 1 = -1
1911 -1 * 2 = -2
1912 -1 * 3 = -3
1913  
1914 0 * -3 = 0
1915 0 * -2 = 0
1916 0 * -1 = 0
1917 0 * 0 = 0
1918 0 * 1 = 0
1919 0 * 2 = 0
1920 0 * 3 = 0
1921  
1922 1 * -3 = -3
1923 1 * -2 = -2
1924 1 * -1 = -1
1925 1 * 0 = 0
1926 1 * 1 = 1
1927 1 * 2 = 2
1928 1 * 3 = 3
1929  
1930 2 * -3 = -6
1931 2 * -2 = -4
1932 2 * -1 = -2
1933 2 * 0 = 0
1934 2 * 1 = 2
1935 2 * 2 = 4
1936 2 * 3 = 6
1937  
1938 3 * -3 = -9
1939 3 * -2 = -6
1940 3 * -1 = -3
1941 3 * 0 = 0
1942 3 * 1 = 3
1943 3 * 2 = 6
1944 3 * 3 = 9
1945  
1946 #
1947 negate -3 = 3
1948 negate -2 = 2
1949 negate -1 = 1
1950 negate 0 = 0
1951 negate 1 = -1
1952 negate 2 = -2
1953 negate 3 = -3
1954 #
1955 testReal
1956 toRational -3 = -3 % 1
1957 toRational -2 = -2 % 1
1958 toRational -1 = -1 % 1
1959 toRational 0 = 0 % 1
1960 toRational 1 = 1 % 1
1961 toRational 2 = 2 % 1
1962 toRational 3 = 3 % 1
1963 #
1964 testIntegral
1965 -3 `divMod`  -3 = (1,0)
1966 -3 `divMod`  -2 = (1,-1)
1967 -3 `divMod`  -1 = (3,0)
1968 -3 `divMod`  1 = (-3,0)
1969 -3 `divMod`  2 = (-2,1)
1970 -3 `divMod`  3 = (-1,0)
1971  
1972 -2 `divMod`  -3 = (0,-2)
1973 -2 `divMod`  -2 = (1,0)
1974 -2 `divMod`  -1 = (2,0)
1975 -2 `divMod`  1 = (-2,0)
1976 -2 `divMod`  2 = (-1,0)
1977 -2 `divMod`  3 = (-1,1)
1978  
1979 -1 `divMod`  -3 = (0,-1)
1980 -1 `divMod`  -2 = (0,-1)
1981 -1 `divMod`  -1 = (1,0)
1982 -1 `divMod`  1 = (-1,0)
1983 -1 `divMod`  2 = (-1,1)
1984 -1 `divMod`  3 = (-1,2)
1985  
1986 0 `divMod`  -3 = (0,0)
1987 0 `divMod`  -2 = (0,0)
1988 0 `divMod`  -1 = (0,0)
1989 0 `divMod`  1 = (0,0)
1990 0 `divMod`  2 = (0,0)
1991 0 `divMod`  3 = (0,0)
1992  
1993 1 `divMod`  -3 = (-1,-2)
1994 1 `divMod`  -2 = (-1,-1)
1995 1 `divMod`  -1 = (-1,0)
1996 1 `divMod`  1 = (1,0)
1997 1 `divMod`  2 = (0,1)
1998 1 `divMod`  3 = (0,1)
1999  
2000 2 `divMod`  -3 = (-1,-1)
2001 2 `divMod`  -2 = (-1,0)
2002 2 `divMod`  -1 = (-2,0)
2003 2 `divMod`  1 = (2,0)
2004 2 `divMod`  2 = (1,0)
2005 2 `divMod`  3 = (0,2)
2006  
2007 3 `divMod`  -3 = (-1,0)
2008 3 `divMod`  -2 = (-2,-1)
2009 3 `divMod`  -1 = (-3,0)
2010 3 `divMod`  1 = (3,0)
2011 3 `divMod`  2 = (1,1)
2012 3 `divMod`  3 = (1,0)
2013  
2014 #
2015 -3 `div`     -3 = 1
2016 -3 `div`     -2 = 1
2017 -3 `div`     -1 = 3
2018 -3 `div`     1 = -3
2019 -3 `div`     2 = -2
2020 -3 `div`     3 = -1
2021  
2022 -2 `div`     -3 = 0
2023 -2 `div`     -2 = 1
2024 -2 `div`     -1 = 2
2025 -2 `div`     1 = -2
2026 -2 `div`     2 = -1
2027 -2 `div`     3 = -1
2028  
2029 -1 `div`     -3 = 0
2030 -1 `div`     -2 = 0
2031 -1 `div`     -1 = 1
2032 -1 `div`     1 = -1
2033 -1 `div`     2 = -1
2034 -1 `div`     3 = -1
2035  
2036 0 `div`     -3 = 0
2037 0 `div`     -2 = 0
2038 0 `div`     -1 = 0
2039 0 `div`     1 = 0
2040 0 `div`     2 = 0
2041 0 `div`     3 = 0
2042  
2043 1 `div`     -3 = -1
2044 1 `div`     -2 = -1
2045 1 `div`     -1 = -1
2046 1 `div`     1 = 1
2047 1 `div`     2 = 0
2048 1 `div`     3 = 0
2049  
2050 2 `div`     -3 = -1
2051 2 `div`     -2 = -1
2052 2 `div`     -1 = -2
2053 2 `div`     1 = 2
2054 2 `div`     2 = 1
2055 2 `div`     3 = 0
2056  
2057 3 `div`     -3 = -1
2058 3 `div`     -2 = -2
2059 3 `div`     -1 = -3
2060 3 `div`     1 = 3
2061 3 `div`     2 = 1
2062 3 `div`     3 = 1
2063  
2064 #
2065 -3 `mod`     -3 = 0
2066 -3 `mod`     -2 = -1
2067 -3 `mod`     -1 = 0
2068 -3 `mod`     1 = 0
2069 -3 `mod`     2 = 1
2070 -3 `mod`     3 = 0
2071  
2072 -2 `mod`     -3 = -2
2073 -2 `mod`     -2 = 0
2074 -2 `mod`     -1 = 0
2075 -2 `mod`     1 = 0
2076 -2 `mod`     2 = 0
2077 -2 `mod`     3 = 1
2078  
2079 -1 `mod`     -3 = -1
2080 -1 `mod`     -2 = -1
2081 -1 `mod`     -1 = 0
2082 -1 `mod`     1 = 0
2083 -1 `mod`     2 = 1
2084 -1 `mod`     3 = 2
2085  
2086 0 `mod`     -3 = 0
2087 0 `mod`     -2 = 0
2088 0 `mod`     -1 = 0
2089 0 `mod`     1 = 0
2090 0 `mod`     2 = 0
2091 0 `mod`     3 = 0
2092  
2093 1 `mod`     -3 = -2
2094 1 `mod`     -2 = -1
2095 1 `mod`     -1 = 0
2096 1 `mod`     1 = 0
2097 1 `mod`     2 = 1
2098 1 `mod`     3 = 1
2099  
2100 2 `mod`     -3 = -1
2101 2 `mod`     -2 = 0
2102 2 `mod`     -1 = 0
2103 2 `mod`     1 = 0
2104 2 `mod`     2 = 0
2105 2 `mod`     3 = 2
2106  
2107 3 `mod`     -3 = 0
2108 3 `mod`     -2 = -1
2109 3 `mod`     -1 = 0
2110 3 `mod`     1 = 0
2111 3 `mod`     2 = 1
2112 3 `mod`     3 = 0
2113  
2114 #
2115 -3 `quotRem` -3 = (1,0)
2116 -3 `quotRem` -2 = (1,-1)
2117 -3 `quotRem` -1 = (3,0)
2118 -3 `quotRem` 1 = (-3,0)
2119 -3 `quotRem` 2 = (-1,-1)
2120 -3 `quotRem` 3 = (-1,0)
2121  
2122 -2 `quotRem` -3 = (0,-2)
2123 -2 `quotRem` -2 = (1,0)
2124 -2 `quotRem` -1 = (2,0)
2125 -2 `quotRem` 1 = (-2,0)
2126 -2 `quotRem` 2 = (-1,0)
2127 -2 `quotRem` 3 = (0,-2)
2128  
2129 -1 `quotRem` -3 = (0,-1)
2130 -1 `quotRem` -2 = (0,-1)
2131 -1 `quotRem` -1 = (1,0)
2132 -1 `quotRem` 1 = (-1,0)
2133 -1 `quotRem` 2 = (0,-1)
2134 -1 `quotRem` 3 = (0,-1)
2135  
2136 0 `quotRem` -3 = (0,0)
2137 0 `quotRem` -2 = (0,0)
2138 0 `quotRem` -1 = (0,0)
2139 0 `quotRem` 1 = (0,0)
2140 0 `quotRem` 2 = (0,0)
2141 0 `quotRem` 3 = (0,0)
2142  
2143 1 `quotRem` -3 = (0,1)
2144 1 `quotRem` -2 = (0,1)
2145 1 `quotRem` -1 = (-1,0)
2146 1 `quotRem` 1 = (1,0)
2147 1 `quotRem` 2 = (0,1)
2148 1 `quotRem` 3 = (0,1)
2149  
2150 2 `quotRem` -3 = (0,2)
2151 2 `quotRem` -2 = (-1,0)
2152 2 `quotRem` -1 = (-2,0)
2153 2 `quotRem` 1 = (2,0)
2154 2 `quotRem` 2 = (1,0)
2155 2 `quotRem` 3 = (0,2)
2156  
2157 3 `quotRem` -3 = (-1,0)
2158 3 `quotRem` -2 = (-1,1)
2159 3 `quotRem` -1 = (-3,0)
2160 3 `quotRem` 1 = (3,0)
2161 3 `quotRem` 2 = (1,1)
2162 3 `quotRem` 3 = (1,0)
2163  
2164 #
2165 -3 `quot`    -3 = 1
2166 -3 `quot`    -2 = 1
2167 -3 `quot`    -1 = 3
2168 -3 `quot`    1 = -3
2169 -3 `quot`    2 = -1
2170 -3 `quot`    3 = -1
2171  
2172 -2 `quot`    -3 = 0
2173 -2 `quot`    -2 = 1
2174 -2 `quot`    -1 = 2
2175 -2 `quot`    1 = -2
2176 -2 `quot`    2 = -1
2177 -2 `quot`    3 = 0
2178  
2179 -1 `quot`    -3 = 0
2180 -1 `quot`    -2 = 0
2181 -1 `quot`    -1 = 1
2182 -1 `quot`    1 = -1
2183 -1 `quot`    2 = 0
2184 -1 `quot`    3 = 0
2185  
2186 0 `quot`    -3 = 0
2187 0 `quot`    -2 = 0
2188 0 `quot`    -1 = 0
2189 0 `quot`    1 = 0
2190 0 `quot`    2 = 0
2191 0 `quot`    3 = 0
2192  
2193 1 `quot`    -3 = 0
2194 1 `quot`    -2 = 0
2195 1 `quot`    -1 = -1
2196 1 `quot`    1 = 1
2197 1 `quot`    2 = 0
2198 1 `quot`    3 = 0
2199  
2200 2 `quot`    -3 = 0
2201 2 `quot`    -2 = -1
2202 2 `quot`    -1 = -2
2203 2 `quot`    1 = 2
2204 2 `quot`    2 = 1
2205 2 `quot`    3 = 0
2206  
2207 3 `quot`    -3 = -1
2208 3 `quot`    -2 = -1
2209 3 `quot`    -1 = -3
2210 3 `quot`    1 = 3
2211 3 `quot`    2 = 1
2212 3 `quot`    3 = 1
2213  
2214 #
2215 -3 `rem`     -3 = 0
2216 -3 `rem`     -2 = -1
2217 -3 `rem`     -1 = 0
2218 -3 `rem`     1 = 0
2219 -3 `rem`     2 = -1
2220 -3 `rem`     3 = 0
2221  
2222 -2 `rem`     -3 = -2
2223 -2 `rem`     -2 = 0
2224 -2 `rem`     -1 = 0
2225 -2 `rem`     1 = 0
2226 -2 `rem`     2 = 0
2227 -2 `rem`     3 = -2
2228  
2229 -1 `rem`     -3 = -1
2230 -1 `rem`     -2 = -1
2231 -1 `rem`     -1 = 0
2232 -1 `rem`     1 = 0
2233 -1 `rem`     2 = -1
2234 -1 `rem`     3 = -1
2235  
2236 0 `rem`     -3 = 0
2237 0 `rem`     -2 = 0
2238 0 `rem`     -1 = 0
2239 0 `rem`     1 = 0
2240 0 `rem`     2 = 0
2241 0 `rem`     3 = 0
2242  
2243 1 `rem`     -3 = 1
2244 1 `rem`     -2 = 1
2245 1 `rem`     -1 = 0
2246 1 `rem`     1 = 0
2247 1 `rem`     2 = 1
2248 1 `rem`     3 = 1
2249  
2250 2 `rem`     -3 = 2
2251 2 `rem`     -2 = 0
2252 2 `rem`     -1 = 0
2253 2 `rem`     1 = 0
2254 2 `rem`     2 = 0
2255 2 `rem`     3 = 2
2256  
2257 3 `rem`     -3 = 0
2258 3 `rem`     -2 = 1
2259 3 `rem`     -1 = 0
2260 3 `rem`     1 = 0
2261 3 `rem`     2 = 1
2262 3 `rem`     3 = 0
2263  
2264 #
2265 testBits
2266 -3 .&.   -3 = -3
2267 -3 .&.   -2 = -4
2268 -3 .&.   -1 = -3
2269 -3 .&.   1 = 1
2270 -3 .&.   2 = 0
2271 -3 .&.   3 = 1
2272  
2273 -2 .&.   -3 = -4
2274 -2 .&.   -2 = -2
2275 -2 .&.   -1 = -2
2276 -2 .&.   1 = 0
2277 -2 .&.   2 = 2
2278 -2 .&.   3 = 2
2279  
2280 -1 .&.   -3 = -3
2281 -1 .&.   -2 = -2
2282 -1 .&.   -1 = -1
2283 -1 .&.   1 = 1
2284 -1 .&.   2 = 2
2285 -1 .&.   3 = 3
2286  
2287 0 .&.   -3 = 0
2288 0 .&.   -2 = 0
2289 0 .&.   -1 = 0
2290 0 .&.   1 = 0
2291 0 .&.   2 = 0
2292 0 .&.   3 = 0
2293  
2294 1 .&.   -3 = 1
2295 1 .&.   -2 = 0
2296 1 .&.   -1 = 1
2297 1 .&.   1 = 1
2298 1 .&.   2 = 0
2299 1 .&.   3 = 1
2300  
2301 2 .&.   -3 = 0
2302 2 .&.   -2 = 2
2303 2 .&.   -1 = 2
2304 2 .&.   1 = 0
2305 2 .&.   2 = 2
2306 2 .&.   3 = 2
2307  
2308 3 .&.   -3 = 1
2309 3 .&.   -2 = 2
2310 3 .&.   -1 = 3
2311 3 .&.   1 = 1
2312 3 .&.   2 = 2
2313 3 .&.   3 = 3
2314  
2315 #
2316 -3 .|.   -3 = -3
2317 -3 .|.   -2 = -1
2318 -3 .|.   -1 = -1
2319 -3 .|.   1 = -3
2320 -3 .|.   2 = -1
2321 -3 .|.   3 = -1
2322  
2323 -2 .|.   -3 = -1
2324 -2 .|.   -2 = -2
2325 -2 .|.   -1 = -1
2326 -2 .|.   1 = -1
2327 -2 .|.   2 = -2
2328 -2 .|.   3 = -1
2329  
2330 -1 .|.   -3 = -1
2331 -1 .|.   -2 = -1
2332 -1 .|.   -1 = -1
2333 -1 .|.   1 = -1
2334 -1 .|.   2 = -1
2335 -1 .|.   3 = -1
2336  
2337 0 .|.   -3 = -3
2338 0 .|.   -2 = -2
2339 0 .|.   -1 = -1
2340 0 .|.   1 = 1
2341 0 .|.   2 = 2
2342 0 .|.   3 = 3
2343  
2344 1 .|.   -3 = -3
2345 1 .|.   -2 = -1
2346 1 .|.   -1 = -1
2347 1 .|.   1 = 1
2348 1 .|.   2 = 3
2349 1 .|.   3 = 3
2350  
2351 2 .|.   -3 = -1
2352 2 .|.   -2 = -2
2353 2 .|.   -1 = -1
2354 2 .|.   1 = 3
2355 2 .|.   2 = 2
2356 2 .|.   3 = 3
2357  
2358 3 .|.   -3 = -1
2359 3 .|.   -2 = -1
2360 3 .|.   -1 = -1
2361 3 .|.   1 = 3
2362 3 .|.   2 = 3
2363 3 .|.   3 = 3
2364  
2365 #
2366 -3 `xor` -3 = 0
2367 -3 `xor` -2 = 3
2368 -3 `xor` -1 = 2
2369 -3 `xor` 1 = -4
2370 -3 `xor` 2 = -1
2371 -3 `xor` 3 = -2
2372  
2373 -2 `xor` -3 = 3
2374 -2 `xor` -2 = 0
2375 -2 `xor` -1 = 1
2376 -2 `xor` 1 = -1
2377 -2 `xor` 2 = -4
2378 -2 `xor` 3 = -3
2379  
2380 -1 `xor` -3 = 2
2381 -1 `xor` -2 = 1
2382 -1 `xor` -1 = 0
2383 -1 `xor` 1 = -2
2384 -1 `xor` 2 = -3
2385 -1 `xor` 3 = -4
2386  
2387 0 `xor` -3 = -3
2388 0 `xor` -2 = -2
2389 0 `xor` -1 = -1
2390 0 `xor` 1 = 1
2391 0 `xor` 2 = 2
2392 0 `xor` 3 = 3
2393  
2394 1 `xor` -3 = -4
2395 1 `xor` -2 = -1
2396 1 `xor` -1 = -2
2397 1 `xor` 1 = 0
2398 1 `xor` 2 = 3
2399 1 `xor` 3 = 2
2400  
2401 2 `xor` -3 = -1
2402 2 `xor` -2 = -4
2403 2 `xor` -1 = -3
2404 2 `xor` 1 = 3
2405 2 `xor` 2 = 0
2406 2 `xor` 3 = 1
2407  
2408 3 `xor` -3 = -2
2409 3 `xor` -2 = -3
2410 3 `xor` -1 = -4
2411 3 `xor` 1 = 2
2412 3 `xor` 2 = 1
2413 3 `xor` 3 = 0
2414  
2415 #
2416 complement -3 = 2
2417 complement -2 = 1
2418 complement -1 = 0
2419 complement 0 = -1
2420 complement 1 = -2
2421 complement 2 = -3
2422 complement 3 = -4
2423 #
2424 -3 `shiftL` 0 = -3
2425 -3 `shiftL` 1 = -6
2426 -3 `shiftL` 2 = -12
2427 -3 `shiftL` 3 = -24
2428  
2429 -2 `shiftL` 0 = -2
2430 -2 `shiftL` 1 = -4
2431 -2 `shiftL` 2 = -8
2432 -2 `shiftL` 3 = -16
2433  
2434 -1 `shiftL` 0 = -1
2435 -1 `shiftL` 1 = -2
2436 -1 `shiftL` 2 = -4
2437 -1 `shiftL` 3 = -8
2438  
2439 0 `shiftL` 0 = 0
2440 0 `shiftL` 1 = 0
2441 0 `shiftL` 2 = 0
2442 0 `shiftL` 3 = 0
2443  
2444 1 `shiftL` 0 = 1
2445 1 `shiftL` 1 = 2
2446 1 `shiftL` 2 = 4
2447 1 `shiftL` 3 = 8
2448  
2449 2 `shiftL` 0 = 2
2450 2 `shiftL` 1 = 4
2451 2 `shiftL` 2 = 8
2452 2 `shiftL` 3 = 16
2453  
2454 3 `shiftL` 0 = 3
2455 3 `shiftL` 1 = 6
2456 3 `shiftL` 2 = 12
2457 3 `shiftL` 3 = 24
2458  
2459 #
2460 -3 `shiftR` 0 = -3
2461 -3 `shiftR` 1 = -2
2462 -3 `shiftR` 2 = -1
2463 -3 `shiftR` 3 = -1
2464  
2465 -2 `shiftR` 0 = -2
2466 -2 `shiftR` 1 = -1
2467 -2 `shiftR` 2 = -1
2468 -2 `shiftR` 3 = -1
2469  
2470 -1 `shiftR` 0 = -1
2471 -1 `shiftR` 1 = -1
2472 -1 `shiftR` 2 = -1
2473 -1 `shiftR` 3 = -1
2474  
2475 0 `shiftR` 0 = 0
2476 0 `shiftR` 1 = 0
2477 0 `shiftR` 2 = 0
2478 0 `shiftR` 3 = 0
2479  
2480 1 `shiftR` 0 = 1
2481 1 `shiftR` 1 = 0
2482 1 `shiftR` 2 = 0
2483 1 `shiftR` 3 = 0
2484  
2485 2 `shiftR` 0 = 2
2486 2 `shiftR` 1 = 1
2487 2 `shiftR` 2 = 0
2488 2 `shiftR` 3 = 0
2489  
2490 3 `shiftR` 0 = 3
2491 3 `shiftR` 1 = 1
2492 3 `shiftR` 2 = 0
2493 3 `shiftR` 3 = 0
2494  
2495 #
2496 -3 `rotate` -3 = -24545
2497 -3 `rotate` -2 = 16447
2498 -3 `rotate` -1 = -32642
2499 -3 `rotate` 0 = -3
2500 -3 `rotate` 1 = -5
2501 -3 `rotate` 2 = -9
2502 -3 `rotate` 3 = -17
2503  
2504 -2 `rotate` -3 = -16353
2505 -2 `rotate` -2 = -32705
2506 -2 `rotate` -1 = 127
2507 -2 `rotate` 0 = -2
2508 -2 `rotate` 1 = -3
2509 -2 `rotate` 2 = -5
2510 -2 `rotate` 3 = -9
2511  
2512 -1 `rotate` -3 = -8161
2513 -1 `rotate` -2 = -16321
2514 -1 `rotate` -1 = -32641
2515 -1 `rotate` 0 = -1
2516 -1 `rotate` 1 = -1
2517 -1 `rotate` 2 = -1
2518 -1 `rotate` 3 = -1
2519  
2520 0 `rotate` -3 = 0
2521 0 `rotate` -2 = 0
2522 0 `rotate` -1 = 0
2523 0 `rotate` 0 = 0
2524 0 `rotate` 1 = 0
2525 0 `rotate` 2 = 0
2526 0 `rotate` 3 = 0
2527  
2528 1 `rotate` -3 = 8192
2529 1 `rotate` -2 = 16384
2530 1 `rotate` -1 = -32768
2531 1 `rotate` 0 = 1
2532 1 `rotate` 1 = 2
2533 1 `rotate` 2 = 4
2534 1 `rotate` 3 = 8
2535  
2536 2 `rotate` -3 = 16384
2537 2 `rotate` -2 = -32768
2538 2 `rotate` -1 = 1
2539 2 `rotate` 0 = 2
2540 2 `rotate` 1 = 4
2541 2 `rotate` 2 = 8
2542 2 `rotate` 3 = 16
2543  
2544 3 `rotate` -3 = 24576
2545 3 `rotate` -2 = -16384
2546 3 `rotate` -1 = -32767
2547 3 `rotate` 0 = 3
2548 3 `rotate` 1 = 6
2549 3 `rotate` 2 = 12
2550 3 `rotate` 3 = 24
2551  
2552 #
2553 bit 0 = 1
2554 bit 1 = 2
2555 bit 2 = 4
2556 bit 3 = 8
2557 #
2558 -3 `setBit` 0 = -3
2559 -3 `setBit` 1 = -1
2560 -3 `setBit` 2 = -3
2561 -3 `setBit` 3 = -3
2562  
2563 -2 `setBit` 0 = -1
2564 -2 `setBit` 1 = -2
2565 -2 `setBit` 2 = -2
2566 -2 `setBit` 3 = -2
2567  
2568 -1 `setBit` 0 = -1
2569 -1 `setBit` 1 = -1
2570 -1 `setBit` 2 = -1
2571 -1 `setBit` 3 = -1
2572  
2573 0 `setBit` 0 = 1
2574 0 `setBit` 1 = 2
2575 0 `setBit` 2 = 4
2576 0 `setBit` 3 = 8
2577  
2578 1 `setBit` 0 = 1
2579 1 `setBit` 1 = 3
2580 1 `setBit` 2 = 5
2581 1 `setBit` 3 = 9
2582  
2583 2 `setBit` 0 = 3
2584 2 `setBit` 1 = 2
2585 2 `setBit` 2 = 6
2586 2 `setBit` 3 = 10
2587  
2588 3 `setBit` 0 = 3
2589 3 `setBit` 1 = 3
2590 3 `setBit` 2 = 7
2591 3 `setBit` 3 = 11
2592  
2593 #
2594 -3 `clearBit` 0 = -4
2595 -3 `clearBit` 1 = -3
2596 -3 `clearBit` 2 = -7
2597 -3 `clearBit` 3 = -11
2598  
2599 -2 `clearBit` 0 = -2
2600 -2 `clearBit` 1 = -4
2601 -2 `clearBit` 2 = -6
2602 -2 `clearBit` 3 = -10
2603  
2604 -1 `clearBit` 0 = -2
2605 -1 `clearBit` 1 = -3
2606 -1 `clearBit` 2 = -5
2607 -1 `clearBit` 3 = -9
2608  
2609 0 `clearBit` 0 = 0
2610 0 `clearBit` 1 = 0
2611 0 `clearBit` 2 = 0
2612 0 `clearBit` 3 = 0
2613  
2614 1 `clearBit` 0 = 0
2615 1 `clearBit` 1 = 1
2616 1 `clearBit` 2 = 1
2617 1 `clearBit` 3 = 1
2618  
2619 2 `clearBit` 0 = 2
2620 2 `clearBit` 1 = 0
2621 2 `clearBit` 2 = 2
2622 2 `clearBit` 3 = 2
2623  
2624 3 `clearBit` 0 = 2
2625 3 `clearBit` 1 = 1
2626 3 `clearBit` 2 = 3
2627 3 `clearBit` 3 = 3
2628  
2629 #
2630 -3 `complementBit` 0 = -4
2631 -3 `complementBit` 1 = -1
2632 -3 `complementBit` 2 = -7
2633 -3 `complementBit` 3 = -11
2634  
2635 -2 `complementBit` 0 = -1
2636 -2 `complementBit` 1 = -4
2637 -2 `complementBit` 2 = -6
2638 -2 `complementBit` 3 = -10
2639  
2640 -1 `complementBit` 0 = -2
2641 -1 `complementBit` 1 = -3
2642 -1 `complementBit` 2 = -5
2643 -1 `complementBit` 3 = -9
2644  
2645 0 `complementBit` 0 = 1
2646 0 `complementBit` 1 = 2
2647 0 `complementBit` 2 = 4
2648 0 `complementBit` 3 = 8
2649  
2650 1 `complementBit` 0 = 0
2651 1 `complementBit` 1 = 3
2652 1 `complementBit` 2 = 5
2653 1 `complementBit` 3 = 9
2654  
2655 2 `complementBit` 0 = 3
2656 2 `complementBit` 1 = 0
2657 2 `complementBit` 2 = 6
2658 2 `complementBit` 3 = 10
2659  
2660 3 `complementBit` 0 = 2
2661 3 `complementBit` 1 = 1
2662 3 `complementBit` 2 = 7
2663 3 `complementBit` 3 = 11
2664  
2665 #
2666 -3 `testBit` 0 = True
2667 -3 `testBit` 1 = False
2668 -3 `testBit` 2 = True
2669 -3 `testBit` 3 = True
2670  
2671 -2 `testBit` 0 = False
2672 -2 `testBit` 1 = True
2673 -2 `testBit` 2 = True
2674 -2 `testBit` 3 = True
2675  
2676 -1 `testBit` 0 = True
2677 -1 `testBit` 1 = True
2678 -1 `testBit` 2 = True
2679 -1 `testBit` 3 = True
2680  
2681 0 `testBit` 0 = False
2682 0 `testBit` 1 = False
2683 0 `testBit` 2 = False
2684 0 `testBit` 3 = False
2685  
2686 1 `testBit` 0 = True
2687 1 `testBit` 1 = False
2688 1 `testBit` 2 = False
2689 1 `testBit` 3 = False
2690  
2691 2 `testBit` 0 = False
2692 2 `testBit` 1 = True
2693 2 `testBit` 2 = False
2694 2 `testBit` 3 = False
2695  
2696 3 `testBit` 0 = True
2697 3 `testBit` 1 = True
2698 3 `testBit` 2 = False
2699 3 `testBit` 3 = False
2700  
2701 #
2702 bitSize -3 = 16
2703 bitSize -2 = 16
2704 bitSize -1 = 16
2705 bitSize 0 = 16
2706 bitSize 1 = 16
2707 bitSize 2 = 16
2708 bitSize 3 = 16
2709 #
2710 isSigned -3 = True
2711 isSigned -2 = True
2712 isSigned -1 = True
2713 isSigned 0 = True
2714 isSigned 1 = True
2715 isSigned 2 = True
2716 isSigned 3 = True
2717 #
2718 --------------------------------
2719 --------------------------------
2720 --Testing Int32
2721 --------------------------------
2722 testBounded
2723 (2147483647,-2147483648,-2147483647)
2724 (2147483646,2147483647,-2147483648)
2725 testEnum
2726 [0,1,2,3,4,5,6,7,8,9]
2727 [0,2,4,6,8,10,12,14,16,18]
2728 [0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
2729 [0,2,4,6,8,10,12,14,16,18,20]
2730 testReadShow
2731 [-3,-2,-1,0,1,2,3]
2732 [-3,-2,-1,0,1,2,3]
2733 testEq
2734 -3 == -3 = True
2735 -3 == -2 = False
2736 -3 == -1 = False
2737 -3 == 0 = False
2738 -3 == 1 = False
2739 -3 == 2 = False
2740 -3 == 3 = False
2741  
2742 -2 == -3 = False
2743 -2 == -2 = True
2744 -2 == -1 = False
2745 -2 == 0 = False
2746 -2 == 1 = False
2747 -2 == 2 = False
2748 -2 == 3 = False
2749  
2750 -1 == -3 = False
2751 -1 == -2 = False
2752 -1 == -1 = True
2753 -1 == 0 = False
2754 -1 == 1 = False
2755 -1 == 2 = False
2756 -1 == 3 = False
2757  
2758 0 == -3 = False
2759 0 == -2 = False
2760 0 == -1 = False
2761 0 == 0 = True
2762 0 == 1 = False
2763 0 == 2 = False
2764 0 == 3 = False
2765  
2766 1 == -3 = False
2767 1 == -2 = False
2768 1 == -1 = False
2769 1 == 0 = False
2770 1 == 1 = True
2771 1 == 2 = False
2772 1 == 3 = False
2773  
2774 2 == -3 = False
2775 2 == -2 = False
2776 2 == -1 = False
2777 2 == 0 = False
2778 2 == 1 = False
2779 2 == 2 = True
2780 2 == 3 = False
2781  
2782 3 == -3 = False
2783 3 == -2 = False
2784 3 == -1 = False
2785 3 == 0 = False
2786 3 == 1 = False
2787 3 == 2 = False
2788 3 == 3 = True
2789  
2790 #
2791 -3 /= -3 = False
2792 -3 /= -2 = True
2793 -3 /= -1 = True
2794 -3 /= 0 = True
2795 -3 /= 1 = True
2796 -3 /= 2 = True
2797 -3 /= 3 = True
2798  
2799 -2 /= -3 = True
2800 -2 /= -2 = False
2801 -2 /= -1 = True
2802 -2 /= 0 = True
2803 -2 /= 1 = True
2804 -2 /= 2 = True
2805 -2 /= 3 = True
2806  
2807 -1 /= -3 = True
2808 -1 /= -2 = True
2809 -1 /= -1 = False
2810 -1 /= 0 = True
2811 -1 /= 1 = True
2812 -1 /= 2 = True
2813 -1 /= 3 = True
2814  
2815 0 /= -3 = True
2816 0 /= -2 = True
2817 0 /= -1 = True
2818 0 /= 0 = False
2819 0 /= 1 = True
2820 0 /= 2 = True
2821 0 /= 3 = True
2822  
2823 1 /= -3 = True
2824 1 /= -2 = True
2825 1 /= -1 = True
2826 1 /= 0 = True
2827 1 /= 1 = False
2828 1 /= 2 = True
2829 1 /= 3 = True
2830  
2831 2 /= -3 = True
2832 2 /= -2 = True
2833 2 /= -1 = True
2834 2 /= 0 = True
2835 2 /= 1 = True
2836 2 /= 2 = False
2837 2 /= 3 = True
2838  
2839 3 /= -3 = True
2840 3 /= -2 = True
2841 3 /= -1 = True
2842 3 /= 0 = True
2843 3 /= 1 = True
2844 3 /= 2 = True
2845 3 /= 3 = False
2846  
2847 #
2848 testOrd
2849 -3 <= -3 = True
2850 -3 <= -2 = True
2851 -3 <= -1 = True
2852 -3 <= 0 = True
2853 -3 <= 1 = True
2854 -3 <= 2 = True
2855 -3 <= 3 = True
2856  
2857 -2 <= -3 = False
2858 -2 <= -2 = True
2859 -2 <= -1 = True
2860 -2 <= 0 = True
2861 -2 <= 1 = True
2862 -2 <= 2 = True
2863 -2 <= 3 = True
2864  
2865 -1 <= -3 = False
2866 -1 <= -2 = False
2867 -1 <= -1 = True
2868 -1 <= 0 = True
2869 -1 <= 1 = True
2870 -1 <= 2 = True
2871 -1 <= 3 = True
2872  
2873 0 <= -3 = False
2874 0 <= -2 = False
2875 0 <= -1 = False
2876 0 <= 0 = True
2877 0 <= 1 = True
2878 0 <= 2 = True
2879 0 <= 3 = True
2880  
2881 1 <= -3 = False
2882 1 <= -2 = False
2883 1 <= -1 = False
2884 1 <= 0 = False
2885 1 <= 1 = True
2886 1 <= 2 = True
2887 1 <= 3 = True
2888  
2889 2 <= -3 = False
2890 2 <= -2 = False
2891 2 <= -1 = False
2892 2 <= 0 = False
2893 2 <= 1 = False
2894 2 <= 2 = True
2895 2 <= 3 = True
2896  
2897 3 <= -3 = False
2898 3 <= -2 = False
2899 3 <= -1 = False
2900 3 <= 0 = False
2901 3 <= 1 = False
2902 3 <= 2 = False
2903 3 <= 3 = True
2904  
2905 #
2906 -3 <  -3 = False
2907 -3 <  -2 = True
2908 -3 <  -1 = True
2909 -3 <  0 = True
2910 -3 <  1 = True
2911 -3 <  2 = True
2912 -3 <  3 = True
2913  
2914 -2 <  -3 = False
2915 -2 <  -2 = False
2916 -2 <  -1 = True
2917 -2 <  0 = True
2918 -2 <  1 = True
2919 -2 <  2 = True
2920 -2 <  3 = True
2921  
2922 -1 <  -3 = False
2923 -1 <  -2 = False
2924 -1 <  -1 = False
2925 -1 <  0 = True
2926 -1 <  1 = True
2927 -1 <  2 = True
2928 -1 <  3 = True
2929  
2930 0 <  -3 = False
2931 0 <  -2 = False
2932 0 <  -1 = False
2933 0 <  0 = False
2934 0 <  1 = True
2935 0 <  2 = True
2936 0 <  3 = True
2937  
2938 1 <  -3 = False
2939 1 <  -2 = False
2940 1 <  -1 = False
2941 1 <  0 = False
2942 1 <  1 = False
2943 1 <  2 = True
2944 1 <  3 = True
2945  
2946 2 <  -3 = False
2947 2 <  -2 = False
2948 2 <  -1 = False
2949 2 <  0 = False
2950 2 <  1 = False
2951 2 <  2 = False
2952 2 <  3 = True
2953  
2954 3 <  -3 = False
2955 3 <  -2 = False
2956 3 <  -1 = False
2957 3 <  0 = False
2958 3 <  1 = False
2959 3 <  2 = False
2960 3 <  3 = False
2961  
2962 #
2963 -3 >  -3 = False
2964 -3 >  -2 = False
2965 -3 >  -1 = False
2966 -3 >  0 = False
2967 -3 >  1 = False
2968 -3 >  2 = False
2969 -3 >  3 = False
2970  
2971 -2 >  -3 = True
2972 -2 >  -2 = False
2973 -2 >  -1 = False
2974 -2 >  0 = False
2975 -2 >  1 = False
2976 -2 >  2 = False
2977 -2 >  3 = False
2978  
2979 -1 >  -3 = True
2980 -1 >  -2 = True
2981 -1 >  -1 = False
2982 -1 >  0 = False
2983 -1 >  1 = False
2984 -1 >  2 = False
2985 -1 >  3 = False
2986  
2987 0 >  -3 = True
2988 0 >  -2 = True
2989 0 >  -1 = True
2990 0 >  0 = False
2991 0 >  1 = False
2992 0 >  2 = False
2993 0 >  3 = False
2994  
2995 1 >  -3 = True
2996 1 >  -2 = True
2997 1 >  -1 = True
2998 1 >  0 = True
2999 1 >  1 = False
3000 1 >  2 = False
3001 1 >  3 = False
3002  
3003 2 >  -3 = True
3004 2 >  -2 = True
3005 2 >  -1 = True
3006 2 >  0 = True
3007 2 >  1 = True
3008 2 >  2 = False
3009 2 >  3 = False
3010  
3011 3 >  -3 = True
3012 3 >  -2 = True
3013 3 >  -1 = True
3014 3 >  0 = True
3015 3 >  1 = True
3016 3 >  2 = True
3017 3 >  3 = False
3018  
3019 #
3020 -3 >= -3 = True
3021 -3 >= -2 = False
3022 -3 >= -1 = False
3023 -3 >= 0 = False
3024 -3 >= 1 = False
3025 -3 >= 2 = False
3026 -3 >= 3 = False
3027  
3028 -2 >= -3 = True
3029 -2 >= -2 = True
3030 -2 >= -1 = False
3031 -2 >= 0 = False
3032 -2 >= 1 = False
3033 -2 >= 2 = False
3034 -2 >= 3 = False
3035  
3036 -1 >= -3 = True
3037 -1 >= -2 = True
3038 -1 >= -1 = True
3039 -1 >= 0 = False
3040 -1 >= 1 = False
3041 -1 >= 2 = False
3042 -1 >= 3 = False
3043  
3044 0 >= -3 = True
3045 0 >= -2 = True
3046 0 >= -1 = True
3047 0 >= 0 = True
3048 0 >= 1 = False
3049 0 >= 2 = False
3050 0 >= 3 = False
3051  
3052 1 >= -3 = True
3053 1 >= -2 = True
3054 1 >= -1 = True
3055 1 >= 0 = True
3056 1 >= 1 = True
3057 1 >= 2 = False
3058 1 >= 3 = False
3059  
3060 2 >= -3 = True
3061 2 >= -2 = True
3062 2 >= -1 = True
3063 2 >= 0 = True
3064 2 >= 1 = True
3065 2 >= 2 = True
3066 2 >= 3 = False
3067  
3068 3 >= -3 = True
3069 3 >= -2 = True
3070 3 >= -1 = True
3071 3 >= 0 = True
3072 3 >= 1 = True
3073 3 >= 2 = True
3074 3 >= 3 = True
3075  
3076 #
3077 -3 `compare` -3 = EQ
3078 -3 `compare` -2 = LT
3079 -3 `compare` -1 = LT
3080 -3 `compare` 0 = LT
3081 -3 `compare` 1 = LT
3082 -3 `compare` 2 = LT
3083 -3 `compare` 3 = LT
3084  
3085 -2 `compare` -3 = GT
3086 -2 `compare` -2 = EQ
3087 -2 `compare` -1 = LT
3088 -2 `compare` 0 = LT
3089 -2 `compare` 1 = LT
3090 -2 `compare` 2 = LT
3091 -2 `compare` 3 = LT
3092  
3093 -1 `compare` -3 = GT
3094 -1 `compare` -2 = GT
3095 -1 `compare` -1 = EQ
3096 -1 `compare` 0 = LT
3097 -1 `compare` 1 = LT
3098 -1 `compare` 2 = LT
3099 -1 `compare` 3 = LT
3100  
3101 0 `compare` -3 = GT
3102 0 `compare` -2 = GT
3103 0 `compare` -1 = GT
3104 0 `compare` 0 = EQ
3105 0 `compare` 1 = LT
3106 0 `compare` 2 = LT
3107 0 `compare` 3 = LT
3108  
3109 1 `compare` -3 = GT
3110 1 `compare` -2 = GT
3111 1 `compare` -1 = GT
3112 1 `compare` 0 = GT
3113 1 `compare` 1 = EQ
3114 1 `compare` 2 = LT
3115 1 `compare` 3 = LT
3116  
3117 2 `compare` -3 = GT
3118 2 `compare` -2 = GT
3119 2 `compare` -1 = GT
3120 2 `compare` 0 = GT
3121 2 `compare` 1 = GT
3122 2 `compare` 2 = EQ
3123 2 `compare` 3 = LT
3124  
3125 3 `compare` -3 = GT
3126 3 `compare` -2 = GT
3127 3 `compare` -1 = GT
3128 3 `compare` 0 = GT
3129 3 `compare` 1 = GT
3130 3 `compare` 2 = GT
3131 3 `compare` 3 = EQ
3132  
3133 #
3134 testNum
3135 -3 + -3 = -6
3136 -3 + -2 = -5
3137 -3 + -1 = -4
3138 -3 + 0 = -3
3139 -3 + 1 = -2
3140 -3 + 2 = -1
3141 -3 + 3 = 0
3142  
3143 -2 + -3 = -5
3144 -2 + -2 = -4
3145 -2 + -1 = -3
3146 -2 + 0 = -2
3147 -2 + 1 = -1
3148 -2 + 2 = 0
3149 -2 + 3 = 1
3150  
3151 -1 + -3 = -4
3152 -1 + -2 = -3
3153 -1 + -1 = -2
3154 -1 + 0 = -1
3155 -1 + 1 = 0
3156 -1 + 2 = 1
3157 -1 + 3 = 2
3158  
3159 0 + -3 = -3
3160 0 + -2 = -2
3161 0 + -1 = -1
3162 0 + 0 = 0
3163 0 + 1 = 1
3164 0 + 2 = 2
3165 0 + 3 = 3
3166  
3167 1 + -3 = -2
3168 1 + -2 = -1
3169 1 + -1 = 0
3170 1 + 0 = 1
3171 1 + 1 = 2
3172 1 + 2 = 3
3173 1 + 3 = 4
3174  
3175 2 + -3 = -1
3176 2 + -2 = 0
3177 2 + -1 = 1
3178 2 + 0 = 2
3179 2 + 1 = 3
3180 2 + 2 = 4
3181 2 + 3 = 5
3182  
3183 3 + -3 = 0
3184 3 + -2 = 1
3185 3 + -1 = 2
3186 3 + 0 = 3
3187 3 + 1 = 4
3188 3 + 2 = 5
3189 3 + 3 = 6
3190  
3191 #
3192 -3 - -3 = 0
3193 -3 - -2 = -1
3194 -3 - -1 = -2
3195 -3 - 0 = -3
3196 -3 - 1 = -4
3197 -3 - 2 = -5
3198 -3 - 3 = -6
3199  
3200 -2 - -3 = 1
3201 -2 - -2 = 0
3202 -2 - -1 = -1
3203 -2 - 0 = -2
3204 -2 - 1 = -3
3205 -2 - 2 = -4
3206 -2 - 3 = -5
3207  
3208 -1 - -3 = 2
3209 -1 - -2 = 1
3210 -1 - -1 = 0
3211 -1 - 0 = -1
3212 -1 - 1 = -2
3213 -1 - 2 = -3
3214 -1 - 3 = -4
3215  
3216 0 - -3 = 3
3217 0 - -2 = 2
3218 0 - -1 = 1
3219 0 - 0 = 0
3220 0 - 1 = -1
3221 0 - 2 = -2
3222 0 - 3 = -3
3223  
3224 1 - -3 = 4
3225 1 - -2 = 3
3226 1 - -1 = 2
3227 1 - 0 = 1
3228 1 - 1 = 0
3229 1 - 2 = -1
3230 1 - 3 = -2
3231  
3232 2 - -3 = 5
3233 2 - -2 = 4
3234 2 - -1 = 3
3235 2 - 0 = 2
3236 2 - 1 = 1
3237 2 - 2 = 0
3238 2 - 3 = -1
3239  
3240 3 - -3 = 6
3241 3 - -2 = 5
3242 3 - -1 = 4
3243 3 - 0 = 3
3244 3 - 1 = 2
3245 3 - 2 = 1
3246 3 - 3 = 0
3247  
3248 #
3249 -3 * -3 = 9
3250 -3 * -2 = 6
3251 -3 * -1 = 3
3252 -3 * 0 = 0
3253 -3 * 1 = -3
3254 -3 * 2 = -6
3255 -3 * 3 = -9
3256  
3257 -2 * -3 = 6
3258 -2 * -2 = 4
3259 -2 * -1 = 2
3260 -2 * 0 = 0
3261 -2 * 1 = -2
3262 -2 * 2 = -4
3263 -2 * 3 = -6
3264  
3265 -1 * -3 = 3
3266 -1 * -2 = 2
3267 -1 * -1 = 1
3268 -1 * 0 = 0
3269 -1 * 1 = -1
3270 -1 * 2 = -2
3271 -1 * 3 = -3
3272  
3273 0 * -3 = 0
3274 0 * -2 = 0
3275 0 * -1 = 0
3276 0 * 0 = 0
3277 0 * 1 = 0
3278 0 * 2 = 0
3279 0 * 3 = 0
3280  
3281 1 * -3 = -3
3282 1 * -2 = -2
3283 1 * -1 = -1
3284 1 * 0 = 0
3285 1 * 1 = 1
3286 1 * 2 = 2
3287 1 * 3 = 3
3288  
3289 2 * -3 = -6
3290 2 * -2 = -4
3291 2 * -1 = -2
3292 2 * 0 = 0
3293 2 * 1 = 2
3294 2 * 2 = 4
3295 2 * 3 = 6
3296  
3297 3 * -3 = -9
3298 3 * -2 = -6
3299 3 * -1 = -3
3300 3 * 0 = 0
3301 3 * 1 = 3
3302 3 * 2 = 6
3303 3 * 3 = 9
3304  
3305 #
3306 negate -3 = 3
3307 negate -2 = 2
3308 negate -1 = 1
3309 negate 0 = 0
3310 negate 1 = -1
3311 negate 2 = -2
3312 negate 3 = -3
3313 #
3314 testReal
3315 toRational -3 = -3 % 1
3316 toRational -2 = -2 % 1
3317 toRational -1 = -1 % 1
3318 toRational 0 = 0 % 1
3319 toRational 1 = 1 % 1
3320 toRational 2 = 2 % 1
3321 toRational 3 = 3 % 1
3322 #
3323 testIntegral
3324 -3 `divMod`  -3 = (1,0)
3325 -3 `divMod`  -2 = (1,-1)
3326 -3 `divMod`  -1 = (3,0)
3327 -3 `divMod`  1 = (-3,0)
3328 -3 `divMod`  2 = (-2,1)
3329 -3 `divMod`  3 = (-1,0)
3330  
3331 -2 `divMod`  -3 = (0,-2)
3332 -2 `divMod`  -2 = (1,0)
3333 -2 `divMod`  -1 = (2,0)
3334 -2 `divMod`  1 = (-2,0)
3335 -2 `divMod`  2 = (-1,0)
3336 -2 `divMod`  3 = (-1,1)
3337  
3338 -1 `divMod`  -3 = (0,-1)
3339 -1 `divMod`  -2 = (0,-1)
3340 -1 `divMod`  -1 = (1,0)
3341 -1 `divMod`  1 = (-1,0)
3342 -1 `divMod`  2 = (-1,1)
3343 -1 `divMod`  3 = (-1,2)
3344  
3345 0 `divMod`  -3 = (0,0)
3346 0 `divMod`  -2 = (0,0)
3347 0 `divMod`  -1 = (0,0)
3348 0 `divMod`  1 = (0,0)
3349 0 `divMod`  2 = (0,0)
3350 0 `divMod`  3 = (0,0)
3351  
3352 1 `divMod`  -3 = (-1,-2)
3353 1 `divMod`  -2 = (-1,-1)
3354 1 `divMod`  -1 = (-1,0)
3355 1 `divMod`  1 = (1,0)
3356 1 `divMod`  2 = (0,1)
3357 1 `divMod`  3 = (0,1)
3358  
3359 2 `divMod`  -3 = (-1,-1)
3360 2 `divMod`  -2 = (-1,0)
3361 2 `divMod`  -1 = (-2,0)
3362 2 `divMod`  1 = (2,0)
3363 2 `divMod`  2 = (1,0)
3364 2 `divMod`  3 = (0,2)
3365  
3366 3 `divMod`  -3 = (-1,0)
3367 3 `divMod`  -2 = (-2,-1)
3368 3 `divMod`  -1 = (-3,0)
3369 3 `divMod`  1 = (3,0)
3370 3 `divMod`  2 = (1,1)
3371 3 `divMod`  3 = (1,0)
3372  
3373 #
3374 -3 `div`     -3 = 1
3375 -3 `div`     -2 = 1
3376 -3 `div`     -1 = 3
3377 -3 `div`     1 = -3
3378 -3 `div`     2 = -2
3379 -3 `div`     3 = -1
3380  
3381 -2 `div`     -3 = 0
3382 -2 `div`     -2 = 1
3383 -2 `div`     -1 = 2
3384 -2 `div`     1 = -2
3385 -2 `div`     2 = -1
3386 -2 `div`     3 = -1
3387  
3388 -1 `div`     -3 = 0
3389 -1 `div`     -2 = 0
3390 -1 `div`     -1 = 1
3391 -1 `div`     1 = -1
3392 -1 `div`     2 = -1
3393 -1 `div`     3 = -1
3394  
3395 0 `div`     -3 = 0
3396 0 `div`     -2 = 0
3397 0 `div`     -1 = 0
3398 0 `div`     1 = 0
3399 0 `div`     2 = 0
3400 0 `div`     3 = 0
3401  
3402 1 `div`     -3 = -1
3403 1 `div`     -2 = -1
3404 1 `div`     -1 = -1
3405 1 `div`     1 = 1
3406 1 `div`     2 = 0
3407 1 `div`     3 = 0
3408  
3409 2 `div`     -3 = -1
3410 2 `div`     -2 = -1
3411 2 `div`     -1 = -2
3412 2 `div`     1 = 2
3413 2 `div`     2 = 1
3414 2 `div`     3 = 0
3415  
3416 3 `div`     -3 = -1
3417 3 `div`     -2 = -2
3418 3 `div`     -1 = -3
3419 3 `div`     1 = 3
3420 3 `div`     2 = 1
3421 3 `div`     3 = 1
3422  
3423 #
3424 -3 `mod`     -3 = 0
3425 -3 `mod`     -2 = -1
3426 -3 `mod`     -1 = 0
3427 -3 `mod`     1 = 0
3428 -3 `mod`     2 = 1
3429 -3 `mod`     3 = 0
3430  
3431 -2 `mod`     -3 = -2
3432 -2 `mod`     -2 = 0
3433 -2 `mod`     -1 = 0
3434 -2 `mod`     1 = 0
3435 -2 `mod`     2 = 0
3436 -2 `mod`     3 = 1
3437  
3438 -1 `mod`     -3 = -1
3439 -1 `mod`     -2 = -1
3440 -1 `mod`     -1 = 0
3441 -1 `mod`     1 = 0
3442 -1 `mod`     2 = 1
3443 -1 `mod`     3 = 2
3444  
3445 0 `mod`     -3 = 0
3446 0 `mod`     -2 = 0
3447 0 `mod`     -1 = 0
3448 0 `mod`     1 = 0
3449 0 `mod`     2 = 0
3450 0 `mod`     3 = 0
3451  
3452 1 `mod`     -3 = -2
3453 1 `mod`     -2 = -1
3454 1 `mod`     -1 = 0
3455 1 `mod`     1 = 0
3456 1 `mod`     2 = 1
3457 1 `mod`     3 = 1
3458  
3459 2 `mod`     -3 = -1
3460 2 `mod`     -2 = 0
3461 2 `mod`     -1 = 0
3462 2 `mod`     1 = 0
3463 2 `mod`     2 = 0
3464 2 `mod`     3 = 2
3465  
3466 3 `mod`     -3 = 0
3467 3 `mod`     -2 = -1
3468 3 `mod`     -1 = 0
3469 3 `mod`     1 = 0
3470 3 `mod`     2 = 1
3471 3 `mod`     3 = 0
3472  
3473 #
3474 -3 `quotRem` -3 = (1,0)
3475 -3 `quotRem` -2 = (1,-1)
3476 -3 `quotRem` -1 = (3,0)
3477 -3 `quotRem` 1 = (-3,0)
3478 -3 `quotRem` 2 = (-1,-1)
3479 -3 `quotRem` 3 = (-1,0)
3480  
3481 -2 `quotRem` -3 = (0,-2)
3482 -2 `quotRem` -2 = (1,0)
3483 -2 `quotRem` -1 = (2,0)
3484 -2 `quotRem` 1 = (-2,0)
3485 -2 `quotRem` 2 = (-1,0)
3486 -2 `quotRem` 3 = (0,-2)
3487  
3488 -1 `quotRem` -3 = (0,-1)
3489 -1 `quotRem` -2 = (0,-1)
3490 -1 `quotRem` -1 = (1,0)
3491 -1 `quotRem` 1 = (-1,0)
3492 -1 `quotRem` 2 = (0,-1)
3493 -1 `quotRem` 3 = (0,-1)
3494  
3495 0 `quotRem` -3 = (0,0)
3496 0 `quotRem` -2 = (0,0)
3497 0 `quotRem` -1 = (0,0)
3498 0 `quotRem` 1 = (0,0)
3499 0 `quotRem` 2 = (0,0)
3500 0 `quotRem` 3 = (0,0)
3501  
3502 1 `quotRem` -3 = (0,1)
3503 1 `quotRem` -2 = (0,1)
3504 1 `quotRem` -1 = (-1,0)
3505 1 `quotRem` 1 = (1,0)
3506 1 `quotRem` 2 = (0,1)
3507 1 `quotRem` 3 = (0,1)
3508  
3509 2 `quotRem` -3 = (0,2)
3510 2 `quotRem` -2 = (-1,0)
3511 2 `quotRem` -1 = (-2,0)
3512 2 `quotRem` 1 = (2,0)
3513 2 `quotRem` 2 = (1,0)
3514 2 `quotRem` 3 = (0,2)
3515  
3516 3 `quotRem` -3 = (-1,0)
3517 3 `quotRem` -2 = (-1,1)
3518 3 `quotRem` -1 = (-3,0)
3519 3 `quotRem` 1 = (3,0)
3520 3 `quotRem` 2 = (1,1)
3521 3 `quotRem` 3 = (1,0)
3522  
3523 #
3524 -3 `quot`    -3 = 1
3525 -3 `quot`    -2 = 1
3526 -3 `quot`    -1 = 3
3527 -3 `quot`    1 = -3
3528 -3 `quot`    2 = -1
3529 -3 `quot`    3 = -1
3530  
3531 -2 `quot`    -3 = 0
3532 -2 `quot`    -2 = 1
3533 -2 `quot`    -1 = 2
3534 -2 `quot`    1 = -2
3535 -2 `quot`    2 = -1
3536 -2 `quot`    3 = 0
3537  
3538 -1 `quot`    -3 = 0
3539 -1 `quot`    -2 = 0
3540 -1 `quot`    -1 = 1
3541 -1 `quot`    1 = -1
3542 -1 `quot`    2 = 0
3543 -1 `quot`    3 = 0
3544  
3545 0 `quot`    -3 = 0
3546 0 `quot`    -2 = 0
3547 0 `quot`    -1 = 0
3548 0 `quot`    1 = 0
3549 0 `quot`    2 = 0
3550 0 `quot`    3 = 0
3551  
3552 1 `quot`    -3 = 0
3553 1 `quot`    -2 = 0
3554 1 `quot`    -1 = -1
3555 1 `quot`    1 = 1
3556 1 `quot`    2 = 0
3557 1 `quot`    3 = 0
3558  
3559 2 `quot`    -3 = 0
3560 2 `quot`    -2 = -1
3561 2 `quot`    -1 = -2
3562 2 `quot`    1 = 2
3563 2 `quot`    2 = 1
3564 2 `quot`    3 = 0
3565  
3566 3 `quot`    -3 = -1
3567 3 `quot`    -2 = -1
3568 3 `quot`    -1 = -3
3569 3 `quot`    1 = 3
3570 3 `quot`    2 = 1
3571 3 `quot`    3 = 1
3572  
3573 #
3574 -3 `rem`     -3 = 0
3575 -3 `rem`     -2 = -1
3576 -3 `rem`     -1 = 0
3577 -3 `rem`     1 = 0
3578 -3 `rem`     2 = -1
3579 -3 `rem`     3 = 0
3580  
3581 -2 `rem`     -3 = -2
3582 -2 `rem`     -2 = 0
3583 -2 `rem`     -1 = 0
3584 -2 `rem`     1 = 0
3585 -2 `rem`     2 = 0
3586 -2 `rem`     3 = -2
3587  
3588 -1 `rem`     -3 = -1
3589 -1 `rem`     -2 = -1
3590 -1 `rem`     -1 = 0
3591 -1 `rem`     1 = 0
3592 -1 `rem`     2 = -1
3593 -1 `rem`     3 = -1
3594  
3595 0 `rem`     -3 = 0
3596 0 `rem`     -2 = 0
3597 0 `rem`     -1 = 0
3598 0 `rem`     1 = 0
3599 0 `rem`     2 = 0
3600 0 `rem`     3 = 0
3601  
3602 1 `rem`     -3 = 1
3603 1 `rem`     -2 = 1
3604 1 `rem`     -1 = 0
3605 1 `rem`     1 = 0
3606 1 `rem`     2 = 1
3607 1 `rem`     3 = 1
3608  
3609 2 `rem`     -3 = 2
3610 2 `rem`     -2 = 0
3611 2 `rem`     -1 = 0
3612 2 `rem`     1 = 0
3613 2 `rem`     2 = 0
3614 2 `rem`     3 = 2
3615  
3616 3 `rem`     -3 = 0
3617 3 `rem`     -2 = 1
3618 3 `rem`     -1 = 0
3619 3 `rem`     1 = 0
3620 3 `rem`     2 = 1
3621 3 `rem`     3 = 0
3622  
3623 #
3624 testBits
3625 -3 .&.   -3 = -3
3626 -3 .&.   -2 = -4
3627 -3 .&.   -1 = -3
3628 -3 .&.   1 = 1
3629 -3 .&.   2 = 0
3630 -3 .&.   3 = 1
3631  
3632 -2 .&.   -3 = -4
3633 -2 .&.   -2 = -2
3634 -2 .&.   -1 = -2
3635 -2 .&.   1 = 0
3636 -2 .&.   2 = 2
3637 -2 .&.   3 = 2
3638  
3639 -1 .&.   -3 = -3
3640 -1 .&.   -2 = -2
3641 -1 .&.   -1 = -1
3642 -1 .&.   1 = 1
3643 -1 .&.   2 = 2
3644 -1 .&.   3 = 3
3645  
3646 0 .&.   -3 = 0
3647 0 .&.   -2 = 0
3648 0 .&.   -1 = 0
3649 0 .&.   1 = 0
3650 0 .&.   2 = 0
3651 0 .&.   3 = 0
3652  
3653 1 .&.   -3 = 1
3654 1 .&.   -2 = 0
3655 1 .&.   -1 = 1
3656 1 .&.   1 = 1
3657 1 .&.   2 = 0
3658 1 .&.   3 = 1
3659  
3660 2 .&.   -3 = 0
3661 2 .&.   -2 = 2
3662 2 .&.   -1 = 2
3663 2 .&.   1 = 0
3664 2 .&.   2 = 2
3665 2 .&.   3 = 2
3666  
3667 3 .&.   -3 = 1
3668 3 .&.   -2 = 2
3669 3 .&.   -1 = 3
3670 3 .&.   1 = 1
3671 3 .&.   2 = 2
3672 3 .&.   3 = 3
3673  
3674 #
3675 -3 .|.   -3 = -3
3676 -3 .|.   -2 = -1
3677 -3 .|.   -1 = -1
3678 -3 .|.   1 = -3
3679 -3 .|.   2 = -1
3680 -3 .|.   3 = -1
3681  
3682 -2 .|.   -3 = -1
3683 -2 .|.   -2 = -2
3684 -2 .|.   -1 = -1
3685 -2 .|.   1 = -1
3686 -2 .|.   2 = -2
3687 -2 .|.   3 = -1
3688  
3689 -1 .|.   -3 = -1
3690 -1 .|.   -2 = -1
3691 -1 .|.   -1 = -1
3692 -1 .|.   1 = -1
3693 -1 .|.   2 = -1
3694 -1 .|.   3 = -1
3695  
3696 0 .|.   -3 = -3
3697 0 .|.   -2 = -2
3698 0 .|.   -1 = -1
3699 0 .|.   1 = 1
3700 0 .|.   2 = 2
3701 0 .|.   3 = 3
3702  
3703 1 .|.   -3 = -3
3704 1 .|.   -2 = -1
3705 1 .|.   -1 = -1
3706 1 .|.   1 = 1
3707 1 .|.   2 = 3
3708 1 .|.   3 = 3
3709  
3710 2 .|.   -3 = -1
3711 2 .|.   -2 = -2
3712 2 .|.   -1 = -1
3713 2 .|.   1 = 3
3714 2 .|.   2 = 2
3715 2 .|.   3 = 3
3716  
3717 3 .|.   -3 = -1
3718 3 .|.   -2 = -1
3719 3 .|.   -1 = -1
3720 3 .|.   1 = 3
3721 3 .|.   2 = 3
3722 3 .|.   3 = 3
3723  
3724 #
3725 -3 `xor` -3 = 0
3726 -3 `xor` -2 = 3
3727 -3 `xor` -1 = 2
3728 -3 `xor` 1 = -4
3729 -3 `xor` 2 = -1
3730 -3 `xor` 3 = -2
3731  
3732 -2 `xor` -3 = 3
3733 -2 `xor` -2 = 0
3734 -2 `xor` -1 = 1
3735 -2 `xor` 1 = -1
3736 -2 `xor` 2 = -4
3737 -2 `xor` 3 = -3
3738  
3739 -1 `xor` -3 = 2
3740 -1 `xor` -2 = 1
3741 -1 `xor` -1 = 0
3742 -1 `xor` 1 = -2
3743 -1 `xor` 2 = -3
3744 -1 `xor` 3 = -4
3745  
3746 0 `xor` -3 = -3
3747 0 `xor` -2 = -2
3748 0 `xor` -1 = -1
3749 0 `xor` 1 = 1
3750 0 `xor` 2 = 2
3751 0 `xor` 3 = 3
3752  
3753 1 `xor` -3 = -4
3754 1 `xor` -2 = -1
3755 1 `xor` -1 = -2
3756 1 `xor` 1 = 0
3757 1 `xor` 2 = 3
3758 1 `xor` 3 = 2
3759  
3760 2 `xor` -3 = -1
3761 2 `xor` -2 = -4
3762 2 `xor` -1 = -3
3763 2 `xor` 1 = 3
3764 2 `xor` 2 = 0
3765 2 `xor` 3 = 1
3766  
3767 3 `xor` -3 = -2
3768 3 `xor` -2 = -3
3769 3 `xor` -1 = -4
3770 3 `xor` 1 = 2
3771 3 `xor` 2 = 1
3772 3 `xor` 3 = 0
3773  
3774 #
3775 complement -3 = 2
3776 complement -2 = 1
3777 complement -1 = 0
3778 complement 0 = -1
3779 complement 1 = -2
3780 complement 2 = -3
3781 complement 3 = -4
3782 #
3783 -3 `shiftL` 0 = -3
3784 -3 `shiftL` 1 = -6
3785 -3 `shiftL` 2 = -12
3786 -3 `shiftL` 3 = -24
3787  
3788 -2 `shiftL` 0 = -2
3789 -2 `shiftL` 1 = -4
3790 -2 `shiftL` 2 = -8
3791 -2 `shiftL` 3 = -16
3792  
3793 -1 `shiftL` 0 = -1
3794 -1 `shiftL` 1 = -2
3795 -1 `shiftL` 2 = -4
3796 -1 `shiftL` 3 = -8
3797  
3798 0 `shiftL` 0 = 0
3799 0 `shiftL` 1 = 0
3800 0 `shiftL` 2 = 0
3801 0 `shiftL` 3 = 0
3802  
3803 1 `shiftL` 0 = 1
3804 1 `shiftL` 1 = 2
3805 1 `shiftL` 2 = 4
3806 1 `shiftL` 3 = 8
3807  
3808 2 `shiftL` 0 = 2
3809 2 `shiftL` 1 = 4
3810 2 `shiftL` 2 = 8
3811 2 `shiftL` 3 = 16
3812  
3813 3 `shiftL` 0 = 3
3814 3 `shiftL` 1 = 6
3815 3 `shiftL` 2 = 12
3816 3 `shiftL` 3 = 24
3817  
3818 #
3819 -3 `shiftR` 0 = -3
3820 -3 `shiftR` 1 = -2
3821 -3 `shiftR` 2 = -1
3822 -3 `shiftR` 3 = -1
3823  
3824 -2 `shiftR` 0 = -2
3825 -2 `shiftR` 1 = -1
3826 -2 `shiftR` 2 = -1
3827 -2 `shiftR` 3 = -1
3828  
3829 -1 `shiftR` 0 = -1
3830 -1 `shiftR` 1 = -1
3831 -1 `shiftR` 2 = -1
3832 -1 `shiftR` 3 = -1
3833  
3834 0 `shiftR` 0 = 0
3835 0 `shiftR` 1 = 0
3836 0 `shiftR` 2 = 0
3837 0 `shiftR` 3 = 0
3838  
3839 1 `shiftR` 0 = 1
3840 1 `shiftR` 1 = 0
3841 1 `shiftR` 2 = 0
3842 1 `shiftR` 3 = 0
3843  
3844 2 `shiftR` 0 = 2
3845 2 `shiftR` 1 = 1
3846 2 `shiftR` 2 = 0
3847 2 `shiftR` 3 = 0
3848  
3849 3 `shiftR` 0 = 3
3850 3 `shiftR` 1 = 1
3851 3 `shiftR` 2 = 0
3852 3 `shiftR` 3 = 0
3853  
3854 #
3855 -3 `rotate` -3 = -1342177281
3856 -3 `rotate` -2 = 1610612735
3857 -3 `rotate` -1 = -1073741826
3858 -3 `rotate` 0 = -3
3859 -3 `rotate` 1 = -6
3860 -3 `rotate` 2 = -11
3861 -3 `rotate` 3 = -21
3862  
3863 -2 `rotate` -3 = -805306369
3864 -2 `rotate` -2 = -1610612737
3865 -2 `rotate` -1 = 1073741823
3866 -2 `rotate` 0 = -2
3867 -2 `rotate` 1 = -4
3868 -2 `rotate` 2 = -7
3869 -2 `rotate` 3 = -13
3870  
3871 -1 `rotate` -3 = -268435457
3872 -1 `rotate` -2 = -536870913
3873 -1 `rotate` -1 = -1073741825
3874 -1 `rotate` 0 = -1
3875 -1 `rotate` 1 = -2
3876 -1 `rotate` 2 = -3
3877 -1 `rotate` 3 = -5
3878  
3879 0 `rotate` -3 = 0
3880 0 `rotate` -2 = 0
3881 0 `rotate` -1 = 0
3882 0 `rotate` 0 = 0
3883 0 `rotate` 1 = 0
3884 0 `rotate` 2 = 0
3885 0 `rotate` 3 = 0
3886  
3887 1 `rotate` -3 = 536870912
3888 1 `rotate` -2 = 1073741824
3889 1 `rotate` -1 = -2147483648
3890 1 `rotate` 0 = 1
3891 1 `rotate` 1 = 2
3892 1 `rotate` 2 = 4
3893 1 `rotate` 3 = 8
3894  
3895 2 `rotate` -3 = 1073741824
3896 2 `rotate` -2 = -2147483648
3897 2 `rotate` -1 = 1
3898 2 `rotate` 0 = 2
3899 2 `rotate` 1 = 4
3900 2 `rotate` 2 = 8
3901 2 `rotate` 3 = 16
3902  
3903 3 `rotate` -3 = 1610612736
3904 3 `rotate` -2 = -1073741824
3905 3 `rotate` -1 = -2147483647
3906 3 `rotate` 0 = 3
3907 3 `rotate` 1 = 6
3908 3 `rotate` 2 = 12
3909 3 `rotate` 3 = 24
3910  
3911 #
3912 bit 0 = 1
3913 bit 1 = 2
3914 bit 2 = 4
3915 bit 3 = 8
3916 #
3917 -3 `setBit` 0 = -3
3918 -3 `setBit` 1 = -1
3919 -3 `setBit` 2 = -3
3920 -3 `setBit` 3 = -3
3921  
3922 -2 `setBit` 0 = -1
3923 -2 `setBit` 1 = -2
3924 -2 `setBit` 2 = -2
3925 -2 `setBit` 3 = -2
3926  
3927 -1 `setBit` 0 = -1
3928 -1 `setBit` 1 = -1
3929 -1 `setBit` 2 = -1
3930 -1 `setBit` 3 = -1
3931  
3932 0 `setBit` 0 = 1
3933 0 `setBit` 1 = 2
3934 0 `setBit` 2 = 4
3935 0 `setBit` 3 = 8
3936  
3937 1 `setBit` 0 = 1
3938 1 `setBit` 1 = 3
3939 1 `setBit` 2 = 5
3940 1 `setBit` 3 = 9
3941  
3942 2 `setBit` 0 = 3
3943 2 `setBit` 1 = 2
3944 2 `setBit` 2 = 6
3945 2 `setBit` 3 = 10
3946  
3947 3 `setBit` 0 = 3
3948 3 `setBit` 1 = 3
3949 3 `setBit` 2 = 7
3950 3 `setBit` 3 = 11
3951  
3952 #
3953 -3 `clearBit` 0 = -4
3954 -3 `clearBit` 1 = -3
3955 -3 `clearBit` 2 = -7
3956 -3 `clearBit` 3 = -11
3957  
3958 -2 `clearBit` 0 = -2
3959 -2 `clearBit` 1 = -4
3960 -2 `clearBit` 2 = -6
3961 -2 `clearBit` 3 = -10
3962  
3963 -1 `clearBit` 0 = -2
3964 -1 `clearBit` 1 = -3
3965 -1 `clearBit` 2 = -5
3966 -1 `clearBit` 3 = -9
3967  
3968 0 `clearBit` 0 = 0
3969 0 `clearBit` 1 = 0
3970 0 `clearBit` 2 = 0
3971 0 `clearBit` 3 = 0
3972  
3973 1 `clearBit` 0 = 0
3974 1 `clearBit` 1 = 1
3975 1 `clearBit` 2 = 1
3976 1 `clearBit` 3 = 1
3977  
3978 2 `clearBit` 0 = 2
3979 2 `clearBit` 1 = 0
3980 2 `clearBit` 2 = 2
3981 2 `clearBit` 3 = 2
3982  
3983 3 `clearBit` 0 = 2
3984 3 `clearBit` 1 = 1
3985 3 `clearBit` 2 = 3
3986 3 `clearBit` 3 = 3
3987  
3988 #
3989 -3 `complementBit` 0 = -4
3990 -3 `complementBit` 1 = -1
3991 -3 `complementBit` 2 = -7
3992 -3 `complementBit` 3 = -11
3993  
3994 -2 `complementBit` 0 = -1
3995 -2 `complementBit` 1 = -4
3996 -2 `complementBit` 2 = -6
3997 -2 `complementBit` 3 = -10
3998  
3999 -1 `complementBit` 0 = -2
4000 -1 `complementBit` 1 = -3
4001 -1 `complementBit` 2 = -5
4002 -1 `complementBit` 3 = -9
4003  
4004 0 `complementBit` 0 = 1
4005 0 `complementBit` 1 = 2
4006 0 `complementBit` 2 = 4
4007 0 `complementBit` 3 = 8
4008  
4009 1 `complementBit` 0 = 0
4010 1 `complementBit` 1 = 3
4011 1 `complementBit` 2 = 5
4012 1 `complementBit` 3 = 9
4013  
4014 2 `complementBit` 0 = 3
4015 2 `complementBit` 1 = 0
4016 2 `complementBit` 2 = 6
4017 2 `complementBit` 3 = 10
4018  
4019 3 `complementBit` 0 = 2
4020 3 `complementBit` 1 = 1
4021 3 `complementBit` 2 = 7
4022 3 `complementBit` 3 = 11
4023  
4024 #
4025 -3 `testBit` 0 = True
4026 -3 `testBit` 1 = False
4027 -3 `testBit` 2 = True
4028 -3 `testBit` 3 = True
4029  
4030 -2 `testBit` 0 = False
4031 -2 `testBit` 1 = True
4032 -2 `testBit` 2 = True
4033 -2 `testBit` 3 = True
4034  
4035 -1 `testBit` 0 = True
4036 -1 `testBit` 1 = True
4037 -1 `testBit` 2 = True
4038 -1 `testBit` 3 = True
4039  
4040 0 `testBit` 0 = False
4041 0 `testBit` 1 = False
4042 0 `testBit` 2 = False
4043 0 `testBit` 3 = False
4044  
4045 1 `testBit` 0 = True
4046 1 `testBit` 1 = False
4047 1 `testBit` 2 = False
4048 1 `testBit` 3 = False
4049  
4050 2 `testBit` 0 = False
4051 2 `testBit` 1 = True
4052 2 `testBit` 2 = False
4053 2 `testBit` 3 = False
4054  
4055 3 `testBit` 0 = True
4056 3 `testBit` 1 = True
4057 3 `testBit` 2 = False
4058 3 `testBit` 3 = False
4059  
4060 #
4061 bitSize -3 = 32
4062 bitSize -2 = 32
4063 bitSize -1 = 32
4064 bitSize 0 = 32
4065 bitSize 1 = 32
4066 bitSize 2 = 32
4067 bitSize 3 = 32
4068 #
4069 isSigned -3 = True
4070 isSigned -2 = True
4071 isSigned -1 = True
4072 isSigned 0 = True
4073 isSigned 1 = True
4074 isSigned 2 = True
4075 isSigned 3 = True
4076 #
4077 --------------------------------
4078 --------------------------------
4079 --Testing Word8
4080 --------------------------------
4081 testBounded
4082 (255,0,1)
4083 (254,255,0)
4084 testEnum
4085 [0,1,2,3,4,5,6,7,8,9]
4086 [0,2,4,6,8,10,12,14,16,18]
4087 [0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
4088 [0,2,4,6,8,10,12,14,16,18,20]
4089 testReadShow
4090 [253,254,255,0,1,2,3]
4091 [253,254,255,0,1,2,3]
4092 testEq
4093 253 == 253 = True
4094 253 == 254 = False
4095 253 == 255 = False
4096 253 == 0 = False
4097 253 == 1 = False
4098 253 == 2 = False
4099 253 == 3 = False
4100  
4101 254 == 253 = False
4102 254 == 254 = True
4103 254 == 255 = False
4104 254 == 0 = False
4105 254 == 1 = False
4106 254 == 2 = False
4107 254 == 3 = False
4108  
4109 255 == 253 = False
4110 255 == 254 = False
4111 255 == 255 = True
4112 255 == 0 = False
4113 255 == 1 = False
4114 255 == 2 = False
4115 255 == 3 = False
4116  
4117 0 == 253 = False
4118 0 == 254 = False
4119 0 == 255 = False
4120 0 == 0 = True
4121 0 == 1 = False
4122 0 == 2 = False
4123 0 == 3 = False
4124  
4125 1 == 253 = False
4126 1 == 254 = False
4127 1 == 255 = False
4128 1 == 0 = False
4129 1 == 1 = True
4130 1 == 2 = False
4131 1 == 3 = False
4132  
4133 2 == 253 = False
4134 2 == 254 = False
4135 2 == 255 = False
4136 2 == 0 = False
4137 2 == 1 = False
4138 2 == 2 = True
4139 2 == 3 = False
4140  
4141 3 == 253 = False
4142 3 == 254 = False
4143 3 == 255 = False
4144 3 == 0 = False
4145 3 == 1 = False
4146 3 == 2 = False
4147 3 == 3 = True
4148  
4149 #
4150 253 /= 253 = False
4151 253 /= 254 = True
4152 253 /= 255 = True
4153 253 /= 0 = True
4154 253 /= 1 = True
4155 253 /= 2 = True
4156 253 /= 3 = True
4157  
4158 254 /= 253 = True
4159 254 /= 254 = False
4160 254 /= 255 = True
4161 254 /= 0 = True
4162 254 /= 1 = True
4163 254 /= 2 = True
4164 254 /= 3 = True
4165  
4166 255 /= 253 = True
4167 255 /= 254 = True
4168 255 /= 255 = False
4169 255 /= 0 = True
4170 255 /= 1 = True
4171 255 /= 2 = True
4172 255 /= 3 = True
4173  
4174 0 /= 253 = True
4175 0 /= 254 = True
4176 0 /= 255 = True
4177 0 /= 0 = False
4178 0 /= 1 = True
4179 0 /= 2 = True
4180 0 /= 3 = True
4181  
4182 1 /= 253 = True
4183 1 /= 254 = True
4184 1 /= 255 = True
4185 1 /= 0 = True
4186 1 /= 1 = False
4187 1 /= 2 = True
4188 1 /= 3 = True
4189  
4190 2 /= 253 = True
4191 2 /= 254 = True
4192 2 /= 255 = True
4193 2 /= 0 = True
4194 2 /= 1 = True
4195 2 /= 2 = False
4196 2 /= 3 = True
4197  
4198 3 /= 253 = True
4199 3 /= 254 = True
4200 3 /= 255 = True
4201 3 /= 0 = True
4202 3 /= 1 = True
4203 3 /= 2 = True
4204 3 /= 3 = False
4205  
4206 #
4207 testOrd
4208 253 <= 253 = True
4209 253 <= 254 = True
4210 253 <= 255 = True
4211 253 <= 0 = False
4212 253 <= 1 = False
4213 253 <= 2 = False
4214 253 <= 3 = False
4215  
4216 254 <= 253 = False
4217 254 <= 254 = True
4218 254 <= 255 = True
4219 254 <= 0 = False
4220 254 <= 1 = False
4221 254 <= 2 = False
4222 254 <= 3 = False
4223  
4224 255 <= 253 = False
4225 255 <= 254 = False
4226 255 <= 255 = True
4227 255 <= 0 = False
4228 255 <= 1 = False
4229 255 <= 2 = False
4230 255 <= 3 = False
4231  
4232 0 <= 253 = True
4233 0 <= 254 = True
4234 0 <= 255 = True
4235 0 <= 0 = True
4236 0 <= 1 = True
4237 0 <= 2 = True
4238 0 <= 3 = True
4239  
4240 1 <= 253 = True
4241 1 <= 254 = True
4242 1 <= 255 = True
4243 1 <= 0 = False
4244 1 <= 1 = True
4245 1 <= 2 = True
4246 1 <= 3 = True
4247  
4248 2 <= 253 = True
4249 2 <= 254 = True
4250 2 <= 255 = True
4251 2 <= 0 = False
4252 2 <= 1 = False
4253 2 <= 2 = True
4254 2 <= 3 = True
4255  
4256 3 <= 253 = True
4257 3 <= 254 = True
4258 3 <= 255 = True
4259 3 <= 0 = False
4260 3 <= 1 = False
4261 3 <= 2 = False
4262 3 <= 3 = True
4263  
4264 #
4265 253 <  253 = False
4266 253 <  254 = True
4267 253 <  255 = True
4268 253 <  0 = False
4269 253 <  1 = False
4270 253 <  2 = False
4271 253 <  3 = False
4272  
4273 254 <  253 = False
4274 254 <  254 = False
4275 254 <  255 = True
4276 254 <  0 = False
4277 254 <  1 = False
4278 254 <  2 = False
4279 254 <  3 = False
4280  
4281 255 <  253 = False
4282 255 <  254 = False
4283 255 <  255 = False
4284 255 <  0 = False
4285 255 <  1 = False
4286 255 <  2 = False
4287 255 <  3 = False
4288  
4289 0 <  253 = True
4290 0 <  254 = True
4291 0 <  255 = True
4292 0 <  0 = False
4293 0 <  1 = True
4294 0 <  2 = True
4295 0 <  3 = True
4296  
4297 1 <  253 = True
4298 1 <  254 = True
4299 1 <  255 = True
4300 1 <  0 = False
4301 1 <  1 = False
4302 1 <  2 = True
4303 1 <  3 = True
4304  
4305 2 <  253 = True
4306 2 <  254 = True
4307 2 <  255 = True
4308 2 <  0 = False
4309 2 <  1 = False
4310 2 <  2 = False
4311 2 <  3 = True
4312  
4313 3 <  253 = True
4314 3 <  254 = True
4315 3 <  255 = True
4316 3 <  0 = False
4317 3 <  1 = False
4318 3 <  2 = False
4319 3 <  3 = False
4320  
4321 #
4322 253 >  253 = False
4323 253 >  254 = False
4324 253 >  255 = False
4325 253 >  0 = True
4326 253 >  1 = True
4327 253 >  2 = True
4328 253 >  3 = True
4329  
4330 254 >  253 = True
4331 254 >  254 = False
4332 254 >  255 = False
4333 254 >  0 = True
4334 254 >  1 = True
4335 254 >  2 = True
4336 254 >  3 = True
4337  
4338 255 >  253 = True
4339 255 >  254 = True
4340 255 >  255 = False
4341 255 >  0 = True
4342 255 >  1 = True
4343 255 >  2 = True
4344 255 >  3 = True
4345  
4346 0 >  253 = False
4347 0 >  254 = False
4348 0 >  255 = False
4349 0 >  0 = False
4350 0 >  1 = False
4351 0 >  2 = False
4352 0 >  3 = False
4353  
4354 1 >  253 = False
4355 1 >  254 = False
4356 1 >  255 = False
4357 1 >  0 = True
4358 1 >  1 = False
4359 1 >  2 = False
4360 1 >  3 = False
4361  
4362 2 >  253 = False
4363 2 >  254 = False
4364 2 >  255 = False
4365 2 >  0 = True
4366 2 >  1 = True
4367 2 >  2 = False
4368 2 >  3 = False
4369  
4370 3 >  253 = False
4371 3 >  254 = False
4372 3 >  255 = False
4373 3 >  0 = True
4374 3 >  1 = True
4375 3 >  2 = True
4376 3 >  3 = False
4377  
4378 #
4379 253 >= 253 = True
4380 253 >= 254 = False
4381 253 >= 255 = False
4382 253 >= 0 = True
4383 253 >= 1 = True
4384 253 >= 2 = True
4385 253 >= 3 = True
4386  
4387 254 >= 253 = True
4388 254 >= 254 = True
4389 254 >= 255 = False
4390 254 >= 0 = True
4391 254 >= 1 = True
4392 254 >= 2 = True
4393 254 >= 3 = True
4394  
4395 255 >= 253 = True
4396 255 >= 254 = True
4397 255 >= 255 = True
4398 255 >= 0 = True
4399 255 >= 1 = True
4400 255 >= 2 = True
4401 255 >= 3 = True
4402  
4403 0 >= 253 = False
4404 0 >= 254 = False
4405 0 >= 255 = False
4406 0 >= 0 = True
4407 0 >= 1 = False
4408 0 >= 2 = False
4409 0 >= 3 = False
4410  
4411 1 >= 253 = False
4412 1 >= 254 = False
4413 1 >= 255 = False
4414 1 >= 0 = True
4415 1 >= 1 = True
4416 1 >= 2 = False
4417 1 >= 3 = False
4418  
4419 2 >= 253 = False
4420 2 >= 254 = False
4421 2 >= 255 = False
4422 2 >= 0 = True
4423 2 >= 1 = True
4424 2 >= 2 = True
4425 2 >= 3 = False
4426  
4427 3 >= 253 = False
4428 3 >= 254 = False
4429 3 >= 255 = False
4430 3 >= 0 = True
4431 3 >= 1 = True
4432 3 >= 2 = True
4433 3 >= 3 = True
4434  
4435 #
4436 253 `compare` 253 = EQ
4437 253 `compare` 254 = LT
4438 253 `compare` 255 = LT
4439 253 `compare` 0 = GT
4440 253 `compare` 1 = GT
4441 253 `compare` 2 = GT
4442 253 `compare` 3 = GT
4443  
4444 254 `compare` 253 = GT
4445 254 `compare` 254 = EQ
4446 254 `compare` 255 = LT
4447 254 `compare` 0 = GT
4448 254 `compare` 1 = GT
4449 254 `compare` 2 = GT
4450 254 `compare` 3 = GT
4451  
4452 255 `compare` 253 = GT
4453 255 `compare` 254 = GT
4454 255 `compare` 255 = EQ
4455 255 `compare` 0 = GT
4456 255 `compare` 1 = GT
4457 255 `compare` 2 = GT
4458 255 `compare` 3 = GT
4459  
4460 0 `compare` 253 = LT
4461 0 `compare` 254 = LT
4462 0 `compare` 255 = LT
4463 0 `compare` 0 = EQ
4464 0 `compare` 1 = LT
4465 0 `compare` 2 = LT
4466 0 `compare` 3 = LT
4467  
4468 1 `compare` 253 = LT
4469 1 `compare` 254 = LT
4470 1 `compare` 255 = LT
4471 1 `compare` 0 = GT
4472 1 `compare` 1 = EQ
4473 1 `compare` 2 = LT
4474 1 `compare` 3 = LT
4475  
4476 2 `compare` 253 = LT
4477 2 `compare` 254 = LT
4478 2 `compare` 255 = LT
4479 2 `compare` 0 = GT
4480 2 `compare` 1 = GT
4481 2 `compare` 2 = EQ
4482 2 `compare` 3 = LT
4483  
4484 3 `compare` 253 = LT
4485 3 `compare` 254 = LT
4486 3 `compare` 255 = LT
4487 3 `compare` 0 = GT
4488 3 `compare` 1 = GT
4489 3 `compare` 2 = GT
4490 3 `compare` 3 = EQ
4491  
4492 #
4493 testNum
4494 253 + 253 = 250
4495 253 + 254 = 251
4496 253 + 255 = 252
4497 253 + 0 = 253
4498 253 + 1 = 254
4499 253 + 2 = 255
4500 253 + 3 = 0
4501  
4502 254 + 253 = 251
4503 254 + 254 = 252
4504 254 + 255 = 253
4505 254 + 0 = 254
4506 254 + 1 = 255
4507 254 + 2 = 0
4508 254 + 3 = 1
4509  
4510 255 + 253 = 252
4511 255 + 254 = 253
4512 255 + 255 = 254
4513 255 + 0 = 255
4514 255 + 1 = 0
4515 255 + 2 = 1
4516 255 + 3 = 2
4517  
4518 0 + 253 = 253
4519 0 + 254 = 254
4520 0 + 255 = 255
4521 0 + 0 = 0
4522 0 + 1 = 1
4523 0 + 2 = 2
4524 0 + 3 = 3
4525  
4526 1 + 253 = 254
4527 1 + 254 = 255
4528 1 + 255 = 0
4529 1 + 0 = 1
4530 1 + 1 = 2
4531 1 + 2 = 3
4532 1 + 3 = 4
4533  
4534 2 + 253 = 255
4535 2 + 254 = 0
4536 2 + 255 = 1
4537 2 + 0 = 2
4538 2 + 1 = 3
4539 2 + 2 = 4
4540 2 + 3 = 5
4541  
4542 3 + 253 = 0
4543 3 + 254 = 1
4544 3 + 255 = 2
4545 3 + 0 = 3
4546 3 + 1 = 4
4547 3 + 2 = 5
4548 3 + 3 = 6
4549  
4550 #
4551 253 - 253 = 0
4552 253 - 254 = 255
4553 253 - 255 = 254
4554 253 - 0 = 253
4555 253 - 1 = 252
4556 253 - 2 = 251
4557 253 - 3 = 250
4558  
4559 254 - 253 = 1
4560 254 - 254 = 0
4561 254 - 255 = 255
4562 254 - 0 = 254
4563 254 - 1 = 253
4564 254 - 2 = 252
4565 254 - 3 = 251
4566  
4567 255 - 253 = 2
4568 255 - 254 = 1
4569 255 - 255 = 0
4570 255 - 0 = 255
4571 255 - 1 = 254
4572 255 - 2 = 253
4573 255 - 3 = 252
4574  
4575 0 - 253 = 3
4576 0 - 254 = 2
4577 0 - 255 = 1
4578 0 - 0 = 0
4579 0 - 1 = 255
4580 0 - 2 = 254
4581 0 - 3 = 253
4582  
4583 1 - 253 = 4
4584 1 - 254 = 3
4585 1 - 255 = 2
4586 1 - 0 = 1
4587 1 - 1 = 0
4588 1 - 2 = 255
4589 1 - 3 = 254
4590  
4591 2 - 253 = 5
4592 2 - 254 = 4
4593 2 - 255 = 3
4594 2 - 0 = 2
4595 2 - 1 = 1
4596 2 - 2 = 0
4597 2 - 3 = 255
4598  
4599 3 - 253 = 6
4600 3 - 254 = 5
4601 3 - 255 = 4
4602 3 - 0 = 3
4603 3 - 1 = 2
4604 3 - 2 = 1
4605 3 - 3 = 0
4606  
4607 #
4608 253 * 253 = 9
4609 253 * 254 = 6
4610 253 * 255 = 3
4611 253 * 0 = 0
4612 253 * 1 = 253
4613 253 * 2 = 250
4614 253 * 3 = 247
4615  
4616 254 * 253 = 6
4617 254 * 254 = 4
4618 254 * 255 = 2
4619 254 * 0 = 0
4620 254 * 1 = 254
4621 254 * 2 = 252
4622 254 * 3 = 250
4623  
4624 255 * 253 = 3
4625 255 * 254 = 2
4626 255 * 255 = 1
4627 255 * 0 = 0
4628 255 * 1 = 255
4629 255 * 2 = 254
4630 255 * 3 = 253
4631  
4632 0 * 253 = 0
4633 0 * 254 = 0
4634 0 * 255 = 0
4635 0 * 0 = 0
4636 0 * 1 = 0
4637 0 * 2 = 0
4638 0 * 3 = 0
4639  
4640 1 * 253 = 253
4641 1 * 254 = 254
4642 1 * 255 = 255
4643 1 * 0 = 0
4644 1 * 1 = 1
4645 1 * 2 = 2
4646 1 * 3 = 3
4647  
4648 2 * 253 = 250
4649 2 * 254 = 252
4650 2 * 255 = 254
4651 2 * 0 = 0
4652 2 * 1 = 2
4653 2 * 2 = 4
4654 2 * 3 = 6
4655  
4656 3 * 253 = 247
4657 3 * 254 = 250
4658 3 * 255 = 253
4659 3 * 0 = 0
4660 3 * 1 = 3
4661 3 * 2 = 6
4662 3 * 3 = 9
4663  
4664 #
4665 negate 253 = 3
4666 negate 254 = 2
4667 negate 255 = 1
4668 negate 0 = 0
4669 negate 1 = 255
4670 negate 2 = 254
4671 negate 3 = 253
4672 #
4673 testReal
4674 toRational 253 = 253 % 1
4675 toRational 254 = 254 % 1
4676 toRational 255 = 255 % 1
4677 toRational 0 = 0 % 1
4678 toRational 1 = 1 % 1
4679 toRational 2 = 2 % 1
4680 toRational 3 = 3 % 1
4681 #
4682 testIntegral
4683 253 `divMod`  253 = (1,0)
4684 253 `divMod`  254 = (0,253)
4685 253 `divMod`  255 = (0,253)
4686 253 `divMod`  1 = (253,0)
4687 253 `divMod`  2 = (126,1)
4688 253 `divMod`  3 = (84,1)
4689  
4690 254 `divMod`  253 = (1,1)
4691 254 `divMod`  254 = (1,0)
4692 254 `divMod`  255 = (0,254)
4693 254 `divMod`  1 = (254,0)
4694 254 `divMod`  2 = (127,0)
4695 254 `divMod`  3 = (84,2)
4696  
4697 255 `divMod`  253 = (1,2)
4698 255 `divMod`  254 = (1,1)
4699 255 `divMod`  255 = (1,0)
4700 255 `divMod`  1 = (255,0)
4701 255 `divMod`  2 = (127,1)
4702 255 `divMod`  3 = (85,0)
4703  
4704 0 `divMod`  253 = (0,0)
4705 0 `divMod`  254 = (0,0)
4706 0 `divMod`  255 = (0,0)
4707 0 `divMod`  1 = (0,0)
4708 0 `divMod`  2 = (0,0)
4709 0 `divMod`  3 = (0,0)
4710  
4711 1 `divMod`  253 = (0,1)
4712 1 `divMod`  254 = (0,1)
4713 1 `divMod`  255 = (0,1)
4714 1 `divMod`  1 = (1,0)
4715 1 `divMod`  2 = (0,1)
4716 1 `divMod`  3 = (0,1)
4717  
4718 2 `divMod`  253 = (0,2)
4719 2 `divMod`  254 = (0,2)
4720 2 `divMod`  255 = (0,2)
4721 2 `divMod`  1 = (2,0)
4722 2 `divMod`  2 = (1,0)
4723 2 `divMod`  3 = (0,2)
4724  
4725 3 `divMod`  253 = (0,3)
4726 3 `divMod`  254 = (0,3)
4727 3 `divMod`  255 = (0,3)
4728 3 `divMod`  1 = (3,0)
4729 3 `divMod`  2 = (1,1)
4730 3 `divMod`  3 = (1,0)
4731  
4732 #
4733 253 `div`     253 = 1
4734 253 `div`     254 = 0
4735 253 `div`     255 = 0
4736 253 `div`     1 = 253
4737 253 `div`     2 = 126
4738 253 `div`     3 = 84
4739  
4740 254 `div`     253 = 1
4741 254 `div`     254 = 1
4742 254 `div`     255 = 0
4743 254 `div`     1 = 254
4744 254 `div`     2 = 127
4745 254 `div`     3 = 84
4746  
4747 255 `div`     253 = 1
4748 255 `div`     254 = 1
4749 255 `div`     255 = 1
4750 255 `div`     1 = 255
4751 255 `div`     2 = 127
4752 255 `div`     3 = 85
4753  
4754 0 `div`     253 = 0
4755 0 `div`     254 = 0
4756 0 `div`     255 = 0
4757 0 `div`     1 = 0
4758 0 `div`     2 = 0
4759 0 `div`     3 = 0
4760  
4761 1 `div`     253 = 0
4762 1 `div`     254 = 0
4763 1 `div`     255 = 0
4764 1 `div`     1 = 1
4765 1 `div`     2 = 0
4766 1 `div`     3 = 0
4767  
4768 2 `div`     253 = 0
4769 2 `div`     254 = 0
4770 2 `div`     255 = 0
4771 2 `div`     1 = 2
4772 2 `div`     2 = 1
4773 2 `div`     3 = 0
4774  
4775 3 `div`     253 = 0
4776 3 `div`     254 = 0
4777 3 `div`     255 = 0
4778 3 `div`     1 = 3
4779 3 `div`     2 = 1
4780 3 `div`     3 = 1
4781  
4782 #
4783 253 `mod`     253 = 0
4784 253 `mod`     254 = 253
4785 253 `mod`     255 = 253
4786 253 `mod`     1 = 0
4787 253 `mod`     2 = 1
4788 253 `mod`     3 = 1
4789  
4790 254 `mod`     253 = 1
4791 254 `mod`     254 = 0
4792 254 `mod`     255 = 254
4793 254 `mod`     1 = 0
4794 254 `mod`     2 = 0
4795 254 `mod`     3 = 2
4796  
4797 255 `mod`     253 = 2
4798 255 `mod`     254 = 1
4799 255 `mod`     255 = 0
4800 255 `mod`     1 = 0
4801 255 `mod`     2 = 1
4802 255 `mod`     3 = 0
4803  
4804 0 `mod`     253 = 0
4805 0 `mod`     254 = 0
4806 0 `mod`     255 = 0
4807 0 `mod`     1 = 0
4808 0 `mod`     2 = 0
4809 0 `mod`     3 = 0
4810  
4811 1 `mod`     253 = 1
4812 1 `mod`     254 = 1
4813 1 `mod`     255 = 1
4814 1 `mod`     1 = 0
4815 1 `mod`     2 = 1
4816 1 `mod`     3 = 1
4817  
4818 2 `mod`     253 = 2
4819 2 `mod`     254 = 2
4820 2 `mod`     255 = 2
4821 2 `mod`     1 = 0
4822 2 `mod`     2 = 0
4823 2 `mod`     3 = 2
4824  
4825 3 `mod`     253 = 3
4826 3 `mod`     254 = 3
4827 3 `mod`     255 = 3
4828 3 `mod`     1 = 0
4829 3 `mod`     2 = 1
4830 3 `mod`     3 = 0
4831  
4832 #
4833 253 `quotRem` 253 = (1,0)
4834 253 `quotRem` 254 = (0,253)
4835 253 `quotRem` 255 = (0,253)
4836 253 `quotRem` 1 = (253,0)
4837 253 `quotRem` 2 = (126,1)
4838 253 `quotRem` 3 = (84,1)
4839  
4840 254 `quotRem` 253 = (1,1)
4841 254 `quotRem` 254 = (1,0)
4842 254 `quotRem` 255 = (0,254)
4843 254 `quotRem` 1 = (254,0)
4844 254 `quotRem` 2 = (127,0)
4845 254 `quotRem` 3 = (84,2)
4846  
4847 255 `quotRem` 253 = (1,2)
4848 255 `quotRem` 254 = (1,1)
4849 255 `quotRem` 255 = (1,0)
4850 255 `quotRem` 1 = (255,0)
4851 255 `quotRem` 2 = (127,1)
4852 255 `quotRem` 3 = (85,0)
4853  
4854 0 `quotRem` 253 = (0,0)
4855 0 `quotRem` 254 = (0,0)
4856 0 `quotRem` 255 = (0,0)
4857 0 `quotRem` 1 = (0,0)
4858 0 `quotRem` 2 = (0,0)
4859 0 `quotRem` 3 = (0,0)
4860  
4861 1 `quotRem` 253 = (0,1)
4862 1 `quotRem` 254 = (0,1)
4863 1 `quotRem` 255 = (0,1)
4864 1 `quotRem` 1 = (1,0)
4865 1 `quotRem` 2 = (0,1)
4866 1 `quotRem` 3 = (0,1)
4867  
4868 2 `quotRem` 253 = (0,2)
4869 2 `quotRem` 254 = (0,2)
4870 2 `quotRem` 255 = (0,2)
4871 2 `quotRem` 1 = (2,0)
4872 2 `quotRem` 2 = (1,0)
4873 2 `quotRem` 3 = (0,2)
4874  
4875 3 `quotRem` 253 = (0,3)
4876 3 `quotRem` 254 = (0,3)
4877 3 `quotRem` 255 = (0,3)
4878 3 `quotRem` 1 = (3,0)
4879 3 `quotRem` 2 = (1,1)
4880 3 `quotRem` 3 = (1,0)
4881  
4882 #
4883 253 `quot`    253 = 1
4884 253 `quot`    254 = 0
4885 253 `quot`    255 = 0
4886 253 `quot`    1 = 253
4887 253 `quot`    2 = 126
4888 253 `quot`    3 = 84
4889  
4890 254 `quot`    253 = 1
4891 254 `quot`    254 = 1
4892 254 `quot`    255 = 0
4893 254 `quot`    1 = 254
4894 254 `quot`    2 = 127
4895 254 `quot`    3 = 84
4896  
4897 255 `quot`    253 = 1
4898 255 `quot`    254 = 1
4899 255 `quot`    255 = 1
4900 255 `quot`    1 = 255
4901 255 `quot`    2 = 127
4902 255 `quot`    3 = 85
4903  
4904 0 `quot`    253 = 0
4905 0 `quot`    254 = 0
4906 0 `quot`    255 = 0
4907 0 `quot`    1 = 0
4908 0 `quot`    2 = 0
4909 0 `quot`    3 = 0
4910  
4911 1 `quot`    253 = 0
4912 1 `quot`    254 = 0
4913 1 `quot`    255 = 0
4914 1 `quot`    1 = 1
4915 1 `quot`    2 = 0
4916 1 `quot`    3 = 0
4917  
4918 2 `quot`    253 = 0
4919 2 `quot`    254 = 0
4920 2 `quot`    255 = 0
4921 2 `quot`    1 = 2
4922 2 `quot`    2 = 1
4923 2 `quot`    3 = 0
4924  
4925 3 `quot`    253 = 0
4926 3 `quot`    254 = 0
4927 3 `quot`    255 = 0
4928 3 `quot`    1 = 3
4929 3 `quot`    2 = 1
4930 3 `quot`    3 = 1
4931  
4932 #
4933 253 `rem`     253 = 0
4934 253 `rem`     254 = 253
4935 253 `rem`     255 = 253
4936 253 `rem`     1 = 0
4937 253 `rem`     2 = 1
4938 253 `rem`     3 = 1
4939  
4940 254 `rem`     253 = 1
4941 254 `rem`     254 = 0
4942 254 `rem`     255 = 254
4943 254 `rem`     1 = 0
4944 254 `rem`     2 = 0
4945 254 `rem`     3 = 2
4946  
4947 255 `rem`     253 = 2
4948 255 `rem`     254 = 1
4949 255 `rem`     255 = 0
4950 255 `rem`     1 = 0
4951 255 `rem`     2 = 1
4952 255 `rem`     3 = 0
4953  
4954 0 `rem`     253 = 0
4955 0 `rem`     254 = 0
4956 0 `rem`     255 = 0
4957 0 `rem`     1 = 0
4958 0 `rem`     2 = 0
4959 0 `rem`     3 = 0
4960  
4961 1 `rem`     253 = 1
4962 1 `rem`     254 = 1
4963 1 `rem`     255 = 1
4964 1 `rem`     1 = 0
4965 1 `rem`     2 = 1
4966 1 `rem`     3 = 1
4967  
4968 2 `rem`     253 = 2
4969 2 `rem`     254 = 2
4970 2 `rem`     255 = 2
4971 2 `rem`     1 = 0
4972 2 `rem`     2 = 0
4973 2 `rem`     3 = 2
4974  
4975 3 `rem`     253 = 3
4976 3 `rem`     254 = 3
4977 3 `rem`     255 = 3
4978 3 `rem`     1 = 0
4979 3 `rem`     2 = 1
4980 3 `rem`     3 = 0
4981  
4982 #
4983 testBits
4984 253 .&.   253 = 253
4985 253 .&.   254 = 252
4986 253 .&.   255 = 253
4987 253 .&.   1 = 1
4988 253 .&.   2 = 0
4989 253 .&.   3 = 1
4990  
4991 254 .&.   253 = 252
4992 254 .&.   254 = 254
4993 254 .&.   255 = 254
4994 254 .&.   1 = 0
4995 254 .&.   2 = 2
4996 254 .&.   3 = 2
4997  
4998 255 .&.   253 = 253
4999 255 .&.   254 = 254
5000 255 .&.   255 = 255
5001 255 .&.   1 = 1
5002 255 .&.   2 = 2
5003 255 .&.   3 = 3
5004  
5005 0 .&.   253 = 0
5006 0 .&.   254 = 0
5007 0 .&.   255 = 0
5008 0 .&.   1 = 0
5009 0 .&.   2 = 0
5010 0 .&.   3 = 0
5011  
5012 1 .&.   253 = 1
5013 1 .&.   254 = 0
5014 1 .&.   255 = 1
5015 1 .&.   1 = 1
5016 1 .&.   2 = 0
5017 1 .&.   3 = 1
5018  
5019 2 .&.   253 = 0
5020 2 .&.   254 = 2
5021 2 .&.   255 = 2
5022 2 .&.   1 = 0
5023 2 .&.   2 = 2
5024 2 .&.   3 = 2
5025  
5026 3 .&.   253 = 1
5027 3 .&.   254 = 2
5028 3 .&.   255 = 3
5029 3 .&.   1 = 1
5030 3 .&.   2 = 2
5031 3 .&.   3 = 3
5032  
5033 #
5034 253 .|.   253 = 253
5035 253 .|.   254 = 255
5036 253 .|.   255 = 255
5037 253 .|.   1 = 253
5038 253 .|.   2 = 255
5039 253 .|.   3 = 255
5040  
5041 254 .|.   253 = 255
5042 254 .|.   254 = 254
5043 254 .|.   255 = 255
5044 254 .|.   1 = 255
5045 254 .|.   2 = 254
5046 254 .|.   3 = 255
5047  
5048 255 .|.   253 = 255
5049 255 .|.   254 = 255
5050 255 .|.   255 = 255
5051 255 .|.   1 = 255
5052 255 .|.   2 = 255
5053 255 .|.   3 = 255
5054  
5055 0 .|.   253 = 253
5056 0 .|.   254 = 254
5057 0 .|.   255 = 255
5058 0 .|.   1 = 1
5059 0 .|.   2 = 2
5060 0 .|.   3 = 3
5061  
5062 1 .|.   253 = 253
5063 1 .|.   254 = 255
5064 1 .|.   255 = 255
5065 1 .|.   1 = 1
5066 1 .|.   2 = 3
5067 1 .|.   3 = 3
5068  
5069 2 .|.   253 = 255
5070 2 .|.   254 = 254
5071 2 .|.   255 = 255
5072 2 .|.   1 = 3
5073 2 .|.   2 = 2
5074 2 .|.   3 = 3
5075  
5076 3 .|.   253 = 255
5077 3 .|.   254 = 255
5078 3 .|.   255 = 255
5079 3 .|.   1 = 3
5080 3 .|.   2 = 3
5081 3 .|.   3 = 3
5082  
5083 #
5084 253 `xor` 253 = 0
5085 253 `xor` 254 = 3
5086 253 `xor` 255 = 2
5087 253 `xor` 1 = 252
5088 253 `xor` 2 = 255
5089 253 `xor` 3 = 254
5090  
5091 254 `xor` 253 = 3
5092 254 `xor` 254 = 0
5093 254 `xor` 255 = 1
5094 254 `xor` 1 = 255
5095 254 `xor` 2 = 252
5096 254 `xor` 3 = 253
5097  
5098 255 `xor` 253 = 2
5099 255 `xor` 254 = 1
5100 255 `xor` 255 = 0
5101 255 `xor` 1 = 254
5102 255 `xor` 2 = 253
5103 255 `xor` 3 = 252
5104  
5105 0 `xor` 253 = 253
5106 0 `xor` 254 = 254
5107 0 `xor` 255 = 255
5108 0 `xor` 1 = 1
5109 0 `xor` 2 = 2
5110 0 `xor` 3 = 3
5111  
5112 1 `xor` 253 = 252
5113 1 `xor` 254 = 255
5114 1 `xor` 255 = 254
5115 1 `xor` 1 = 0
5116 1 `xor` 2 = 3
5117 1 `xor` 3 = 2
5118  
5119 2 `xor` 253 = 255
5120 2 `xor` 254 = 252
5121 2 `xor` 255 = 253
5122 2 `xor` 1 = 3
5123 2 `xor` 2 = 0
5124 2 `xor` 3 = 1
5125  
5126 3 `xor` 253 = 254
5127 3 `xor` 254 = 253
5128 3 `xor` 255 = 252
5129 3 `xor` 1 = 2
5130 3 `xor` 2 = 1
5131 3 `xor` 3 = 0
5132  
5133 #
5134 complement 253 = 2
5135 complement 254 = 1
5136 complement 255 = 0
5137 complement 0 = 255
5138 complement 1 = 254
5139 complement 2 = 253
5140 complement 3 = 252
5141 #
5142 253 `shiftL` 0 = 253
5143 253 `shiftL` 1 = 250
5144 253 `shiftL` 2 = 244
5145 253 `shiftL` 3 = 232
5146  
5147 254 `shiftL` 0 = 254
5148 254 `shiftL` 1 = 252
5149 254 `shiftL` 2 = 248
5150 254 `shiftL` 3 = 240
5151  
5152 255 `shiftL` 0 = 255
5153 255 `shiftL` 1 = 254
5154 255 `shiftL` 2 = 252
5155 255 `shiftL` 3 = 248
5156  
5157 0 `shiftL` 0 = 0
5158 0 `shiftL` 1 = 0
5159 0 `shiftL` 2 = 0
5160 0 `shiftL` 3 = 0
5161  
5162 1 `shiftL` 0 = 1
5163 1 `shiftL` 1 = 2
5164 1 `shiftL` 2 = 4
5165 1 `shiftL` 3 = 8
5166  
5167 2 `shiftL` 0 = 2
5168 2 `shiftL` 1 = 4
5169 2 `shiftL` 2 = 8
5170 2 `shiftL` 3 = 16
5171  
5172 3 `shiftL` 0 = 3
5173 3 `shiftL` 1 = 6
5174 3 `shiftL` 2 = 12
5175 3 `shiftL` 3 = 24
5176  
5177 #
5178 253 `shiftR` 0 = 253
5179 253 `shiftR` 1 = 126
5180 253 `shiftR` 2 = 63
5181 253 `shiftR` 3 = 31
5182  
5183 254 `shiftR` 0 = 254
5184 254 `shiftR` 1 = 127
5185 254 `shiftR` 2 = 63
5186 254 `shiftR` 3 = 31
5187  
5188 255 `shiftR` 0 = 255
5189 255 `shiftR` 1 = 127
5190 255 `shiftR` 2 = 63
5191 255 `shiftR` 3 = 31
5192  
5193 0 `shiftR` 0 = 0
5194 0 `shiftR` 1 = 0
5195 0 `shiftR` 2 = 0
5196 0 `shiftR` 3 = 0
5197  
5198 1 `shiftR` 0 = 1
5199 1 `shiftR` 1 = 0
5200 1 `shiftR` 2 = 0
5201 1 `shiftR` 3 = 0
5202  
5203 2 `shiftR` 0 = 2
5204 2 `shiftR` 1 = 1
5205 2 `shiftR` 2 = 0
5206 2 `shiftR` 3 = 0
5207  
5208 3 `shiftR` 0 = 3
5209 3 `shiftR` 1 = 1
5210 3 `shiftR` 2 = 0
5211 3 `shiftR` 3 = 0
5212  
5213 #
5214 253 `rotate` -3 = 191
5215 253 `rotate` -2 = 127
5216 253 `rotate` -1 = 254
5217 253 `rotate` 0 = 253
5218 253 `rotate` 1 = 251
5219 253 `rotate` 2 = 247
5220 253 `rotate` 3 = 239
5221  
5222 254 `rotate` -3 = 223
5223 254 `rotate` -2 = 191
5224 254 `rotate` -1 = 127
5225 254 `rotate` 0 = 254
5226 254 `rotate` 1 = 253
5227 254 `rotate` 2 = 251
5228 254 `rotate` 3 = 247
5229  
5230 255 `rotate` -3 = 255
5231 255 `rotate` -2 = 255
5232 255 `rotate` -1 = 255
5233 255 `rotate` 0 = 255
5234 255 `rotate` 1 = 255
5235 255 `rotate` 2 = 255
5236 255 `rotate` 3 = 255
5237  
5238 0 `rotate` -3 = 0
5239 0 `rotate` -2 = 0
5240 0 `rotate` -1 = 0
5241 0 `rotate` 0 = 0
5242 0 `rotate` 1 = 0
5243 0 `rotate` 2 = 0
5244 0 `rotate` 3 = 0
5245  
5246 1 `rotate` -3 = 32
5247 1 `rotate` -2 = 64
5248 1 `rotate` -1 = 128
5249 1 `rotate` 0 = 1
5250 1 `rotate` 1 = 2
5251 1 `rotate` 2 = 4
5252 1 `rotate` 3 = 8
5253  
5254 2 `rotate` -3 = 64
5255 2 `rotate` -2 = 128
5256 2 `rotate` -1 = 1
5257 2 `rotate` 0 = 2
5258 2 `rotate` 1 = 4
5259 2 `rotate` 2 = 8
5260 2 `rotate` 3 = 16
5261  
5262 3 `rotate` -3 = 96
5263 3 `rotate` -2 = 192
5264 3 `rotate` -1 = 129
5265 3 `rotate` 0 = 3
5266 3 `rotate` 1 = 6
5267 3 `rotate` 2 = 12
5268 3 `rotate` 3 = 24
5269  
5270 #
5271 bit 0 = 1
5272 bit 1 = 2
5273 bit 2 = 4
5274 bit 3 = 8
5275 #
5276 253 `setBit` 0 = 253
5277 253 `setBit` 1 = 255
5278 253 `setBit` 2 = 253
5279 253 `setBit` 3 = 253
5280  
5281 254 `setBit` 0 = 255
5282 254 `setBit` 1 = 254
5283 254 `setBit` 2 = 254
5284 254 `setBit` 3 = 254
5285  
5286 255 `setBit` 0 = 255
5287 255 `setBit` 1 = 255
5288 255 `setBit` 2 = 255
5289 255 `setBit` 3 = 255
5290  
5291 0 `setBit` 0 = 1
5292 0 `setBit` 1 = 2
5293 0 `setBit` 2 = 4
5294 0 `setBit` 3 = 8
5295  
5296 1 `setBit` 0 = 1
5297 1 `setBit` 1 = 3
5298 1 `setBit` 2 = 5
5299 1 `setBit` 3 = 9
5300  
5301 2 `setBit` 0 = 3
5302 2 `setBit` 1 = 2
5303 2 `setBit` 2 = 6
5304 2 `setBit` 3 = 10
5305  
5306 3 `setBit` 0 = 3
5307 3 `setBit` 1 = 3
5308 3 `setBit` 2 = 7
5309 3 `setBit` 3 = 11
5310  
5311 #
5312 253 `clearBit` 0 = 252
5313 253 `clearBit` 1 = 253
5314 253 `clearBit` 2 = 249
5315 253 `clearBit` 3 = 245
5316  
5317 254 `clearBit` 0 = 254
5318 254 `clearBit` 1 = 252
5319 254 `clearBit` 2 = 250
5320 254 `clearBit` 3 = 246
5321  
5322 255 `clearBit` 0 = 254
5323 255 `clearBit` 1 = 253
5324 255 `clearBit` 2 = 251
5325 255 `clearBit` 3 = 247
5326  
5327 0 `clearBit` 0 = 0
5328 0 `clearBit` 1 = 0
5329 0 `clearBit` 2 = 0
5330 0 `clearBit` 3 = 0
5331  
5332 1 `clearBit` 0 = 0
5333 1 `clearBit` 1 = 1
5334 1 `clearBit` 2 = 1
5335 1 `clearBit` 3 = 1
5336  
5337 2 `clearBit` 0 = 2
5338 2 `clearBit` 1 = 0
5339 2 `clearBit` 2 = 2
5340 2 `clearBit` 3 = 2
5341  
5342 3 `clearBit` 0 = 2
5343 3 `clearBit` 1 = 1
5344 3 `clearBit` 2 = 3
5345 3 `clearBit` 3 = 3
5346  
5347 #
5348 253 `complementBit` 0 = 252
5349 253 `complementBit` 1 = 255
5350 253 `complementBit` 2 = 249
5351 253 `complementBit` 3 = 245
5352  
5353 254 `complementBit` 0 = 255
5354 254 `complementBit` 1 = 252
5355 254 `complementBit` 2 = 250
5356 254 `complementBit` 3 = 246
5357  
5358 255 `complementBit` 0 = 254
5359 255 `complementBit` 1 = 253
5360 255 `complementBit` 2 = 251
5361 255 `complementBit` 3 = 247
5362  
5363 0 `complementBit` 0 = 1
5364 0 `complementBit` 1 = 2
5365 0 `complementBit` 2 = 4
5366 0 `complementBit` 3 = 8
5367  
5368 1 `complementBit` 0 = 0
5369 1 `complementBit` 1 = 3
5370 1 `complementBit` 2 = 5
5371 1 `complementBit` 3 = 9
5372  
5373 2 `complementBit` 0 = 3
5374 2 `complementBit` 1 = 0
5375 2 `complementBit` 2 = 6
5376 2 `complementBit` 3 = 10
5377  
5378 3 `complementBit` 0 = 2
5379 3 `complementBit` 1 = 1
5380 3 `complementBit` 2 = 7
5381 3 `complementBit` 3 = 11
5382  
5383 #
5384 253 `testBit` 0 = True
5385 253 `testBit` 1 = False
5386 253 `testBit` 2 = True
5387 253 `testBit` 3 = True
5388  
5389 254 `testBit` 0 = False
5390 254 `testBit` 1 = True
5391 254 `testBit` 2 = True
5392 254 `testBit` 3 = True
5393  
5394 255 `testBit` 0 = True
5395 255 `testBit` 1 = True
5396 255 `testBit` 2 = True
5397 255 `testBit` 3 = True
5398  
5399 0 `testBit` 0 = False
5400 0 `testBit` 1 = False
5401 0 `testBit` 2 = False
5402 0 `testBit` 3 = False
5403  
5404 1 `testBit` 0 = True
5405 1 `testBit` 1 = False
5406 1 `testBit` 2 = False
5407 1 `testBit` 3 = False
5408  
5409 2 `testBit` 0 = False
5410 2 `testBit` 1 = True
5411 2 `testBit` 2 = False
5412 2 `testBit` 3 = False
5413  
5414 3 `testBit` 0 = True
5415 3 `testBit` 1 = True
5416 3 `testBit` 2 = False
5417 3 `testBit` 3 = False
5418  
5419 #
5420 bitSize 253 = 8
5421 bitSize 254 = 8
5422 bitSize 255 = 8
5423 bitSize 0 = 8
5424 bitSize 1 = 8
5425 bitSize 2 = 8
5426 bitSize 3 = 8
5427 #
5428 isSigned 253 = False
5429 isSigned 254 = False
5430 isSigned 255 = False
5431 isSigned 0 = False
5432 isSigned 1 = False
5433 isSigned 2 = False
5434 isSigned 3 = False
5435 #
5436 --------------------------------
5437 --------------------------------
5438 --Testing Word16
5439 --------------------------------
5440 testBounded
5441 (65535,0,1)
5442 (65534,65535,0)
5443 testEnum
5444 [0,1,2,3,4,5,6,7,8,9]
5445 [0,2,4,6,8,10,12,14,16,18]
5446 [0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
5447 [0,2,4,6,8,10,12,14,16,18,20]
5448 testReadShow
5449 [65533,65534,65535,0,1,2,3]
5450 [65533,65534,65535,0,1,2,3]
5451 testEq
5452 65533 == 65533 = True
5453 65533 == 65534 = False
5454 65533 == 65535 = False
5455 65533 == 0 = False
5456 65533 == 1 = False
5457 65533 == 2 = False
5458 65533 == 3 = False
5459  
5460 65534 == 65533 = False
5461 65534 == 65534 = True
5462 65534 == 65535 = False
5463 65534 == 0 = False
5464 65534 == 1 = False
5465 65534 == 2 = False
5466 65534 == 3 = False
5467  
5468 65535 == 65533 = False
5469 65535 == 65534 = False
5470 65535 == 65535 = True
5471 65535 == 0 = False
5472 65535 == 1 = False
5473 65535 == 2 = False
5474 65535 == 3 = False
5475  
5476 0 == 65533 = False
5477 0 == 65534 = False
5478 0 == 65535 = False
5479 0 == 0 = True
5480 0 == 1 = False
5481 0 == 2 = False
5482 0 == 3 = False
5483  
5484 1 == 65533 = False
5485 1 == 65534 = False
5486 1 == 65535 = False
5487 1 == 0 = False
5488 1 == 1 = True
5489 1 == 2 = False
5490 1 == 3 = False
5491  
5492 2 == 65533 = False
5493 2 == 65534 = False
5494 2 == 65535 = False
5495 2 == 0 = False
5496 2 == 1 = False
5497 2 == 2 = True
5498 2 == 3 = False
5499  
5500 3 == 65533 = False
5501 3 == 65534 = False
5502 3 == 65535 = False
5503 3 == 0 = False
5504 3 == 1 = False
5505 3 == 2 = False
5506 3 == 3 = True
5507  
5508 #
5509 65533 /= 65533 = False
5510 65533 /= 65534 = True
5511 65533 /= 65535 = True
5512 65533 /= 0 = True
5513 65533 /= 1 = True
5514 65533 /= 2 = True
5515 65533 /= 3 = True
5516  
5517 65534 /= 65533 = True
5518 65534 /= 65534 = False
5519 65534 /= 65535 = True
5520 65534 /= 0 = True
5521 65534 /= 1 = True
5522 65534 /= 2 = True
5523 65534 /= 3 = True
5524  
5525 65535 /= 65533 = True
5526 65535 /= 65534 = True
5527 65535 /= 65535 = False
5528 65535 /= 0 = True
5529 65535 /= 1 = True
5530 65535 /= 2 = True
5531 65535 /= 3 = True
5532  
5533 0 /= 65533 = True
5534 0 /= 65534 = True
5535 0 /= 65535 = True
5536 0 /= 0 = False
5537 0 /= 1 = True
5538 0 /= 2 = True
5539 0 /= 3 = True
5540  
5541 1 /= 65533 = True
5542 1 /= 65534 = True
5543 1 /= 65535 = True
5544 1 /= 0 = True
5545 1 /= 1 = False
5546 1 /= 2 = True
5547 1 /= 3 = True
5548  
5549 2 /= 65533 = True
5550 2 /= 65534 = True
5551 2 /= 65535 = True
5552 2 /= 0 = True
5553 2 /= 1 = True
5554 2 /= 2 = False
5555 2 /= 3 = True
5556  
5557 3 /= 65533 = True
5558 3 /= 65534 = True
5559 3 /= 65535 = True
5560 3 /= 0 = True
5561 3 /= 1 = True
5562 3 /= 2 = True
5563 3 /= 3 = False
5564  
5565 #
5566 testOrd
5567 65533 <= 65533 = True
5568 65533 <= 65534 = True
5569 65533 <= 65535 = True
5570 65533 <= 0 = False
5571 65533 <= 1 = False
5572 65533 <= 2 = False
5573 65533 <= 3 = False
5574  
5575 65534 <= 65533 = False
5576 65534 <= 65534 = True
5577 65534 <= 65535 = True
5578 65534 <= 0 = False
5579 65534 <= 1 = False
5580 65534 <= 2 = False
5581 65534 <= 3 = False
5582  
5583 65535 <= 65533 = False
5584 65535 <= 65534 = False
5585 65535 <= 65535 = True
5586 65535 <= 0 = False
5587 65535 <= 1 = False
5588 65535 <= 2 = False
5589 65535 <= 3 = False
5590  
5591 0 <= 65533 = True
5592 0 <= 65534 = True
5593 0 <= 65535 = True
5594 0 <= 0 = True
5595 0 <= 1 = True
5596 0 <= 2 = True
5597 0 <= 3 = True
5598  
5599 1 <= 65533 = True
5600 1 <= 65534 = True
5601 1 <= 65535 = True
5602 1 <= 0 = False
5603 1 <= 1 = True
5604 1 <= 2 = True
5605 1 <= 3 = True
5606  
5607 2 <= 65533 = True
5608 2 <= 65534 = True
5609 2 <= 65535 = True
5610 2 <= 0 = False
5611 2 <= 1 = False
5612 2 <= 2 = True
5613 2 <= 3 = True
5614  
5615 3 <= 65533 = True
5616 3 <= 65534 = True
5617 3 <= 65535 = True
5618 3 <= 0 = False
5619 3 <= 1 = False
5620 3 <= 2 = False
5621 3 <= 3 = True
5622  
5623 #
5624 65533 <  65533 = False
5625 65533 <  65534 = True
5626 65533 <  65535 = True
5627 65533 <  0 = False
5628 65533 <  1 = False
5629 65533 <  2 = False
5630 65533 <  3 = False
5631  
5632 65534 <  65533 = False
5633 65534 <  65534 = False
5634 65534 <  65535 = True
5635 65534 <  0 = False
5636 65534 <  1 = False
5637 65534 <  2 = False
5638 65534 <  3 = False
5639  
5640 65535 <  65533 = False
5641 65535 <  65534 = False
5642 65535 <  65535 = False
5643 65535 <  0 = False
5644 65535 <  1 = False
5645 65535 <  2 = False
5646 65535 <  3 = False
5647  
5648 0 <  65533 = True
5649 0 <  65534 = True
5650 0 <  65535 = True
5651 0 <  0 = False
5652 0 <  1 = True
5653 0 <  2 = True
5654 0 <  3 = True
5655  
5656 1 <  65533 = True
5657 1 <  65534 = True
5658 1 <  65535 = True
5659 1 <  0 = False
5660 1 <  1 = False
5661 1 <  2 = True
5662 1 <  3 = True
5663  
5664 2 <  65533 = True
5665 2 <  65534 = True
5666 2 <  65535 = True
5667 2 <  0 = False
5668 2 <  1 = False
5669 2 <  2 = False
5670 2 <  3 = True
5671  
5672 3 <  65533 = True
5673 3 <  65534 = True
5674 3 <  65535 = True
5675 3 <  0 = False
5676 3 <  1 = False
5677 3 <  2 = False
5678 3 <  3 = False
5679  
5680 #
5681 65533 >  65533 = False
5682 65533 >  65534 = False
5683 65533 >  65535 = False
5684 65533 >  0 = True
5685 65533 >  1 = True
5686 65533 >  2 = True
5687 65533 >  3 = True
5688  
5689 65534 >  65533 = True
5690 65534 >  65534 = False
5691 65534 >  65535 = False
5692 65534 >  0 = True
5693 65534 >  1 = True
5694 65534 >  2 = True
5695 65534 >  3 = True
5696  
5697 65535 >  65533 = True
5698 65535 >  65534 = True
5699 65535 >  65535 = False
5700 65535 >  0 = True
5701 65535 >  1 = True
5702 65535 >  2 = True
5703 65535 >  3 = True
5704  
5705 0 >  65533 = False
5706 0 >  65534 = False
5707 0 >  65535 = False
5708 0 >  0 = False
5709 0 >  1 = False
5710 0 >  2 = False
5711 0 >  3 = False
5712  
5713 1 >  65533 = False
5714 1 >  65534 = False
5715 1 >  65535 = False
5716 1 >  0 = True
5717 1 >  1 = False
5718 1 >  2 = False
5719 1 >  3 = False
5720  
5721 2 >  65533 = False
5722 2 >  65534 = False
5723 2 >  65535 = False
5724 2 >  0 = True
5725 2 >  1 = True
5726 2 >  2 = False
5727 2 >  3 = False
5728  
5729 3 >  65533 = False
5730 3 >  65534 = False
5731 3 >  65535 = False
5732 3 >  0 = True
5733 3 >  1 = True
5734 3 >  2 = True
5735 3 >  3 = False
5736  
5737 #
5738 65533 >= 65533 = True
5739 65533 >= 65534 = False
5740 65533 >= 65535 = False
5741 65533 >= 0 = True
5742 65533 >= 1 = True
5743 65533 >= 2 = True
5744 65533 >= 3 = True
5745  
5746 65534 >= 65533 = True
5747 65534 >= 65534 = True
5748 65534 >= 65535 = False
5749 65534 >= 0 = True
5750 65534 >= 1 = True
5751 65534 >= 2 = True
5752 65534 >= 3 = True
5753  
5754 65535 >= 65533 = True
5755 65535 >= 65534 = True
5756 65535 >= 65535 = True
5757 65535 >= 0 = True
5758 65535 >= 1 = True
5759 65535 >= 2 = True
5760 65535 >= 3 = True
5761  
5762 0 >= 65533 = False
5763 0 >= 65534 = False
5764 0 >= 65535 = False
5765 0 >= 0 = True
5766 0 >= 1 = False
5767 0 >= 2 = False
5768 0 >= 3 = False
5769  
5770 1 >= 65533 = False
5771 1 >= 65534 = False
5772 1 >= 65535 = False
5773 1 >= 0 = True
5774 1 >= 1 = True
5775 1 >= 2 = False
5776 1 >= 3 = False
5777  
5778 2 >= 65533 = False
5779 2 >= 65534 = False
5780 2 >= 65535 = False
5781 2 >= 0 = True
5782 2 >= 1 = True
5783 2 >= 2 = True
5784 2 >= 3 = False
5785  
5786 3 >= 65533 = False
5787 3 >= 65534 = False
5788 3 >= 65535 = False
5789 3 >= 0 = True
5790 3 >= 1 = True
5791 3 >= 2 = True
5792 3 >= 3 = True
5793  
5794 #
5795 65533 `compare` 65533 = EQ
5796 65533 `compare` 65534 = LT
5797 65533 `compare` 65535 = LT
5798 65533 `compare` 0 = GT
5799 65533 `compare` 1 = GT
5800 65533 `compare` 2 = GT
5801 65533 `compare` 3 = GT
5802  
5803 65534 `compare` 65533 = GT
5804 65534 `compare` 65534 = EQ
5805 65534 `compare` 65535 = LT
5806 65534 `compare` 0 = GT
5807 65534 `compare` 1 = GT
5808 65534 `compare` 2 = GT
5809 65534 `compare` 3 = GT
5810  
5811 65535 `compare` 65533 = GT
5812 65535 `compare` 65534 = GT
5813 65535 `compare` 65535 = EQ
5814 65535 `compare` 0 = GT
5815 65535 `compare` 1 = GT
5816 65535 `compare` 2 = GT
5817 65535 `compare` 3 = GT
5818  
5819 0 `compare` 65533 = LT
5820 0 `compare` 65534 = LT
5821 0 `compare` 65535 = LT
5822 0 `compare` 0 = EQ
5823 0 `compare` 1 = LT
5824 0 `compare` 2 = LT
5825 0 `compare` 3 = LT
5826  
5827 1 `compare` 65533 = LT
5828 1 `compare` 65534 = LT
5829 1 `compare` 65535 = LT
5830 1 `compare` 0 = GT
5831 1 `compare` 1 = EQ
5832 1 `compare` 2 = LT
5833 1 `compare` 3 = LT
5834  
5835 2 `compare` 65533 = LT
5836 2 `compare` 65534 = LT
5837 2 `compare` 65535 = LT
5838 2 `compare` 0 = GT
5839 2 `compare` 1 = GT
5840 2 `compare` 2 = EQ
5841 2 `compare` 3 = LT
5842  
5843 3 `compare` 65533 = LT
5844 3 `compare` 65534 = LT
5845 3 `compare` 65535 = LT
5846 3 `compare` 0 = GT
5847 3 `compare` 1 = GT
5848 3 `compare` 2 = GT
5849 3 `compare` 3 = EQ
5850  
5851 #
5852 testNum
5853 65533 + 65533 = 65530
5854 65533 + 65534 = 65531
5855 65533 + 65535 = 65532
5856 65533 + 0 = 65533
5857 65533 + 1 = 65534
5858 65533 + 2 = 65535
5859 65533 + 3 = 0
5860  
5861 65534 + 65533 = 65531
5862 65534 + 65534 = 65532
5863 65534 + 65535 = 65533
5864 65534 + 0 = 65534
5865 65534 + 1 = 65535
5866 65534 + 2 = 0
5867 65534 + 3 = 1
5868  
5869 65535 + 65533 = 65532
5870 65535 + 65534 = 65533
5871 65535 + 65535 = 65534
5872 65535 + 0 = 65535
5873 65535 + 1 = 0
5874 65535 + 2 = 1
5875 65535 + 3 = 2
5876  
5877 0 + 65533 = 65533
5878 0 + 65534 = 65534
5879 0 + 65535 = 65535
5880 0 + 0 = 0
5881 0 + 1 = 1
5882 0 + 2 = 2
5883 0 + 3 = 3
5884  
5885 1 + 65533 = 65534
5886 1 + 65534 = 65535
5887 1 + 65535 = 0
5888 1 + 0 = 1
5889 1 + 1 = 2
5890 1 + 2 = 3
5891 1 + 3 = 4
5892  
5893 2 + 65533 = 65535
5894 2 + 65534 = 0
5895 2 + 65535 = 1
5896 2 + 0 = 2
5897 2 + 1 = 3
5898 2 + 2 = 4
5899 2 + 3 = 5
5900  
5901 3 + 65533 = 0
5902 3 + 65534 = 1
5903 3 + 65535 = 2
5904 3 + 0 = 3
5905 3 + 1 = 4
5906 3 + 2 = 5
5907 3 + 3 = 6
5908  
5909 #
5910 65533 - 65533 = 0
5911 65533 - 65534 = 65535
5912 65533 - 65535 = 65534
5913 65533 - 0 = 65533
5914 65533 - 1 = 65532
5915 65533 - 2 = 65531
5916 65533 - 3 = 65530
5917  
5918 65534 - 65533 = 1
5919 65534 - 65534 = 0
5920 65534 - 65535 = 65535
5921 65534 - 0 = 65534
5922 65534 - 1 = 65533
5923 65534 - 2 = 65532
5924 65534 - 3 = 65531
5925  
5926 65535 - 65533 = 2
5927 65535 - 65534 = 1
5928 65535 - 65535 = 0
5929 65535 - 0 = 65535
5930 65535 - 1 = 65534
5931 65535 - 2 = 65533
5932 65535 - 3 = 65532
5933  
5934 0 - 65533 = 3
5935 0 - 65534 = 2
5936 0 - 65535 = 1
5937 0 - 0 = 0
5938 0 - 1 = 65535
5939 0 - 2 = 65534
5940 0 - 3 = 65533
5941  
5942 1 - 65533 = 4
5943 1 - 65534 = 3
5944 1 - 65535 = 2
5945 1 - 0 = 1
5946 1 - 1 = 0
5947 1 - 2 = 65535
5948 1 - 3 = 65534
5949  
5950 2 - 65533 = 5
5951 2 - 65534 = 4
5952 2 - 65535 = 3
5953 2 - 0 = 2
5954 2 - 1 = 1
5955 2 - 2 = 0
5956 2 - 3 = 65535
5957  
5958 3 - 65533 = 6
5959 3 - 65534 = 5
5960 3 - 65535 = 4
5961 3 - 0 = 3
5962 3 - 1 = 2
5963 3 - 2 = 1
5964 3 - 3 = 0
5965  
5966 #
5967 65533 * 65533 = 9
5968 65533 * 65534 = 6
5969 65533 * 65535 = 3
5970 65533 * 0 = 0
5971 65533 * 1 = 65533
5972 65533 * 2 = 65530
5973 65533 * 3 = 65527
5974  
5975 65534 * 65533 = 6
5976 65534 * 65534 = 4
5977 65534 * 65535 = 2
5978 65534 * 0 = 0
5979 65534 * 1 = 65534
5980 65534 * 2 = 65532
5981 65534 * 3 = 65530
5982  
5983 65535 * 65533 = 3
5984 65535 * 65534 = 2
5985 65535 * 65535 = 1
5986 65535 * 0 = 0
5987 65535 * 1 = 65535
5988 65535 * 2 = 65534
5989 65535 * 3 = 65533
5990  
5991 0 * 65533 = 0
5992 0 * 65534 = 0
5993 0 * 65535 = 0
5994 0 * 0 = 0
5995 0 * 1 = 0
5996 0 * 2 = 0
5997 0 * 3 = 0
5998  
5999 1 * 65533 = 65533
6000 1 * 65534 = 65534
6001 1 * 65535 = 65535
6002 1 * 0 = 0
6003 1 * 1 = 1
6004 1 * 2 = 2
6005 1 * 3 = 3
6006  
6007 2 * 65533 = 65530
6008 2 * 65534 = 65532
6009 2 * 65535 = 65534
6010 2 * 0 = 0
6011 2 * 1 = 2
6012 2 * 2 = 4
6013 2 * 3 = 6
6014  
6015 3 * 65533 = 65527
6016 3 * 65534 = 65530
6017 3 * 65535 = 65533
6018 3 * 0 = 0
6019 3 * 1 = 3
6020 3 * 2 = 6
6021 3 * 3 = 9
6022  
6023 #
6024 negate 65533 = 3
6025 negate 65534 = 2
6026 negate 65535 = 1
6027 negate 0 = 0
6028 negate 1 = 65535
6029 negate 2 = 65534
6030 negate 3 = 65533
6031 #
6032 testReal
6033 toRational 65533 = 65533 % 1
6034 toRational 65534 = 65534 % 1
6035 toRational 65535 = 65535 % 1
6036 toRational 0 = 0 % 1
6037 toRational 1 = 1 % 1
6038 toRational 2 = 2 % 1
6039 toRational 3 = 3 % 1
6040 #
6041 testIntegral
6042 65533 `divMod`  65533 = (1,0)
6043 65533 `divMod`  65534 = (0,65533)
6044 65533 `divMod`  65535 = (0,65533)
6045 65533 `divMod`  1 = (65533,0)
6046 65533 `divMod`  2 = (32766,1)
6047 65533 `divMod`  3 = (21844,1)
6048  
6049 65534 `divMod`  65533 = (1,1)
6050 65534 `divMod`  65534 = (1,0)
6051 65534 `divMod`  65535 = (0,65534)
6052 65534 `divMod`  1 = (65534,0)
6053 65534 `divMod`  2 = (32767,0)
6054 65534 `divMod`  3 = (21844,2)
6055  
6056 65535 `divMod`  65533 = (1,2)
6057 65535 `divMod`  65534 = (1,1)
6058 65535 `divMod`  65535 = (1,0)
6059 65535 `divMod`  1 = (65535,0)
6060 65535 `divMod`  2 = (32767,1)
6061 65535 `divMod`  3 = (21845,0)
6062  
6063 0 `divMod`  65533 = (0,0)
6064 0 `divMod`  65534 = (0,0)
6065 0 `divMod`  65535 = (0,0)
6066 0 `divMod`  1 = (0,0)
6067 0 `divMod`  2 = (0,0)
6068 0 `divMod`  3 = (0,0)
6069  
6070 1 `divMod`  65533 = (0,1)
6071 1 `divMod`  65534 = (0,1)
6072 1 `divMod`  65535 = (0,1)
6073 1 `divMod`  1 = (1,0)
6074 1 `divMod`  2 = (0,1)
6075 1 `divMod`  3 = (0,1)
6076  
6077 2 `divMod`  65533 = (0,2)
6078 2 `divMod`  65534 = (0,2)
6079 2 `divMod`  65535 = (0,2)
6080 2 `divMod`  1 = (2,0)
6081 2 `divMod`  2 = (1,0)
6082 2 `divMod`  3 = (0,2)
6083  
6084 3 `divMod`  65533 = (0,3)
6085 3 `divMod`  65534 = (0,3)
6086 3 `divMod`  65535 = (0,3)
6087 3 `divMod`  1 = (3,0)
6088 3 `divMod`  2 = (1,1)
6089 3 `divMod`  3 = (1,0)
6090  
6091 #
6092 65533 `div`     65533 = 1
6093 65533 `div`     65534 = 0
6094 65533 `div`     65535 = 0
6095 65533 `div`     1 = 65533
6096 65533 `div`     2 = 32766
6097 65533 `div`     3 = 21844
6098  
6099 65534 `div`     65533 = 1
6100 65534 `div`     65534 = 1
6101 65534 `div`     65535 = 0
6102 65534 `div`     1 = 65534
6103 65534 `div`     2 = 32767
6104 65534 `div`     3 = 21844
6105  
6106 65535 `div`     65533 = 1
6107 65535 `div`     65534 = 1
6108 65535 `div`     65535 = 1
6109 65535 `div`     1 = 65535
6110 65535 `div`     2 = 32767
6111 65535 `div`     3 = 21845
6112  
6113 0 `div`     65533 = 0
6114 0 `div`     65534 = 0
6115 0 `div`     65535 = 0
6116 0 `div`     1 = 0
6117 0 `div`     2 = 0
6118 0 `div`     3 = 0
6119  
6120 1 `div`     65533 = 0
6121 1 `div`     65534 = 0
6122 1 `div`     65535 = 0
6123 1 `div`     1 = 1
6124 1 `div`     2 = 0
6125 1 `div`     3 = 0
6126  
6127 2 `div`     65533 = 0
6128 2 `div`     65534 = 0
6129 2 `div`     65535 = 0
6130 2 `div`     1 = 2
6131 2 `div`     2 = 1
6132 2 `div`     3 = 0
6133  
6134 3 `div`     65533 = 0
6135 3 `div`     65534 = 0
6136 3 `div`     65535 = 0
6137 3 `div`     1 = 3
6138 3 `div`     2 = 1
6139 3 `div`     3 = 1
6140  
6141 #
6142 65533 `mod`     65533 = 0
6143 65533 `mod`     65534 = 65533
6144 65533 `mod`     65535 = 65533
6145 65533 `mod`     1 = 0
6146 65533 `mod`     2 = 1
6147 65533 `mod`     3 = 1
6148  
6149 65534 `mod`     65533 = 1
6150 65534 `mod`     65534 = 0
6151 65534 `mod`     65535 = 65534
6152 65534 `mod`     1 = 0
6153 65534 `mod`     2 = 0
6154 65534 `mod`     3 = 2
6155  
6156 65535 `mod`     65533 = 2
6157 65535 `mod`     65534 = 1
6158 65535 `mod`     65535 = 0
6159 65535 `mod`     1 = 0
6160 65535 `mod`     2 = 1
6161 65535 `mod`     3 = 0
6162  
6163 0 `mod`     65533 = 0
6164 0 `mod`     65534 = 0
6165 0 `mod`     65535 = 0
6166 0 `mod`     1 = 0
6167 0 `mod`     2 = 0
6168 0 `mod`     3 = 0
6169  
6170 1 `mod`     65533 = 1
6171 1 `mod`     65534 = 1
6172 1 `mod`     65535 = 1
6173 1 `mod`     1 = 0
6174 1 `mod`     2 = 1
6175 1 `mod`     3 = 1
6176  
6177 2 `mod`     65533 = 2
6178 2 `mod`     65534 = 2
6179 2 `mod`     65535 = 2
6180 2 `mod`     1 = 0
6181 2 `mod`     2 = 0
6182 2 `mod`     3 = 2
6183  
6184 3 `mod`     65533 = 3
6185 3 `mod`     65534 = 3
6186 3 `mod`     65535 = 3
6187 3 `mod`     1 = 0
6188 3 `mod`     2 = 1
6189 3 `mod`     3 = 0
6190  
6191 #
6192 65533 `quotRem` 65533 = (1,0)
6193 65533 `quotRem` 65534 = (0,65533)
6194 65533 `quotRem` 65535 = (0,65533)
6195 65533 `quotRem` 1 = (65533,0)
6196 65533 `quotRem` 2 = (32766,1)
6197 65533 `quotRem` 3 = (21844,1)
6198  
6199 65534 `quotRem` 65533 = (1,1)
6200 65534 `quotRem` 65534 = (1,0)
6201 65534 `quotRem` 65535 = (0,65534)
6202 65534 `quotRem` 1 = (65534,0)
6203 65534 `quotRem` 2 = (32767,0)
6204 65534 `quotRem` 3 = (21844,2)
6205  
6206 65535 `quotRem` 65533 = (1,2)
6207 65535 `quotRem` 65534 = (1,1)
6208 65535 `quotRem` 65535 = (1,0)
6209 65535 `quotRem` 1 = (65535,0)
6210 65535 `quotRem` 2 = (32767,1)
6211 65535 `quotRem` 3 = (21845,0)
6212  
6213 0 `quotRem` 65533 = (0,0)
6214 0 `quotRem` 65534 = (0,0)
6215 0 `quotRem` 65535 = (0,0)
6216 0 `quotRem` 1 = (0,0)
6217 0 `quotRem` 2 = (0,0)
6218 0 `quotRem` 3 = (0,0)
6219  
6220 1 `quotRem` 65533 = (0,1)
6221 1 `quotRem` 65534 = (0,1)
6222 1 `quotRem` 65535 = (0,1)
6223 1 `quotRem` 1 = (1,0)
6224 1 `quotRem` 2 = (0,1)
6225 1 `quotRem` 3 = (0,1)
6226  
6227 2 `quotRem` 65533 = (0,2)
6228 2 `quotRem` 65534 = (0,2)
6229 2 `quotRem` 65535 = (0,2)
6230 2 `quotRem` 1 = (2,0)
6231 2 `quotRem` 2 = (1,0)
6232 2 `quotRem` 3 = (0,2)
6233  
6234 3 `quotRem` 65533 = (0,3)
6235 3 `quotRem` 65534 = (0,3)
6236 3 `quotRem` 65535 = (0,3)
6237 3 `quotRem` 1 = (3,0)
6238 3 `quotRem` 2 = (1,1)
6239 3 `quotRem` 3 = (1,0)
6240  
6241 #
6242 65533 `quot`    65533 = 1
6243 65533 `quot`    65534 = 0
6244 65533 `quot`    65535 = 0
6245 65533 `quot`    1 = 65533
6246 65533 `quot`    2 = 32766
6247 65533 `quot`    3 = 21844
6248  
6249 65534 `quot`    65533 = 1
6250 65534 `quot`    65534 = 1
6251 65534 `quot`    65535 = 0
6252 65534 `quot`    1 = 65534
6253 65534 `quot`    2 = 32767
6254 65534 `quot`    3 = 21844
6255  
6256 65535 `quot`    65533 = 1
6257 65535 `quot`    65534 = 1
6258 65535 `quot`    65535 = 1
6259 65535 `quot`    1 = 65535
6260 65535 `quot`    2 = 32767
6261 65535 `quot`    3 = 21845
6262  
6263 0 `quot`    65533 = 0
6264 0 `quot`    65534 = 0
6265 0 `quot`    65535 = 0
6266 0 `quot`    1 = 0
6267 0 `quot`    2 = 0
6268 0 `quot`    3 = 0
6269  
6270 1 `quot`    65533 = 0
6271 1 `quot`    65534 = 0
6272 1 `quot`    65535 = 0
6273 1 `quot`    1 = 1
6274 1 `quot`    2 = 0
6275 1 `quot`    3 = 0
6276  
6277 2 `quot`    65533 = 0
6278 2 `quot`    65534 = 0
6279 2 `quot`    65535 = 0
6280 2 `quot`    1 = 2
6281 2 `quot`    2 = 1
6282 2 `quot`    3 = 0
6283  
6284 3 `quot`    65533 = 0
6285 3 `quot`    65534 = 0
6286 3 `quot`    65535 = 0
6287 3 `quot`    1 = 3
6288 3 `quot`    2 = 1
6289 3 `quot`    3 = 1
6290  
6291 #
6292 65533 `rem`     65533 = 0
6293 65533 `rem`     65534 = 65533
6294 65533 `rem`     65535 = 65533
6295 65533 `rem`     1 = 0
6296 65533 `rem`     2 = 1
6297 65533 `rem`     3 = 1
6298  
6299 65534 `rem`     65533 = 1
6300 65534 `rem`     65534 = 0
6301 65534 `rem`     65535 = 65534
6302 65534 `rem`     1 = 0
6303 65534 `rem`     2 = 0
6304 65534 `rem`     3 = 2
6305  
6306 65535 `rem`     65533 = 2
6307 65535 `rem`     65534 = 1
6308 65535 `rem`     65535 = 0
6309 65535 `rem`     1 = 0
6310 65535 `rem`     2 = 1
6311 65535 `rem`     3 = 0
6312  
6313 0 `rem`     65533 = 0
6314 0 `rem`     65534 = 0
6315 0 `rem`     65535 = 0
6316 0 `rem`     1 = 0
6317 0 `rem`     2 = 0
6318 0 `rem`     3 = 0
6319  
6320 1 `rem`     65533 = 1
6321 1 `rem`     65534 = 1
6322 1 `rem`     65535 = 1
6323 1 `rem`     1 = 0
6324 1 `rem`     2 = 1
6325 1 `rem`     3 = 1
6326  
6327 2 `rem`     65533 = 2
6328 2 `rem`     65534 = 2
6329 2 `rem`     65535 = 2
6330 2 `rem`     1 = 0
6331 2 `rem`     2 = 0
6332 2 `rem`     3 = 2
6333  
6334 3 `rem`     65533 = 3
6335 3 `rem`     65534 = 3
6336 3 `rem`     65535 = 3
6337 3 `rem`     1 = 0
6338 3 `rem`     2 = 1
6339 3 `rem`     3 = 0
6340  
6341 #
6342 testBits
6343 65533 .&.   65533 = 65533
6344 65533 .&.   65534 = 65532
6345 65533 .&.   65535 = 65533
6346 65533 .&.   1 = 1
6347 65533 .&.   2 = 0
6348 65533 .&.   3 = 1
6349  
6350 65534 .&.   65533 = 65532
6351 65534 .&.   65534 = 65534
6352 65534 .&.   65535 = 65534
6353 65534 .&.   1 = 0
6354 65534 .&.   2 = 2
6355 65534 .&.   3 = 2
6356  
6357 65535 .&.   65533 = 65533
6358 65535 .&.   65534 = 65534
6359 65535 .&.   65535 = 65535
6360 65535 .&.   1 = 1
6361 65535 .&.   2 = 2
6362 65535 .&.   3 = 3
6363  
6364 0 .&.   65533 = 0
6365 0 .&.   65534 = 0
6366 0 .&.   65535 = 0
6367 0 .&.   1 = 0
6368 0 .&.   2 = 0
6369 0 .&.   3 = 0
6370  
6371 1 .&.   65533 = 1
6372 1 .&.   65534 = 0
6373 1 .&.   65535 = 1
6374 1 .&.   1 = 1
6375 1 .&.   2 = 0
6376 1 .&.   3 = 1
6377  
6378 2 .&.   65533 = 0
6379 2 .&.   65534 = 2
6380 2 .&.   65535 = 2
6381 2 .&.   1 = 0
6382 2 .&.   2 = 2
6383 2 .&.   3 = 2
6384  
6385 3 .&.   65533 = 1
6386 3 .&.   65534 = 2
6387 3 .&.   65535 = 3
6388 3 .&.   1 = 1
6389 3 .&.   2 = 2
6390 3 .&.   3 = 3
6391  
6392 #
6393 65533 .|.   65533 = 65533
6394 65533 .|.   65534 = 65535
6395 65533 .|.   65535 = 65535
6396 65533 .|.   1 = 65533
6397 65533 .|.   2 = 65535
6398 65533 .|.   3 = 65535
6399  
6400 65534 .|.   65533 = 65535
6401 65534 .|.   65534 = 65534
6402 65534 .|.   65535 = 65535
6403 65534 .|.   1 = 65535
6404 65534 .|.   2 = 65534
6405 65534 .|.   3 = 65535
6406  
6407 65535 .|.   65533 = 65535
6408 65535 .|.   65534 = 65535
6409 65535 .|.   65535 = 65535
6410 65535 .|.   1 = 65535
6411 65535 .|.   2 = 65535
6412 65535 .|.   3 = 65535
6413  
6414 0 .|.   65533 = 65533
6415 0 .|.   65534 = 65534
6416 0 .|.   65535 = 65535
6417 0 .|.   1 = 1
6418 0 .|.   2 = 2
6419 0 .|.   3 = 3
6420  
6421 1 .|.   65533 = 65533
6422 1 .|.   65534 = 65535
6423 1 .|.   65535 = 65535
6424 1 .|.   1 = 1
6425 1 .|.   2 = 3
6426 1 .|.   3 = 3
6427  
6428 2 .|.   65533 = 65535
6429 2 .|.   65534 = 65534
6430 2 .|.   65535 = 65535
6431 2 .|.   1 = 3
6432 2 .|.   2 = 2
6433 2 .|.   3 = 3
6434  
6435 3 .|.   65533 = 65535
6436 3 .|.   65534 = 65535
6437 3 .|.   65535 = 65535
6438 3 .|.   1 = 3
6439 3 .|.   2 = 3
6440 3 .|.   3 = 3
6441  
6442 #
6443 65533 `xor` 65533 = 0
6444 65533 `xor` 65534 = 3
6445 65533 `xor` 65535 = 2
6446 65533 `xor` 1 = 65532
6447 65533 `xor` 2 = 65535
6448 65533 `xor` 3 = 65534
6449  
6450 65534 `xor` 65533 = 3
6451 65534 `xor` 65534 = 0
6452 65534 `xor` 65535 = 1
6453 65534 `xor` 1 = 65535
6454 65534 `xor` 2 = 65532
6455 65534 `xor` 3 = 65533
6456  
6457 65535 `xor` 65533 = 2
6458 65535 `xor` 65534 = 1
6459 65535 `xor` 65535 = 0
6460 65535 `xor` 1 = 65534
6461 65535 `xor` 2 = 65533
6462 65535 `xor` 3 = 65532
6463  
6464 0 `xor` 65533 = 65533
6465 0 `xor` 65534 = 65534
6466 0 `xor` 65535 = 65535
6467 0 `xor` 1 = 1
6468 0 `xor` 2 = 2
6469 0 `xor` 3 = 3
6470  
6471 1 `xor` 65533 = 65532
6472 1 `xor` 65534 = 65535
6473 1 `xor` 65535 = 65534
6474 1 `xor` 1 = 0
6475 1 `xor` 2 = 3
6476 1 `xor` 3 = 2
6477  
6478 2 `xor` 65533 = 65535
6479 2 `xor` 65534 = 65532
6480 2 `xor` 65535 = 65533
6481 2 `xor` 1 = 3
6482 2 `xor` 2 = 0
6483 2 `xor` 3 = 1
6484  
6485 3 `xor` 65533 = 65534
6486 3 `xor` 65534 = 65533
6487 3 `xor` 65535 = 65532
6488 3 `xor` 1 = 2
6489 3 `xor` 2 = 1
6490 3 `xor` 3 = 0
6491  
6492 #
6493 complement 65533 = 2
6494 complement 65534 = 1
6495 complement 65535 = 0
6496 complement 0 = 65535
6497 complement 1 = 65534
6498 complement 2 = 65533
6499 complement 3 = 65532
6500 #
6501 65533 `shiftL` 0 = 65533
6502 65533 `shiftL` 1 = 65530
6503 65533 `shiftL` 2 = 65524
6504 65533 `shiftL` 3 = 65512
6505  
6506 65534 `shiftL` 0 = 65534
6507 65534 `shiftL` 1 = 65532
6508 65534 `shiftL` 2 = 65528
6509 65534 `shiftL` 3 = 65520
6510  
6511 65535 `shiftL` 0 = 65535
6512 65535 `shiftL` 1 = 65534
6513 65535 `shiftL` 2 = 65532
6514 65535 `shiftL` 3 = 65528
6515  
6516 0 `shiftL` 0 = 0
6517 0 `shiftL` 1 = 0
6518 0 `shiftL` 2 = 0
6519 0 `shiftL` 3 = 0
6520  
6521 1 `shiftL` 0 = 1
6522 1 `shiftL` 1 = 2
6523 1 `shiftL` 2 = 4
6524 1 `shiftL` 3 = 8
6525  
6526 2 `shiftL` 0 = 2
6527 2 `shiftL` 1 = 4
6528 2 `shiftL` 2 = 8
6529 2 `shiftL` 3 = 16
6530  
6531 3 `shiftL` 0 = 3
6532 3 `shiftL` 1 = 6
6533 3 `shiftL` 2 = 12
6534 3 `shiftL` 3 = 24
6535  
6536 #
6537 65533 `shiftR` 0 = 65533
6538 65533 `shiftR` 1 = 32766
6539 65533 `shiftR` 2 = 16383
6540 65533 `shiftR` 3 = 8191
6541  
6542 65534 `shiftR` 0 = 65534
6543 65534 `shiftR` 1 = 32767
6544 65534 `shiftR` 2 = 16383
6545 65534 `shiftR` 3 = 8191
6546  
6547 65535 `shiftR` 0 = 65535
6548 65535 `shiftR` 1 = 32767
6549 65535 `shiftR` 2 = 16383
6550 65535 `shiftR` 3 = 8191
6551  
6552 0 `shiftR` 0 = 0
6553 0 `shiftR` 1 = 0
6554 0 `shiftR` 2 = 0
6555 0 `shiftR` 3 = 0
6556  
6557 1 `shiftR` 0 = 1
6558 1 `shiftR` 1 = 0
6559 1 `shiftR` 2 = 0
6560 1 `shiftR` 3 = 0
6561  
6562 2 `shiftR` 0 = 2
6563 2 `shiftR` 1 = 1
6564 2 `shiftR` 2 = 0
6565 2 `shiftR` 3 = 0
6566  
6567 3 `shiftR` 0 = 3
6568 3 `shiftR` 1 = 1
6569 3 `shiftR` 2 = 0
6570 3 `shiftR` 3 = 0
6571  
6572 #
6573 65533 `rotate` -3 = 49151
6574 65533 `rotate` -2 = 32767
6575 65533 `rotate` -1 = 65534
6576 65533 `rotate` 0 = 65533
6577 65533 `rotate` 1 = 65531
6578 65533 `rotate` 2 = 65527
6579 65533 `rotate` 3 = 65519
6580  
6581 65534 `rotate` -3 = 57343
6582 65534 `rotate` -2 = 49151
6583 65534 `rotate` -1 = 32767
6584 65534 `rotate` 0 = 65534
6585 65534 `rotate` 1 = 65533
6586 65534 `rotate` 2 = 65531
6587 65534 `rotate` 3 = 65527
6588  
6589 65535 `rotate` -3 = 65535
6590 65535 `rotate` -2 = 65535
6591 65535 `rotate` -1 = 65535
6592 65535 `rotate` 0 = 65535
6593 65535 `rotate` 1 = 65535
6594 65535 `rotate` 2 = 65535
6595 65535 `rotate` 3 = 65535
6596  
6597 0 `rotate` -3 = 0
6598 0 `rotate` -2 = 0
6599 0 `rotate` -1 = 0
6600 0 `rotate` 0 = 0
6601 0 `rotate` 1 = 0
6602 0 `rotate` 2 = 0
6603 0 `rotate` 3 = 0
6604  
6605 1 `rotate` -3 = 8192
6606 1 `rotate` -2 = 16384
6607 1 `rotate` -1 = 32768
6608 1 `rotate` 0 = 1
6609 1 `rotate` 1 = 2
6610 1 `rotate` 2 = 4
6611 1 `rotate` 3 = 8
6612  
6613 2 `rotate` -3 = 16384
6614 2 `rotate` -2 = 32768
6615 2 `rotate` -1 = 1
6616 2 `rotate` 0 = 2
6617 2 `rotate` 1 = 4
6618 2 `rotate` 2 = 8
6619 2 `rotate` 3 = 16
6620  
6621 3 `rotate` -3 = 24576
6622 3 `rotate` -2 = 49152
6623 3 `rotate` -1 = 32769
6624 3 `rotate` 0 = 3
6625 3 `rotate` 1 = 6
6626 3 `rotate` 2 = 12
6627 3 `rotate` 3 = 24
6628  
6629 #
6630 bit 0 = 1
6631 bit 1 = 2
6632 bit 2 = 4
6633 bit 3 = 8
6634 #
6635 65533 `setBit` 0 = 65533
6636 65533 `setBit` 1 = 65535
6637 65533 `setBit` 2 = 65533
6638 65533 `setBit` 3 = 65533
6639  
6640 65534 `setBit` 0 = 65535
6641 65534 `setBit` 1 = 65534
6642 65534 `setBit` 2 = 65534
6643 65534 `setBit` 3 = 65534
6644  
6645 65535 `setBit` 0 = 65535
6646 65535 `setBit` 1 = 65535
6647 65535 `setBit` 2 = 65535
6648 65535 `setBit` 3 = 65535
6649  
6650 0 `setBit` 0 = 1
6651 0 `setBit` 1 = 2
6652 0 `setBit` 2 = 4
6653 0 `setBit` 3 = 8
6654  
6655 1 `setBit` 0 = 1
6656 1 `setBit` 1 = 3
6657 1 `setBit` 2 = 5
6658 1 `setBit` 3 = 9
6659  
6660 2 `setBit` 0 = 3
6661 2 `setBit` 1 = 2
6662 2 `setBit` 2 = 6
6663 2 `setBit` 3 = 10
6664  
6665 3 `setBit` 0 = 3
6666 3 `setBit` 1 = 3
6667 3 `setBit` 2 = 7
6668 3 `setBit` 3 = 11
6669  
6670 #
6671 65533 `clearBit` 0 = 65532
6672 65533 `clearBit` 1 = 65533
6673 65533 `clearBit` 2 = 65529
6674 65533 `clearBit` 3 = 65525
6675  
6676 65534 `clearBit` 0 = 65534
6677 65534 `clearBit` 1 = 65532
6678 65534 `clearBit` 2 = 65530
6679 65534 `clearBit` 3 = 65526
6680  
6681 65535 `clearBit` 0 = 65534
6682 65535 `clearBit` 1 = 65533
6683 65535 `clearBit` 2 = 65531
6684 65535 `clearBit` 3 = 65527
6685  
6686 0 `clearBit` 0 = 0
6687 0 `clearBit` 1 = 0
6688 0 `clearBit` 2 = 0
6689 0 `clearBit` 3 = 0
6690  
6691 1 `clearBit` 0 = 0
6692 1 `clearBit` 1 = 1
6693 1 `clearBit` 2 = 1
6694 1 `clearBit` 3 = 1
6695  
6696 2 `clearBit` 0 = 2
6697 2 `clearBit` 1 = 0
6698 2 `clearBit` 2 = 2
6699 2 `clearBit` 3 = 2
6700  
6701 3 `clearBit` 0 = 2
6702 3 `clearBit` 1 = 1
6703 3 `clearBit` 2 = 3
6704 3 `clearBit` 3 = 3
6705  
6706 #
6707 65533 `complementBit` 0 = 65532
6708 65533 `complementBit` 1 = 65535
6709 65533 `complementBit` 2 = 65529
6710 65533 `complementBit` 3 = 65525
6711  
6712 65534 `complementBit` 0 = 65535
6713 65534 `complementBit` 1 = 65532
6714 65534 `complementBit` 2 = 65530
6715 65534 `complementBit` 3 = 65526
6716  
6717 65535 `complementBit` 0 = 65534
6718 65535 `complementBit` 1 = 65533
6719 65535 `complementBit` 2 = 65531
6720 65535 `complementBit` 3 = 65527
6721  
6722 0 `complementBit` 0 = 1
6723 0 `complementBit` 1 = 2
6724 0 `complementBit` 2 = 4
6725 0 `complementBit` 3 = 8
6726  
6727 1 `complementBit` 0 = 0
6728 1 `complementBit` 1 = 3
6729 1 `complementBit` 2 = 5
6730 1 `complementBit` 3 = 9
6731  
6732 2 `complementBit` 0 = 3
6733 2 `complementBit` 1 = 0
6734 2 `complementBit` 2 = 6
6735 2 `complementBit` 3 = 10
6736  
6737 3 `complementBit` 0 = 2
6738 3 `complementBit` 1 = 1
6739 3 `complementBit` 2 = 7
6740 3 `complementBit` 3 = 11
6741  
6742 #
6743 65533 `testBit` 0 = True
6744 65533 `testBit` 1 = False
6745 65533 `testBit` 2 = True
6746 65533 `testBit` 3 = True
6747  
6748 65534 `testBit` 0 = False
6749 65534 `testBit` 1 = True
6750 65534 `testBit` 2 = True
6751 65534 `testBit` 3 = True
6752  
6753 65535 `testBit` 0 = True
6754 65535 `testBit` 1 = True
6755 65535 `testBit` 2 = True
6756 65535 `testBit` 3 = True
6757  
6758 0 `testBit` 0 = False
6759 0 `testBit` 1 = False
6760 0 `testBit` 2 = False
6761 0 `testBit` 3 = False
6762  
6763 1 `testBit` 0 = True
6764 1 `testBit` 1 = False
6765 1 `testBit` 2 = False
6766 1 `testBit` 3 = False
6767  
6768 2 `testBit` 0 = False
6769 2 `testBit` 1 = True
6770 2 `testBit` 2 = False
6771 2 `testBit` 3 = False
6772  
6773 3 `testBit` 0 = True
6774 3 `testBit` 1 = True
6775 3 `testBit` 2 = False
6776 3 `testBit` 3 = False
6777  
6778 #
6779 bitSize 65533 = 16
6780 bitSize 65534 = 16
6781 bitSize 65535 = 16
6782 bitSize 0 = 16
6783 bitSize 1 = 16
6784 bitSize 2 = 16
6785 bitSize 3 = 16
6786 #
6787 isSigned 65533 = False
6788 isSigned 65534 = False
6789 isSigned 65535 = False
6790 isSigned 0 = False
6791 isSigned 1 = False
6792 isSigned 2 = False
6793 isSigned 3 = False
6794 #
6795 --------------------------------
6796 --------------------------------
6797 --Testing Word32
6798 --------------------------------
6799 testBounded
6800 (4294967295,0,1)
6801 (4294967294,4294967295,0)
6802 testEnum
6803 [0,1,2,3,4,5,6,7,8,9]
6804 [0,2,4,6,8,10,12,14,16,18]
6805 [0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
6806 [0,2,4,6,8,10,12,14,16,18,20]
6807 testReadShow
6808 [4294967293,4294967294,4294967295,0,1,2,3]
6809 [4294967293,4294967294,4294967295,0,1,2,3]
6810 testEq
6811 4294967293 == 4294967293 = True
6812 4294967293 == 4294967294 = False
6813 4294967293 == 4294967295 = False
6814 4294967293 == 0 = False
6815 4294967293 == 1 = False
6816 4294967293 == 2 = False
6817 4294967293 == 3 = False
6818  
6819 4294967294 == 4294967293 = False
6820 4294967294 == 4294967294 = True
6821 4294967294 == 4294967295 = False
6822 4294967294 == 0 = False
6823 4294967294 == 1 = False
6824 4294967294 == 2 = False
6825 4294967294 == 3 = False
6826  
6827 4294967295 == 4294967293 = False
6828 4294967295 == 4294967294 = False
6829 4294967295 == 4294967295 = True
6830 4294967295 == 0 = False
6831 4294967295 == 1 = False
6832 4294967295 == 2 = False
6833 4294967295 == 3 = False
6834  
6835 0 == 4294967293 = False
6836 0 == 4294967294 = False
6837 0 == 4294967295 = False
6838 0 == 0 = True
6839 0 == 1 = False
6840 0 == 2 = False
6841 0 == 3 = False
6842  
6843 1 == 4294967293 = False
6844 1 == 4294967294 = False
6845 1 == 4294967295 = False
6846 1 == 0 = False
6847 1 == 1 = True
6848 1 == 2 = False
6849 1 == 3 = False
6850  
6851 2 == 4294967293 = False
6852 2 == 4294967294 = False
6853 2 == 4294967295 = False
6854 2 == 0 = False
6855 2 == 1 = False
6856 2 == 2 = True
6857 2 == 3 = False
6858  
6859 3 == 4294967293 = False
6860 3 == 4294967294 = False
6861 3 == 4294967295 = False
6862 3 == 0 = False
6863 3 == 1 = False
6864 3 == 2 = False
6865 3 == 3 = True
6866  
6867 #
6868 4294967293 /= 4294967293 = False
6869 4294967293 /= 4294967294 = True
6870 4294967293 /= 4294967295 = True
6871 4294967293 /= 0 = True
6872 4294967293 /= 1 = True
6873 4294967293 /= 2 = True
6874 4294967293 /= 3 = True
6875  
6876 4294967294 /= 4294967293 = True
6877 4294967294 /= 4294967294 = False
6878 4294967294 /= 4294967295 = True
6879 4294967294 /= 0 = True
6880 4294967294 /= 1 = True
6881 4294967294 /= 2 = True
6882 4294967294 /= 3 = True
6883  
6884 4294967295 /= 4294967293 = True
6885 4294967295 /= 4294967294 = True
6886 4294967295 /= 4294967295 = False
6887 4294967295 /= 0 = True
6888 4294967295 /= 1 = True
6889 4294967295 /= 2 = True
6890 4294967295 /= 3 = True
6891  
6892 0 /= 4294967293 = True
6893 0 /= 4294967294 = True
6894 0 /= 4294967295 = True
6895 0 /= 0 = False
6896 0 /= 1 = True
6897 0 /= 2 = True
6898 0 /= 3 = True
6899  
6900 1 /= 4294967293 = True
6901 1 /= 4294967294 = True
6902 1 /= 4294967295 = True
6903 1 /= 0 = True
6904 1 /= 1 = False
6905 1 /= 2 = True
6906 1 /= 3 = True
6907  
6908 2 /= 4294967293 = True
6909 2 /= 4294967294 = True
6910 2 /= 4294967295 = True
6911 2 /= 0 = True
6912 2 /= 1 = True
6913 2 /= 2 = False
6914 2 /= 3 = True
6915  
6916 3 /= 4294967293 = True
6917 3 /= 4294967294 = True
6918 3 /= 4294967295 = True
6919 3 /= 0 = True
6920 3 /= 1 = True
6921 3 /= 2 = True
6922 3 /= 3 = False
6923  
6924 #
6925 testOrd
6926 4294967293 <= 4294967293 = True
6927 4294967293 <= 4294967294 = True
6928 4294967293 <= 4294967295 = True
6929 4294967293 <= 0 = False
6930 4294967293 <= 1 = False
6931 4294967293 <= 2 = False
6932 4294967293 <= 3 = False
6933  
6934 4294967294 <= 4294967293 = False
6935 4294967294 <= 4294967294 = True
6936 4294967294 <= 4294967295 = True
6937 4294967294 <= 0 = False
6938 4294967294 <= 1 = False
6939 4294967294 <= 2 = False
6940 4294967294 <= 3 = False
6941  
6942 4294967295 <= 4294967293 = False
6943 4294967295 <= 4294967294 = False
6944 4294967295 <= 4294967295 = True
6945 4294967295 <= 0 = False
6946 4294967295 <= 1 = False
6947 4294967295 <= 2 = False
6948 4294967295 <= 3 = False
6949  
6950 0 <= 4294967293 = True
6951 0 <= 4294967294 = True
6952 0 <= 4294967295 = True
6953 0 <= 0 = True
6954 0 <= 1 = True
6955 0 <= 2 = True
6956 0 <= 3 = True
6957  
6958 1 <= 4294967293 = True
6959 1 <= 4294967294 = True
6960 1 <= 4294967295 = True
6961 1 <= 0 = False
6962 1 <= 1 = True
6963 1 <= 2 = True
6964 1 <= 3 = True
6965  
6966 2 <= 4294967293 = True
6967 2 <= 4294967294 = True
6968 2 <= 4294967295 = True
6969 2 <= 0 = False
6970 2 <= 1 = False
6971 2 <= 2 = True
6972 2 <= 3 = True
6973  
6974 3 <= 4294967293 = True
6975 3 <= 4294967294 = True
6976 3 <= 4294967295 = True
6977 3 <= 0 = False
6978 3 <= 1 = False
6979 3 <= 2 = False
6980 3 <= 3 = True
6981  
6982 #
6983 4294967293 <  4294967293 = False
6984 4294967293 <  4294967294 = True
6985 4294967293 <  4294967295 = True
6986 4294967293 <  0 = False
6987 4294967293 <  1 = False
6988 4294967293 <  2 = False
6989 4294967293 <  3 = False
6990  
6991 4294967294 <  4294967293 = False
6992 4294967294 <  4294967294 = False
6993 4294967294 <  4294967295 = True
6994 4294967294 <  0 = False
6995 4294967294 <  1 = False
6996 4294967294 <  2 = False
6997 4294967294 <  3 = False
6998  
6999 4294967295 <  4294967293 = False
7000 4294967295 <  4294967294 = False
7001 4294967295 <  4294967295 = False
7002 4294967295 <  0 = False
7003 4294967295 <  1 = False
7004 4294967295 <  2 = False
7005 4294967295 <  3 = False
7006  
7007 0 <  4294967293 = True
7008 0 <  4294967294 = True
7009 0 <  4294967295 = True
7010 0 <  0 = False
7011 0 <  1 = True
7012 0 <  2 = True
7013 0 <  3 = True
7014  
7015 1 <  4294967293 = True
7016 1 <  4294967294 = True
7017 1 <  4294967295 = True
7018 1 <  0 = False
7019 1 <  1 = False
7020 1 <  2 = True
7021 1 <  3 = True
7022  
7023 2 <  4294967293 = True
7024 2 <  4294967294 = True
7025 2 <  4294967295 = True
7026 2 <  0 = False
7027 2 <  1 = False
7028 2 <  2 = False
7029 2 <  3 = True
7030  
7031 3 <  4294967293 = True
7032 3 <  4294967294 = True
7033 3 <  4294967295 = True
7034 3 <  0 = False
7035 3 <  1 = False
7036 3 <  2 = False
7037 3 <  3 = False
7038  
7039 #
7040 4294967293 >  4294967293 = False
7041 4294967293 >  4294967294 = False
7042 4294967293 >  4294967295 = False
7043 4294967293 >  0 = True
7044 4294967293 >  1 = True
7045 4294967293 >  2 = True
7046 4294967293 >  3 = True
7047  
7048 4294967294 >  4294967293 = True
7049 4294967294 >  4294967294 = False
7050 4294967294 >  4294967295 = False
7051 4294967294 >  0 = True
7052 4294967294 >  1 = True
7053 4294967294 >  2 = True
7054 4294967294 >  3 = True
7055  
7056 4294967295 >  4294967293 = True
7057 4294967295 >  4294967294 = True
7058 4294967295 >  4294967295 = False
7059 4294967295 >  0 = True
7060 4294967295 >  1 = True
7061 4294967295 >  2 = True
7062 4294967295 >  3 = True
7063  
7064 0 >  4294967293 = False
7065 0 >  4294967294 = False
7066 0 >  4294967295 = False
7067 0 >  0 = False
7068 0 >  1 = False
7069 0 >  2 = False
7070 0 >  3 = False
7071  
7072 1 >  4294967293 = False
7073 1 >  4294967294 = False
7074 1 >  4294967295 = False
7075 1 >  0 = True
7076 1 >  1 = False
7077 1 >  2 = False
7078 1 >  3 = False
7079  
7080 2 >  4294967293 = False
7081 2 >  4294967294 = False
7082 2 >  4294967295 = False
7083 2 >  0 = True
7084 2 >  1 = True
7085 2 >  2 = False
7086 2 >  3 = False
7087  
7088 3 >  4294967293 = False
7089 3 >  4294967294 = False
7090 3 >  4294967295 = False
7091 3 >  0 = True
7092 3 >  1 = True
7093 3 >  2 = True
7094 3 >  3 = False
7095  
7096 #
7097 4294967293 >= 4294967293 = True
7098 4294967293 >= 4294967294 = False
7099 4294967293 >= 4294967295 = False
7100 4294967293 >= 0 = True
7101 4294967293 >= 1 = True
7102 4294967293 >= 2 = True
7103 4294967293 >= 3 = True
7104  
7105 4294967294 >= 4294967293 = True
7106 4294967294 >= 4294967294 = True
7107 4294967294 >= 4294967295 = False
7108 4294967294 >= 0 = True
7109 4294967294 >= 1 = True
7110 4294967294 >= 2 = True
7111 4294967294 >= 3 = True
7112  
7113 4294967295 >= 4294967293 = True
7114 4294967295 >= 4294967294 = True
7115 4294967295 >= 4294967295 = True
7116 4294967295 >= 0 = True
7117 4294967295 >= 1 = True
7118 4294967295 >= 2 = True
7119 4294967295 >= 3 = True
7120  
7121 0 >= 4294967293 = False
7122 0 >= 4294967294 = False
7123 0 >= 4294967295 = False
7124 0 >= 0 = True
7125 0 >= 1 = False
7126 0 >= 2 = False
7127 0 >= 3 = False
7128  
7129 1 >= 4294967293 = False
7130 1 >= 4294967294 = False
7131 1 >= 4294967295 = False
7132 1 >= 0 = True
7133 1 >= 1 = True
7134 1 >= 2 = False
7135 1 >= 3 = False
7136  
7137 2 >= 4294967293 = False
7138 2 >= 4294967294 = False
7139 2 >= 4294967295 = False
7140 2 >= 0 = True
7141 2 >= 1 = True
7142 2 >= 2 = True
7143 2 >= 3 = False
7144  
7145 3 >= 4294967293 = False
7146 3 >= 4294967294 = False
7147 3 >= 4294967295 = False
7148 3 >= 0 = True
7149 3 >= 1 = True
7150 3 >= 2 = True
7151 3 >= 3 = True
7152  
7153 #
7154 4294967293 `compare` 4294967293 = EQ
7155 4294967293 `compare` 4294967294 = LT
7156 4294967293 `compare` 4294967295 = LT
7157 4294967293 `compare` 0 = GT
7158 4294967293 `compare` 1 = GT
7159 4294967293 `compare` 2 = GT
7160 4294967293 `compare` 3 = GT
7161  
7162 4294967294 `compare` 4294967293 = GT
7163 4294967294 `compare` 4294967294 = EQ
7164 4294967294 `compare` 4294967295 = LT
7165 4294967294 `compare` 0 = GT
7166 4294967294 `compare` 1 = GT
7167 4294967294 `compare` 2 = GT
7168 4294967294 `compare` 3 = GT
7169  
7170 4294967295 `compare` 4294967293 = GT
7171 4294967295 `compare` 4294967294 = GT
7172 4294967295 `compare` 4294967295 = EQ
7173 4294967295 `compare` 0 = GT
7174 4294967295 `compare` 1 = GT
7175 4294967295 `compare` 2 = GT
7176 4294967295 `compare` 3 = GT
7177  
7178 0 `compare` 4294967293 = LT
7179 0 `compare` 4294967294 = LT
7180 0 `compare` 4294967295 = LT
7181 0 `compare` 0 = EQ
7182 0 `compare` 1 = LT
7183 0 `compare` 2 = LT
7184 0 `compare` 3 = LT
7185  
7186 1 `compare` 4294967293 = LT
7187 1 `compare` 4294967294 = LT
7188 1 `compare` 4294967295 = LT
7189 1 `compare` 0 = GT
7190 1 `compare` 1 = EQ
7191 1 `compare` 2 = LT
7192 1 `compare` 3 = LT
7193  
7194 2 `compare` 4294967293 = LT
7195 2 `compare` 4294967294 = LT
7196 2 `compare` 4294967295 = LT
7197 2 `compare` 0 = GT
7198 2 `compare` 1 = GT
7199 2 `compare` 2 = EQ
7200 2 `compare` 3 = LT
7201  
7202 3 `compare` 4294967293 = LT
7203 3 `compare` 4294967294 = LT
7204 3 `compare` 4294967295 = LT
7205 3 `compare` 0 = GT
7206 3 `compare` 1 = GT
7207 3 `compare` 2 = GT
7208 3 `compare` 3 = EQ
7209  
7210 #
7211 testNum
7212 4294967293 + 4294967293 = 4294967290
7213 4294967293 + 4294967294 = 4294967291
7214 4294967293 + 4294967295 = 4294967292
7215 4294967293 + 0 = 4294967293
7216 4294967293 + 1 = 4294967294
7217 4294967293 + 2 = 4294967295
7218 4294967293 + 3 = 0
7219  
7220 4294967294 + 4294967293 = 4294967291
7221 4294967294 + 4294967294 = 4294967292
7222 4294967294 + 4294967295 = 4294967293
7223 4294967294 + 0 = 4294967294
7224 4294967294 + 1 = 4294967295
7225 4294967294 + 2 = 0
7226 4294967294 + 3 = 1
7227  
7228 4294967295 + 4294967293 = 4294967292
7229 4294967295 + 4294967294 = 4294967293
7230 4294967295 + 4294967295 = 4294967294
7231 4294967295 + 0 = 4294967295
7232 4294967295 + 1 = 0
7233 4294967295 + 2 = 1
7234 4294967295 + 3 = 2
7235  
7236 0 + 4294967293 = 4294967293
7237 0 + 4294967294 = 4294967294
7238 0 + 4294967295 = 4294967295
7239 0 + 0 = 0
7240 0 + 1 = 1
7241 0 + 2 = 2
7242 0 + 3 = 3
7243  
7244 1 + 4294967293 = 4294967294
7245 1 + 4294967294 = 4294967295
7246 1 + 4294967295 = 0
7247 1 + 0 = 1
7248 1 + 1 = 2
7249 1 + 2 = 3
7250 1 + 3 = 4
7251  
7252 2 + 4294967293 = 4294967295
7253 2 + 4294967294 = 0
7254 2 + 4294967295 = 1
7255 2 + 0 = 2
7256 2 + 1 = 3
7257 2 + 2 = 4
7258 2 + 3 = 5
7259  
7260 3 + 4294967293 = 0
7261 3 + 4294967294 = 1
7262 3 + 4294967295 = 2
7263 3 + 0 = 3
7264 3 + 1 = 4
7265 3 + 2 = 5
7266 3 + 3 = 6
7267  
7268 #
7269 4294967293 - 4294967293 = 0
7270 4294967293 - 4294967294 = 4294967295
7271 4294967293 - 4294967295 = 4294967294
7272 4294967293 - 0 = 4294967293
7273 4294967293 - 1 = 4294967292
7274 4294967293 - 2 = 4294967291
7275 4294967293 - 3 = 4294967290
7276  
7277 4294967294 - 4294967293 = 1
7278 4294967294 - 4294967294 = 0
7279 4294967294 - 4294967295 = 4294967295
7280 4294967294 - 0 = 4294967294
7281 4294967294 - 1 = 4294967293
7282 4294967294 - 2 = 4294967292
7283 4294967294 - 3 = 4294967291
7284  
7285 4294967295 - 4294967293 = 2
7286 4294967295 - 4294967294 = 1
7287 4294967295 - 4294967295 = 0
7288 4294967295 - 0 = 4294967295
7289 4294967295 - 1 = 4294967294
7290 4294967295 - 2 = 4294967293
7291 4294967295 - 3 = 4294967292
7292  
7293 0 - 4294967293 = 3
7294 0 - 4294967294 = 2
7295 0 - 4294967295 = 1
7296 0 - 0 = 0
7297 0 - 1 = 4294967295
7298 0 - 2 = 4294967294
7299 0 - 3 = 4294967293
7300  
7301 1 - 4294967293 = 4
7302 1 - 4294967294 = 3
7303 1 - 4294967295 = 2
7304 1 - 0 = 1
7305 1 - 1 = 0
7306 1 - 2 = 4294967295
7307 1 - 3 = 4294967294
7308  
7309 2 - 4294967293 = 5
7310 2 - 4294967294 = 4
7311 2 - 4294967295 = 3
7312 2 - 0 = 2
7313 2 - 1 = 1
7314 2 - 2 = 0
7315 2 - 3 = 4294967295
7316  
7317 3 - 4294967293 = 6
7318 3 - 4294967294 = 5
7319 3 - 4294967295 = 4
7320 3 - 0 = 3
7321 3 - 1 = 2
7322 3 - 2 = 1
7323 3 - 3 = 0
7324  
7325 #
7326 4294967293 * 4294967293 = 9
7327 4294967293 * 4294967294 = 6
7328 4294967293 * 4294967295 = 3
7329 4294967293 * 0 = 0
7330 4294967293 * 1 = 4294967293
7331 4294967293 * 2 = 4294967290
7332 4294967293 * 3 = 4294967287
7333  
7334 4294967294 * 4294967293 = 6
7335 4294967294 * 4294967294 = 4
7336 4294967294 * 4294967295 = 2
7337 4294967294 * 0 = 0
7338 4294967294 * 1 = 4294967294
7339 4294967294 * 2 = 4294967292
7340 4294967294 * 3 = 4294967290
7341  
7342 4294967295 * 4294967293 = 3
7343 4294967295 * 4294967294 = 2
7344 4294967295 * 4294967295 = 1
7345 4294967295 * 0 = 0
7346 4294967295 * 1 = 4294967295
7347 4294967295 * 2 = 4294967294
7348 4294967295 * 3 = 4294967293
7349  
7350 0 * 4294967293 = 0
7351 0 * 4294967294 = 0
7352 0 * 4294967295 = 0
7353 0 * 0 = 0
7354 0 * 1 = 0
7355 0 * 2 = 0
7356 0 * 3 = 0
7357  
7358 1 * 4294967293 = 4294967293
7359 1 * 4294967294 = 4294967294
7360 1 * 4294967295 = 4294967295
7361 1 * 0 = 0
7362 1 * 1 = 1
7363 1 * 2 = 2
7364 1 * 3 = 3
7365  
7366 2 * 4294967293 = 4294967290
7367 2 * 4294967294 = 4294967292
7368 2 * 4294967295 = 4294967294
7369 2 * 0 = 0
7370 2 * 1 = 2
7371 2 * 2 = 4
7372 2 * 3 = 6
7373  
7374 3 * 4294967293 = 4294967287
7375 3 * 4294967294 = 4294967290
7376 3 * 4294967295 = 4294967293
7377 3 * 0 = 0
7378 3 * 1 = 3
7379 3 * 2 = 6
7380 3 * 3 = 9
7381  
7382 #
7383 negate 4294967293 = 3
7384 negate 4294967294 = 2
7385 negate 4294967295 = 1
7386 negate 0 = 0
7387 negate 1 = 4294967295
7388 negate 2 = 4294967294
7389 negate 3 = 4294967293
7390 #
7391 testReal
7392 toRational 4294967293 = 4294967293 % 1
7393 toRational 4294967294 = 4294967294 % 1
7394 toRational 4294967295 = 4294967295 % 1
7395 toRational 0 = 0 % 1
7396 toRational 1 = 1 % 1
7397 toRational 2 = 2 % 1
7398 toRational 3 = 3 % 1
7399 #
7400 testIntegral
7401 4294967293 `divMod`  4294967293 = (1,0)
7402 4294967293 `divMod`  4294967294 = (0,4294967293)
7403 4294967293 `divMod`  4294967295 = (0,4294967293)
7404 4294967293 `divMod`  1 = (4294967293,0)
7405 4294967293 `divMod`  2 = (2147483646,1)
7406 4294967293 `divMod`  3 = (1431655764,1)
7407  
7408 4294967294 `divMod`  4294967293 = (1,1)
7409 4294967294 `divMod`  4294967294 = (1,0)
7410 4294967294 `divMod`  4294967295 = (0,4294967294)
7411 4294967294 `divMod`  1 = (4294967294,0)
7412 4294967294 `divMod`  2 = (2147483647,0)
7413 4294967294 `divMod`  3 = (1431655764,2)
7414  
7415 4294967295 `divMod`  4294967293 = (1,2)
7416 4294967295 `divMod`  4294967294 = (1,1)
7417 4294967295 `divMod`  4294967295 = (1,0)
7418 4294967295 `divMod`  1 = (4294967295,0)
7419 4294967295 `divMod`  2 = (2147483647,1)
7420 4294967295 `divMod`  3 = (1431655765,0)
7421  
7422 0 `divMod`  4294967293 = (0,0)
7423 0 `divMod`  4294967294 = (0,0)
7424 0 `divMod`  4294967295 = (0,0)
7425 0 `divMod`  1 = (0,0)
7426 0 `divMod`  2 = (0,0)
7427 0 `divMod`  3 = (0,0)
7428  
7429 1 `divMod`  4294967293 = (0,1)
7430 1 `divMod`  4294967294 = (0,1)
7431 1 `divMod`  4294967295 = (0,1)
7432 1 `divMod`  1 = (1,0)
7433 1 `divMod`  2 = (0,1)
7434 1 `divMod`  3 = (0,1)
7435  
7436 2 `divMod`  4294967293 = (0,2)
7437 2 `divMod`  4294967294 = (0,2)
7438 2 `divMod`  4294967295 = (0,2)
7439 2 `divMod`  1 = (2,0)
7440 2 `divMod`  2 = (1,0)
7441 2 `divMod`  3 = (0,2)
7442  
7443 3 `divMod`  4294967293 = (0,3)
7444 3 `divMod`  4294967294 = (0,3)
7445 3 `divMod`  4294967295 = (0,3)
7446 3 `divMod`  1 = (3,0)
7447 3 `divMod`  2 = (1,1)
7448 3 `divMod`  3 = (1,0)
7449  
7450 #
7451 4294967293 `div`     4294967293 = 1
7452 4294967293 `div`     4294967294 = 0
7453 4294967293 `div`     4294967295 = 0
7454 4294967293 `div`     1 = 4294967293
7455 4294967293 `div`     2 = 2147483646
7456 4294967293 `div`     3 = 1431655764
7457  
7458 4294967294 `div`     4294967293 = 1
7459 4294967294 `div`     4294967294 = 1
7460 4294967294 `div`     4294967295 = 0
7461 4294967294 `div`     1 = 4294967294
7462 4294967294 `div`     2 = 2147483647
7463 4294967294 `div`     3 = 1431655764
7464  
7465 4294967295 `div`     4294967293 = 1
7466 4294967295 `div`     4294967294 = 1
7467 4294967295 `div`     4294967295 = 1
7468 4294967295 `div`     1 = 4294967295
7469 4294967295 `div`     2 = 2147483647
7470 4294967295 `div`     3 = 1431655765
7471  
7472 0 `div`     4294967293 = 0
7473 0 `div`     4294967294 = 0
7474 0 `div`     4294967295 = 0
7475 0 `div`     1 = 0
7476 0 `div`     2 = 0
7477 0 `div`     3 = 0
7478  
7479 1 `div`     4294967293 = 0
7480 1 `div`     4294967294 = 0
7481 1 `div`     4294967295 = 0
7482 1 `div`     1 = 1
7483 1 `div`     2 = 0
7484 1 `div`     3 = 0
7485  
7486 2 `div`     4294967293 = 0
7487 2 `div`     4294967294 = 0
7488 2 `div`     4294967295 = 0
7489 2 `div`     1 = 2
7490 2 `div`     2 = 1
7491 2 `div`     3 = 0
7492  
7493 3 `div`     4294967293 = 0
7494 3 `div`     4294967294 = 0
7495 3 `div`     4294967295 = 0
7496 3 `div`     1 = 3
7497 3 `div`     2 = 1
7498 3 `div`     3 = 1
7499  
7500 #
7501 4294967293 `mod`     4294967293 = 0
7502 4294967293 `mod`     4294967294 = 4294967293
7503 4294967293 `mod`     4294967295 = 4294967293
7504 4294967293 `mod`     1 = 0
7505 4294967293 `mod`     2 = 1
7506 4294967293 `mod`     3 = 1
7507  
7508 4294967294 `mod`     4294967293 = 1
7509 4294967294 `mod`     4294967294 = 0
7510 4294967294 `mod`     4294967295 = 4294967294
7511 4294967294 `mod`     1 = 0
7512 4294967294 `mod`     2 = 0
7513 4294967294 `mod`     3 = 2
7514  
7515 4294967295 `mod`     4294967293 = 2
7516 4294967295 `mod`     4294967294 = 1
7517 4294967295 `mod`     4294967295 = 0
7518 4294967295 `mod`     1 = 0
7519 4294967295 `mod`     2 = 1
7520 4294967295 `mod`     3 = 0
7521  
7522 0 `mod`     4294967293 = 0
7523 0 `mod`     4294967294 = 0
7524 0 `mod`     4294967295 = 0
7525 0 `mod`     1 = 0
7526 0 `mod`     2 = 0
7527 0 `mod`     3 = 0
7528  
7529 1 `mod`     4294967293 = 1
7530 1 `mod`     4294967294 = 1
7531 1 `mod`     4294967295 = 1
7532 1 `mod`     1 = 0
7533 1 `mod`     2 = 1
7534 1 `mod`     3 = 1
7535  
7536 2 `mod`     4294967293 = 2
7537 2 `mod`     4294967294 = 2
7538 2 `mod`     4294967295 = 2
7539 2 `mod`     1 = 0
7540 2 `mod`     2 = 0
7541 2 `mod`     3 = 2
7542  
7543 3 `mod`     4294967293 = 3
7544 3 `mod`     4294967294 = 3
7545 3 `mod`     4294967295 = 3
7546 3 `mod`     1 = 0
7547 3 `mod`     2 = 1
7548 3 `mod`     3 = 0
7549  
7550 #
7551 4294967293 `quotRem` 4294967293 = (1,0)
7552 4294967293 `quotRem` 4294967294 = (0,4294967293)
7553 4294967293 `quotRem` 4294967295 = (0,4294967293)
7554 4294967293 `quotRem` 1 = (4294967293,0)
7555 4294967293 `quotRem` 2 = (2147483646,1)
7556 4294967293 `quotRem` 3 = (1431655764,1)
7557  
7558 4294967294 `quotRem` 4294967293 = (1,1)
7559 4294967294 `quotRem` 4294967294 = (1,0)
7560 4294967294 `quotRem` 4294967295 = (0,4294967294)
7561 4294967294 `quotRem` 1 = (4294967294,0)
7562 4294967294 `quotRem` 2 = (2147483647,0)
7563 4294967294 `quotRem` 3 = (1431655764,2)
7564  
7565 4294967295 `quotRem` 4294967293 = (1,2)
7566 4294967295 `quotRem` 4294967294 = (1,1)
7567 4294967295 `quotRem` 4294967295 = (1,0)
7568 4294967295 `quotRem` 1 = (4294967295,0)
7569 4294967295 `quotRem` 2 = (2147483647,1)
7570 4294967295 `quotRem` 3 = (1431655765,0)
7571  
7572 0 `quotRem` 4294967293 = (0,0)
7573 0 `quotRem` 4294967294 = (0,0)
7574 0 `quotRem` 4294967295 = (0,0)
7575 0 `quotRem` 1 = (0,0)
7576 0 `quotRem` 2 = (0,0)
7577 0 `quotRem` 3 = (0,0)
7578  
7579 1 `quotRem` 4294967293 = (0,1)
7580 1 `quotRem` 4294967294 = (0,1)
7581 1 `quotRem` 4294967295 = (0,1)
7582 1 `quotRem` 1 = (1,0)
7583 1 `quotRem` 2 = (0,1)
7584 1 `quotRem` 3 = (0,1)
7585  
7586 2 `quotRem` 4294967293 = (0,2)
7587 2 `quotRem` 4294967294 = (0,2)
7588 2 `quotRem` 4294967295 = (0,2)
7589 2 `quotRem` 1 = (2,0)
7590 2 `quotRem` 2 = (1,0)
7591 2 `quotRem` 3 = (0,2)
7592  
7593 3 `quotRem` 4294967293 = (0,3)
7594 3 `quotRem` 4294967294 = (0,3)
7595 3 `quotRem` 4294967295 = (0,3)
7596 3 `quotRem` 1 = (3,0)
7597 3 `quotRem` 2 = (1,1)
7598 3 `quotRem` 3 = (1,0)
7599  
7600 #
7601 4294967293 `quot`    4294967293 = 1
7602 4294967293 `quot`    4294967294 = 0
7603 4294967293 `quot`    4294967295 = 0
7604 4294967293 `quot`    1 = 4294967293
7605 4294967293 `quot`    2 = 2147483646
7606 4294967293 `quot`    3 = 1431655764
7607  
7608 4294967294 `quot`    4294967293 = 1
7609 4294967294 `quot`    4294967294 = 1
7610 4294967294 `quot`    4294967295 = 0
7611 4294967294 `quot`    1 = 4294967294
7612 4294967294 `quot`    2 = 2147483647
7613 4294967294 `quot`    3 = 1431655764
7614  
7615 4294967295 `quot`    4294967293 = 1
7616 4294967295 `quot`    4294967294 = 1
7617 4294967295 `quot`    4294967295 = 1
7618 4294967295 `quot`    1 = 4294967295
7619 4294967295 `quot`    2 = 2147483647
7620 4294967295 `quot`    3 = 1431655765
7621  
7622 0 `quot`    4294967293 = 0
7623 0 `quot`    4294967294 = 0
7624 0 `quot`    4294967295 = 0
7625 0 `quot`    1 = 0
7626 0 `quot`    2 = 0
7627 0 `quot`    3 = 0
7628  
7629 1 `quot`    4294967293 = 0
7630 1 `quot`    4294967294 = 0
7631 1 `quot`    4294967295 = 0
7632 1 `quot`    1 = 1
7633 1 `quot`    2 = 0
7634 1 `quot`    3 = 0
7635  
7636 2 `quot`    4294967293 = 0
7637 2 `quot`    4294967294 = 0
7638 2 `quot`    4294967295 = 0
7639 2 `quot`    1 = 2
7640 2 `quot`    2 = 1
7641 2 `quot`    3 = 0
7642  
7643 3 `quot`    4294967293 = 0
7644 3 `quot`    4294967294 = 0
7645 3 `quot`    4294967295 = 0
7646 3 `quot`    1 = 3
7647 3 `quot`    2 = 1
7648 3 `quot`    3 = 1
7649  
7650 #
7651 4294967293 `rem`     4294967293 = 0
7652 4294967293 `rem`     4294967294 = 4294967293
7653 4294967293 `rem`     4294967295 = 4294967293
7654 4294967293 `rem`     1 = 0
7655 4294967293 `rem`     2 = 1
7656 4294967293 `rem`     3 = 1
7657  
7658 4294967294 `rem`     4294967293 = 1
7659 4294967294 `rem`     4294967294 = 0
7660 4294967294 `rem`     4294967295 = 4294967294
7661 4294967294 `rem`     1 = 0
7662 4294967294 `rem`     2 = 0
7663 4294967294 `rem`     3 = 2
7664  
7665 4294967295 `rem`     4294967293 = 2
7666 4294967295 `rem`     4294967294 = 1
7667 4294967295 `rem`     4294967295 = 0
7668 4294967295 `rem`     1 = 0
7669 4294967295 `rem`     2 = 1
7670 4294967295 `rem`     3 = 0
7671  
7672 0 `rem`     4294967293 = 0
7673 0 `rem`     4294967294 = 0
7674 0 `rem`     4294967295 = 0
7675 0 `rem`     1 = 0
7676 0 `rem`     2 = 0
7677 0 `rem`     3 = 0
7678  
7679 1 `rem`     4294967293 = 1
7680 1 `rem`     4294967294 = 1
7681 1 `rem`     4294967295 = 1
7682 1 `rem`     1 = 0
7683 1 `rem`     2 = 1
7684 1 `rem`     3 = 1
7685  
7686 2 `rem`     4294967293 = 2
7687 2 `rem`     4294967294 = 2
7688 2 `rem`     4294967295 = 2
7689 2 `rem`     1 = 0
7690 2 `rem`     2 = 0
7691 2 `rem`     3 = 2
7692  
7693 3 `rem`     4294967293 = 3
7694 3 `rem`     4294967294 = 3
7695 3 `rem`     4294967295 = 3
7696 3 `rem`     1 = 0
7697 3 `rem`     2 = 1
7698 3 `rem`     3 = 0
7699  
7700 #
7701 testBits
7702 4294967293 .&.   4294967293 = 4294967293
7703 4294967293 .&.   4294967294 = 4294967292
7704 4294967293 .&.   4294967295 = 4294967293
7705 4294967293 .&.   1 = 1
7706 4294967293 .&.   2 = 0
7707 4294967293 .&.   3 = 1
7708  
7709 4294967294 .&.   4294967293 = 4294967292
7710 4294967294 .&.   4294967294 = 4294967294
7711 4294967294 .&.   4294967295 = 4294967294
7712 4294967294 .&.   1 = 0
7713 4294967294 .&.   2 = 2
7714 4294967294 .&.   3 = 2
7715  
7716 4294967295 .&.   4294967293 = 4294967293
7717 4294967295 .&.   4294967294 = 4294967294
7718 4294967295 .&.   4294967295 = 4294967295
7719 4294967295 .&.   1 = 1
7720 4294967295 .&.   2 = 2
7721 4294967295 .&.   3 = 3
7722  
7723 0 .&.   4294967293 = 0
7724 0 .&.   4294967294 = 0
7725 0 .&.   4294967295 = 0
7726 0 .&.   1 = 0
7727 0 .&.   2 = 0
7728 0 .&.   3 = 0
7729  
7730 1 .&.   4294967293 = 1
7731 1 .&.   4294967294 = 0
7732 1 .&.   4294967295 = 1
7733 1 .&.   1 = 1
7734 1 .&.   2 = 0
7735 1 .&.   3 = 1
7736  
7737 2 .&.   4294967293 = 0
7738 2 .&.   4294967294 = 2
7739 2 .&.   4294967295 = 2
7740 2 .&.   1 = 0
7741 2 .&.   2 = 2
7742 2 .&.   3 = 2
7743  
7744 3 .&.   4294967293 = 1
7745 3 .&.   4294967294 = 2
7746 3 .&.   4294967295 = 3
7747 3 .&.   1 = 1
7748 3 .&.   2 = 2
7749 3 .&.   3 = 3
7750  
7751 #
7752 4294967293 .|.   4294967293 = 4294967293
7753 4294967293 .|.   4294967294 = 4294967295
7754 4294967293 .|.   4294967295 = 4294967295
7755 4294967293 .|.   1 = 4294967293
7756 4294967293 .|.   2 = 4294967295
7757 4294967293 .|.   3 = 4294967295
7758  
7759 4294967294 .|.   4294967293 = 4294967295
7760 4294967294 .|.   4294967294 = 4294967294
7761 4294967294 .|.   4294967295 = 4294967295
7762 4294967294 .|.   1 = 4294967295
7763 4294967294 .|.   2 = 4294967294
7764 4294967294 .|.   3 = 4294967295
7765  
7766 4294967295 .|.   4294967293 = 4294967295
7767 4294967295 .|.   4294967294 = 4294967295
7768 4294967295 .|.   4294967295 = 4294967295
7769 4294967295 .|.   1 = 4294967295
7770 4294967295 .|.   2 = 4294967295
7771 4294967295 .|.   3 = 4294967295
7772  
7773 0 .|.   4294967293 = 4294967293
7774 0 .|.   4294967294 = 4294967294
7775 0 .|.   4294967295 = 4294967295
7776 0 .|.   1 = 1
7777 0 .|.   2 = 2
7778 0 .|.   3 = 3
7779  
7780 1 .|.   4294967293 = 4294967293
7781 1 .|.   4294967294 = 4294967295
7782 1 .|.   4294967295 = 4294967295
7783 1 .|.   1 = 1
7784 1 .|.   2 = 3
7785 1 .|.   3 = 3
7786  
7787 2 .|.   4294967293 = 4294967295
7788 2 .|.   4294967294 = 4294967294
7789 2 .|.   4294967295 = 4294967295
7790 2 .|.   1 = 3
7791 2 .|.   2 = 2
7792 2 .|.   3 = 3
7793  
7794 3 .|.   4294967293 = 4294967295
7795 3 .|.   4294967294 = 4294967295
7796 3 .|.   4294967295 = 4294967295
7797 3 .|.   1 = 3
7798 3 .|.   2 = 3
7799 3 .|.   3 = 3
7800  
7801 #
7802 4294967293 `xor` 4294967293 = 0
7803 4294967293 `xor` 4294967294 = 3
7804 4294967293 `xor` 4294967295 = 2
7805 4294967293 `xor` 1 = 4294967292
7806 4294967293 `xor` 2 = 4294967295
7807 4294967293 `xor` 3 = 4294967294
7808  
7809 4294967294 `xor` 4294967293 = 3
7810 4294967294 `xor` 4294967294 = 0
7811 4294967294 `xor` 4294967295 = 1
7812 4294967294 `xor` 1 = 4294967295
7813 4294967294 `xor` 2 = 4294967292
7814 4294967294 `xor` 3 = 4294967293
7815  
7816 4294967295 `xor` 4294967293 = 2
7817 4294967295 `xor` 4294967294 = 1
7818 4294967295 `xor` 4294967295 = 0
7819 4294967295 `xor` 1 = 4294967294
7820 4294967295 `xor` 2 = 4294967293
7821 4294967295 `xor` 3 = 4294967292
7822  
7823 0 `xor` 4294967293 = 4294967293
7824 0 `xor` 4294967294 = 4294967294
7825 0 `xor` 4294967295 = 4294967295
7826 0 `xor` 1 = 1
7827 0 `xor` 2 = 2
7828 0 `xor` 3 = 3
7829  
7830 1 `xor` 4294967293 = 4294967292
7831 1 `xor` 4294967294 = 4294967295
7832 1 `xor` 4294967295 = 4294967294
7833 1 `xor` 1 = 0
7834 1 `xor` 2 = 3
7835 1 `xor` 3 = 2
7836  
7837 2 `xor` 4294967293 = 4294967295
7838 2 `xor` 4294967294 = 4294967292
7839 2 `xor` 4294967295 = 4294967293
7840 2 `xor` 1 = 3
7841 2 `xor` 2 = 0
7842 2 `xor` 3 = 1
7843  
7844 3 `xor` 4294967293 = 4294967294
7845 3 `xor` 4294967294 = 4294967293
7846 3 `xor` 4294967295 = 4294967292
7847 3 `xor` 1 = 2
7848 3 `xor` 2 = 1
7849 3 `xor` 3 = 0
7850  
7851 #
7852 complement 4294967293 = 2
7853 complement 4294967294 = 1
7854 complement 4294967295 = 0
7855 complement 0 = 4294967295
7856 complement 1 = 4294967294
7857 complement 2 = 4294967293
7858 complement 3 = 4294967292
7859 #
7860 4294967293 `shiftL` 0 = 4294967293
7861 4294967293 `shiftL` 1 = 4294967290
7862 4294967293 `shiftL` 2 = 4294967284
7863 4294967293 `shiftL` 3 = 4294967272
7864  
7865 4294967294 `shiftL` 0 = 4294967294
7866 4294967294 `shiftL` 1 = 4294967292
7867 4294967294 `shiftL` 2 = 4294967288
7868 4294967294 `shiftL` 3 = 4294967280
7869  
7870 4294967295 `shiftL` 0 = 4294967295
7871 4294967295 `shiftL` 1 = 4294967294
7872 4294967295 `shiftL` 2 = 4294967292
7873 4294967295 `shiftL` 3 = 4294967288
7874  
7875 0 `shiftL` 0 = 0
7876 0 `shiftL` 1 = 0
7877 0 `shiftL` 2 = 0
7878 0 `shiftL` 3 = 0
7879  
7880 1 `shiftL` 0 = 1
7881 1 `shiftL` 1 = 2
7882 1 `shiftL` 2 = 4
7883 1 `shiftL` 3 = 8
7884  
7885 2 `shiftL` 0 = 2
7886 2 `shiftL` 1 = 4
7887 2 `shiftL` 2 = 8
7888 2 `shiftL` 3 = 16
7889  
7890 3 `shiftL` 0 = 3
7891 3 `shiftL` 1 = 6
7892 3 `shiftL` 2 = 12
7893 3 `shiftL` 3 = 24
7894  
7895 #
7896 4294967293 `shiftR` 0 = 4294967293
7897 4294967293 `shiftR` 1 = 2147483646
7898 4294967293 `shiftR` 2 = 1073741823
7899 4294967293 `shiftR` 3 = 536870911
7900  
7901 4294967294 `shiftR` 0 = 4294967294
7902 4294967294 `shiftR` 1 = 2147483647
7903 4294967294 `shiftR` 2 = 1073741823
7904 4294967294 `shiftR` 3 = 536870911
7905  
7906 4294967295 `shiftR` 0 = 4294967295
7907 4294967295 `shiftR` 1 = 2147483647
7908 4294967295 `shiftR` 2 = 1073741823
7909 4294967295 `shiftR` 3 = 536870911
7910  
7911 0 `shiftR` 0 = 0
7912 0 `shiftR` 1 = 0
7913 0 `shiftR` 2 = 0
7914 0 `shiftR` 3 = 0
7915  
7916 1 `shiftR` 0 = 1
7917 1 `shiftR` 1 = 0
7918 1 `shiftR` 2 = 0
7919 1 `shiftR` 3 = 0
7920  
7921 2 `shiftR` 0 = 2
7922 2 `shiftR` 1 = 1
7923 2 `shiftR` 2 = 0
7924 2 `shiftR` 3 = 0
7925  
7926 3 `shiftR` 0 = 3
7927 3 `shiftR` 1 = 1
7928 3 `shiftR` 2 = 0
7929 3 `shiftR` 3 = 0
7930  
7931 #
7932 4294967293 `rotate` -3 = 3221225471
7933 4294967293 `rotate` -2 = 2147483647
7934 4294967293 `rotate` -1 = 4294967294
7935 4294967293 `rotate` 0 = 4294967293
7936 4294967293 `rotate` 1 = 4294967291
7937 4294967293 `rotate` 2 = 4294967287
7938 4294967293 `rotate` 3 = 4294967279
7939  
7940 4294967294 `rotate` -3 = 3758096383
7941 4294967294 `rotate` -2 = 3221225471
7942 4294967294 `rotate` -1 = 2147483647
7943 4294967294 `rotate` 0 = 4294967294
7944 4294967294 `rotate` 1 = 4294967293
7945 4294967294 `rotate` 2 = 4294967291
7946 4294967294 `rotate` 3 = 4294967287
7947  
7948 4294967295 `rotate` -3 = 4294967295
7949 4294967295 `rotate` -2 = 4294967295
7950 4294967295 `rotate` -1 = 4294967295
7951 4294967295 `rotate` 0 = 4294967295
7952 4294967295 `rotate` 1 = 4294967295
7953 4294967295 `rotate` 2 = 4294967295
7954 4294967295 `rotate` 3 = 4294967295
7955  
7956 0 `rotate` -3 = 0
7957 0 `rotate` -2 = 0
7958 0 `rotate` -1 = 0
7959 0 `rotate` 0 = 0
7960 0 `rotate` 1 = 0
7961 0 `rotate` 2 = 0
7962 0 `rotate` 3 = 0
7963  
7964 1 `rotate` -3 = 536870912
7965 1 `rotate` -2 = 1073741824
7966 1 `rotate` -1 = 2147483648
7967 1 `rotate` 0 = 1
7968 1 `rotate` 1 = 2
7969 1 `rotate` 2 = 4
7970 1 `rotate` 3 = 8
7971  
7972 2 `rotate` -3 = 1073741824
7973 2 `rotate` -2 = 2147483648
7974 2 `rotate` -1 = 1
7975 2 `rotate` 0 = 2
7976 2 `rotate` 1 = 4
7977 2 `rotate` 2 = 8
7978 2 `rotate` 3 = 16
7979  
7980 3 `rotate` -3 = 1610612736
7981 3 `rotate` -2 = 3221225472
7982 3 `rotate` -1 = 2147483649
7983 3 `rotate` 0 = 3
7984 3 `rotate` 1 = 6
7985 3 `rotate` 2 = 12
7986 3 `rotate` 3 = 24
7987  
7988 #
7989 bit 0 = 1
7990 bit 1 = 2
7991 bit 2 = 4
7992 bit 3 = 8
7993 #
7994 4294967293 `setBit` 0 = 4294967293
7995 4294967293 `setBit` 1 = 4294967295
7996 4294967293 `setBit` 2 = 4294967293
7997 4294967293 `setBit` 3 = 4294967293
7998  
7999 4294967294 `setBit` 0 = 4294967295
8000 4294967294 `setBit` 1 = 4294967294
8001 4294967294 `setBit` 2 = 4294967294
8002 4294967294 `setBit` 3 = 4294967294
8003  
8004 4294967295 `setBit` 0 = 4294967295
8005 4294967295 `setBit` 1 = 4294967295
8006 4294967295 `setBit` 2 = 4294967295
8007 4294967295 `setBit` 3 = 4294967295
8008  
8009 0 `setBit` 0 = 1
8010 0 `setBit` 1 = 2
8011 0 `setBit` 2 = 4
8012 0 `setBit` 3 = 8
8013  
8014 1 `setBit` 0 = 1
8015 1 `setBit` 1 = 3
8016 1 `setBit` 2 = 5
8017 1 `setBit` 3 = 9
8018  
8019 2 `setBit` 0 = 3
8020 2 `setBit` 1 = 2
8021 2 `setBit` 2 = 6
8022 2 `setBit` 3 = 10
8023  
8024 3 `setBit` 0 = 3
8025 3 `setBit` 1 = 3
8026 3 `setBit` 2 = 7
8027 3 `setBit` 3 = 11
8028  
8029 #
8030 4294967293 `clearBit` 0 = 4294967292
8031 4294967293 `clearBit` 1 = 4294967293
8032 4294967293 `clearBit` 2 = 4294967289
8033 4294967293 `clearBit` 3 = 4294967285
8034  
8035 4294967294 `clearBit` 0 = 4294967294
8036 4294967294 `clearBit` 1 = 4294967292
8037 4294967294 `clearBit` 2 = 4294967290
8038 4294967294 `clearBit` 3 = 4294967286
8039  
8040 4294967295 `clearBit` 0 = 4294967294
8041 4294967295 `clearBit` 1 = 4294967293
8042 4294967295 `clearBit` 2 = 4294967291
8043 4294967295 `clearBit` 3 = 4294967287
8044  
8045 0 `clearBit` 0 = 0
8046 0 `clearBit` 1 = 0
8047 0 `clearBit` 2 = 0
8048 0 `clearBit` 3 = 0
8049  
8050 1 `clearBit` 0 = 0
8051 1 `clearBit` 1 = 1
8052 1 `clearBit` 2 = 1
8053 1 `clearBit` 3 = 1
8054  
8055 2 `clearBit` 0 = 2
8056 2 `clearBit` 1 = 0
8057 2 `clearBit` 2 = 2
8058 2 `clearBit` 3 = 2
8059  
8060 3 `clearBit` 0 = 2
8061 3 `clearBit` 1 = 1
8062 3 `clearBit` 2 = 3
8063 3 `clearBit` 3 = 3
8064  
8065 #
8066 4294967293 `complementBit` 0 = 4294967292
8067 4294967293 `complementBit` 1 = 4294967295
8068 4294967293 `complementBit` 2 = 4294967289
8069 4294967293 `complementBit` 3 = 4294967285
8070  
8071 4294967294 `complementBit` 0 = 4294967295
8072 4294967294 `complementBit` 1 = 4294967292
8073 4294967294 `complementBit` 2 = 4294967290
8074 4294967294 `complementBit` 3 = 4294967286
8075  
8076 4294967295 `complementBit` 0 = 4294967294
8077 4294967295 `complementBit` 1 = 4294967293
8078 4294967295 `complementBit` 2 = 4294967291
8079 4294967295 `complementBit` 3 = 4294967287
8080  
8081 0 `complementBit` 0 = 1
8082 0 `complementBit` 1 = 2
8083 0 `complementBit` 2 = 4
8084 0 `complementBit` 3 = 8
8085  
8086 1 `complementBit` 0 = 0
8087 1 `complementBit` 1 = 3
8088 1 `complementBit` 2 = 5
8089 1 `complementBit` 3 = 9
8090  
8091 2 `complementBit` 0 = 3
8092 2 `complementBit` 1 = 0
8093 2 `complementBit` 2 = 6
8094 2 `complementBit` 3 = 10
8095  
8096 3 `complementBit` 0 = 2
8097 3 `complementBit` 1 = 1
8098 3 `complementBit` 2 = 7
8099 3 `complementBit` 3 = 11
8100  
8101 #
8102 4294967293 `testBit` 0 = True
8103 4294967293 `testBit` 1 = False
8104 4294967293 `testBit` 2 = True
8105 4294967293 `testBit` 3 = True
8106  
8107 4294967294 `testBit` 0 = False
8108 4294967294 `testBit` 1 = True
8109 4294967294 `testBit` 2 = True
8110 4294967294 `testBit` 3 = True
8111  
8112 4294967295 `testBit` 0 = True
8113 4294967295 `testBit` 1 = True
8114 4294967295 `testBit` 2 = True
8115 4294967295 `testBit` 3 = True
8116  
8117 0 `testBit` 0 = False
8118 0 `testBit` 1 = False
8119 0 `testBit` 2 = False
8120 0 `testBit` 3 = False
8121  
8122 1 `testBit` 0 = True
8123 1 `testBit` 1 = False
8124 1 `testBit` 2 = False
8125 1 `testBit` 3 = False
8126  
8127 2 `testBit` 0 = False
8128 2 `testBit` 1 = True
8129 2 `testBit` 2 = False
8130 2 `testBit` 3 = False
8131  
8132 3 `testBit` 0 = True
8133 3 `testBit` 1 = True
8134 3 `testBit` 2 = False
8135 3 `testBit` 3 = False
8136  
8137 #
8138 bitSize 4294967293 = 32
8139 bitSize 4294967294 = 32
8140 bitSize 4294967295 = 32
8141 bitSize 0 = 32
8142 bitSize 1 = 32
8143 bitSize 2 = 32
8144 bitSize 3 = 32
8145 #
8146 isSigned 4294967293 = False
8147 isSigned 4294967294 = False
8148 isSigned 4294967295 = False
8149 isSigned 0 = False
8150 isSigned 1 = False
8151 isSigned 2 = False
8152 isSigned 3 = False
8153 #
8154 --------------------------------