fixed heinous bug in switchbox routing
authoradam <adam@megacz.com>
Sun, 24 Sep 2006 06:36:03 +0000 (07:36 +0100)
committeradam <adam@megacz.com>
Sun, 24 Sep 2006 06:36:03 +0000 (07:36 +0100)
12 files changed:
bitstreams/slipway_drone.bst
src/com/atmel/fpslic/Fpslic.java
src/com/atmel/fpslic/FpslicBoot.java
src/com/atmel/fpslic/FpslicBootPins.java
src/com/atmel/fpslic/FpslicBootPinsUsb.java
src/com/atmel/fpslic/FpslicConstants.java
src/edu/berkeley/slipway/AsyncPaperDemo.java [new file with mode: 0644]
src/edu/berkeley/slipway/Demo.java
src/edu/berkeley/slipway/FtdiBoard.java
src/edu/berkeley/slipway/FtdiBoardSlave.c
src/edu/berkeley/slipway/gui/Gui.java
src/edu/berkeley/slipway/gui/ZoomingPanel.java

index 4774557..dfecad4 100644 (file)
@@ -4,8 +4,8 @@
 00000000\r
 10000000\r
 00001101\r
-00000010\r
-00011001\r
+00000001\r
+11011101\r
 00000000\r
 00000000\r
 11010100\r
@@ -95,9 +95,9 @@
 00001100\r
 01100011\r
 00001100\r
-11110100\r
+11101010\r
 00001100\r
-10000111\r
+01111101\r
 00001100\r
 01100011\r
 00000011\r
 00001100\r
 01100011\r
 00001100\r
-11000001\r
+01100110\r
 00001100\r
 01100011\r
 00000100\r
 00001000\r
 10000111\r
 10110000\r
-11100100\r
-11110000\r
+11101100\r
+11111110\r
 00000010\r
 00000101\r
 00001101\r
 10000111\r
 11100001\r
 00001100\r
-10011011\r
+10010001\r
 00001100\r
 00000000\r
 00101001\r
 10001010\r
 00101011\r
 00001000\r
-11111000\r
-00111101\r
+00011111\r
+00001111\r
 00010110\r
 00001000\r
 10001000\r
 00010110\r
 00001000\r
 10001111\r
+00001111\r
+00001111\r
+00010001\r
+10001111\r
+10011111\r
+10101111\r
+10111111\r
+10000000\r
+00010111\r
+00001000\r
 10000000\r
+00010111\r
+00001000\r
+10000111\r
+01100110\r
 10010000\r
+01100111\r
+10100000\r
+01101000\r
+10110000\r
+01101001\r
 00000001\r
-11110001\r
-11111111\r
-10011000\r
-10000000\r
-10001010\r
 00010111\r
 00001000\r
-10000000\r
+10001000\r
 00010111\r
 00001000\r
+10001111\r
+10100001\r
+10110001\r
+10000000\r
+01100110\r
+10010000\r
+01100111\r
+10100000\r
+01101000\r
+00011000\r
+00001000\r
+10000000\r
+00011000\r
+00001000\r
+10000111\r
+10110000\r
+01101001\r
+01111000\r
+10111111\r
+10101111\r
+10011111\r
+10001111\r
+00001111\r
+00011000\r
+00001000\r
+10001000\r
+00011000\r
+00001000\r
+10001111\r
+00001111\r
+00001111\r
+00011111\r
+00011000\r
+11111000\r
+00111101\r
+10000000\r
+10010000\r
+00011001\r
+00001000\r
+10000000\r
+00011001\r
+00001000\r
 10000111\r
+00000001\r
+11110001\r
+11111111\r
+10011000\r
+10000000\r
+10001010\r
 00110000\r
 10001001\r
+00011001\r
+00001000\r
+10001000\r
+00011001\r
+00001000\r
+10001111\r
 10011001\r
 10000111\r
 10010000\r
 11000000\r
 00001000\r
 10001001\r
-00010111\r
-00001000\r
-10001000\r
-00010111\r
-00001000\r
-10001111\r
 10000001\r
 10000110\r
+00011010\r
+00001000\r
+10000000\r
+00011010\r
+00001000\r
+10000111\r
 00111000\r
 10001001\r
 10011001\r
 10000111\r
 10010000\r
 10000111\r
-00011000\r
+10010000\r
 00001000\r
-10000000\r
-00011000\r
+00011010\r
 00001000\r
-10000111\r
-10010000\r
+10001000\r
+00011010\r
 00001000\r
+10001111\r
 10001001\r
 10000001\r
 10000110\r
 00110000\r
 10001001\r
 10011001\r
-00011000\r
+10000111\r
+10010000\r
+00011011\r
 00001000\r
-10001000\r
-00011000\r
+10000000\r
+00011011\r
 00001000\r
-10001111\r
 10000111\r
-10010000\r
 11000111\r
 00001000\r
 10001111\r
 10011111\r
 00001000\r
-00100000\r
-00011001\r
+10000100\r
+10011001\r
 00001000\r
-10000000\r
-00011001\r
+00011011\r
 00001000\r
-10000111\r
+10001000\r
+00011011\r
+00001000\r
+10001111\r
+00100000\r
 01101110\r
 00110000\r
 01101111\r
 00111111\r
 10000100\r
 00100000\r
-00111000\r
-00011001\r
+00011100\r
 00001000\r
-10001000\r
-00011001\r
+10000000\r
+00011100\r
 00001000\r
-10001111\r
+10000111\r
+00111000\r
 00010100\r
 00100000\r
 00110000\r
 01101010\r
 10010000\r
 01101011\r
-01000000\r
-00011010\r
+00011100\r
 00001000\r
-10000000\r
-00011010\r
+10001000\r
+00011100\r
 00001000\r
-10000111\r
+10001111\r
+01000000\r
 01010000\r
 00101000\r
 00111001\r
 01000001\r
 01010000\r
 11001010\r
+00011101\r
 00001000\r
-00011010\r
+10000000\r
+00011101\r
 00001000\r
-10001000\r
-00011010\r
+10000111\r
 00001000\r
-10001111\r
 00100000\r
 01101100\r
 00110000\r
 00101111\r
 00111111\r
 10000100\r
-00100000\r
-00011011\r
+00011101\r
 00001000\r
-10000000\r
-00011011\r
+10001000\r
+00011101\r
 00001000\r
-10000111\r
+10001111\r
+00100000\r
 00111000\r
 00010100\r
 00100000\r
 10000000\r
 01110000\r
 10010000\r
-01110001\r
-00011011\r
+00011110\r
 00001000\r
-10001000\r
-00011011\r
+10000000\r
+00011110\r
 00001000\r
-10001111\r
+10000111\r
+01110001\r
 01000000\r
 01010000\r
 00101000\r
 00010001\r
 01000001\r
 01010000\r
+00011110\r
+00001000\r
+10001000\r
+00011110\r
+00001000\r
+10001111\r
 11001010\r
-00011100\r
 00001000\r
+00100000\r
+01101010\r
+00110000\r
+01101011\r
 10000000\r
-00011100\r
+01101110\r
+00011111\r
 00001000\r
-10000111\r
+10000000\r
+00011111\r
 00001000\r
+10000111\r
+10010000\r
+01101111\r
+00101000\r
+00111001\r
+00001001\r
+01100001\r
+11100000\r
+01101010\r
 00011111\r
-00001111\r
-00001111\r
-00001111\r
-00010001\r
-10001111\r
-10011111\r
-00011100\r
 00001000\r
 10001000\r
-00011100\r
+00011111\r
 00001000\r
 10001111\r
-10101111\r
-10111111\r
+11110000\r
+01101011\r
+11100000\r
+11111011\r
+11100000\r
 10000000\r
-01100110\r
+01101010\r
 10010000\r
-01100111\r
-10100000\r
-01101000\r
-00011101\r
+00100000\r
 00001000\r
 10000000\r
-00011101\r
+00100000\r
 00001000\r
 10000111\r
-10110000\r
-01101001\r
+01101011\r
 00000001\r
-10100001\r
-10110001\r
+00100100\r
+10000000\r
+10010010\r
+00010100\r
 10000000\r
-01100110\r
 10010000\r
-00011101\r
+00100000\r
 00001000\r
 10001000\r
-00011101\r
-00001000\r
-10001111\r
-01100111\r
-10100000\r
-01101000\r
-10110000\r
-01101001\r
-10000000\r
-10000011\r
-10001000\r
-00011110\r
-00001000\r
-10000000\r
-00011110\r
-00001000\r
-10000111\r
-10000111\r
-01111000\r
-10111111\r
-10101111\r
-10011111\r
-10001111\r
-00001111\r
-00001111\r
-00011110\r
-00001000\r
-10001000\r
-00011110\r
-00001000\r
-10001111\r
-00001111\r
-00011111\r
-00011000\r
-00010111\r
-00010011\r
-10000100\r
-10010000\r
-10010011\r
-00011111\r
-00001000\r
-10000000\r
-00011111\r
-00001000\r
-10000111\r
-10011000\r
-10010111\r
-10011001\r
-00001000\r
 00100000\r
-01101010\r
-00110000\r
-01101011\r
-00011111\r
-00001000\r
-10001000\r
-00011111\r
 00001000\r
 10001111\r
-10000000\r
-01101110\r
 10010000\r
-01101111\r
-00101000\r
-00111001\r
-00001001\r
-01100001\r
-00100000\r
-00001000\r
-10000000\r
-00100000\r
-00001000\r
-10000111\r
-11100000\r
-01101010\r
-11110000\r
 01101011\r
-11100000\r
-11111011\r
-11100000\r
 10000000\r
-00100000\r
-00001000\r
-10001000\r
-00100000\r
-00001000\r
-10001111\r
 01101010\r
-10010000\r
-01101011\r
-00000001\r
-00100100\r
-10000000\r
-10010010\r
-00010100\r
+00100000\r
+01101110\r
+00110000\r
+01101111\r
 00100001\r
 00001000\r
 10000000\r
 00001000\r
 10000111\r
 10000000\r
-10010000\r
+01101010\r
 10010000\r
 01101011\r
-10000000\r
-01101010\r
+00101000\r
+00111001\r
+11000001\r
 00100000\r
-01101110\r
 00100001\r
 00001000\r
 10001000\r
 00100001\r
 00001000\r
 10001111\r
+01101110\r
 00110000\r
 01101111\r
 10000000\r
 10010000\r
 01101011\r
 00101000\r
-00111001\r
 00100010\r
 00001000\r
 10000000\r
 00100010\r
 00001000\r
 10000111\r
-11000001\r
-00100000\r
+00111001\r
+00111100\r
+10000000\r
 01101110\r
-00110000\r
+10010000\r
 01101111\r
-10000000\r
+00100000\r
 01101010\r
-10010000\r
 00100010\r
 00001000\r
 10001000\r
 00100010\r
 00001000\r
 10001111\r
-01101011\r
-00101000\r
-00111001\r
-00111100\r
-10000000\r
-01101110\r
-10010000\r
-01101111\r
-00100011\r
-00001000\r
-10000000\r
-00100011\r
-00001000\r
-10000111\r
-00100000\r
-01101010\r
 00110000\r
 01101011\r
 10000010\r
 10010011\r
 10000001\r
 10010010\r
+10100100\r
+10000000\r
 00100011\r
 00001000\r
-10001000\r
+10000000\r
 00100011\r
 00001000\r
-10001111\r
-10100100\r
-10000000\r
+10000111\r
 01100000\r
 10010000\r
 01100001\r
 10100000\r
 01100010\r
 10110000\r
-00100100\r
-00001000\r
-10000000\r
-00100100\r
-00001000\r
-10000111\r
 01100011\r
 00000001\r
+00100011\r
+00001000\r
+10001000\r
+00100011\r
+00001000\r
+10001111\r
 10100001\r
 10110001\r
 10000000\r
 01100000\r
 10010000\r
 01100001\r
+10100000\r
+01100010\r
 00100100\r
 00001000\r
-10001000\r
+10000000\r
 00100100\r
 00001000\r
-10001111\r
-10100000\r
-01100010\r
+10000111\r
 10110000\r
 01100011\r
 00111111\r
 00111011\r
 00000010\r
 00111011\r
-00100101\r
-00001000\r
-10000000\r
-00100101\r
-00001000\r
-10000111\r
 00110001\r
 00111011\r
+00100100\r
+00001000\r
+10001000\r
+00100100\r
+00001000\r
+10001111\r
 00101111\r
 10000000\r
 01101010\r
 10010000\r
 01101011\r
 00100000\r
+01101110\r
+00110000\r
 00100101\r
 00001000\r
-10001000\r
+10000000\r
 00100101\r
 00001000\r
-10001111\r
-01101110\r
-00110000\r
+10000111\r
 01101111\r
 10000010\r
 10010011\r
 10000000\r
 10010010\r
 11001100\r
-00100110\r
-00001000\r
-10000000\r
-00100110\r
-00001000\r
-10000111\r
 11101100\r
 01000000\r
+00100101\r
+00001000\r
+10001000\r
+00100101\r
+00001000\r
+10001111\r
 01100000\r
 01010000\r
 01100001\r
 01100000\r
 01100010\r
 01110000\r
+01100011\r
+01001111\r
 00100110\r
 00001000\r
-10001000\r
+10000000\r
 00100110\r
 00001000\r
-10001111\r
-01100011\r
-01001111\r
+10000111\r
 01011111\r
 01101111\r
 01111111\r
 00111111\r
 00100000\r
 01101010\r
-00100111\r
-00001000\r
-10000000\r
-00100111\r
-00001000\r
-10000111\r
 00110000\r
 01101011\r
+00100110\r
+00001000\r
+10001000\r
+00100110\r
+00001000\r
+10001111\r
 10000000\r
 01101110\r
 10010000\r
 01101111\r
 10000010\r
 10010011\r
+10000001\r
+01000000\r
 00100111\r
 00001000\r
-10001000\r
+10000000\r
 00100111\r
 00001000\r
-10001111\r
-10000001\r
-01000000\r
+10000111\r
 01100000\r
 01010000\r
 01100001\r
 01100000\r
 01100010\r
 01110000\r
-00101000\r
-00001000\r
-10000000\r
-00101000\r
-00001000\r
-10000111\r
 01100011\r
 01111110\r
+00100111\r
+00001000\r
+10001000\r
+00100111\r
+00001000\r
+10001111\r
 10001110\r
 10011001\r
 10000111\r
 10010000\r
 00001000\r
 00011111\r
+00001111\r
+00001111\r
 00101000\r
 00001000\r
-10001000\r
+10000000\r
 00101000\r
 00001000\r
-10001111\r
-00001111\r
-00001111\r
+10000111\r
 00001111\r
 00010001\r
 00101111\r
 00111111\r
 10001111\r
 10011111\r
-00101001\r
-00001000\r
-10000000\r
-00101001\r
-00001000\r
-10000111\r
 11101111\r
 11111111\r
+00101000\r
+00001000\r
+10001000\r
+00101000\r
+00001000\r
+10001111\r
 00100000\r
 01110000\r
 00110000\r
 01110001\r
 10000000\r
 01101100\r
+10010000\r
+01101101\r
 00101001\r
 00001000\r
-10001000\r
+10000000\r
 00101001\r
 00001000\r
-10001111\r
-10010000\r
-01101101\r
+10000111\r
 00101000\r
 00111001\r
 11010001\r
 11100000\r
 01110000\r
 11110000\r
-00101010\r
-00001000\r
-10000000\r
-00101010\r
-00001000\r
-10000111\r
 01110001\r
 11100010\r
+00101001\r
+00001000\r
+10001000\r
+00101001\r
+00001000\r
+10001111\r
 11111111\r
 11100000\r
 10000000\r
 01110000\r
 10010000\r
 01110001\r
+00000001\r
+00100100\r
 00101010\r
 00001000\r
-10001000\r
+10000000\r
 00101010\r
 00001000\r
-10001111\r
-00000001\r
-00100100\r
+10000111\r
 10000000\r
 10010010\r
 00111100\r
 10010000\r
 01110001\r
 10000000\r
-00101011\r
-00001000\r
-10000000\r
-00101011\r
-00001000\r
-10000111\r
 01110000\r
 11101100\r
+00101010\r
+00001000\r
+10001000\r
+00101010\r
+00001000\r
+10001111\r
 01111000\r
 00000100\r
 10000000\r
 10010000\r
 11110110\r
 01010101\r
+11111111\r
+11101111\r
 00101011\r
 00001000\r
-10001000\r
+10000000\r
 00101011\r
 00001000\r
-10001111\r
-11111111\r
-11101111\r
+10000111\r
 10011111\r
 10001111\r
 00111111\r
 00101111\r
 00001111\r
 00001111\r
-00101100\r
-00001000\r
-10000000\r
-00101100\r
-00001000\r
-10000111\r
 00001111\r
 00011111\r
+00101011\r
+00001000\r
+10001000\r
+00101011\r
+00001000\r
+10001111\r
 00011000\r
 01001000\r
 00100000\r
 01101100\r
 00110000\r
 01101101\r
+00101111\r
+00111111\r
 00101100\r
 00001000\r
-10001000\r
+10000000\r
 00101100\r
 00001000\r
-10001111\r
-00101111\r
-00111111\r
+10000111\r
 10000100\r
 00100000\r
 00111000\r
 00010100\r
 00100000\r
 00110000\r
-00101101\r
-00001000\r
-10000000\r
-00101101\r
-00001000\r
-10000111\r
 10000000\r
 01110000\r
+00101100\r
+00001000\r
+10001000\r
+00101100\r
+00001000\r
+10001111\r
 10010000\r
 01110001\r
 00101000\r
 00111001\r
 01101001\r
 11100000\r
+01101100\r
+11110000\r
 00101101\r
 00001000\r
-10001000\r
+10000000\r
 00101101\r
 00001000\r
-10001111\r
-01101100\r
-11110000\r
+10000111\r
 01101101\r
 11100010\r
 11111111\r
 01000000\r
 10000000\r
 01101100\r
-00101110\r
-00001000\r
-10000000\r
-00101110\r
-00001000\r
-10000111\r
 10010000\r
 01101101\r
+00101101\r
+00001000\r
+10001000\r
+00101101\r
+00001000\r
+10001111\r
 00000001\r
 00100100\r
 10000000\r
 10010010\r
 00010100\r
 10000000\r
+10010000\r
+10010000\r
 00101110\r
 00001000\r
-10001000\r
+10000000\r
 00101110\r
 00001000\r
-10001111\r
-10010000\r
-10010000\r
+10000111\r
 01101101\r
 10000000\r
 01101100\r
 00111010\r
 00000010\r
 00111010\r
-00101111\r
-00001000\r
-10000000\r
-00101111\r
-00001000\r
-10000111\r
 00000001\r
 00111010\r
+00101110\r
+00001000\r
+10001000\r
+00101110\r
+00001000\r
+10001111\r
 01010101\r
 00001000\r
 00011111\r
 00001111\r
 00001111\r
 00001111\r
+00010001\r
 00101111\r
-00001000\r
-10001000\r
 00101111\r
 00001000\r
-10001111\r
-00010001\r
+10000000\r
 00101111\r
+00001000\r
+10000111\r
 00111111\r
 10001111\r
 10011111\r
 10101111\r
 10111111\r
 11101111\r
-00110000\r
-00001000\r
-10000000\r
-00110000\r
-00001000\r
-10000111\r
 11111111\r
 01011100\r
+00101111\r
+00001000\r
+10001000\r
+00101111\r
+00001000\r
+10001111\r
 00000110\r
 10001001\r
 10010000\r
 10010000\r
 01100101\r
 10000000\r
+01100100\r
+01011011\r
 00110000\r
 00001000\r
-10001000\r
+10000000\r
 00110000\r
 00001000\r
-10001111\r
-01100100\r
-01011011\r
+10000111\r
 00000110\r
 10001010\r
 10010000\r
 10010000\r
 01100101\r
 10000000\r
-00110001\r
-00001000\r
-10000000\r
-00110001\r
-00001000\r
-10000111\r
 01100100\r
 00100000\r
+00110000\r
+00001000\r
+10001000\r
+00110000\r
+00001000\r
+10001111\r
 01101110\r
 00110000\r
 01101111\r
 00101111\r
 00111111\r
 10000100\r
+00100000\r
+00111000\r
 00110001\r
 00001000\r
-10001000\r
+10000000\r
 00110001\r
 00001000\r
-10001111\r
-00100000\r
-00111000\r
+10000111\r
 00010100\r
 00100000\r
 00110000\r
 10000000\r
 01101010\r
 10010000\r
-00110010\r
-00001000\r
-10000000\r
-00110010\r
-00001000\r
-10000111\r
 01101011\r
 00101000\r
+00110001\r
+00001000\r
+10001000\r
+00110001\r
+00001000\r
+10001111\r
 00111001\r
 00001001\r
 01011110\r
 11100000\r
 01101110\r
 11110000\r
+01101111\r
+10001100\r
 00110010\r
 00001000\r
-10001000\r
+10000000\r
 00110010\r
 00001000\r
-10001111\r
-01101111\r
-10001100\r
+10000111\r
 11100000\r
 11111011\r
 10000000\r
 10000000\r
 01101110\r
 10010000\r
-00110011\r
-00001000\r
-10000000\r
-00110011\r
-00001000\r
-10000111\r
 01101111\r
 00000001\r
+00110010\r
+00001000\r
+10001000\r
+00110010\r
+00001000\r
+10001111\r
 00100100\r
 10000000\r
 10010010\r
 00010100\r
 10000000\r
 10010000\r
+10010000\r
+01101111\r
 00110011\r
 00001000\r
-10001000\r
+10000000\r
 00110011\r
 00001000\r
-10001111\r
-10010000\r
-01101111\r
+10000111\r
 10000000\r
 01101110\r
 00100000\r
 01101110\r
 00110000\r
 01101111\r
-00110100\r
-00001000\r
-10000000\r
-00110100\r
-00001000\r
-10000111\r
 10000000\r
 01101010\r
+00110011\r
+00001000\r
+10001000\r
+00110011\r
+00001000\r
+10001111\r
 10010000\r
 01101011\r
 00101000\r
 00111001\r
 00001001\r
 01000010\r
+00100000\r
+01101110\r
 00110100\r
 00001000\r
-10001000\r
+10000000\r
 00110100\r
 00001000\r
-10001111\r
-00100000\r
-01101110\r
+10000111\r
 00110000\r
 01101111\r
 10000000\r
 01101010\r
 10010000\r
 01101011\r
-00110101\r
-00001000\r
-10000000\r
-00110101\r
-00001000\r
-10000111\r
 00101000\r
 00111001\r
+00110100\r
+00001000\r
+10001000\r
+00110100\r
+00001000\r
+10001111\r
 00010100\r
 10000000\r
 01101010\r
 10010000\r
 01101011\r
 00100000\r
+01101110\r
+00110000\r
 00110101\r
 00001000\r
-10001000\r
+10000000\r
 00110101\r
 00001000\r
-10001111\r
-01101110\r
-00110000\r
+10000111\r
 01101111\r
 10000010\r
 10010011\r
 10000000\r
 10010010\r
 01010100\r
-00110110\r
-00001000\r
-10000000\r
-00110110\r
-00001000\r
-10000111\r
 10000000\r
 01100000\r
+00110101\r
+00001000\r
+10001000\r
+00110101\r
+00001000\r
+10001111\r
 10010000\r
 01100001\r
 10100000\r
 01100010\r
 10110000\r
 01100011\r
+00000001\r
+10100001\r
 00110110\r
 00001000\r
-10001000\r
+10000000\r
 00110110\r
 00001000\r
-10001111\r
-00000001\r
-10100001\r
+10000111\r
 10110001\r
 10000000\r
 01100000\r
 10010000\r
 01100001\r
 10100000\r
-00110111\r
-00001000\r
-10000000\r
-00110111\r
-00001000\r
-10000111\r
 01100010\r
 10110000\r
+00110110\r
+00001000\r
+10001000\r
+00110110\r
+00001000\r
+10001111\r
 01100011\r
 00111111\r
 00010101\r
 10000000\r
 01101110\r
 10010000\r
+01101111\r
+00100000\r
 00110111\r
 00001000\r
-10001000\r
+10000000\r
 00110111\r
 00001000\r
-10001111\r
-01101111\r
-00100000\r
+10000111\r
 01101010\r
 00110000\r
 01101011\r
 10000010\r
 10010011\r
 10000001\r
-00111000\r
-00001000\r
-10000000\r
-00111000\r
-00001000\r
-10000111\r
 10010010\r
 01000100\r
+00110111\r
+00001000\r
+10001000\r
+00110111\r
+00001000\r
+10001111\r
 11011101\r
 10001011\r
 10010000\r
 10010000\r
 01100101\r
 10000000\r
+01100100\r
+10011011\r
 00111000\r
 00001000\r
-10001000\r
+10000000\r
 00111000\r
 00001000\r
-10001111\r
-01100100\r
-10011011\r
+10000111\r
 10001111\r
 10000000\r
 10001111\r
 01111000\r
 11111111\r
 11101111\r
-00111001\r
-00001000\r
-10000000\r
-00111001\r
-00001000\r
-10000111\r
 10111111\r
 10101111\r
+00111000\r
+00001000\r
+10001000\r
+00111000\r
+00001000\r
+10001111\r
 10011111\r
 10001111\r
 00111111\r
 00101111\r
 00001111\r
 00001111\r
+00001111\r
+00011111\r
 00111001\r
 00001000\r
-10001000\r
+10000000\r
 00111001\r
 00001000\r
-10001111\r
-00001111\r
-00011111\r
+10000111\r
 00011000\r
 11001111\r
 11011111\r
 11011110\r
 11001101\r
 10001100\r
-00111010\r
-00001000\r
-10000000\r
-00111010\r
-00001000\r
-10000111\r
 10000110\r
 00010111\r
+00111001\r
+00001000\r
+10001000\r
+00111001\r
+00001000\r
+10001111\r
 00010000\r
 01101011\r
 00010000\r
 01101010\r
 00010000\r
 01101111\r
+00010000\r
+01101110\r
 00111010\r
 00001000\r
-10001000\r
+10000000\r
 00111010\r
 00001000\r
-10001111\r
-00010000\r
-01101110\r
+10000111\r
 00010000\r
 01110001\r
 00010000\r
 01110000\r
 00010000\r
 01101101\r
-00111011\r
-00001000\r
-10000000\r
-00111011\r
-00001000\r
-10000111\r
 00010000\r
 01101100\r
+00111010\r
+00001000\r
+10001000\r
+00111010\r
+00001000\r
+10001111\r
 00010000\r
 00011001\r
 10001010\r
 10001000\r
 10001010\r
 01011001\r
+10001111\r
+10001011\r
 00111011\r
 00001000\r
-10001000\r
+10000000\r
 00111011\r
 00001000\r
-10001111\r
-10001111\r
-10001011\r
+10000111\r
 00011111\r
 01111000\r
 10000000\r
 01100000\r
 10010000\r
 01100001\r
-00111100\r
-00001000\r
-10000000\r
-00111100\r
-00001000\r
-10000111\r
 10100000\r
 01100010\r
+00111011\r
+00001000\r
+10001000\r
+00111011\r
+00001000\r
+10001111\r
 10110000\r
 01100011\r
 00111111\r
 00000010\r
 10100001\r
 10110001\r
+10000000\r
+01100000\r
 00111100\r
 00001000\r
-10001000\r
+10000000\r
 00111100\r
 00001000\r
-10001111\r
-10000000\r
-01100000\r
+10000111\r
 10010000\r
 01100001\r
 10100000\r
 01100010\r
 10110000\r
 01100011\r
-00111101\r
+00111111\r
+11000000\r
+00111100\r
 00001000\r
-10000000\r
-00111101\r
+10001000\r
+00111100\r
 00001000\r
-10000111\r
-00111111\r
+10001111\r
+11010000\r
 00100000\r
 01101010\r
 00110000\r
 10010000\r
 00111101\r
 00001000\r
-10001000\r
+10000000\r
 00111101\r
 00001000\r
-10001111\r
+10000111\r
 01101111\r
 10000010\r
 10010011\r
 00001001\r
-00110010\r
+01000011\r
 11100000\r
 01101010\r
 11110000\r
-00111110\r
+00111101\r
 00001000\r
-10000000\r
-00111110\r
+10001000\r
+00111101\r
 00001000\r
-10000111\r
+10001111\r
 01101011\r
 11100000\r
 11111011\r
 01101011\r
 00111110\r
 00001000\r
-10001000\r
+10000000\r
 00111110\r
 00001000\r
-10001111\r
+10000111\r
 00000001\r
 00100100\r
 10000000\r
 10000000\r
 10010000\r
 10010000\r
-00111111\r
+00111110\r
 00001000\r
-10000000\r
-00111111\r
+10001000\r
+00111110\r
 00001000\r
-10000111\r
+10001111\r
 01101011\r
 10000000\r
 01101010\r
 10000000\r
 00111111\r
 00001000\r
-10001000\r
+10000000\r
 00111111\r
 00001000\r
-10001111\r
+10000111\r
 01101010\r
 10010000\r
 01101011\r
 00101000\r
 00111001\r
 00001001\r
-00111000\r
+01001001\r
 00100000\r
-01000000\r
+00111111\r
 00001000\r
-10000000\r
-01000000\r
+10001000\r
+00111111\r
 00001000\r
-10000111\r
+10001111\r
 01101110\r
 00110000\r
 01101111\r
 00101000\r
 01000000\r
 00001000\r
-10001000\r
+10000000\r
 01000000\r
 00001000\r
-10001111\r
+10000111\r
 00111001\r
 00001100\r
-00011110\r
+00101111\r
 10000000\r
 01101010\r
 10010000\r
 01101011\r
 00100000\r
-01000001\r
+01000000\r
 00001000\r
-10000000\r
-01000001\r
+10001000\r
+01000000\r
 00001000\r
-10000111\r
+10001111\r
 01101110\r
 00110000\r
 01101111\r
 00001100\r
 01000001\r
 00001000\r
-10001000\r
+10000000\r
 01000001\r
 00001000\r
-10001111\r
-00011110\r
+10000111\r
+00101111\r
 00111011\r
-00011111\r
+00110000\r
 00111011\r
 11111111\r
 11100111\r
 11110000\r
 11100001\r
+01000001\r
+00001000\r
+10001000\r
+01000001\r
+00001000\r
+10001111\r
+00001001\r
+00110000\r
+11100010\r
+00001001\r
+00010011\r
+11101110\r
+00001001\r
+10101001\r
 01000010\r
 00001000\r
 10000000\r
 01000010\r
 00001000\r
 10000111\r
-00001001\r
-00011111\r
-11100010\r
-00001100\r
-00111000\r
-11100010\r
-00001001\r
-01100101\r
+00100000\r
+01101100\r
+00110000\r
+01101101\r
+00101111\r
+00111111\r
+10000100\r
+00100000\r
 01000010\r
 00001000\r
 10001000\r
 01000010\r
 00001000\r
 10001111\r
-11100011\r
-00001001\r
-10100110\r
-01000000\r
-01100110\r
-01010000\r
-01100111\r
-01100000\r
+00111000\r
+00010100\r
+00100000\r
+00110000\r
+10000000\r
+01110000\r
+10010000\r
+01110001\r
 01000011\r
 00001000\r
 10000000\r
 01000011\r
 00001000\r
 10000111\r
-01101000\r
-01110000\r
+00101000\r
+00111001\r
 01101001\r
-00010000\r
-01100110\r
-00010000\r
-01100111\r
-00010000\r
-01000011\r
-00001000\r
-10001000\r
+11100000\r
+01101100\r
+11110000\r
+01101101\r
+11100010\r
+01000011\r
+00001000\r
+10001000\r
 01000011\r
 00001000\r
 10001111\r
-01101000\r
-00010000\r
-01101001\r
-10000111\r
-10111011\r
-10000111\r
-10110000\r
-10011011\r
+11111111\r
+10001111\r
+10000000\r
+10000000\r
+01101100\r
+10010000\r
+01101101\r
+00000001\r
 01000100\r
 00001000\r
 10000000\r
 01000100\r
 00001000\r
 10000111\r
-10101011\r
-10101000\r
-00100000\r
-01101100\r
-00110000\r
+00100100\r
+10000000\r
+10010010\r
+00010100\r
+10000000\r
+10010000\r
+10010000\r
 01101101\r
-00101111\r
-00111111\r
 01000100\r
 00001000\r
 10001000\r
 01000100\r
 00001000\r
 10001111\r
+10000000\r
+01101100\r
+00111010\r
+00011110\r
+00111010\r
+01010101\r
+00100000\r
+01101100\r
+01000101\r
+00001000\r
+10000000\r
+01000101\r
+00001000\r
+10000111\r
+00110000\r
+01101101\r
+00101111\r
+00111111\r
 10000100\r
 00100000\r
 00111000\r
 00010100\r
-00100000\r
-00110000\r
-10000000\r
-01110000\r
 01000101\r
 00001000\r
-10000000\r
+10001000\r
 01000101\r
 00001000\r
-10000111\r
+10001111\r
+00100000\r
+00110000\r
+10000000\r
+01110000\r
 10010000\r
 01110001\r
 00101000\r
 00111001\r
+01000110\r
+00001000\r
+10000000\r
+01000110\r
+00001000\r
+10000111\r
 01101001\r
 11100000\r
 01101100\r
 11110000\r
-01000101\r
+01101101\r
+11100010\r
+11111111\r
+10000010\r
+01000110\r
 00001000\r
 10001000\r
-01000101\r
+01000110\r
 00001000\r
 10001111\r
-01101101\r
-11100010\r
-11111111\r
-10100000\r
+10000000\r
 10000000\r
 01101100\r
 10010000\r
 01101101\r
-01000110\r
+00000001\r
+00100100\r
+10000000\r
+01000111\r
 00001000\r
 10000000\r
-01000110\r
+01000111\r
 00001000\r
 10000111\r
-00000001\r
-00100100\r
-10000000\r
 10010010\r
 00010100\r
 10000000\r
 10010000\r
 10010000\r
-01000110\r
-00001000\r
-10001000\r
-01000110\r
-00001000\r
-10001111\r
 01101101\r
 10000000\r
 01101100\r
-00111010\r
-11011011\r
-00111010\r
-01010101\r
-11001011\r
 01000111\r
 00001000\r
-10000000\r
+10001000\r
 01000111\r
 00001000\r
-10000111\r
-10111011\r
-10010111\r
-10110000\r
-10101011\r
-10101000\r
+10001111\r
+00111010\r
+11101110\r
+00111010\r
+01010101\r
 00100000\r
 01101100\r
 00110000\r
-01000111\r
+01101101\r
+01001000\r
 00001000\r
-10001000\r
-01000111\r
+10000000\r
+01001000\r
 00001000\r
-10001111\r
-01101101\r
+10000111\r
 00101111\r
 00111111\r
 10000100\r
 00111000\r
 00010100\r
 00100000\r
+00110000\r
 01001000\r
 00001000\r
-10000000\r
+10001000\r
 01001000\r
 00001000\r
-10000111\r
-00110000\r
+10001111\r
 10000000\r
 01110000\r
 10010000\r
 00101000\r
 00111001\r
 01101001\r
-01001000\r
+11100000\r
+01001001\r
 00001000\r
-10001000\r
-01001000\r
+10000000\r
+01001001\r
 00001000\r
-10001111\r
-11100000\r
+10000111\r
 01101100\r
 11110000\r
 01101101\r
 11100010\r
 11111111\r
-10100000\r
+10001001\r
+10000000\r
 10000000\r
 01001001\r
 00001000\r
-10000000\r
+10001000\r
 01001001\r
 00001000\r
-10000111\r
+10001111\r
 01101100\r
 10010000\r
 01101101\r
 10000000\r
 10010010\r
 00010100\r
-01001001\r
+01001010\r
 00001000\r
-10001000\r
-01001001\r
+10000000\r
+01001010\r
 00001000\r
-10001111\r
+10000111\r
 10000000\r
 10010000\r
 10010000\r
 10000000\r
 01101100\r
 00111010\r
-10101100\r
-01001010\r
-00001000\r
-10000000\r
-01001010\r
-00001000\r
-10000111\r
-00111010\r
-01010101\r
-10111011\r
-01110111\r
-10111010\r
-10100111\r
-10010110\r
-10000101\r
+10111110\r
 01001010\r
 00001000\r
 10001000\r
 01001010\r
 00001000\r
 10001111\r
-10101000\r
+00111010\r
+01010101\r
 00100000\r
 01101100\r
 00110000\r
 01101101\r
 00101111\r
 00111111\r
-10000100\r
 01001011\r
 00001000\r
 10000000\r
 01001011\r
 00001000\r
 10000111\r
+10000100\r
 00100000\r
 00111000\r
 00010100\r
 00110000\r
 10000000\r
 01110000\r
-10010000\r
 01001011\r
 00001000\r
 10001000\r
 01001011\r
 00001000\r
 10001111\r
+10010000\r
 01110001\r
 00101000\r
 00111001\r
 11100000\r
 01101100\r
 11110000\r
-01101101\r
 01001100\r
 00001000\r
 10000000\r
 01001100\r
 00001000\r
 10000111\r
+01101101\r
 11100010\r
 11111111\r
-10100000\r
+10000100\r
+10000000\r
 10000000\r
 01101100\r
 10010000\r
-01101101\r
-00000001\r
 01001100\r
 00001000\r
 10001000\r
 01001100\r
 00001000\r
 10001111\r
+01101101\r
+00000001\r
 00100100\r
 10000000\r
 10010010\r
 00010100\r
 10000000\r
 10010000\r
-10010000\r
-01101101\r
 01001101\r
 00001000\r
 10000000\r
 01001101\r
 00001000\r
 10000111\r
+10010000\r
+01101101\r
 10000000\r
 01101100\r
 00111010\r
-01110110\r
+10001110\r
 00111010\r
 01010101\r
-00100000\r
-01101100\r
 01001101\r
 00001000\r
 10001000\r
 01001101\r
 00001000\r
 10001111\r
+00100000\r
+01101100\r
 00110000\r
 01101101\r
 00101111\r
 00111111\r
 10000100\r
 00100000\r
-00111000\r
-00010100\r
 01001110\r
 00001000\r
 10000000\r
 01001110\r
 00001000\r
 10000111\r
+00111000\r
+00010100\r
 00100000\r
 00110000\r
 10000000\r
 01110000\r
 10010000\r
 01110001\r
-00101000\r
-00111001\r
 01001110\r
 00001000\r
 10001000\r
 01001110\r
 00001000\r
 10001111\r
+00101000\r
+00111001\r
 01101001\r
 11100000\r
 01101100\r
 11110000\r
 01101101\r
 11100010\r
-11111111\r
-01000000\r
 01001111\r
 00001000\r
 10000000\r
 01001111\r
 00001000\r
 10000111\r
+11111111\r
+10000011\r
+10000000\r
 10000000\r
 01101100\r
 10010000\r
 01101101\r
 00000001\r
-00100100\r
-10000000\r
-10010010\r
 01001111\r
 00001000\r
 10001000\r
 01001111\r
 00001000\r
 10001111\r
+00100100\r
+10000000\r
+10010010\r
 00010100\r
 10000000\r
 10010000\r
 10010000\r
 01101101\r
-10000000\r
-01101100\r
-00111010\r
 01010000\r
 00001000\r
 10000000\r
 01010000\r
 00001000\r
 10000111\r
-10111111\r
+10000000\r
+01101100\r
+00111010\r
+01011110\r
 00111010\r
 01010101\r
-00100000\r
-01101010\r
-00110000\r
-01101011\r
-10000000\r
+00010111\r
+00010011\r
 01010000\r
 00001000\r
 10001000\r
 01010000\r
 00001000\r
 10001111\r
-01101110\r
-10010000\r
-01101111\r
-10000010\r
-10010011\r
+00100000\r
 00001001\r
-11001110\r
-00111111\r
+10111110\r
+00111101\r
+00100000\r
+01101010\r
+00110000\r
+01101011\r
 01010001\r
 00001000\r
 10000000\r
 01010001\r
 00001000\r
 10000111\r
-00100000\r
-01101010\r
-00110000\r
-01101011\r
 10000000\r
 01101110\r
 10010000\r
 01101111\r
+10000010\r
+10010011\r
+00001001\r
+10111101\r
 01010001\r
 00001000\r
 10001000\r
 01010001\r
 00001000\r
 10001111\r
-10000010\r
-10010011\r
-00001001\r
-11000001\r
 00111111\r
 00100000\r
 01101010\r
 00110000\r
+01101011\r
+10000000\r
+01101110\r
+10010000\r
 01010010\r
 00001000\r
 10000000\r
 01010010\r
 00001000\r
 10000111\r
-01101011\r
-10000000\r
-01101110\r
-10010000\r
 01101111\r
 10000010\r
 10010011\r
-00111001\r
+00001001\r
+10110000\r
+00111111\r
+00100000\r
+01101010\r
 01010010\r
 00001000\r
 10001000\r
 01010010\r
 00001000\r
 10001111\r
-10110100\r
+00110000\r
+01101011\r
 10000000\r
 01101110\r
 10010000\r
 01101111\r
-00100000\r
-01101010\r
-00110000\r
+10000010\r
+10010011\r
 01010011\r
 00001000\r
 10000000\r
 01010011\r
 00001000\r
 10000111\r
+00111001\r
+10100011\r
+10000000\r
+01101110\r
+10010000\r
+01101111\r
+00100000\r
+01101010\r
+01010011\r
+00001000\r
+10001000\r
+01010011\r
+00001000\r
+10001111\r
+00110000\r
 01101011\r
 10000010\r
 10010011\r
 10000001\r
 10010010\r
 00001100\r
-11100010\r
-00111111\r
-01010011\r
+11010001\r
+01010100\r
 00001000\r
-10001000\r
-01010011\r
+10000000\r
+01010100\r
 00001000\r
-10001111\r
+10000111\r
+00111111\r
 00111011\r
-11100001\r
+11010000\r
 00111011\r
 11111111\r
 11100111\r
 11110000\r
 11100001\r
-00001001\r
 01010100\r
 00001000\r
-10000000\r
+10001000\r
 01010100\r
 00001000\r
-10000111\r
-11100001\r
+10001111\r
+00001001\r
+11010000\r
 00100000\r
 01101010\r
 00110000\r
 01101011\r
 10000000\r
 01101110\r
-10010000\r
-01010100\r
+01010101\r
 00001000\r
-10001000\r
-01010100\r
+10000000\r
+01010101\r
 00001000\r
-10001111\r
+10000111\r
+10010000\r
 01101111\r
 10000010\r
 10010011\r
 00001001\r
-01110110\r
+01000000\r
 11100000\r
 01101010\r
-11110000\r
 01010101\r
 00001000\r
-10000000\r
+10001000\r
 01010101\r
 00001000\r
-10000111\r
+10001111\r
+11110000\r
 01101011\r
 11100000\r
 11111011\r
 10000000\r
 01101010\r
 10010000\r
-01101011\r
-01010101\r
+01010110\r
 00001000\r
-10001000\r
-01010101\r
+10000000\r
+01010110\r
 00001000\r
-10001111\r
+10000111\r
+01101011\r
 00000001\r
 00100100\r
 10000000\r
 00010100\r
 10000000\r
 10010000\r
-10010000\r
 01010110\r
 00001000\r
-10000000\r
+10001000\r
 01010110\r
 00001000\r
-10000111\r
+10001111\r
+10010000\r
 01101011\r
 10000000\r
 01101010\r
 01101110\r
 00110000\r
 01101111\r
-10000000\r
-01010110\r
+01010111\r
 00001000\r
-10001000\r
-01010110\r
+10000000\r
+01010111\r
 00001000\r
-10001111\r
+10000111\r
+10000000\r
 01101010\r
 10010000\r
 01101011\r
 00101000\r
 00111001\r
 00001001\r
-11000011\r
-00100000\r
+10001101\r
 01010111\r
 00001000\r
-10000000\r
+10001000\r
 01010111\r
 00001000\r
-10000111\r
+10001111\r
+00100000\r
 01101110\r
 00110000\r
 01101111\r
 01101010\r
 10010000\r
 01101011\r
-00101000\r
-01010111\r
+01011000\r
 00001000\r
-10001000\r
-01010111\r
+10000000\r
+01011000\r
 00001000\r
-10001111\r
+10000111\r
+00101000\r
 00111001\r
 00001100\r
-10101001\r
+01110011\r
 10000000\r
 01101010\r
 10010000\r
 01101011\r
-00100000\r
 01011000\r
 00001000\r
-10000000\r
+10001000\r
 01011000\r
 00001000\r
-10000111\r
+10001111\r
+00100000\r
 01101110\r
 00110000\r
 01101111\r
 10010011\r
 10000000\r
 10010010\r
-00001100\r
-01011000\r
+01011001\r
 00001000\r
-10001000\r
-01011000\r
+10000000\r
+01011001\r
 00001000\r
-10001111\r
-10101001\r
+10000111\r
+00001100\r
+01110011\r
 00111011\r
-10101010\r
+01110100\r
 00111011\r
 10101110\r
 10111011\r
 10100111\r
-10110000\r
 01011001\r
 00001000\r
-10000000\r
+10001000\r
 01011001\r
 00001000\r
-10000111\r
+10001111\r
+10110000\r
 00100000\r
 01101010\r
 00110000\r
 10000000\r
 01101110\r
 10010000\r
-01101111\r
-01011001\r
+01011010\r
 00001000\r
-10001000\r
-01011001\r
+10000000\r
+01011010\r
 00001000\r
-10001111\r
-00101000\r
-00111001\r
+10000111\r
+01101111\r
+10000010\r
+10010011\r
 00001001\r
-01000001\r
+00001011\r
 11100000\r
 01101010\r
 11110000\r
-01101011\r
 01011010\r
 00001000\r
-10000000\r
+10001000\r
 01011010\r
 00001000\r
-10000111\r
+10001111\r
+01101011\r
 11100000\r
 11111011\r
 11100000\r
 01101010\r
 10010000\r
 01101011\r
-00000001\r
-01011010\r
+01011011\r
 00001000\r
-10001000\r
-01011010\r
+10000000\r
+01011011\r
 00001000\r
-10001111\r
+10000111\r
+00000001\r
 00100100\r
 10000000\r
 10010010\r
 10000000\r
 10010000\r
 10010000\r
-01101011\r
 01011011\r
 00001000\r
-10000000\r
+10001000\r
 01011011\r
 00001000\r
-10000111\r
+10001111\r
+01101011\r
 10000000\r
 01101010\r
 00100000\r
 00110000\r
 01101111\r
 10000000\r
-01101010\r
-01011011\r
+01011100\r
 00001000\r
-10001000\r
-01011011\r
+10000000\r
+01011100\r
 00001000\r
-10001111\r
+10000111\r
+01101010\r
 10010000\r
 01101011\r
 00101000\r
 00111001\r
 00001001\r
-10000111\r
+01010001\r
 00100000\r
-01101110\r
 01011100\r
 00001000\r
-10000000\r
+10001000\r
 01011100\r
 00001000\r
-10000111\r
+10001111\r
+01101110\r
 00110000\r
 01101111\r
 10000000\r
 10010000\r
 01101011\r
 00101000\r
-00111001\r
-01011100\r
+01011101\r
 00001000\r
-10001000\r
-01011100\r
+10000000\r
+01011101\r
 00001000\r
-10001111\r
+10000111\r
+00111001\r
 00001100\r
-01101101\r
+00110111\r
 10000000\r
 01101010\r
 10010000\r
 01101011\r
 00100000\r
-01101110\r
 01011101\r
 00001000\r
-10000000\r
+10001000\r
 01011101\r
 00001000\r
-10000111\r
+10001111\r
+01101110\r
 00110000\r
 01101111\r
 10000010\r
 10000000\r
 10010010\r
 00001100\r
-01101101\r
-01011101\r
+01011110\r
 00001000\r
-10001000\r
-01011101\r
+10000000\r
+01011110\r
 00001000\r
-10001111\r
+10000111\r
+00110111\r
 00111011\r
-01101110\r
+00111000\r
 00111011\r
 01101110\r
 01110111\r
 01100111\r
 01110000\r
-00100000\r
 01011110\r
 00001000\r
-10000000\r
+10001000\r
 01011110\r
 00001000\r
-10000111\r
+10001111\r
+00100000\r
 01101010\r
 00110000\r
 01101011\r
 01101110\r
 10010000\r
 01101111\r
-10000010\r
-01011110\r
+01011111\r
 00001000\r
-10001000\r
-01011110\r
+10000000\r
+01011111\r
 00001000\r
-10001111\r
+10000111\r
+10000010\r
 10010011\r
 00001001\r
-00001100\r
+11010110\r
 11100000\r
 01101010\r
 11110000\r
 01101011\r
-11100000\r
 01011111\r
 00001000\r
-10000000\r
+10001000\r
 01011111\r
 00001000\r
-10000111\r
+10001111\r
+11100000\r
 11111011\r
 11100000\r
 10000000\r
 10010000\r
 01101011\r
 00000001\r
-00100100\r
-01011111\r
+01100000\r
 00001000\r
-10001000\r
-01011111\r
+10000000\r
+01100000\r
 00001000\r
-10001111\r
+10000111\r
+00100100\r
 10000000\r
 10010010\r
 00010100\r
 10010000\r
 10010000\r
 01101011\r
-10000000\r
 01100000\r
 00001000\r
-10000000\r
+10001000\r
 01100000\r
 00001000\r
-10000111\r
+10001111\r
+10000000\r
 01101010\r
 00100000\r
 01101110\r
 01101111\r
 10000000\r
 01101010\r
-10010000\r
-01100000\r
+01100001\r
 00001000\r
-10001000\r
-01100000\r
+10000000\r
+01100001\r
 00001000\r
-10001111\r
+10000111\r
+10010000\r
 01101011\r
 00101000\r
 00111001\r
 00001001\r
-01001011\r
+00010101\r
 00100000\r
 01101110\r
-00110000\r
 01100001\r
 00001000\r
-10000000\r
+10001000\r
 01100001\r
 00001000\r
-10000111\r
+10001111\r
+00110000\r
 01101111\r
 10000000\r
 01101010\r
 01101011\r
 00101000\r
 00111001\r
-00001100\r
-01100001\r
+01100010\r
 00001000\r
-10001000\r
-01100001\r
+10000000\r
+01100010\r
 00001000\r
-10001111\r
-00110001\r
+10000111\r
+00001100\r
+11111011\r
 10000000\r
 01101010\r
 10010000\r
 01101011\r
 00100000\r
 01101110\r
-00110000\r
 01100010\r
 00001000\r
-10000000\r
+10001000\r
 01100010\r
 00001000\r
-10000111\r
+10001111\r
+00110000\r
 01101111\r
 10000010\r
 10010011\r
 10000000\r
 10010010\r
 00001100\r
-00110001\r
-00111011\r
-01100010\r
+11111011\r
+01100011\r
 00001000\r
-10001000\r
-01100010\r
+10000000\r
+01100011\r
 00001000\r
-10001111\r
-00110010\r
+10000111\r
+00111011\r
+11111100\r
 00111011\r
 01001110\r
 01010101\r
 01000111\r
 01010000\r
 00100000\r
-01101010\r
 01100011\r
 00001000\r
-10000000\r
+10001000\r
 01100011\r
 00001000\r
-10000111\r
+10001111\r
+01101010\r
 00110000\r
 01101011\r
 10000000\r
 01101110\r
 10010000\r
 01101111\r
-10000010\r
-10010011\r
-01100011\r
+00101000\r
+01100100\r
 00001000\r
-10001000\r
-01100011\r
+10000000\r
+01100100\r
 00001000\r
-10001111\r
+10000111\r
+00111001\r
 01100001\r
 00111111\r
 00100000\r
 00110000\r
 01101011\r
 10000000\r
-01101110\r
 01100100\r
 00001000\r
-10000000\r
+10001000\r
 01100100\r
 00001000\r
-10000111\r
+10001111\r
+01101110\r
 10010000\r
 01101111\r
-10000010\r
-10010011\r
+00101000\r
+00111001\r
 10100001\r
 11100000\r
 01101010\r
-11110000\r
-01100100\r
+01100101\r
 00001000\r
-10001000\r
-01100100\r
+10000000\r
+01100101\r
 00001000\r
-10001111\r
+10000111\r
+11110000\r
 01101011\r
 11100000\r
 11111011\r
 10000000\r
 01101010\r
 10010000\r
-01101011\r
 01100101\r
 00001000\r
-10000000\r
+10001000\r
 01100101\r
 00001000\r
-10000111\r
+10001111\r
+01101011\r
 00000001\r
 00100100\r
 10000000\r
 00010100\r
 10000000\r
 10010000\r
-10010000\r
-01100101\r
+01100110\r
 00001000\r
-10001000\r
-01100101\r
+10000000\r
+01100110\r
 00001000\r
-10001111\r
+10000111\r
+10010000\r
 01101011\r
 10000000\r
 01101010\r
 01101110\r
 00110000\r
 01101111\r
-10000000\r
 01100110\r
 00001000\r
-10000000\r
+10001000\r
 01100110\r
 00001000\r
-10000111\r
+10001111\r
+10000000\r
 01101010\r
 10010000\r
 01101011\r
 00101000\r
 00111001\r
 00001001\r
-10111000\r
-00100000\r
-01100110\r
+10000010\r
+01100111\r
 00001000\r
-10001000\r
-01100110\r
+10000000\r
+01100111\r
 00001000\r
-10001111\r
+10000111\r
+00100000\r
 01101110\r
 00110000\r
 01101111\r
 01101010\r
 10010000\r
 01101011\r
-00101000\r
 01100111\r
 00001000\r
-10000000\r
+10001000\r
 01100111\r
 00001000\r
-10000111\r
+10001111\r
+00101000\r
 00111001\r
 00001100\r
-10011110\r
+01101000\r
 10000000\r
 01101010\r
 10010000\r
 01101011\r
-00100000\r
-01100111\r
+01101000\r
 00001000\r
-10001000\r
-01100111\r
+10000000\r
+01101000\r
 00001000\r
-10001111\r
+10000111\r
+00100000\r
 01101110\r
 00110000\r
 01101111\r
 10010011\r
 10000000\r
 10010010\r
-00001100\r
 01101000\r
 00001000\r
-10000000\r
+10001000\r
 01101000\r
 00001000\r
-10000111\r
-10011110\r
+10001111\r
+00001100\r
+01101000\r
 00111011\r
-10011111\r
+01101001\r
 00111011\r
 01001000\r
 01101001\r
 10101010\r
-10001110\r
-01101000\r
-00001000\r
-10001000\r
-01101000\r
-00001000\r
-10001111\r
-10011001\r
-10000111\r
-10010000\r
-10001011\r
-01000100\r
-00010111\r
-00010011\r
-10000100\r
 01101001\r
 00001000\r
 10000000\r
 01101001\r
 00001000\r
 10000111\r
+10001110\r
+10011001\r
+10000111\r
 10010000\r
-10010011\r
-10011000\r
-10010111\r
-01001000\r
+10001011\r
+00110011\r
+00111111\r
 00100000\r
-01101100\r
-00110000\r
 01101001\r
 00001000\r
 10001000\r
 01101001\r
 00001000\r
 10001111\r
-01101101\r
-00101111\r
-00111111\r
-10000100\r
-00100000\r
-00111000\r
-00010100\r
-00100000\r
+01101010\r
+00110000\r
+01101011\r
+10000000\r
+01101110\r
+10010000\r
+01101111\r
+10000010\r
 01101010\r
 00001000\r
 10000000\r
 01101010\r
 00001000\r
 10000111\r
+10010011\r
+00001001\r
+10110011\r
+00111111\r
+00100000\r
+01101010\r
 00110000\r
-10000000\r
-01110000\r
-10010000\r
-01110001\r
-00101000\r
-00111001\r
-01101001\r
+01101011\r
 01101010\r
 00001000\r
 10001000\r
 01101010\r
 00001000\r
 10001111\r
-11100000\r
-01101100\r
-11110000\r
-01101101\r
-11100010\r
-11111111\r
-01000000\r
 10000000\r
+01101110\r
+10010000\r
+01101111\r
+10000010\r
+10010011\r
+00111001\r
+10100110\r
 01101011\r
 00001000\r
 10000000\r
 01101011\r
 00001000\r
 10000111\r
-01101100\r
+00111111\r
+00100000\r
+01101010\r
+00110000\r
+01101011\r
+10000000\r
+01101110\r
 10010000\r
-01101101\r
-00000001\r
-00100100\r
-10000000\r
-10010010\r
-00010100\r
 01101011\r
 00001000\r
 10001000\r
 01101011\r
 00001000\r
 10001111\r
-10000000\r
-10010000\r
-10010000\r
-01101101\r
-10000000\r
-01101100\r
-00111010\r
-01000001\r
-01101100\r
-00001000\r
-10000000\r
-01101100\r
-00001000\r
-10000111\r
-00111010\r
-01010101\r
-01000000\r
-00111111\r
-00100000\r
-01101010\r
-00110000\r
-01101011\r
-01101100\r
-00001000\r
-10001000\r
-01101100\r
-00001000\r
-10001111\r
-10000000\r
-01101110\r
-10010000\r
 01101111\r
 10000010\r
 10010011\r
 00001001\r
-01111101\r
-01101101\r
-00001000\r
-10000000\r
-01101101\r
-00001000\r
-10000111\r
-00111111\r
-00100000\r
-01101010\r
-00110000\r
-01101011\r
-10000000\r
-01101110\r
-10010000\r
-01101101\r
-00001000\r
-10001000\r
-01101101\r
-00001000\r
-10001111\r
-01101111\r
-10000010\r
-10010011\r
-00111001\r
-01110000\r
+11101000\r
 00111111\r
 00100000\r
 01101010\r
-01101110\r
+01101100\r
 00001000\r
 10000000\r
-01101110\r
+01101100\r
 00001000\r
 10000111\r
 00110000\r
 01101111\r
 10000010\r
 10010011\r
-01101110\r
+01101100\r
 00001000\r
 10001000\r
-01101110\r
+01101100\r
 00001000\r
 10001111\r
-00001001\r
-10110010\r
+00111001\r
+11011011\r
 00111111\r
 00100000\r
 01101010\r
 00110000\r
 01101011\r
 10000000\r
-01101111\r
+01101101\r
 00001000\r
 10000000\r
-01101111\r
+01101101\r
 00001000\r
 10000111\r
 01101110\r
 10010000\r
 01101111\r
-10000010\r
-10010011\r
+00101000\r
 00111001\r
-10100101\r
+00001001\r
+00011101\r
 00111111\r
-01101111\r
+01101101\r
 00001000\r
 10001000\r
-01101111\r
+01101101\r
 00001000\r
 10001111\r
 00100000\r
 01101110\r
 10010000\r
 01101111\r
-01110000\r
-00001000\r
-10000000\r
-01110000\r
-00001000\r
-10000111\r
-10000010\r
-10010011\r
-00001001\r
-11100111\r
-00111111\r
-00100000\r
-01101010\r
-00110000\r
-01110000\r
-00001000\r
-10001000\r
-01110000\r
-00001000\r
-10001111\r
-01101011\r
-10000000\r
 01101110\r
-10010000\r
-01101111\r
-10000010\r
-10010011\r
-00111001\r
-01110001\r
 00001000\r
 10000000\r
-01110001\r
+01101110\r
 00001000\r
 10000111\r
-11011010\r
+00101000\r
+00111001\r
+00111001\r
+00010000\r
 10000000\r
 01101110\r
 10010000\r
 01101111\r
-00100000\r
-01101010\r
-00110000\r
-01110001\r
+01101110\r
 00001000\r
 10001000\r
-01110001\r
+01101110\r
 00001000\r
 10001111\r
+00100000\r
+01101010\r
+00110000\r
 01101011\r
 10000010\r
 10010011\r
 10000001\r
 10010010\r
-00001100\r
-01100010\r
-00111111\r
-01110010\r
+01101111\r
 00001000\r
 10000000\r
-01110010\r
+01101111\r
 00001000\r
 10000111\r
+00001100\r
+10011000\r
+00111111\r
 00111011\r
-01100001\r
+10010111\r
 00111011\r
-01100000\r
+10010110\r
 10000000\r
-01101110\r
-10010000\r
 01101111\r
-01110010\r
 00001000\r
 10001000\r
-01110010\r
+01101111\r
 00001000\r
 10001111\r
+01101110\r
+10010000\r
+01101111\r
 00100000\r
 01101010\r
 00110000\r
 01101011\r
 10000010\r
-10010011\r
-10000001\r
-10010010\r
-01110011\r
+01110000\r
 00001000\r
 10000000\r
-01110011\r
+01110000\r
 00001000\r
 10000111\r
+10010011\r
+10000001\r
+10010010\r
 00001100\r
-01010111\r
+10001101\r
 00111111\r
 00111011\r
-01010110\r
-00111011\r
-01010101\r
-10000000\r
-01110011\r
+10001100\r
+01110000\r
 00001000\r
 10001000\r
-01110011\r
+01110000\r
 00001000\r
 10001111\r
+00111011\r
+10001011\r
+10000000\r
 01101110\r
 10010000\r
 01101111\r
 00100000\r
 01101010\r
-00110000\r
-01101011\r
-10000010\r
-01110100\r
+01110001\r
 00001000\r
 10000000\r
-01110100\r
+01110001\r
 00001000\r
 10000111\r
+00110000\r
+01101011\r
+10000010\r
 10010011\r
 10000001\r
 10010010\r
 00001100\r
-10010011\r
-00111111\r
-00111011\r
-10010010\r
-01110100\r
+11001001\r
+01110001\r
 00001000\r
 10001000\r
-01110100\r
+01110001\r
 00001000\r
 10001111\r
+00111111\r
 00111011\r
-10010001\r
+11001000\r
+00111011\r
+11000111\r
 10000000\r
 01101110\r
 10010000\r
-01101111\r
-00100000\r
-01101010\r
-01110101\r
+01110010\r
 00001000\r
 10000000\r
-01110101\r
+01110010\r
 00001000\r
 10000111\r
+01101111\r
+00100000\r
+01101010\r
 00110000\r
 01101011\r
 10000010\r
 10010011\r
 10000001\r
-10010010\r
-00001100\r
-11001111\r
-01110101\r
+01110010\r
 00001000\r
 10001000\r
-01110101\r
+01110010\r
 00001000\r
 10001111\r
+10010010\r
+00001100\r
+00000101\r
 00111111\r
 00111011\r
-11001110\r
+00000100\r
 00111011\r
-11001101\r
-11101110\r
-00001001\r
-01110001\r
-01110110\r
+00000011\r
+01110011\r
 00001000\r
 10000000\r
-01110110\r
+01110011\r
 00001000\r
 10000111\r
+10000100\r
+01001000\r
 00100000\r
 01101100\r
 00110000\r
 01101101\r
 00101111\r
 00111111\r
-10000100\r
-00100000\r
-01110110\r
+01110011\r
 00001000\r
 10001000\r
-01110110\r
+01110011\r
 00001000\r
 10001111\r
+10000100\r
+00100000\r
 00111000\r
 00010100\r
 00100000\r
 00110000\r
 10000000\r
 01110000\r
-10010000\r
-01110001\r
-01110111\r
+01110100\r
 00001000\r
 10000000\r
-01110111\r
+01110100\r
 00001000\r
 10000111\r
+10010000\r
+01110001\r
 00101000\r
 00111001\r
 01101001\r
 11100000\r
 01101100\r
 11110000\r
-01101101\r
-11100010\r
-01110111\r
+01110100\r
 00001000\r
 10001000\r
-01110111\r
+01110100\r
 00001000\r
 10001111\r
+01101101\r
+11100010\r
 11111111\r
-10001111\r
-10000000\r
+01000000\r
 10000000\r
 01101100\r
 10010000\r
 01101101\r
-00000001\r
-01111000\r
+01110101\r
 00001000\r
 10000000\r
-01111000\r
+01110101\r
 00001000\r
 10000111\r
+00000001\r
 00100100\r
 10000000\r
 10010010\r
 10000000\r
 10010000\r
 10010000\r
-01101101\r
-01111000\r
+01110101\r
 00001000\r
 10001000\r
-01111000\r
+01110101\r
 00001000\r
 10001111\r
+01101101\r
 10000000\r
 01101100\r
 00111010\r
-11000010\r
+00001111\r
 00111010\r
 01010101\r
-00100000\r
-01101100\r
-01111001\r
+11000001\r
+01110110\r
 00001000\r
 10000000\r
-01111001\r
+01110110\r
 00001000\r
 10000111\r
-00110000\r
-01101101\r
-00101111\r
-00111111\r
-10000100\r
-00100000\r
-00111000\r
-00010100\r
-01111001\r
+11010000\r
+01100111\r
+00111010\r
+10100001\r
+00111010\r
+01110001\r
+00111010\r
+01000001\r
+01110110\r
 00001000\r
 10001000\r
-01111001\r
+01110110\r
 00001000\r
-10001111\r
-00100000\r
-00110000\r
+10001101\r
+00111010\r
+00010001\r
+00111010\r
+11100001\r
+00111010\r
+11110000\r
 10000000\r
-01110000\r
-10010000\r
-01110001\r
-00101000\r
-00111001\r
-01111010\r
 00001000\r
 10000000\r
-01111010\r
+10000000\r
 00001000\r
 10000111\r
-01101001\r
-11100000\r
-01101100\r
-11110000\r
-01101101\r
-11100010\r
-11111111\r
-10000010\r
-01111010\r
+10010100\r
+00000000\r
+10010100\r
+00000000\r
+10010100\r
+00000000\r
+10010100\r
+00000000\r
+10000000\r
 00001000\r
 10001000\r
-01111010\r
+10000000\r
 00001000\r
 10001111\r
-10000000\r
-10000000\r
-01101100\r
-10010000\r
-01101101\r
-00000001\r
-00100100\r
-10000000\r
-01111011\r
+10010100\r
+00000000\r
+10010100\r
+00000000\r
+10010100\r
+00000000\r
+10010100\r
+00000000\r
+10000001\r
 00001000\r
 10000000\r
-01111011\r
+10000001\r
 00001000\r
 10000111\r
-10010010\r
-00010100\r
-10000000\r
-10010000\r
-10010000\r
-01101101\r
-10000000\r
-01101100\r
-01111011\r
+10010100\r
+00000000\r
+10010100\r
+00000000\r
+10010100\r
+00000000\r
+10010100\r
+00000000\r
+10000001\r
 00001000\r
 10001000\r
-01111011\r
+10000001\r
 00001000\r
 10001111\r
-00111010\r
-10011110\r
-00111010\r
-01010101\r
-00100000\r
-01101100\r
-00110000\r
-01101101\r
-01111100\r
+10010100\r
+00000000\r
+10010100\r
+00000000\r
+10010100\r
+00000000\r
+10010100\r
+00000000\r
+10000010\r
 00001000\r
 10000000\r
-01111100\r
+10000010\r
 00001000\r
 10000111\r
-00101111\r
-00111111\r
-10000100\r
-00100000\r
-00111000\r
-00010100\r
-00100000\r
-00110000\r
-01111100\r
+10010100\r
+00000000\r
+10010100\r
+00000000\r
+10010100\r
+00000000\r
+10010100\r
+00000000\r
+10000010\r
 00001000\r
 10001000\r
-01111100\r
+10000010\r
 00001000\r
 10001111\r
-10000000\r
-01110000\r
-10010000\r
-01110001\r
-00101000\r
-00111001\r
-01101001\r
-11100000\r
-01111101\r
+10010100\r
+00000000\r
+10010100\r
+00000010\r
+10010100\r
+00000010\r
+10010100\r
+00000000\r
+10000011\r
 00001000\r
 10000000\r
-01111101\r
+10000011\r
 00001000\r
 10000111\r
-01101100\r
-11110000\r
-01101101\r
-11100010\r
-11111111\r
-10001001\r
-10000000\r
-10000000\r
-01111101\r
+10010100\r
+00000000\r
+10010100\r
+00000000\r
+10010100\r
+00000000\r
+10010100\r
+00000000\r
+10000011\r
 00001000\r
 10001000\r
-01111101\r
+10000011\r
 00001000\r
 10001111\r
-01101100\r
-10010000\r
-01101101\r
-00000001\r
-00100100\r
-10000000\r
-10010010\r
-00010100\r
-01111110\r
+10010100\r
+00000000\r
+10010100\r
+00000000\r
+10010100\r
+00000000\r
+10010100\r
+00000000\r
+10000100\r
 00001000\r
 10000000\r
-01111110\r
+10000100\r
 00001000\r
 10000111\r
-10000000\r
-10010000\r
-10010000\r
-01101101\r
-10000000\r
-01101100\r
-00111010\r
-01101110\r
-01111110\r
+10010100\r
+00000000\r
+10010100\r
+00000000\r
+10010100\r
+00000001\r
+10010100\r
+00000000\r
+10000100\r
 00001000\r
 10001000\r
-01111110\r
+10000100\r
 00001000\r
 10001111\r
-00111010\r
-01010101\r
-00100000\r
-01101100\r
-00110000\r
-01101101\r
-00101111\r
-00111111\r
-01111111\r
+00100100\r
+10111110\r
+11101111\r
+11100000\r
+10111111\r
+10111111\r
+11100000\r
+11100110\r
+10000101\r
 00001000\r
 10000000\r
-01111111\r
+10000101\r
 00001000\r
 10000111\r
-10000100\r
-00100000\r
-00111000\r
-00010100\r
-00100000\r
-00110000\r
-10000000\r
-01110000\r
-01111111\r
-00001000\r
-10001000\r
-01111111\r
-00001000\r
-10001111\r
-10010000\r
-01110001\r
-00101000\r
-00111001\r
-01101001\r
-11100000\r
-01101100\r
-11110000\r
-00000000\r
-00000111\r
-10000000\r
-00000000\r
-00000111\r
-10000111\r
-01101101\r
-11100010\r
-11111111\r
-10000100\r
-10000000\r
-10000000\r
-01101100\r
-10010000\r
-00000000\r
-00000111\r
-10001000\r
-00000000\r
-00000111\r
-10001111\r
-01101101\r
-00000001\r
-00100100\r
-10000000\r
-10010010\r
-00010100\r
-10000000\r
-10010000\r
-00000001\r
-00000111\r
-10000000\r
-00000001\r
-00000111\r
-10000111\r
-10010000\r
-01101101\r
-10000000\r
-01101100\r
-00111010\r
-00111110\r
-00111010\r
-01010101\r
-00000001\r
-00000111\r
-10001000\r
-00000001\r
-00000111\r
-10001111\r
-00100000\r
-01101100\r
-00110000\r
-01101101\r
-00101111\r
-00111111\r
-10000100\r
-00100000\r
-00000010\r
-00000111\r
-10000000\r
-00000010\r
-00000111\r
-10000111\r
-00111000\r
-00010100\r
-00100000\r
-00110000\r
-10000000\r
-01110000\r
-10010000\r
-01110001\r
-00000010\r
-00000111\r
-10001000\r
-00000010\r
-00000111\r
-10001111\r
-00101000\r
-00111001\r
-01101001\r
-11100000\r
-01101100\r
-11110000\r
-01101101\r
-11100010\r
-00000011\r
-00000111\r
-10000000\r
-00000011\r
-00000111\r
-10000111\r
-11111111\r
-10000011\r
-10000000\r
-10000000\r
-01101100\r
-10010000\r
-01101101\r
-00000001\r
-00000011\r
-00000111\r
-10001000\r
-00000011\r
-00000111\r
-10001111\r
-00100100\r
-10000000\r
-10010010\r
-00010100\r
-10000000\r
-10010000\r
-10010000\r
-01101101\r
-00000100\r
-00000111\r
-10000000\r
-00000100\r
-00000111\r
-10000111\r
-10000000\r
-01101100\r
-00111010\r
-00001100\r
-00111010\r
-01010101\r
-00111011\r
-10001001\r
-00000100\r
-00000111\r
-10001000\r
-00000100\r
-00000111\r
-10001111\r
-00111010\r
-00100100\r
-00111010\r
-10001001\r
-00111010\r
-01010011\r
-00111010\r
-00111101\r
-00000101\r
-00000111\r
-10000000\r
-00000101\r
-00000111\r
-10000111\r
-00111010\r
-01010101\r
-00111011\r
-01111101\r
-00111010\r
-11000001\r
-00111010\r
-10010001\r
-00000101\r
-00000111\r
-10001000\r
-00000101\r
-00000111\r
-10001001\r
-00111010\r
-01100001\r
-10000000\r
-00001000\r
-10000000\r
-10000000\r
-00001000\r
-10000111\r
-10010100\r
-00000000\r
-10010100\r
-00000000\r
-10010100\r
-00000000\r
-10010100\r
-00000000\r
-10000000\r
-00001000\r
-10001000\r
-10000000\r
-00001000\r
-10001111\r
-10010100\r
-00000000\r
-10010100\r
-00000000\r
-10010100\r
-00000000\r
-10010100\r
-00000000\r
-10000001\r
-00001000\r
-10000000\r
-10000001\r
-00001000\r
-10000111\r
-10010100\r
-00000000\r
-10010100\r
-00000000\r
-10010100\r
-00000000\r
-10010100\r
-00000000\r
-10000001\r
-00001000\r
-10001000\r
-10000001\r
-00001000\r
-10001111\r
-10010100\r
-00000000\r
-10010100\r
-00000000\r
-10010100\r
-00000000\r
-10010100\r
-00000000\r
-10000010\r
-00001000\r
-10000000\r
-10000010\r
-00001000\r
-10000111\r
-10010100\r
-00000000\r
-10010100\r
-00000000\r
-10010100\r
-00000000\r
-10010100\r
-00000000\r
-10000010\r
-00001000\r
-10001000\r
-10000010\r
-00001000\r
-10001111\r
-10010100\r
-00000000\r
-10010100\r
-00000010\r
-10010100\r
-00000010\r
-10010100\r
-00000000\r
-10000011\r
-00001000\r
-10000000\r
-10000011\r
-00001000\r
-10000111\r
-10010100\r
-00000000\r
-10010100\r
-00000000\r
-10010100\r
-00000000\r
-10010100\r
-00000000\r
-10000011\r
-00001000\r
-10001000\r
-10000011\r
-00001000\r
-10001111\r
-10010100\r
-00000000\r
-10010100\r
-00000000\r
-10010100\r
-00000000\r
-10010100\r
-00000000\r
-10000100\r
-00001000\r
-10000000\r
-10000100\r
-00001000\r
-10000111\r
-10010100\r
-00000000\r
-10010100\r
-00000000\r
-10010100\r
-00000001\r
-10010100\r
-00000000\r
-10000100\r
-00001000\r
-10001000\r
-10000100\r
-00001000\r
-10001111\r
-00100100\r
-10111110\r
-11101111\r
-11100000\r
-10111111\r
-10111111\r
-11100000\r
-11100110\r
-10000101\r
-00001000\r
-10000000\r
-10000101\r
-00001000\r
-10000111\r
-11100000\r
-11101011\r
-11100001\r
-11000000\r
-10010000\r
-10010010\r
-00110110\r
-00000111\r
-10000101\r
-00001000\r
-10001000\r
-10000101\r
-00001000\r
-10001111\r
-11110111\r
-11100000\r
-11100110\r
-11100000\r
-11000000\r
-10010010\r
-00110111\r
-00000111\r
-10000110\r
-00001000\r
-10000000\r
-10000110\r
-00001000\r
-10000111\r
-11110111\r
-10010100\r
-00000011\r
-10010100\r
-00000000\r
-00101111\r
-00100111\r
-01110000\r
-10000110\r
-00001000\r
-10001000\r
-10000110\r
-00001000\r
-10001111\r
-10111101\r
-10111001\r
-10110001\r
-01101001\r
-10111001\r
-00101011\r
-11110000\r
-10011010\r
-10000111\r
-00001000\r
-10000000\r
-10000111\r
-00001000\r
-10000111\r
-10010101\r
-10011000\r
-10010101\r
-10010001\r
-00000000\r
-10010001\r
-00000000\r
-10010001\r
-10000111\r
-00001000\r
-10001000\r
-10000111\r
-00001000\r
-10001111\r
-00000000\r
-10010001\r
-00000000\r
-01011111\r
-01001111\r
-01001111\r
-01001111\r
-10010011\r
-10001000\r
-00001000\r
-10000000\r
-10001000\r
-00001000\r
-10000111\r
-00000000\r
-10010011\r
-00000000\r
-10010011\r
-00000000\r
-10010011\r
-00000000\r
-00101011\r
-10001000\r
-00001000\r
-10001000\r
-10001000\r
-00001000\r
-10001111\r
-11110000\r
-10011000\r
-10010101\r
-10011010\r
-10010101\r
-10010110\r
-11100000\r
-00110000\r
-10001001\r
-00001000\r
-10000000\r
-10001001\r
-00001000\r
-10000111\r
-00000111\r
-11110000\r
-11100000\r
-11100000\r
-10010101\r
-11111111\r
-10010101\r
-10010101\r
-10001001\r
-00001000\r
-10001000\r
-10001001\r
-00001000\r
-10001111\r
-10010101\r
-01001111\r
-10010101\r
-10010001\r
-00000100\r
-10010001\r
-00000100\r
-10010001\r
-10001010\r
-00001000\r
-10000000\r
-10001010\r
-00001000\r
-10000111\r
-00000000\r
-10010001\r
-00000000\r
-00010111\r
-00000111\r
-11110100\r
-10010001\r
-00000000\r
-10001010\r
-00001000\r
-10001000\r
-10001010\r
-00001000\r
-10001111\r
-10010001\r
-00000000\r
-10010001\r
-00000100\r
-10010001\r
-00000100\r
-00011011\r
-00001011\r
-10001011\r
-00001000\r
-10000000\r
-10001011\r
-00001000\r
-10000111\r
-11000000\r
-10010001\r
-00000100\r
-10010001\r
-00000100\r
-10010001\r
-00000000\r
-10010001\r
-10001011\r
-00001000\r
-10001000\r
-10001011\r
-00001000\r
-10001111\r
-00000000\r
-00011011\r
-00001011\r
-00000001\r
-10010101\r
-10010001\r
-00000000\r
-10010001\r
-10001100\r
-00001000\r
-10000000\r
-10001100\r
-00001000\r
-10000111\r
-00000000\r
-10010001\r
-00000100\r
-10010001\r
-00000100\r
-11100000\r
-11100000\r
-00010111\r
-10001100\r
-00001000\r
-10001000\r
-10001100\r
-00001000\r
-10001111\r
-00000111\r
-11110100\r
-11100000\r
-11100000\r
-00000001\r
-10010101\r
-10010001\r
-00000100\r
-10001101\r
-00001000\r
-10000000\r
-10001101\r
-00001000\r
-10000111\r
-10010001\r
-00000100\r
-10010001\r
-00000000\r
-10010001\r
-00000000\r
-00010111\r
-00000111\r
-10001101\r
-00001000\r
-10001000\r
-10001101\r
-00001000\r
-10001111\r
-11110001\r
-10010001\r
-00000100\r
-10010001\r
-00000100\r
-10010001\r
-00000000\r
-10010001\r
-10001110\r
-00001000\r
-10000000\r
-10001110\r
-00001000\r
-10000111\r
-00000000\r
-00010111\r
-00000111\r
-11110100\r
-10010001\r
-00000000\r
-10010001\r
-00000000\r
-10001110\r
-00001000\r
-10001000\r
-10001110\r
-00001000\r
-10001111\r
-10010001\r
-00000100\r
-10010001\r
-00000100\r
-11100000\r
-11100000\r
-00011011\r
-00001011\r
-10001111\r
-00001000\r
-10000000\r
-10001111\r
-00001000\r
-10000111\r
-01010000\r
-01000000\r
-11110100\r
+11100000\r
+11101101\r
+11100000\r
 11000000\r
-10010001\r
-00000100\r
-10010001\r
-00000100\r
-10001111\r
+10010000\r
+10010010\r
+00110110\r
+00000111\r
+10000101\r
 00001000\r
 10001000\r
-10001111\r
+10000101\r
 00001000\r
 10001111\r
-10010001\r
-00000000\r
-10010001\r
-00000000\r
+11110111\r
 11100000\r
+11100110\r
 11100000\r
-00011011\r
-00001011\r
-10010000\r
+11000000\r
+10010010\r
+00110111\r
+00000111\r
+10000110\r
 00001000\r
 10000000\r
-10010000\r
+10000110\r
 00001000\r
 10000111\r
-01010000\r
-01000000\r
-11110000\r
-11100000\r
-11100000\r
-11000000\r
-11100000\r
-11100000\r
-10010000\r
+11110111\r
+10010100\r
+00000011\r
+10010100\r
+00000000\r
+00101111\r
+00100111\r
+01110000\r
+10000110\r
 00001000\r
 10001000\r
-10010000\r
+10000110\r
 00001000\r
 10001111\r
-00000001\r
-10010101\r
-10010001\r
-00001000\r
-10010001\r
-00001000\r
-10010001\r
-00000000\r
-10010001\r
+10111101\r
+10111001\r
+10110001\r
+01101001\r
+10111001\r
+00101011\r
+11110000\r
+10011010\r
+10000111\r
 00001000\r
 10000000\r
-10010001\r
-00001000\r
 10000111\r
-10010001\r
-00000000\r
-11100000\r
-11100000\r
-00010111\r
-00000111\r
-11110100\r
-11100000\r
-10010001\r
-00001000\r
-10001000\r
-10010001\r
 00001000\r
-10001111\r
-11100000\r
-00000001\r
+10000111\r
+10010101\r
+10011000\r
 10010101\r
 10010001\r
 00000000\r
 10010001\r
 00000000\r
 10010001\r
-10010010\r
-00001000\r
-10000000\r
-10010010\r
-00001000\r
 10000111\r
 00001000\r
-10010001\r
-00001000\r
-00010111\r
-00000111\r
-11110001\r
-10010001\r
-00000000\r
-10010010\r
-00001000\r
 10001000\r
-10010010\r
+10000111\r
 00001000\r
 10001111\r
-10010001\r
 00000000\r
 10010001\r
-00001000\r
-10010001\r
-00001000\r
-00010111\r
-00000111\r
+00000000\r
+01011111\r
+01001111\r
+01001111\r
+01001111\r
 10010011\r
+10001000\r
 00001000\r
 10000000\r
-10010011\r
+10001000\r
 00001000\r
 10000111\r
-11110100\r
-10010001\r
-00001000\r
-10010001\r
-00001000\r
-10010001\r
 00000000\r
-10010001\r
-10010011\r
-00001000\r
-10001000\r
 10010011\r
-00001000\r
-10001111\r
 00000000\r
-11100000\r
-11100000\r
-00011011\r
-00001011\r
-01010000\r
-01000000\r
-11110100\r
-10010100\r
-00001000\r
-10000000\r
-10010100\r
-00001000\r
-10000111\r
-11000000\r
-10010001\r
+10010011\r
 00000000\r
-10010001\r
+10010011\r
 00000000\r
-10010001\r
-00001000\r
-10010001\r
-10010100\r
+00101011\r
+10001000\r
 00001000\r
 10001000\r
-10010100\r
+10001000\r
 00001000\r
 10001111\r
-00001000\r
-11100000\r
-11100000\r
-00011011\r
-00001011\r
-01010000\r
-01000000\r
 11110000\r
+10011000\r
 10010101\r
+10011010\r
+10010101\r
+10010110\r
+11100000\r
+00110000\r
+10001001\r
 00001000\r
 10000000\r
-10010101\r
+10001001\r
 00001000\r
 10000111\r
+00000111\r
+11110000\r
 11100000\r
 11100000\r
-11000000\r
-11100000\r
-11100000\r
-00000001\r
 10010101\r
-00101011\r
+11111111\r
 10010101\r
+10010101\r
+10001001\r
 00001000\r
 10001000\r
-10010101\r
+10001001\r
 00001000\r
 10001111\r
-11110000\r
-11101000\r
-10111011\r
-11100000\r
-10111011\r
 10010101\r
-10111010\r
-10111010\r
-10010110\r
+01001111\r
+10010101\r
+10010001\r
+00000100\r
+10010001\r
+00000100\r
+10010001\r
+10001010\r
 00001000\r
 10000000\r
-10010110\r
+10001010\r
 00001000\r
 10000111\r
-10010101\r
-10111011\r
-10111011\r
-10111011\r
-10111011\r
-10010101\r
-10010100\r
-10011010\r
-10010110\r
+00000000\r
+10010001\r
+00000000\r
+00010111\r
+00000111\r
+11110100\r
+10010001\r
+00000000\r
+10001010\r
 00001000\r
 10001000\r
-10010110\r
+10001010\r
 00001000\r
 10001111\r
-11100000\r
-11100000\r
-10010111\r
-11110111\r
-11001111\r
-00101111\r
-01010011\r
-00110000\r
-10010111\r
+10010001\r
+00000000\r
+10010001\r
+00000100\r
+10010001\r
+00000100\r
+00011011\r
+00001011\r
+10001011\r
 00001000\r
 10000000\r
-10010111\r
+10001011\r
 00001000\r
-10000111\r
-11110100\r
-00101111\r
-00100111\r
-11111101\r
-10010101\r
-10010111\r
-10010101\r
-00101111\r
-10010111\r
+10000111\r
+11000000\r
+10010001\r
+00000100\r
+10010001\r
+00000100\r
+10010001\r
+00000000\r
+10010001\r
+10001011\r
 00001000\r
 10001000\r
-10010111\r
+10001011\r
 00001000\r
 10001111\r
-01010110\r
-00110000\r
-11110100\r
-00101111\r
-00100111\r
-11111101\r
+00000000\r
+00011011\r
+00001011\r
+00000001\r
 10010101\r
-01010101\r
-10011000\r
+10010001\r
+00000000\r
+10010001\r
+10001100\r
 00001000\r
 10000000\r
-10011000\r
+10001100\r
 00001000\r
 10000111\r
-01000000\r
-10010101\r
-00101111\r
-01010100\r
-00110000\r
-11110100\r
-00101111\r
-00100111\r
-10011000\r
+00000000\r
+10010001\r
+00000100\r
+10010001\r
+00000100\r
+11100000\r
+11100000\r
+00010111\r
+10001100\r
 00001000\r
 10001000\r
-10011000\r
+10001100\r
 00001000\r
 10001111\r
-11111101\r
-10010101\r
-10010111\r
-10010101\r
-11101111\r
-11101111\r
+00000111\r
+11110100\r
+11100000\r
+11100000\r
+00000001\r
 10010101\r
 10010001\r
-10011001\r
+00000100\r
+10001101\r
 00001000\r
 10000000\r
-10011001\r
+10001101\r
 00001000\r
 10000111\r
-00000100\r
 10010001\r
 00000100\r
-01011111\r
-01001111\r
-11100000\r
-00110000\r
+10010001\r
+00000000\r
+10010001\r
+00000000\r
+00010111\r
 00000111\r
-10011001\r
+10001101\r
 00001000\r
 10001000\r
-10011001\r
+10001101\r
 00001000\r
 10001111\r
-11110000\r
-11100000\r
-11100000\r
+11110001\r
 10010001\r
-00000000\r
+00000100\r
+10010001\r
+00000100\r
 10010001\r
 00000000\r
-11100000\r
-10011010\r
+10010001\r
+10001110\r
 00001000\r
 10000000\r
-10011010\r
+10001110\r
 00001000\r
 10000111\r
-11100000\r
+00000000\r
 00010111\r
 00000111\r
 11110100\r
+10010001\r
+00000000\r
+10010001\r
+00000000\r
+10001110\r
+00001000\r
+10001000\r
+10001110\r
+00001000\r
+10001111\r
+10010001\r
+00000100\r
+10010001\r
+00000100\r
 11100000\r
 11100000\r
-00000001\r
-10010101\r
-10011010\r
+00011011\r
+00001011\r
+10001111\r
+00001000\r
+10000000\r
+10001111\r
+00001000\r
+10000111\r
+01010000\r
+01000000\r
+11110100\r
+11000000\r
+10010001\r
+00000100\r
+10010001\r
+00000100\r
+10001111\r
 00001000\r
 10001000\r
-10011010\r
+10001111\r
 00001000\r
 10001111\r
 10010001\r
 00000000\r
 10010001\r
 00000000\r
-01011111\r
-01001111\r
 11100000\r
-00110000\r
-10011011\r
+11100000\r
+00011011\r
+00001011\r
+10010000\r
 00001000\r
 10000000\r
-10011011\r
+10010000\r
 00001000\r
 10000111\r
-00000111\r
+01010000\r
+01000000\r
 11110000\r
 11100000\r
 11100000\r
+11000000\r
+11100000\r
+11100000\r
+10010000\r
+00001000\r
+10001000\r
+10010000\r
+00001000\r
+10001111\r
+00000001\r
+10010101\r
 10010001\r
 00001000\r
 10010001\r
 00001000\r
-10011011\r
+10010001\r
+00000000\r
+10010001\r
 00001000\r
-10001000\r
-10011011\r
+10000000\r
+10010001\r
 00001000\r
-10001111\r
+10000111\r
+10010001\r
+00000000\r
 11100000\r
 11100000\r
 00010111\r
 00000111\r
 11110100\r
 11100000\r
+10010001\r
+00001000\r
+10001000\r
+10010001\r
+00001000\r
+10001111\r
 11100000\r
 00000001\r
-10011100\r
+10010101\r
+10010001\r
+00000000\r
+10010001\r
+00000000\r
+10010001\r
+10010010\r
 00001000\r
 10000000\r
-10011100\r
+10010010\r
 00001000\r
 10000111\r
-10010101\r
-10010010\r
-10010010\r
-10110110\r
+00001000\r
+10010001\r
+00001000\r
+00010111\r
+00000111\r
+11110001\r
+10010001\r
+00000000\r
 10010010\r
-00100100\r
-10010011\r
-10010011\r
-10011100\r
 00001000\r
 10001000\r
-10011100\r
+10010010\r
 00001000\r
 10001111\r
-10010011\r
-10010011\r
 10010001\r
 00000000\r
 10010001\r
-00000000\r
+00001000\r
 10010001\r
-00000000\r
-10011101\r
+00001000\r
+00010111\r
+00000111\r
+10010011\r
 00001000\r
 10000000\r
-10011101\r
+10010011\r
 00001000\r
 10000111\r
+11110100\r
+10010001\r
+00001000\r
+10010001\r
+00001000\r
 10010001\r
 00000000\r
-10010110\r
-00011101\r
-00011101\r
-10010011\r
-00000000\r
+10010001\r
 10010011\r
-10011101\r
 00001000\r
 10001000\r
-10011101\r
+10010011\r
 00001000\r
 10001111\r
 00000000\r
-10010011\r
+11100000\r
+11100000\r
+00011011\r
+00001011\r
+01010000\r
+01000000\r
+11110100\r
+10010100\r
+00001000\r
+10000000\r
+10010100\r
+00001000\r
+10000111\r
+11000000\r
+10010001\r
 00000000\r
-10010011\r
+10010001\r
 00000000\r
-11101000\r
-10111011\r
+10010001\r
+00001000\r
+10010001\r
+10010100\r
+00001000\r
+10001000\r
+10010100\r
+00001000\r
+10001111\r
+00001000\r
 11100000\r
-10011110\r
+11100000\r
+00011011\r
+00001011\r
+01010000\r
+01000000\r
+11110000\r
+10010101\r
 00001000\r
 10000000\r
-10011110\r
+10010101\r
 00001000\r
 10000111\r
-10111011\r
-10010100\r
-10010001\r
-10010001\r
-10010001\r
-10010001\r
-10010000\r
-10111110\r
-10011110\r
+11100000\r
+11100000\r
+11000000\r
+11100000\r
+11100000\r
+00000001\r
+10010101\r
+00101011\r
+10010101\r
 00001000\r
 10001000\r
-10011110\r
+10010101\r
 00001000\r
 10001111\r
-10010000\r
-10010000\r
+11110000\r
+11101000\r
+10111011\r
+11100000\r
+10111011\r
 10010101\r
 10111010\r
 10111010\r
-10110011\r
-11101000\r
-10111011\r
-10011111\r
+10010110\r
 00001000\r
 10000000\r
-10011111\r
+10010110\r
 00001000\r
 10000111\r
-11100000\r
+10010101\r
+10111011\r
+10111011\r
+10111011\r
 10111011\r
-00100111\r
 10010101\r
-10010001\r
-00000000\r
-10010001\r
-00000000\r
-10011111\r
+10010010\r
+10010010\r
+10010110\r
 00001000\r
 10001000\r
-10011111\r
+10010110\r
 00001000\r
 10001111\r
+10110110\r
+10010010\r
+00100100\r
+10010011\r
+10010011\r
+10010011\r
+10010011\r
 10010001\r
-00000100\r
-10010001\r
-00000100\r
-00010111\r
-00000111\r
-11110100\r
-11000000\r
-10100000\r
+10010111\r
 00001000\r
 10000000\r
-10100000\r
+10010111\r
 00001000\r
 10000111\r
-10010001\r
 00000000\r
 10010001\r
 00000000\r
-01011001\r
-01001111\r
-10000001\r
 10010001\r
-10100000\r
-00001000\r
-10001000\r
-10100000\r
-00001000\r
-10001111\r
 00000000\r
 10010001\r
 00000000\r
 10010110\r
-11100000\r
-00110000\r
-00000111\r
-11110000\r
-10100001\r
+10010111\r
 00001000\r
-10000000\r
-10100001\r
+10001000\r
+10010111\r
 00001000\r
-10000111\r
-11100000\r
-11100000\r
+10001111\r
+00011101\r
+00011101\r
 10010011\r
 00000000\r
 10010011\r
 00000000\r
-10010001\r
-00000100\r
-10100001\r
-00001000\r
-10001000\r
-10100001\r
-00001000\r
-10001111\r
-10010001\r
-00000100\r
-10010001\r
-00000000\r
-10010001\r
+10010011\r
 00000000\r
-00010111\r
-00000111\r
-10100010\r
+10011000\r
 00001000\r
 10000000\r
-10100010\r
+10011000\r
 00001000\r
 10000111\r
-11110000\r
+10010011\r
+00000000\r
+10010100\r
 10010001\r
-00000100\r
 10010001\r
-00000100\r
 10010001\r
-00000000\r
 10010001\r
-10100010\r
+10010000\r
+10011000\r
 00001000\r
 10001000\r
-10100010\r
+10011000\r
 00001000\r
 10001111\r
-00000000\r
-00010111\r
-00000111\r
-11110001\r
-10010001\r
-00000100\r
-10010001\r
-00000100\r
-10100011\r
+10111110\r
+10010000\r
+10010000\r
+10010101\r
+10010100\r
+10011010\r
+11100000\r
+11100000\r
+10011001\r
 00001000\r
 10000000\r
-10100011\r
+10011001\r
 00001000\r
 10000111\r
-10010001\r
-00000000\r
-10010001\r
-00000000\r
-00011011\r
-00001011\r
-01010000\r
-01000000\r
-10100011\r
+10010111\r
+11110111\r
+11001111\r
+00101111\r
+01010011\r
+00110000\r
+11110100\r
+00101111\r
+10011001\r
 00001000\r
 10001000\r
-10100011\r
+10011001\r
 00001000\r
 10001111\r
-11110100\r
-10010001\r
-00000000\r
-10010001\r
-00000000\r
-10010001\r
-00000000\r
-10010001\r
-10100100\r
+00100111\r
+11111101\r
+10010101\r
+10010111\r
+10010101\r
+00101111\r
+01010110\r
+00110000\r
+10011010\r
 00001000\r
 10000000\r
-10100100\r
+10011010\r
 00001000\r
 10000111\r
-00000000\r
-10010110\r
-00011101\r
-00011101\r
-10010011\r
-00000000\r
-10010011\r
-00000000\r
-10100100\r
+11110100\r
+00101111\r
+00100111\r
+11111101\r
+10010101\r
+01010101\r
+01000000\r
+10010101\r
+10011010\r
 00001000\r
 10001000\r
-10100100\r
+10011010\r
 00001000\r
 10001111\r
-10010011\r
-00000000\r
-10010011\r
-00000000\r
-10011000\r
+00101111\r
+01010100\r
+00110000\r
+11110100\r
+00101111\r
+00100111\r
+11111101\r
+10010101\r
 10011011\r
-11000000\r
-10011000\r
-10100101\r
 00001000\r
 10000000\r
-10100101\r
+10011011\r
 00001000\r
 10000111\r
-11000000\r
-10011010\r
-11000000\r
-10010001\r
-00000000\r
-10010001\r
-00000000\r
-10010001\r
-10100101\r
+10010111\r
+10010101\r
+11101111\r
+11101111\r
+10010101\r
+10110011\r
+00100111\r
+10010101\r
+10011011\r
 00001000\r
 10001000\r
-10100101\r
+10011011\r
 00001000\r
 10001111\r
+10010001\r
 00000100\r
 10010001\r
 00000100\r
-00011011\r
-00001011\r
-01010000\r
-01000000\r
-11110110\r
-10100110\r
+01011111\r
+01001111\r
+11100000\r
+00110000\r
+10011100\r
 00001000\r
 10000000\r
-10100110\r
+10011100\r
 00001000\r
 10000111\r
-11001111\r
-10010001\r
-00000000\r
+00000111\r
+11110000\r
+11100000\r
+11100000\r
 10010001\r
 00000000\r
 10010001\r
 00000000\r
-10010001\r
-10100110\r
+10011100\r
 00001000\r
 10001000\r
-10100110\r
+10011100\r
 00001000\r
 10001111\r
-00000000\r
-01011111\r
-01001111\r
-01001111\r
-01001111\r
-10011000\r
-10010001\r
-00000000\r
-10100111\r
+11100000\r
+11100000\r
+00010111\r
+00000111\r
+11110100\r
+11100000\r
+11100000\r
+00000001\r
+10011101\r
 00001000\r
 10000000\r
-10100111\r
+10011101\r
 00001000\r
 10000111\r
+10010101\r
 10010001\r
 00000000\r
 10010001\r
-00000100\r
-10010001\r
-00000100\r
-00010111\r
-00000111\r
-10100111\r
+00000000\r
+01011111\r
+01001111\r
+11100000\r
+10011101\r
 00001000\r
 10001000\r
-10100111\r
+10011101\r
 00001000\r
 10001111\r
-11110011\r
-10010011\r
-00000000\r
-10010011\r
-00000000\r
-10010011\r
-00000000\r
-10010011\r
-10101000\r
+00110000\r
+00000111\r
+11110000\r
+11100000\r
+11100000\r
+10010001\r
+00001000\r
+10010001\r
+10011110\r
 00001000\r
 10000000\r
-10101000\r
+10011110\r
 00001000\r
 10000111\r
-00000000\r
-11001111\r
-00101111\r
-00100111\r
-11111101\r
-10010101\r
-10010101\r
-10010010\r
-10101000\r
+00001000\r
+11100000\r
+11100000\r
+00010111\r
+00000111\r
+11110100\r
+11100000\r
+11100000\r
+10011110\r
 00001000\r
 10001000\r
-10101000\r
+10011110\r
 00001000\r
 10001111\r
-10010010\r
-10110110\r
-10010010\r
-00100100\r
-10010011\r
-10010011\r
-10010011\r
-10010011\r
-10101001\r
+00000001\r
+10010101\r
+10010001\r
+00000000\r
+10010001\r
+00000000\r
+10010001\r
+00000100\r
+10011111\r
 00001000\r
 10000000\r
-10101001\r
+10011111\r
 00001000\r
 10000111\r
-10010011\r
-10010011\r
-10010001\r
-00001000\r
 10010001\r
-00001000\r
+00000100\r
+00010111\r
+00000111\r
+11110100\r
+11000000\r
 10010001\r
 00000000\r
-10101001\r
+10011111\r
 00001000\r
 10001000\r
-10101001\r
+10011111\r
 00001000\r
 10001111\r
 10010001\r
 00000000\r
-00010111\r
-00000111\r
-11110000\r
-10010001\r
-00001000\r
-10010001\r
-10101010\r
-00001000\r
-10000000\r
-10101010\r
-00001000\r
-10000111\r
-00001000\r
 01011001\r
 01001111\r
 10000001\r
 10010001\r
-00001000\r
+00000000\r
 10010001\r
+10100000\r
 00001000\r
-10101010\r
-00001000\r
-10001000\r
-10101010\r
+10000000\r
+10100000\r
 00001000\r
-10001111\r
+10000111\r
+00000000\r
 10010110\r
 11100000\r
 00110000\r
 00000111\r
-11110100\r
-10010011\r
-00001000\r
-10010011\r
-10101011\r
-00001000\r
-10000000\r
-10101011\r
-00001000\r
-10000111\r
-00001000\r
-10111001\r
-10010100\r
-11000000\r
+11110000\r
 11100000\r
 11100000\r
-11001111\r
-10011000\r
-10101011\r
+10100000\r
 00001000\r
 10001000\r
-10101011\r
+10100000\r
 00001000\r
 10001111\r
+10010011\r
+00000000\r
+10010011\r
+00000000\r
 10010001\r
+00000100\r
 10010001\r
-10010001\r
-10010001\r
-10010001\r
-10010001\r
-10010000\r
-10111110\r
-10101100\r
+00000100\r
+10100001\r
 00001000\r
 10000000\r
-10101100\r
+10100001\r
 00001000\r
 10000111\r
-10010000\r
-10010000\r
-10010101\r
-00101111\r
 10010001\r
 00000000\r
 10010001\r
 00000000\r
-10101100\r
+00010111\r
+00000111\r
+11110000\r
+10010001\r
+10100001\r
 00001000\r
 10001000\r
-10101100\r
+10100001\r
 00001000\r
 10001111\r
-01011111\r
-01001111\r
-11100000\r
-00110000\r
-00000111\r
-11110000\r
-11100000\r
-11100000\r
-10101101\r
+00000100\r
+10010001\r
+00000100\r
+10010001\r
+00000000\r
+10010001\r
+00000000\r
+00010111\r
+10100010\r
 00001000\r
 10000000\r
-10101101\r
+10100010\r
 00001000\r
 10000111\r
+00000111\r
+11110001\r
 10010001\r
-00001000\r
+00000100\r
 10010001\r
-00001000\r
-00010111\r
-00000111\r
-11110011\r
+00000100\r
 10010001\r
-10101101\r
+00000000\r
+10100010\r
 00001000\r
 10001000\r
-10101101\r
+10100010\r
 00001000\r
 10001111\r
+10010001\r
+00000000\r
+00011011\r
+00001011\r
+01010000\r
+01000000\r
+11110100\r
+10010001\r
+10100011\r
+00001000\r
+10000000\r
+10100011\r
+00001000\r
+10000111\r
 00000000\r
 10010001\r
 00000000\r
-01011001\r
-01001111\r
-10000011\r
 10010001\r
 00000000\r
-10101110\r
-00001000\r
-10000000\r
-10101110\r
-00001000\r
-10000111\r
 10010001\r
 00000000\r
 10010110\r
-11100000\r
-00110000\r
-00000111\r
-11110000\r
-11100000\r
-10101110\r
+10100011\r
 00001000\r
 10001000\r
-10101110\r
+10100011\r
 00001000\r
 10001111\r
-11100000\r
+00011101\r
+00011101\r
 10010011\r
 00000000\r
 10010011\r
 00000000\r
-10011011\r
-11000000\r
-10011000\r
-10101111\r
-00001000\r
-10000000\r
-10101111\r
-00001000\r
-10000111\r
-11000000\r
-10011010\r
-10011010\r
-10010101\r
-10010010\r
-10010010\r
-10110110\r
-10010010\r
-10101111\r
-00001000\r
-10001000\r
-10101111\r
-00001000\r
-10001111\r
-00100100\r
-10010011\r
-10010011\r
-10010011\r
 10010011\r
-10010011\r
-10010011\r
-10010011\r
-10110000\r
+00000000\r
+10100100\r
 00001000\r
 10000000\r
-10110000\r
+10100100\r
 00001000\r
 10000111\r
 10010011\r
+00000000\r
+10011000\r
 10011011\r
 11000000\r
-11101100\r
-11100000\r
-10010011\r
-00000000\r
-10010011\r
-10110000\r
+10011000\r
+11000000\r
+10011010\r
+10100100\r
 00001000\r
 10001000\r
-10110000\r
+10100100\r
 00001000\r
 10001111\r
-00000000\r
-10011011\r
 11000000\r
-11101100\r
-11100000\r
-10010011\r
+10010001\r
 00000000\r
-10010011\r
-10110001\r
+10010001\r
+00000000\r
+10010001\r
+00000100\r
+10010001\r
+10100101\r
 00001000\r
 10000000\r
-10110001\r
+10100101\r
 00001000\r
 10000111\r
-00000000\r
-10010001\r
 00000100\r
+00011011\r
+00001011\r
+01010000\r
+01000000\r
+11110110\r
+11001111\r
 10010001\r
-00000100\r
-01011111\r
-01001111\r
-11100000\r
-10110001\r
+10100101\r
 00001000\r
 10001000\r
-10110001\r
+10100101\r
 00001000\r
 10001111\r
-00110000\r
-00000111\r
-11110000\r
-11100000\r
-11100000\r
+00000000\r
 10010001\r
 00000000\r
 10010001\r
-10110010\r
+00000000\r
+10010001\r
+00000000\r
+01011111\r
+10100110\r
 00001000\r
 10000000\r
-10110010\r
+10100110\r
 00001000\r
 10000111\r
-00000000\r
-00010111\r
-00000111\r
-11110100\r
-11000000\r
+01001111\r
+01001111\r
+01001111\r
+10011000\r
 10010001\r
-00000100\r
+00000000\r
 10010001\r
-10110010\r
+00000000\r
+10100110\r
 00001000\r
 10001000\r
-10110010\r
+10100110\r
 00001000\r
 10001111\r
-00000100\r
-10110001\r
-01011001\r
-01001111\r
-10000011\r
 10010001\r
 00000100\r
 10010001\r
-10110011\r
+00000100\r
+00010111\r
+00000111\r
+11110011\r
+10010011\r
+10100111\r
 00001000\r
 10000000\r
-10110011\r
+10100111\r
 00001000\r
 10000111\r
-00000100\r
-10010110\r
-11100000\r
-00110000\r
-00000111\r
-11110000\r
-11100000\r
-11100000\r
-10110011\r
+00000000\r
+10010011\r
+00000000\r
+10010011\r
+00000000\r
+10010011\r
+00000000\r
+11001111\r
+10100111\r
 00001000\r
 10001000\r
-10110011\r
+10100111\r
 00001000\r
 10001111\r
-10010011\r
-00000100\r
-10010011\r
-00000100\r
-10010001\r
-00000100\r
-10010001\r
-00000100\r
-10110100\r
+00101111\r
+00100111\r
+11111101\r
+10010101\r
+10010101\r
+10010010\r
+10010010\r
+10110110\r
+10101000\r
 00001000\r
 10000000\r
-10110100\r
+10101000\r
 00001000\r
 10000111\r
-10010001\r
-00000000\r
-10010001\r
-00000000\r
-00010111\r
-00000111\r
-11110100\r
-11000000\r
-10110100\r
+10010010\r
+00100100\r
+10010011\r
+10010011\r
+10010011\r
+10010011\r
+10010011\r
+10010011\r
+10101000\r
 00001000\r
 10001000\r
-10110100\r
+10101000\r
 00001000\r
 10001111\r
 10010001\r
-00000100\r
+00001000\r
 10010001\r
-00000100\r
+00001000\r
 10010001\r
 00000000\r
 10010001\r
 00000000\r
-10110101\r
+10101001\r
 00001000\r
 10000000\r
-10110101\r
+10101001\r
 00001000\r
 10000111\r
 00010111\r
 00000111\r
-11110101\r
-10010001\r
-00000000\r
+11110000\r
 10010001\r
-00000000\r
+00001000\r
 10010001\r
-10110101\r
+00001000\r
+01011001\r
+10101001\r
 00001000\r
 10001000\r
-10110101\r
+10101001\r
 00001000\r
 10001111\r
-00000100\r
+01001111\r
+10000001\r
 10010001\r
-00000100\r
-00011011\r
-00001011\r
-01010000\r
-01000000\r
-11110101\r
-10110110\r
+00001000\r
+10010001\r
+00001000\r
+10010110\r
+11100000\r
+10101010\r
 00001000\r
 10000000\r
-10110110\r
+10101010\r
 00001000\r
 10000111\r
-10010001\r
-00000000\r
-10010001\r
-00000000\r
-10010001\r
-00000000\r
-10010001\r
-00000000\r
-10110110\r
+00110000\r
+00000111\r
+11110100\r
+10010011\r
+00001000\r
+10010011\r
+00001000\r
+10111001\r
+10101010\r
 00001000\r
 10001000\r
-10110110\r
+10101010\r
 00001000\r
 10001111\r
-10010110\r
-00011101\r
-00011101\r
-10010011\r
-00000000\r
-10010011\r
-00000000\r
-10010011\r
-10110111\r
+10010100\r
+11000000\r
+11100000\r
+11100000\r
+11001111\r
+10011000\r
+10010001\r
+10010001\r
+10101011\r
 00001000\r
 10000000\r
-10110111\r
+10101011\r
 00001000\r
 10000111\r
-00000000\r
-10010011\r
-00000000\r
-10011010\r
-11000000\r
 10010001\r
-00000100\r
 10010001\r
-10110111\r
+10010001\r
+10010001\r
+10010000\r
+10111110\r
+10010000\r
+10010000\r
+10101011\r
 00001000\r
 10001000\r
-10110111\r
+10101011\r
 00001000\r
 10001111\r
-00000100\r
+10010101\r
+00101111\r
 10010001\r
 00000000\r
 10010001\r
 00000000\r
-00011011\r
-00001011\r
-01010000\r
-10111000\r
+01011111\r
+01001111\r
+10101100\r
 00001000\r
 10000000\r
-10111000\r
+10101100\r
 00001000\r
 10000111\r
-01000000\r
+11100000\r
+00110000\r
+00000111\r
 11110000\r
-11001111\r
-11101100\r
 11100000\r
-10010011\r
-00000000\r
-10010011\r
-10111000\r
+11100000\r
+10010001\r
+00001000\r
+10101100\r
 00001000\r
 10001000\r
-10111000\r
+10101100\r
 00001000\r
 10001111\r
-00000000\r
-11001111\r
-10110111\r
-01101000\r
-10111111\r
-10010100\r
 10010001\r
+00001000\r
+00010111\r
+00000111\r
+11110011\r
+10010001\r
+00000000\r
 10010001\r
-10111001\r
+10101101\r
 00001000\r
 10000000\r
-10111001\r
+10101101\r
 00001000\r
 10000111\r
+00000000\r
+01011001\r
+01001111\r
+10000011\r
 10010001\r
+00000000\r
 10010001\r
-10010001\r
-10010001\r
-10010001\r
-10010001\r
-10010000\r
-10111110\r
-10111001\r
+00000000\r
+10101101\r
 00001000\r
 10001000\r
-10111001\r
+10101101\r
 00001000\r
 10001111\r
-10010000\r
-10010000\r
-10010101\r
-11101111\r
+10010110\r
 11100000\r
-10111111\r
-10111111\r
-11101010\r
-10111010\r
+00110000\r
+00000111\r
+11110000\r
+11100000\r
+11100000\r
+10010011\r
+10101110\r
 00001000\r
 10000000\r
-10111010\r
+10101110\r
 00001000\r
 10000111\r
-10111001\r
-10111000\r
-10010010\r
 00000000\r
-10010010\r
+10010011\r
 00000000\r
-10010010\r
-00000100\r
-10111010\r
+10011011\r
+11000000\r
+10011000\r
+11000000\r
+10011010\r
+10101110\r
 00001000\r
 10001000\r
-10111010\r
+10101110\r
 00001000\r
 10001111\r
+10011010\r
+10010101\r
 10010010\r
-00000100\r
-10010010\r
-00001000\r
 10010010\r
-00001000\r
+10110110\r
 10010010\r
-00000000\r
-10111011\r
+00100100\r
+10010011\r
+10101111\r
 00001000\r
 10000000\r
-10111011\r
+10101111\r
 00001000\r
 10000111\r
-10010010\r
-00000000\r
-10111100\r
-10111000\r
-10110001\r
-01101001\r
-10111001\r
-10011000\r
-10111011\r
+10010011\r
+10010011\r
+10010011\r
+10010011\r
+10010011\r
+10010011\r
+10010011\r
+10011011\r
+10101111\r
 00001000\r
 10001000\r
-10111011\r
+10101111\r
 00001000\r
 10001111\r
-11101111\r
-10111111\r
-10111110\r
-10010100\r
-10010001\r
+11000000\r
+11101100\r
+11100000\r
+10010011\r
 00000000\r
-10010001\r
+10010011\r
 00000000\r
-10111100\r
+10011011\r
+10110000\r
 00001000\r
 10000000\r
-10111100\r
+10110000\r
 00001000\r
 10000111\r
-10010001\r
+11000000\r
+11101100\r
+11100000\r
+10010011\r
 00000000\r
-10010001\r
+10010011\r
 00000000\r
-10011010\r
-10010110\r
-00011101\r
-00011101\r
-10111100\r
+10010001\r
+10110000\r
 00001000\r
 10001000\r
-10111100\r
+10110000\r
 00001000\r
 10001111\r
-10010011\r
-00000000\r
-10010011\r
-00000000\r
-10010011\r
-00000000\r
-10010011\r
-00000000\r
-10111101\r
+00000100\r
+10010001\r
+00000100\r
+01011111\r
+01001111\r
+11100000\r
+00110000\r
+00000111\r
+10110001\r
 00001000\r
 10000000\r
-10111101\r
+10110001\r
 00001000\r
 10000111\r
-10011000\r
+11110000\r
+11100000\r
+11100000\r
 10010001\r
 00000000\r
 10010001\r
 00000000\r
-10010001\r
-00000100\r
-10010001\r
-10111101\r
+00010111\r
+10110001\r
 00001000\r
 10001000\r
-10111101\r
+10110001\r
 00001000\r
 10001111\r
-00000100\r
-00010111\r
 00000111\r
 11110100\r
-11000001\r
+11000000\r
 10010001\r
-00000000\r
+00000100\r
 10010001\r
-10111110\r
+00000100\r
+10110001\r
+10110010\r
 00001000\r
 10000000\r
-10111110\r
+10110010\r
 00001000\r
 10000111\r
-00000000\r
 01011001\r
 01001111\r
-10000001\r
-10010001\r
-00000000\r
+10000011\r
 10010001\r
-00000000\r
-10111110\r
+00000100\r
+10010001\r
+00000100\r
+10010110\r
+10110010\r
 00001000\r
 10001000\r
-10111110\r
+10110010\r
 00001000\r
 10001111\r
-10010110\r
 11100000\r
 00110000\r
 00000111\r
 11100000\r
 11100000\r
 10010011\r
-10111111\r
+00000100\r
+10110011\r
 00001000\r
 10000000\r
-10111111\r
+10110011\r
 00001000\r
 10000111\r
-00000000\r
 10010011\r
-00000000\r
+00000100\r
 10010001\r
 00000100\r
 10010001\r
 00000100\r
 10010001\r
-10111111\r
+00000000\r
+10110011\r
 00001000\r
 10001000\r
-10111111\r
+10110011\r
 00001000\r
 10001111\r
-00000000\r
 10010001\r
 00000000\r
 00010111\r
 00000111\r
 11110100\r
-11000001\r
-10010001\r
 11000000\r
+10010001\r
+00000100\r
+10110100\r
 00001000\r
 10000000\r
-11000000\r
+10110100\r
 00001000\r
 10000111\r
-00000100\r
 10010001\r
 00000100\r
 10010001\r
 10010001\r
 00000000\r
 00010111\r
-11000000\r
+00000111\r
+10110100\r
 00001000\r
 10001000\r
-11000000\r
+10110100\r
 00001000\r
 10001111\r
-00000111\r
-11110000\r
-11000001\r
+11110101\r
 10010001\r
 00000000\r
 10010001\r
 00000000\r
 10010001\r
-11000001\r
+00000100\r
+10010001\r
+10110101\r
 00001000\r
 10000000\r
-11000001\r
+10110101\r
 00001000\r
 10000111\r
 00000100\r
-10010001\r
-00000100\r
 00011011\r
 00001011\r
 01010000\r
 01000000\r
-11110000\r
-11000001\r
-00001000\r
-10001000\r
-11000001\r
-00001000\r
-10001111\r
-11000001\r
-10011011\r
-11000001\r
-10011000\r
-00100111\r
-11111101\r
-10010101\r
-00110000\r
-11000010\r
-00001000\r
-10000000\r
-11000010\r
-00001000\r
-10000111\r
-11110100\r
-11000001\r
-00110000\r
-11110100\r
-11000011\r
-00110000\r
-11110100\r
-11000010\r
-11000010\r
-00001000\r
-10001000\r
-11000010\r
-00001000\r
-10001111\r
-00110000\r
-11110000\r
-11001111\r
-10010001\r
-00000000\r
-10010001\r
-00000000\r
-10010001\r
-11000011\r
-00001000\r
-10000000\r
-11000011\r
-00001000\r
-10000111\r
-00000000\r
-10010001\r
-00000000\r
-10010010\r
-00000000\r
-10010010\r
-00000000\r
-10010010\r
-11000011\r
-00001000\r
-10001000\r
-11000011\r
-00001000\r
-10001111\r
-00000000\r
-10010010\r
-00000000\r
-00101111\r
-00100111\r
-11111101\r
-10010101\r
-00101111\r
-11000100\r
-00001000\r
-10000000\r
-11000100\r
-00001000\r
-10000111\r
-00101111\r
-00101111\r
-10010001\r
-00000000\r
+11110101\r
 10010001\r
 00000000\r
-01011111\r
-01001111\r
-11000100\r
+10110101\r
 00001000\r
 10001000\r
-11000100\r
+10110101\r
 00001000\r
 10001111\r
-11100000\r
-00110000\r
-00000111\r
-11110000\r
-11100000\r
-11100000\r
-10010001\r
-00001000\r
-11000101\r
-00001000\r
-10000000\r
-11000101\r
-00001000\r
-10000111\r
-10010001\r
-00001000\r
-00010111\r
-00000111\r
-11110011\r
-10010001\r
-00000000\r
 10010001\r
-11000101\r
-00001000\r
-10001000\r
-11000101\r
-00001000\r
-10001111\r
 00000000\r
-01011001\r
-01001111\r
-10000011\r
 10010001\r
 00000000\r
 10010001\r
 00000000\r
-11000110\r
+10010110\r
+00011101\r
+10110110\r
 00001000\r
 10000000\r
-11000110\r
+10110110\r
 00001000\r
 10000111\r
-10010110\r
-11100000\r
-00110000\r
-00000111\r
-11110000\r
-11100000\r
-11100000\r
+00011101\r
 10010011\r
-11000110\r
-00001000\r
-10001000\r
-11000110\r
-00001000\r
-10001111\r
 00000000\r
 10010011\r
 00000000\r
-10011011\r
-11000011\r
-10011000\r
-10011010\r
-00000001\r
-11000111\r
-00001000\r
-10000000\r
-11000111\r
-00001000\r
-10000111\r
-00100111\r
-11111101\r
-10010101\r
-00101111\r
-00101111\r
-10010001\r
+10010011\r
 00000000\r
-10010001\r
-11000111\r
+10010011\r
+10110110\r
 00001000\r
 10001000\r
-11000111\r
+10110110\r
 00001000\r
 10001111\r
 00000000\r
-01011111\r
-01001111\r
-11100000\r
-00110000\r
-00000111\r
-11110000\r
-11100000\r
-11001000\r
-00001000\r
-10000000\r
-11001000\r
-00001000\r
-10000111\r
-11100000\r
-10010001\r
-00001000\r
-10010001\r
-00001000\r
-00010111\r
-00000111\r
-11110011\r
-11001000\r
-00001000\r
-10001000\r
-11001000\r
-00001000\r
-10001111\r
+10011010\r
+11000000\r
 10010001\r
-00000000\r
+00000100\r
 10010001\r
-00000000\r
-01011001\r
-01001111\r
-10000011\r
+00000100\r
 10010001\r
-11001001\r
+10110111\r
 00001000\r
 10000000\r
-11001001\r
+10110111\r
 00001000\r
 10000111\r
 00000000\r
 10010001\r
 00000000\r
-10010110\r
-11100000\r
-00110000\r
-00000111\r
+00011011\r
+00001011\r
+01010000\r
+01000000\r
 11110000\r
-11001001\r
+10110111\r
 00001000\r
 10001000\r
-11001001\r
+10110111\r
 00001000\r
 10001111\r
-11100000\r
+11001111\r
+11101100\r
 11100000\r
 10010011\r
 00000000\r
 10010011\r
 00000000\r
-10011011\r
-11000011\r
-11001010\r
+11001111\r
+10111000\r
 00001000\r
 10000000\r
-11001010\r
+10111000\r
 00001000\r
 10000111\r
-10011000\r
-10011010\r
-00100111\r
-11111101\r
-10010101\r
-00101111\r
-00101111\r
-00101111\r
-11001010\r
+10110111\r
+01101000\r
+10111111\r
+10010100\r
+10010001\r
+10010001\r
+10010001\r
+10010001\r
+10111000\r
 00001000\r
 10001000\r
-11001010\r
+10111000\r
 00001000\r
 10001111\r
-00101111\r
 10010001\r
-00000000\r
 10010001\r
-00000000\r
-01011111\r
-01001111\r
-11100000\r
-11001011\r
+10010001\r
+10010001\r
+10010000\r
+10111110\r
+10010000\r
+10010000\r
+10111001\r
 00001000\r
 10000000\r
-11001011\r
+10111001\r
 00001000\r
 10000111\r
-00110000\r
-00000111\r
-11110000\r
-11100000\r
+10010101\r
+11101111\r
 11100000\r
-10010001\r
-00001000\r
-10010001\r
-11001011\r
+10111111\r
+10111111\r
+11101010\r
+10111001\r
+10111000\r
+10111001\r
 00001000\r
 10001000\r
-11001011\r
+10111001\r
 00001000\r
 10001111\r
-00001000\r
-00010111\r
-00000111\r
-11110011\r
-10010001\r
+10010010\r
 00000000\r
-10010001\r
+10010010\r
 00000000\r
-11001100\r
+10010010\r
+00000100\r
+10010010\r
+00000100\r
+10111010\r
 00001000\r
 10000000\r
-11001100\r
+10111010\r
 00001000\r
 10000111\r
-01011001\r
-01001111\r
-10000011\r
-10010001\r
+10010010\r
+00001000\r
+10010010\r
+00001000\r
+10010010\r
 00000000\r
-10010001\r
+10010010\r
 00000000\r
-10010110\r
-11001100\r
+10111010\r
 00001000\r
 10001000\r
-11001100\r
+10111010\r
 00001000\r
 10001111\r
-11100000\r
-00110000\r
-00000111\r
-11110000\r
-11100000\r
-11100000\r
-10010011\r
-00000000\r
-11001101\r
+10111100\r
+10111000\r
+10110001\r
+01101001\r
+10111001\r
+10011000\r
+11101111\r
+10111111\r
+10111011\r
 00001000\r
 10000000\r
-11001101\r
+10111011\r
 00001000\r
 10000111\r
-10010011\r
-00000000\r
-10011011\r
-11000011\r
-10011000\r
-10011010\r
+10111110\r
+10010100\r
 10010001\r
 00000000\r
-11001101\r
-00001000\r
-10001000\r
-11001101\r
-00001000\r
-10001111\r
 10010001\r
 00000000\r
-01011111\r
-01001111\r
-11100000\r
-00110000\r
-00000111\r
-11110000\r
-11001110\r
-00001000\r
-10000000\r
-11001110\r
-00001000\r
-10000111\r
-11100000\r
-11100000\r
 10010001\r
-00001000\r
-10010001\r
-00001000\r
-00010111\r
-00000111\r
-11001110\r
+00000000\r
+10111011\r
 00001000\r
 10001000\r
-11001110\r
+10111011\r
 00001000\r
 10001111\r
-11110011\r
 10010001\r
 00000000\r
-10010001\r
+10011010\r
+10010110\r
+00011101\r
+00011101\r
+10010011\r
 00000000\r
-01011001\r
-01001111\r
-10000011\r
-11001111\r
+10111100\r
 00001000\r
 10000000\r
-11001111\r
+10111100\r
 00001000\r
 10000111\r
-10010001\r
+10010011\r
 00000000\r
-10010001\r
+10010011\r
 00000000\r
-10010110\r
+10010011\r
+00000000\r
+10011000\r
 11100000\r
-00110000\r
-00000111\r
-11001111\r
+10111100\r
 00001000\r
 10001000\r
-11001111\r
+10111100\r
 00001000\r
 10001111\r
-11110000\r
-11100000\r
 11100000\r
-10010011\r
+10010001\r
 00000000\r
-10010011\r
+10010001\r
 00000000\r
-10011001\r
-11010000\r
+10010001\r
+00000100\r
+10010001\r
+10111101\r
 00001000\r
 10000000\r
-11010000\r
+10111101\r
 00001000\r
 10000111\r
+00000100\r
+00010111\r
+00000111\r
+11110100\r
 11000001\r
-10011010\r
-10011010\r
-10010001\r
-00000000\r
 10010001\r
 00000000\r
 10010001\r
-11010000\r
+10111101\r
 00001000\r
 10001000\r
-11010000\r
+10111101\r
 00001000\r
 10001111\r
-00000100\r
-10010001\r
-00000100\r
-00010111\r
-00000111\r
-11110000\r
-11001110\r
-10011000\r
-11010001\r
-00001000\r
-10000000\r
-11010001\r
-00001000\r
-10000111\r
-10010001\r
 00000000\r
+01011001\r
+01001111\r
+10000001\r
 10010001\r
 00000000\r
 10010001\r
-00000100\r
-10010001\r
-00000100\r
-11010001\r
+00000000\r
+10111110\r
 00001000\r
-10001000\r
-11010001\r
+10000000\r
+10111110\r
 00001000\r
-10001111\r
-00010111\r
+10000111\r
+10010110\r
+11100000\r
+00110000\r
 00000111\r
 11110000\r
-11001110\r
-10011000\r
-10010001\r
+11100000\r
+11100000\r
+10010011\r
+10111110\r
+00001000\r
+10001000\r
+10111110\r
+00001000\r
+10001111\r
+00000000\r
+10010011\r
 00000000\r
 10010001\r
-11010010\r
+00000100\r
+10010001\r
+00000100\r
+10010001\r
+10111111\r
 00001000\r
 10000000\r
-11010010\r
+10111111\r
 00001000\r
 10000111\r
 00000000\r
 10010001\r
-00000100\r
-10010001\r
-00000100\r
+00000000\r
 00010111\r
 00000111\r
-11110011\r
-11010010\r
+11110100\r
+11000001\r
+10010001\r
+10111111\r
 00001000\r
 10001000\r
-11010010\r
+10111111\r
 00001000\r
 10001111\r
-11001110\r
-10010001\r
 00000100\r
 10010001\r
 00000100\r
 10010001\r
 00000000\r
 10010001\r
-11010011\r
+00000000\r
+00010111\r
+11000000\r
 00001000\r
 10000000\r
-11010011\r
+11000000\r
 00001000\r
 10000111\r
+00000111\r
+11110000\r
+11000001\r
+10010001\r
 00000000\r
+10010001\r
+00000000\r
+10010001\r
+11000000\r
+00001000\r
+10001000\r
+11000000\r
+00001000\r
+10001111\r
+00000100\r
+10010001\r
+00000100\r
 00011011\r
 00001011\r
 01010000\r
 01000000\r
 11110000\r
-11001110\r
-10011000\r
-11010011\r
+11000001\r
 00001000\r
-10001000\r
-11010011\r
+10000000\r
+11000001\r
 00001000\r
-10001111\r
-10011001\r
-11001110\r
-10011010\r
+10000111\r
+11000001\r
+10011011\r
+11000001\r
+10011000\r
 00100111\r
 11111101\r
 10010101\r
 00110000\r
+11000001\r
+00001000\r
+10001000\r
+11000001\r
+00001000\r
+10001111\r
+11110100\r
+11000001\r
+00110000\r
+11110100\r
+11000011\r
+00100011\r
 11110000\r
-11010100\r
+11001111\r
+11000010\r
 00001000\r
 10000000\r
-11010100\r
+11000010\r
 00001000\r
 10000111\r
-11001110\r
 10010001\r
 00000000\r
 10010001\r
 00000000\r
-10010001\r
-00000100\r
-10010001\r
-11010100\r
+01011111\r
+01001111\r
+11100000\r
+00110000\r
+11000010\r
 00001000\r
 10001000\r
-11010100\r
+11000010\r
 00001000\r
 10001111\r
-00000100\r
-00010111\r
 00000111\r
-11110100\r
-11000001\r
+11110000\r
+11100000\r
+11100000\r
 10010001\r
-00000000\r
+00001000\r
 10010001\r
-11010101\r
+00001000\r
+11000011\r
 00001000\r
 10000000\r
-11010101\r
+11000011\r
 00001000\r
 10000111\r
-00000000\r
-01011001\r
-01001111\r
-10000001\r
+00010111\r
+00000111\r
+11110011\r
 10010001\r
 00000000\r
 10010001\r
 00000000\r
-11010101\r
+01011001\r
+11000011\r
 00001000\r
 10001000\r
-11010101\r
+11000011\r
 00001000\r
 10001111\r
+01001111\r
+11100100\r
+10000011\r
+10010001\r
+00000000\r
+10010001\r
+00000000\r
 10010110\r
+11000100\r
+00001000\r
+10000000\r
+11000100\r
+00001000\r
+10000111\r
 11100000\r
 00110000\r
 00000111\r
 11100000\r
 11100000\r
 10010011\r
-11010110\r
+00000000\r
+11000100\r
 00001000\r
-10000000\r
-11010110\r
+10001000\r
+11000100\r
 00001000\r
-10000111\r
-00000000\r
+10001111\r
 10010011\r
 00000000\r
+10011011\r
+11000011\r
+10011000\r
+10011010\r
 10010001\r
-00000100\r
-10010001\r
-00000100\r
+00000000\r
+11000101\r
+00001000\r
+10000000\r
+11000101\r
+00001000\r
+10000111\r
 10010001\r
-11010110\r
+00000000\r
+01011111\r
+01001111\r
+11100000\r
+00110000\r
+00000111\r
+11110000\r
+11000101\r
 00001000\r
 10001000\r
-11010110\r
+11000101\r
 00001000\r
 10001111\r
-00000000\r
+11100000\r
+11100000\r
 10010001\r
-00000000\r
+00001000\r
+10010001\r
+00001000\r
 00010111\r
 00000111\r
-11110100\r
-11000001\r
-10010001\r
-11010111\r
+11000110\r
 00001000\r
 10000000\r
-11010111\r
+11000110\r
 00001000\r
 10000111\r
-00000100\r
-10010001\r
-00000100\r
+11110011\r
 10010001\r
 00000000\r
 10010001\r
 00000000\r
-00010111\r
-11010111\r
+01011001\r
+01001111\r
+11100100\r
+11000110\r
 00001000\r
 10001000\r
-11010111\r
+11000110\r
 00001000\r
 10001111\r
-00000111\r
-11110000\r
-11000001\r
+10000011\r
 10010001\r
 00000000\r
 10010001\r
 00000000\r
-10010001\r
-11011000\r
+10010110\r
+11100000\r
+00110000\r
+11000111\r
 00001000\r
 10000000\r
-11011000\r
+11000111\r
 00001000\r
 10000111\r
-00000100\r
-10010001\r
-00000100\r
-00011011\r
-00001011\r
-01010000\r
-01000000\r
+00000111\r
 11110000\r
-11011000\r
+11100000\r
+11100000\r
+10010011\r
+00000000\r
+10010011\r
+00000000\r
+11000111\r
 00001000\r
 10001000\r
-11011000\r
+11000111\r
 00001000\r
 10001111\r
-11000001\r
 10011011\r
-11000001\r
+11000010\r
 10011000\r
-00101111\r
-00100111\r
-11111101\r
-10010101\r
-11011001\r
-00001000\r
-10000000\r
-11011001\r
-00001000\r
-10000111\r
+10011010\r
 10010001\r
 00000000\r
 10010001\r
 00000000\r
-10010001\r
-00000100\r
-10010001\r
-00000100\r
-11011001\r
+11001000\r
+00001000\r
+10000000\r
+11001000\r
+00001000\r
+10000111\r
+01011111\r
+01001111\r
+11100000\r
+00110000\r
+00000111\r
+11110000\r
+11100000\r
+11100000\r
+11001000\r
 00001000\r
 10001000\r
-11011001\r
+11001000\r
 00001000\r
 10001111\r
+10010001\r
+00001000\r
+10010001\r
+00001000\r
 00010111\r
 00000111\r
-11110100\r
-11000001\r
-10010001\r
-00000000\r
+11110011\r
 10010001\r
-00000000\r
-11011010\r
+11001001\r
 00001000\r
 10000000\r
-11011010\r
+11001001\r
 00001000\r
 10000111\r
-01011001\r
-01001111\r
-10000001\r
-10010001\r
 00000000\r
 10010001\r
 00000000\r
-10010110\r
-11011010\r
+01011001\r
+01001111\r
+11100100\r
+10000011\r
+10010001\r
+11001001\r
 00001000\r
 10001000\r
-11011010\r
+11001001\r
 00001000\r
 10001111\r
+00000000\r
+10010001\r
+00000000\r
+10010110\r
 11100000\r
 00110000\r
 00000111\r
 11110000\r
-11100000\r
-11100000\r
-10010011\r
-00000000\r
-11011011\r
+11001010\r
 00001000\r
 10000000\r
-11011011\r
+11001010\r
 00001000\r
 10000111\r
+11100000\r
+11100000\r
 10010011\r
 00000000\r
-10010001\r
-00000100\r
-10010001\r
-00000100\r
-10010001\r
+10010011\r
 00000000\r
-11011011\r
+10011011\r
+11000010\r
+11001010\r
 00001000\r
 10001000\r
-11011011\r
+11001010\r
 00001000\r
 10001111\r
+10011000\r
+10011010\r
 10010001\r
 00000000\r
-00010111\r
-00000111\r
-11110100\r
-11000001\r
 10010001\r
-00000100\r
-11011100\r
+00000000\r
+01011111\r
+01001111\r
+11001011\r
 00001000\r
 10000000\r
-11011100\r
+11001011\r
 00001000\r
 10000111\r
-10010001\r
-00000100\r
-10010001\r
-00000000\r
-10010001\r
-00000000\r
-00010111\r
+11100000\r
+00110000\r
 00000111\r
-11011100\r
+11110000\r
+11100000\r
+11100000\r
+10010001\r
+00001000\r
+11001011\r
 00001000\r
 10001000\r
-11011100\r
+11001011\r
 00001000\r
 10001111\r
-11110000\r
-11000001\r
 10010001\r
-00000000\r
+00001000\r
+00010111\r
+00000111\r
+11110011\r
 10010001\r
 00000000\r
 10010001\r
-00000100\r
-11011101\r
+11001100\r
 00001000\r
 10000000\r
-11011101\r
+11001100\r
 00001000\r
 10000111\r
+00000000\r
+01011001\r
+01001111\r
+11100101\r
+10000011\r
 10010001\r
-00000100\r
-00011011\r
-00001011\r
-01010000\r
-01000000\r
-11110000\r
-11000001\r
-11011101\r
+00000000\r
+10010001\r
+11001100\r
 00001000\r
 10001000\r
-11011101\r
+11001100\r
 00001000\r
 10001111\r
-10011011\r
-11000001\r
-10011000\r
-00101111\r
-00100111\r
-11111101\r
-10010101\r
-10010001\r
-11011110\r
+00000000\r
+10010110\r
+11100000\r
+00110000\r
+00000111\r
+11110000\r
+11100000\r
+11100000\r
+11001101\r
 00001000\r
 10000000\r
-11011110\r
+11001101\r
 00001000\r
 10000111\r
+10010011\r
+00000000\r
+10010011\r
 00000000\r
+10011011\r
+11000010\r
+10011000\r
+10011010\r
+11001101\r
+00001000\r
+10001000\r
+11001101\r
+00001000\r
+10001111\r
 10010001\r
 00000000\r
 10010001\r
-00000100\r
+00000000\r
+01011111\r
+01001111\r
+11100000\r
+00110000\r
+11001110\r
+00001000\r
+10000000\r
+11001110\r
+00001000\r
+10000111\r
+00000111\r
+11110000\r
+11100000\r
+11100000\r
 10010001\r
-00000100\r
-00010111\r
-11011110\r
+00001000\r
+10010001\r
+00001000\r
+11001110\r
 00001000\r
 10001000\r
-11011110\r
+11001110\r
 00001000\r
 10001111\r
+00010111\r
 00000111\r
-11110100\r
-11000001\r
+11110011\r
 10010001\r
 00000000\r
 10010001\r
 00000000\r
 01011001\r
-11011111\r
+11001111\r
 00001000\r
 10000000\r
-11011111\r
+11001111\r
 00001000\r
 10000111\r
 01001111\r
-10000001\r
+11100101\r
+10000011\r
 10010001\r
 00000000\r
 10010001\r
 00000000\r
 10010110\r
-11100000\r
-11011111\r
+11001111\r
 00001000\r
 10001000\r
-11011111\r
+11001111\r
 00001000\r
 10001111\r
+11100000\r
 00110000\r
 00000111\r
 11110000\r
 11100000\r
 10010011\r
 00000000\r
-10010011\r
-11100000\r
+11010000\r
 00001000\r
 10000000\r
-11100000\r
+11010000\r
 00001000\r
 10000111\r
+10010011\r
 00000000\r
+10011011\r
+11000010\r
+10011000\r
+10011010\r
+10111010\r
+10111010\r
+11010000\r
+00001000\r
+10001000\r
+11010000\r
+00001000\r
+10001111\r
+10010111\r
+11110100\r
+11001110\r
+10011010\r
 10010001\r
-00000100\r
-10010001\r
-00000100\r
+00000000\r
 10010001\r
 00000000\r
+11010001\r
+00001000\r
+10000000\r
+11010001\r
+00001000\r
+10000111\r
 10010001\r
-11100000\r
+00000100\r
+10010001\r
+00000100\r
+00010111\r
+00000111\r
+11110000\r
+11001110\r
+11010001\r
 00001000\r
 10001000\r
-11100000\r
+11010001\r
 00001000\r
 10001111\r
+10011000\r
+10010001\r
+00000000\r
+10010001\r
 00000000\r
-00010111\r
-00000111\r
-11110100\r
-11000001\r
 10010001\r
 00000100\r
 10010001\r
-11100001\r
+11010010\r
 00001000\r
 10000000\r
-11100001\r
+11010010\r
 00001000\r
 10000111\r
 00000100\r
-10010001\r
-00000000\r
-10010001\r
-00000000\r
 00010111\r
 00000111\r
 11110000\r
-11100001\r
+11001110\r
+10011000\r
+10010001\r
+00000000\r
+11010010\r
 00001000\r
 10001000\r
-11100001\r
+11010010\r
 00001000\r
 10001111\r
-11000001\r
-10010001\r
-00000000\r
 10010001\r
 00000000\r
 10010001\r
 00000100\r
 10010001\r
-11100010\r
+00000100\r
+00010111\r
+00000111\r
+11010011\r
 00001000\r
 10000000\r
-11100010\r
+11010011\r
 00001000\r
 10000111\r
+11110011\r
+11001110\r
+10010001\r
+00000100\r
+10010001\r
 00000100\r
+10010001\r
+00000000\r
+11010011\r
+00001000\r
+10001000\r
+11010011\r
+00001000\r
+10001111\r
+10010001\r
+00000000\r
 00011011\r
 00001011\r
 01010000\r
 01000000\r
 11110000\r
-11000001\r
-10011011\r
-11100010\r
+11001110\r
+11010100\r
 00001000\r
-10001000\r
-11100010\r
+10000000\r
+11010100\r
 00001000\r
-10001111\r
-11000001\r
+10000111\r
 10011000\r
-00101111\r
+10011001\r
+11001110\r
+10011010\r
 00100111\r
 11111101\r
 10010101\r
-10010001\r
-00000000\r
-11100011\r
-00001000\r
-10000000\r
-11100011\r
-00001000\r
-10000111\r
-10010001\r
-00000000\r
-10010001\r
-00000100\r
-10010001\r
-00000100\r
-00010111\r
-00000111\r
-11100011\r
+00110000\r
+11010100\r
 00001000\r
 10001000\r
-11100011\r
+11010100\r
 00001000\r
 10001111\r
-11110100\r
-10011000\r
+11110000\r
+11001110\r
 10010001\r
 00000000\r
 10010001\r
 00000000\r
 10010001\r
 00000100\r
-11100100\r
+11010101\r
 00001000\r
 10000000\r
-11100100\r
+11010101\r
 00001000\r
 10000111\r
 10010001\r
 00000100\r
 00010111\r
 00000111\r
-11110011\r
+11110100\r
+11000001\r
 10010001\r
 00000000\r
-10010001\r
-11100100\r
+11010101\r
 00001000\r
 10001000\r
-11100100\r
+11010101\r
 00001000\r
 10001111\r
+10010001\r
 00000000\r
 01011001\r
 01001111\r
 10010001\r
 00000000\r
 10010001\r
-00000000\r
-11100101\r
+11010110\r
 00001000\r
 10000000\r
-11100101\r
+11010110\r
 00001000\r
 10000111\r
+00000000\r
 10010110\r
 11100000\r
 00110000\r
 11110000\r
 11100000\r
 11100000\r
-10010011\r
-11100101\r
+11010110\r
 00001000\r
 10001000\r
-11100101\r
+11010110\r
 00001000\r
 10001111\r
+10010011\r
 00000000\r
 10010011\r
 00000000\r
 00000100\r
 10010001\r
 00000100\r
-10010001\r
-11100110\r
+11010111\r
 00001000\r
 10000000\r
-11100110\r
+11010111\r
 00001000\r
 10000111\r
+10010001\r
 00000000\r
 10010001\r
 00000000\r
 00010111\r
 00000111\r
 11110100\r
-11000000\r
-10010001\r
-11100110\r
+11000001\r
+11010111\r
 00001000\r
 10001000\r
-11100110\r
+11010111\r
 00001000\r
 10001111\r
+10010001\r
 00000100\r
 10010001\r
 00000100\r
 00000000\r
 10010001\r
 00000000\r
-00010111\r
-11100111\r
+11011000\r
 00001000\r
 10000000\r
-11100111\r
+11011000\r
 00001000\r
 10000111\r
+00010111\r
 00000111\r
 11110000\r
-11000000\r
+11000001\r
 10010001\r
 00000000\r
 10010001\r
 00000000\r
-10010001\r
-11100111\r
+11011000\r
 00001000\r
 10001000\r
-11100111\r
+11011000\r
 00001000\r
 10001111\r
+10010001\r
 00000100\r
 10010001\r
 00000100\r
 00001011\r
 01010000\r
 01000000\r
-11110000\r
-11101000\r
+11011001\r
 00001000\r
 10000000\r
-11101000\r
+11011001\r
 00001000\r
 10000111\r
-11000000\r
+11110000\r
+11000001\r
 10011011\r
-11000000\r
+11000001\r
 10011000\r
-10111011\r
-10111011\r
-10111011\r
 00101111\r
-11101000\r
+00100111\r
+11111101\r
+11011001\r
 00001000\r
 10001000\r
-11101000\r
+11011001\r
 00001000\r
 10001111\r
-00100111\r
-11111101\r
 10010101\r
-10111011\r
-11001101\r
-10111010\r
-10111010\r
-10110011\r
-11101001\r
+10010001\r
+00000000\r
+10010001\r
+00000000\r
+10010001\r
+00000100\r
+10010001\r
+11011010\r
 00001000\r
 10000000\r
-11101001\r
+11011010\r
 00001000\r
 10000111\r
-11101000\r
-10111011\r
-11100000\r
-10111011\r
-00101111\r
+00000100\r
+00010111\r
+00000111\r
+11110100\r
+11000001\r
 10010001\r
 00000000\r
 10010001\r
-11101001\r
+11011010\r
 00001000\r
 10001000\r
-11101001\r
+11011010\r
 00001000\r
 10001111\r
 00000000\r
-01011111\r
+01011001\r
 01001111\r
-11100000\r
-00110000\r
-00000111\r
-11110000\r
-11100000\r
-11101010\r
+10000001\r
+10010001\r
+00000000\r
+10010001\r
+00000000\r
+11011011\r
 00001000\r
 10000000\r
-11101010\r
+11011011\r
 00001000\r
 10000111\r
+10010110\r
 11100000\r
-10010001\r
-00001000\r
-10010001\r
-00001000\r
-00010111\r
+00110000\r
 00000111\r
-11110011\r
-11101010\r
+11110000\r
+11100000\r
+11100000\r
+10010011\r
+11011011\r
 00001000\r
 10001000\r
-11101010\r
+11011011\r
 00001000\r
 10001111\r
-10010001\r
 00000000\r
-10010001\r
+10010011\r
 00000000\r
-01011001\r
-01001111\r
-10000011\r
 10010001\r
-11101011\r
+00000100\r
+10010001\r
+00000100\r
+10010001\r
+11011100\r
 00001000\r
 10000000\r
-11101011\r
+11011100\r
 00001000\r
 10000111\r
 00000000\r
 10010001\r
 00000000\r
-10010110\r
-11100000\r
-00110000\r
+00010111\r
 00000111\r
-11110000\r
-11101011\r
+11110100\r
+11000001\r
+10010001\r
+11011100\r
 00001000\r
 10001000\r
-11101011\r
+11011100\r
 00001000\r
 10001111\r
-11100000\r
-11100000\r
-10010011\r
+00000100\r
+10010001\r
+00000100\r
+10010001\r
 00000000\r
-10010011\r
+10010001\r
 00000000\r
-10011011\r
-11001110\r
-11101100\r
+00010111\r
+11011101\r
 00001000\r
 10000000\r
-11101100\r
-00001000\r
-10000111\r
-10011000\r
-10011010\r
-11001110\r
-10011000\r
+11011101\r
+00001000\r
+10000111\r
+00000111\r
+11110000\r
+11000001\r
 10010001\r
 00000000\r
 10010001\r
 00000000\r
-11101100\r
+10010001\r
+11011101\r
 00001000\r
 10001000\r
-11101100\r
+11011101\r
 00001000\r
 10001111\r
-10010001\r
 00000100\r
 10010001\r
 00000100\r
-00010111\r
-00000111\r
+00011011\r
+00001011\r
+01010000\r
+01000000\r
 11110000\r
-11001110\r
-11101101\r
+11011110\r
 00001000\r
 10000000\r
-11101101\r
+11011110\r
 00001000\r
 10000111\r
+11000001\r
+10011011\r
+11000001\r
 10011000\r
+00101111\r
+00100111\r
+11111101\r
+10010101\r
+11011110\r
+00001000\r
+10001000\r
+11011110\r
+00001000\r
+10001111\r
 10010001\r
 00000000\r
 10010001\r
 10010001\r
 00000100\r
 10010001\r
-11101101\r
-00001000\r
-10001000\r
-11101101\r
-00001000\r
-10001111\r
 00000100\r
-00010111\r
-00000111\r
-11110011\r
-11001110\r
-10011000\r
-10010001\r
-00000000\r
-11101110\r
+11011111\r
 00001000\r
 10000000\r
-11101110\r
+11011111\r
 00001000\r
 10000111\r
+00010111\r
+00000111\r
+11110100\r
+11000000\r
 10010001\r
 00000000\r
 10010001\r
-00000100\r
-10010001\r
-00000100\r
-00010111\r
-00000111\r
-11101110\r
+00000000\r
+11011111\r
 00001000\r
 10001000\r
-11101110\r
+11011111\r
 00001000\r
 10001111\r
-11110000\r
-11001110\r
-10011000\r
+01011001\r
+01001111\r
+10000001\r
 10010001\r
 00000000\r
 10010001\r
 00000000\r
-10010001\r
-11101111\r
+10010110\r
+11100000\r
 00001000\r
 10000000\r
-11101111\r
+11100000\r
 00001000\r
 10000111\r
-00000100\r
-10010001\r
-00000100\r
-00010111\r
+11100000\r
+00110000\r
 00000111\r
-11110011\r
-11001110\r
-10011000\r
-11101111\r
+11110000\r
+11100000\r
+11100000\r
+10010011\r
+00000000\r
+11100000\r
 00001000\r
 10001000\r
-11101111\r
+11100000\r
 00001000\r
 10001111\r
-10010001\r
-00000000\r
-10010001\r
+10010011\r
 00000000\r
 10010001\r
 00000100\r
 10010001\r
 00000100\r
-11110000\r
+10010001\r
+00000000\r
+11100001\r
 00001000\r
 10000000\r
-11110000\r
+11100001\r
 00001000\r
 10000111\r
-00010111\r
-00000111\r
-11110000\r
-11001110\r
-10011000\r
 10010001\r
 00000000\r
+00010111\r
+00000111\r
+11110100\r
+11000001\r
 10010001\r
-11110000\r
+00000100\r
+11100001\r
 00001000\r
 10001000\r
-11110000\r
+11100001\r
 00001000\r
 10001111\r
-00000000\r
 10010001\r
 00000100\r
 10010001\r
-00000100\r
+00000000\r
+10010001\r
+00000000\r
 00010111\r
 00000111\r
-11110011\r
-11110001\r
+11100010\r
 00001000\r
 10000000\r
-11110001\r
+11100010\r
 00001000\r
 10000111\r
-11001110\r
-10010001\r
-00000100\r
+11110000\r
+11000000\r
 10010001\r
-00000100\r
+00000000\r
 10010001\r
 00000000\r
 10010001\r
-11110001\r
+00000100\r
+11100010\r
 00001000\r
 10001000\r
-11110001\r
+11100010\r
 00001000\r
 10001111\r
-00000000\r
+10010001\r
+00000100\r
 00011011\r
 00001011\r
 01010000\r
 01000000\r
 11110000\r
-11001111\r
-10011000\r
-11110010\r
+11000000\r
+11100011\r
 00001000\r
 10000000\r
-11110010\r
+11100011\r
 00001000\r
 10000111\r
-10011001\r
-11001111\r
-10011010\r
-11001111\r
-10010001\r
-00000100\r
+10011011\r
+11000000\r
+10011000\r
+00101111\r
+00100111\r
+11111101\r
+10010101\r
 10010001\r
-00000100\r
-11110010\r
+11100011\r
 00001000\r
 10001000\r
-11110010\r
+11100011\r
 00001000\r
 10001111\r
-10010001\r
 00000000\r
 10010001\r
 00000000\r
-00011011\r
-00001011\r
-01010000\r
-01000000\r
-11110011\r
-00001000\r
-10000000\r
-11110011\r
-00001000\r
-10000111\r
-11110000\r
-11001110\r
-10011000\r
-10011001\r
-11001110\r
-10011010\r
-11001110\r
 10010001\r
-11110011\r
-00001000\r
-10001000\r
-11110011\r
-00001000\r
-10001111\r
 00000100\r
 10010001\r
 00000100\r
-10010001\r
-00000000\r
-10010001\r
-00000000\r
-00011011\r
-11110100\r
+00010111\r
+11100100\r
 00001000\r
 10000000\r
-11110100\r
+11100100\r
 00001000\r
 10000111\r
-00001011\r
-01010000\r
-01000000\r
-11110000\r
-11001110\r
-10011000\r
-10011001\r
-11001110\r
+00000111\r
 11110100\r
+10011000\r
+10010001\r
+00000000\r
+10010001\r
+00000000\r
+10010001\r
+11100100\r
 00001000\r
 10001000\r
-11110100\r
+11100100\r
 00001000\r
 10001111\r
-10011010\r
-11001110\r
-10010001\r
 00000100\r
 10010001\r
 00000100\r
+00010111\r
+00000111\r
+11110011\r
 10010001\r
 00000000\r
-11110101\r
+11100101\r
 00001000\r
 10000000\r
-11110101\r
+11100101\r
 00001000\r
 10000111\r
 10010001\r
 00000000\r
-00011011\r
-00001011\r
-01010000\r
-01000000\r
-11110000\r
-11001110\r
-11110101\r
+01011001\r
+01001111\r
+10000001\r
+10010001\r
+00000000\r
+10010001\r
+11100101\r
 00001000\r
 10001000\r
-11110101\r
+11100101\r
 00001000\r
 10001111\r
-10011000\r
-10011001\r
-11001110\r
-10011010\r
-11001110\r
-00100011\r
+00000000\r
+10010110\r
+11100000\r
+00110000\r
+00000111\r
 11110000\r
-11001100\r
-11110110\r
+11100000\r
+11100000\r
+11100110\r
 00001000\r
 10000000\r
-11110110\r
+11100110\r
 00001000\r
 10000111\r
-10010001\r
+10010011\r
 00000000\r
-10010001\r
+10010011\r
 00000000\r
-01011111\r
-01001111\r
-11100000\r
-00110000\r
-11110110\r
+10010001\r
+00000100\r
+10010001\r
+00000100\r
+11100110\r
 00001000\r
 10001000\r
-11110110\r
+11100110\r
 00001000\r
 10001111\r
-00000111\r
-11110000\r
-11100000\r
-11100000\r
 10010001\r
-00001000\r
+00000000\r
 10010001\r
-00001000\r
-11110111\r
+00000000\r
+00010111\r
+00000111\r
+11110100\r
+11000000\r
+11100111\r
 00001000\r
 10000000\r
-11110111\r
+11100111\r
 00001000\r
 10000111\r
-00010111\r
-00000111\r
-11110011\r
+10010001\r
+00000100\r
+10010001\r
+00000100\r
 10010001\r
 00000000\r
 10010001\r
 00000000\r
-01011001\r
-11110111\r
+11100111\r
 00001000\r
 10001000\r
-11110111\r
+11100111\r
 00001000\r
 10001111\r
-01001111\r
-11100100\r
-10000011\r
+00010111\r
+00000111\r
+11110000\r
+11000000\r
 10010001\r
 00000000\r
 10010001\r
 00000000\r
-10010110\r
-11111000\r
+11101000\r
 00001000\r
 10000000\r
-11111000\r
+11101000\r
 00001000\r
 10000111\r
-11100000\r
-00110000\r
-00000111\r
-11110000\r
-11100000\r
-11100000\r
-10010011\r
-00000000\r
-11111000\r
+10010001\r
+00000100\r
+10010001\r
+00000100\r
+00011011\r
+00001011\r
+01010000\r
+01000000\r
+11101000\r
 00001000\r
 10001000\r
-11111000\r
+11101000\r
 00001000\r
 10001111\r
-10010011\r
-00000000\r
+11110000\r
+11000000\r
 10011011\r
 11000000\r
 10011000\r
-10011010\r
-10010001\r
-00000000\r
-11111001\r
+10111011\r
+10111011\r
+10111011\r
+11101001\r
 00001000\r
 10000000\r
-11111001\r
+11101001\r
 00001000\r
 10000111\r
+00101111\r
+00100111\r
+11111101\r
+10010101\r
+10111011\r
+11001101\r
+10011000\r
 10010001\r
+11101001\r
+00001000\r
+10001000\r
+11101001\r
+00001000\r
+10001111\r
 00000000\r
-01011111\r
-01001111\r
-11100000\r
-00110000\r
+10010001\r
+00000000\r
+10010001\r
+00000100\r
+10010001\r
+00000100\r
+00010111\r
+11101010\r
+00001000\r
+10000000\r
+11101010\r
+00001000\r
+10000111\r
 00000111\r
 11110000\r
-11111001\r
+11001110\r
+10011000\r
+10010001\r
+00000000\r
+10010001\r
+00000000\r
+11101010\r
 00001000\r
 10001000\r
-11111001\r
+11101010\r
 00001000\r
 10001111\r
-11100000\r
-11100000\r
 10010001\r
-00001000\r
+00000100\r
 10010001\r
-00001000\r
+00000100\r
 00010111\r
 00000111\r
-11111010\r
+11110011\r
+11001110\r
+11101011\r
 00001000\r
 10000000\r
-11111010\r
+11101011\r
 00001000\r
 10000111\r
-11110011\r
+10011000\r
 10010001\r
 00000000\r
 10010001\r
 00000000\r
-01011001\r
-01001111\r
-11100100\r
-11111010\r
+10010001\r
+00000100\r
+10010001\r
+11101011\r
 00001000\r
 10001000\r
-11111010\r
+11101011\r
 00001000\r
 10001111\r
-10000011\r
-10010001\r
-00000000\r
+00000100\r
+00010111\r
+00000111\r
+11110000\r
+11001110\r
+10011000\r
 10010001\r
 00000000\r
-10010110\r
-11100000\r
-00110000\r
-11111011\r
+11101100\r
 00001000\r
 10000000\r
-11111011\r
+11101100\r
 00001000\r
 10000111\r
-00000111\r
-11110000\r
-11100000\r
-11100000\r
-10010011\r
-00000000\r
-10010011\r
+10010001\r
 00000000\r
-11111011\r
+10010001\r
+00000100\r
+10010001\r
+00000100\r
+00010111\r
+00000111\r
+11101100\r
 00001000\r
 10001000\r
-11111011\r
+11101100\r
 00001000\r
 10001111\r
-10011011\r
-11000000\r
+11110011\r
+11001110\r
 10011000\r
-10011010\r
 10010001\r
 00000000\r
 10010001\r
 00000000\r
-11111100\r
+10010001\r
+11101101\r
 00001000\r
 10000000\r
-11111100\r
+11101101\r
 00001000\r
 10000111\r
-01011111\r
-01001111\r
-11100000\r
-00110000\r
+00000100\r
+10010001\r
+00000100\r
+00010111\r
 00000111\r
 11110000\r
-11100000\r
-11100000\r
-11111100\r
+11001111\r
+10011000\r
+11101101\r
 00001000\r
 10001000\r
-11111100\r
+11101101\r
 00001000\r
 10001111\r
 10010001\r
-00001000\r
+00000000\r
+10010001\r
+00000000\r
 10010001\r
+00000100\r
+10010001\r
+00000100\r
+11101110\r
 00001000\r
+10000000\r
+11101110\r
+00001000\r
+10000111\r
 00010111\r
 00000111\r
 11110011\r
+11001111\r
 10010001\r
-11111101\r
+00000100\r
+10010001\r
+00000100\r
+11101110\r
 00001000\r
-10000000\r
-11111101\r
+10001000\r
+11101110\r
 00001000\r
-10000111\r
+10001111\r
+10010001\r
 00000000\r
 10010001\r
 00000000\r
-01011001\r
-01001111\r
-11100100\r
-10000011\r
+00011011\r
+00001011\r
+01010000\r
+01000000\r
+11101111\r
+00001000\r
+10000000\r
+11101111\r
+00001000\r
+10000111\r
+11110000\r
+11001111\r
+10011000\r
+10011001\r
+11001111\r
+10011010\r
+11001111\r
 10010001\r
-11111101\r
+11101111\r
 00001000\r
 10001000\r
-11111101\r
+11101111\r
 00001000\r
 10001111\r
+00000100\r
+10010001\r
+00000100\r
+10010001\r
 00000000\r
 10010001\r
 00000000\r
-10010110\r
-11100000\r
-00110000\r
-00000111\r
+00011011\r
 11110000\r
-11111110\r
 00001000\r
 10000000\r
-11111110\r
+11110000\r
 00001000\r
 10000111\r
-11100000\r
-11100000\r
-10010011\r
-00000000\r
-10010011\r
-00000000\r
-10011011\r
-11000000\r
-11111110\r
+00001011\r
+01010000\r
+01000000\r
+11110000\r
+11001110\r
+10011000\r
+10011001\r
+11001110\r
+11110000\r
 00001000\r
 10001000\r
-11111110\r
+11110000\r
 00001000\r
 10001111\r
-10011000\r
 10011010\r
+11001110\r
 10010001\r
-00000000\r
+00000100\r
+10010001\r
+00000100\r
 10010001\r
 00000000\r
-01011111\r
-01001111\r
-11111111\r
+11110001\r
 00001000\r
 10000000\r
-11111111\r
+11110001\r
 00001000\r
 10000111\r
-11100000\r
-00110000\r
-00000111\r
-11110000\r
-11100000\r
-11100000\r
 10010001\r
-00001000\r
-11111111\r
+00000000\r
+00011011\r
+00001011\r
+01010000\r
+01000000\r
+11110000\r
+11001110\r
+11110001\r
 00001000\r
 10001000\r
-11111111\r
+11110001\r
 00001000\r
 10001111\r
+10011000\r
+10011001\r
+11001110\r
+10011010\r
+11001110\r
 10010001\r
-00001000\r
-00010111\r
-00000111\r
-11110011\r
-10010001\r
-00000000\r
+00000100\r
 10010001\r
+11110010\r
+00001000\r
 10000000\r
-00000111\r
-10000000\r
-10000000\r
-00000111\r
+11110010\r
+00001000\r
 10000111\r
-00000000\r
-01011001\r
-01001111\r
-11100101\r
-10000011\r
+00000100\r
 10010001\r
 00000000\r
 10010001\r
-10000000\r
-00000111\r
+00000000\r
+00011011\r
+00001011\r
+01010000\r
+11110010\r
+00001000\r
 10001000\r
-10000000\r
-00000111\r
+11110010\r
+00001000\r
 10001111\r
-00000000\r
-10010110\r
-11100000\r
-00110000\r
-00000111\r
+01000000\r
 11110000\r
-11100000\r
-11100000\r
-10000001\r
-00000111\r
-10000000\r
-10000001\r
-00000111\r
-10000111\r
-10010011\r
-00000000\r
-10010011\r
-00000000\r
-10011011\r
-11000000\r
+11001111\r
 10011000\r
+10011001\r
+11001111\r
 10011010\r
-10000001\r
-00000111\r
-10001000\r
-10000001\r
-00000111\r
-10001111\r
+11001111\r
+11110011\r
+00001000\r
+10000000\r
+11110011\r
+00001000\r
+10000111\r
+10110011\r
+00101111\r
 10010001\r
 00000000\r
 10010001\r
 00000000\r
 01011111\r
 01001111\r
+11110011\r
+00001000\r
+10001000\r
+11110011\r
+00001000\r
+10001111\r
 11100000\r
 00110000\r
-10000010\r
-00000111\r
-10000000\r
-10000010\r
-00000111\r
-10000111\r
 00000111\r
 11110000\r
 11100000\r
 11100000\r
 10010001\r
 00001000\r
+11110100\r
+00001000\r
+10000000\r
+11110100\r
+00001000\r
+10000111\r
 10010001\r
 00001000\r
-10000010\r
-00000111\r
-10001000\r
-10000010\r
-00000111\r
-10001111\r
 00010111\r
 00000111\r
 11110011\r
 10010001\r
 00000000\r
 10010001\r
+11110100\r
+00001000\r
+10001000\r
+11110100\r
+00001000\r
+10001111\r
 00000000\r
 01011001\r
-10000011\r
-00000111\r
-10000000\r
-10000011\r
-00000111\r
-10000111\r
 01001111\r
-11100101\r
 10000011\r
 10010001\r
 00000000\r
 10010001\r
 00000000\r
+11110101\r
+00001000\r
+10000000\r
+11110101\r
+00001000\r
+10000111\r
 10010110\r
-10000011\r
-00000111\r
-10001000\r
-10000011\r
-00000111\r
-10001111\r
 11100000\r
 00110000\r
 00000111\r
 11100000\r
 11100000\r
 10010011\r
+11110101\r
+00001000\r
+10001000\r
+11110101\r
+00001000\r
+10001111\r
 00000000\r
-10000100\r
-00000111\r
-10000000\r
-10000100\r
-00000111\r
-10000111\r
 10010011\r
 00000000\r
 10011011\r
 11000000\r
 10011000\r
 10011010\r
-10011010\r
-11001011\r
-10000100\r
-00000111\r
-10001000\r
-10000100\r
-00000111\r
-10001111\r
-10011010\r
-11001100\r
-10011010\r
-11001100\r
-10011010\r
-11001100\r
-10011010\r
-11001111\r
-10000101\r
-00000111\r
+11100000\r
+11110110\r
+00001000\r
 10000000\r
-10000101\r
-00000111\r
+11110110\r
+00001000\r
 10000111\r
+11100000\r
+11001100\r
 10011010\r
+11001101\r
 10011010\r
+11001101\r
 10011010\r
-11001011\r
+11001101\r
+11110110\r
+00001000\r
+10001000\r
+11110110\r
+00001000\r
+10001101\r
 10011010\r
-11001111\r
+11001101\r
 10011010\r
-11001111\r
-10000101\r
-00000111\r
-10001000\r
-10000101\r
-00000111\r
-10001001\r
+11001100\r
 10011010\r
 11001111\r
 11100111\r
index 3a97c03..9cf1ff6 100644 (file)
@@ -256,8 +256,8 @@ public abstract class Fpslic {
 
         public void h(int plane, boolean enable) {
             switch(plane) {
-                case 0: mode4(0x08, row, col, 2, enable); return;
-                case 1: mode4(0x08, row, col, 0, enable); return;
+                case 0: mode4(0x08, row, col, 0, enable); return;
+                case 1: mode4(0x08, row, col, 2, enable); return;
                 case 2: mode4(0x08, row, col, 5, enable); return;
                 case 3: mode4(0x08, row, col, 6, enable); return;
                 case 4: mode4(0x00, row, col, 6, enable); return;
@@ -267,8 +267,8 @@ public abstract class Fpslic {
         
         public boolean hx(int plane) {
             switch(plane) {
-                case 0: return (mode4(0x08, row, col) & (1<<2)) != 0;
-                case 1: return (mode4(0x08, row, col) & (1<<0)) != 0;
+                case 0: return (mode4(0x08, row, col) & (1<<0)) != 0;
+                case 1: return (mode4(0x08, row, col) & (1<<2)) != 0;
                 case 2: return (mode4(0x08, row, col) & (1<<5)) != 0;
                 case 3: return (mode4(0x08, row, col) & (1<<6)) != 0;
                 case 4: return (mode4(0x00, row, col) & (1<<6)) != 0;
@@ -324,11 +324,11 @@ public abstract class Fpslic {
         public void t(int code) {
             int result = 0;
             switch(code) {
+                case TMUX_W:        result = 0x34; break;
                 case TMUX_Z:        result = 0x20; break; // TOTALLYBOGUS throw new Error("not implemented, but should be possible");
-                case TMUX_W_AND_Z:  result = 0x24; break;
+                case TMUX_W_AND_Z:  result = 0x00; break;
                 case TMUX_FB:       result = 0x34; break; /* I think this is actually W_AND_FB, sadly */
                 case TMUX_W_AND_FB: result = 0x14; break;
-                case TMUX_W:        result = 0x00; break;
                     //default: throw new RuntimeException("unknown code! " + code);
                 default: result = 0x00; break;
             }
@@ -469,11 +469,13 @@ public abstract class Fpslic {
                 case NE: mode4(0x03, row, col, 4, false); mode4(0x05, row, col, 1<<6); break;
                 case SE: mode4(0x03, row, col, 4, false); mode4(0x05, row, col, 1<<5); break;
                 case NW: mode4(0x03, row, col, 4, false); mode4(0x05, row, col, 1<<4); break;
-                case L4: mode4(0x03, row, col, 4, true);  mode4(0x05, row, col,    0); break;
-                case L3: mode4(0x03, row, col, 4, false); mode4(0x05, row, col, 1<<0); break;
-                case L2: mode4(0x03, row, col, 4, false); mode4(0x05, row, col, 1<<1); break;
-                case L1: mode4(0x03, row, col, 4, false); mode4(0x05, row, col, 1<<2); break;
+
                 case L0: mode4(0x03, row, col, 4, false); mode4(0x05, row, col, 1<<3); break;
+                case L1: mode4(0x03, row, col, 4, false); mode4(0x05, row, col, 1<<2); break;
+                case L2: mode4(0x03, row, col, 4, false); mode4(0x05, row, col, 1<<1); break;
+                case L3: mode4(0x03, row, col, 4, false); mode4(0x05, row, col, 1<<0); break;
+                case L4: mode4(0x03, row, col, 4, true);  mode4(0x05, row, col,    0); break;
+
                 case NONE: mode4(0x03, row, col, 4, false); mode4(0x05, row, col, 0); break;
                 default: throw new RuntimeException("invalid argument");
             }
@@ -587,7 +589,7 @@ public abstract class Fpslic {
         }
 
         public int zi() {
-            switch(mode4(0x02, row, col) & 0xDB) {
+            switch(mode4(0x02, row, col) & 0x9B) {
                 case (1<<7): return L4;
                 case (1<<5): return L3;
                 case (1<<4): return L2;
@@ -596,11 +598,36 @@ public abstract class Fpslic {
                 case (1<<1): return NONE;  /* huh? */
                 case (1<<0): return NONE;  /* huh? */
                 case 0:      return NONE;
-                default: throw new RuntimeException("invalid argument: zi=="+(mode4(0x02, row, col) & 0xDB));
+                default: throw new RuntimeException("invalid argument: zi=="+(mode4(0x02, row, col) & 0x9B));
             }
         }
 
 
+        public void generalized_c_element() {
+
+            /*
+            ylut(LUT_SELF & (~LUT_OTHER));
+            xlut((~LUT_SELF) | LUT_OTHER);
+            c(ZMUX);
+            zi(L2);
+            //h(L2, true);
+            out(L2, true);
+            xo(true);
+            yo(true);
+            */
+
+            //ylut(0xB2);
+            ylut((LUT_SELF & ~LUT_OTHER) | (LUT_Z & ~LUT_OTHER) | (LUT_Z & LUT_SELF & LUT_OTHER));
+            xlut(LUT_Z);
+            c(YLUT);
+            f(false);
+            b(false);
+            t(false, false, true);
+            yo(false);
+            xo(false);
+        }
+
+
         // Relevance //////////////////////////////////////////////////////////////////////////////
         public boolean relevant() {
             return xo_relevant() || yo_relevant() || out_relevant();
@@ -670,6 +697,10 @@ public abstract class Fpslic {
             boolean out = false;
             boolean connect = false;
             for(int i=0; i<4; i++) {
+
+                // FIXME FIXME FIXME
+                if (i==3) continue;
+
                 if (out(L0+i)) out = true;
                 if (hx(L0+i)) connect = true;
                 if (vx(L0+i)) connect = true;
index 0d2c523..d0ea67d 100644 (file)
@@ -79,6 +79,7 @@ public class FpslicBoot {
 
     public OutputStream getOutputStream() throws IOException { return pins.getUartOutputStream(); }
     public InputStream  getInputStream() throws IOException { return pins.getUartInputStream(); }
+    public void purge() throws IOException { pins.purge(); }
 
     public void selfTest() throws Exception {
         boolean pin;
index 2f5e451..d73638a 100644 (file)
@@ -16,6 +16,7 @@ public interface FpslicBootPins {
     public void    conPin(boolean on)         throws IOException;
 
     public void    flush()                    throws IOException;
+    public void    purge()                    throws IOException;
     public void    close()                    throws IOException;
 
     public InputStream  getUartInputStream()  throws IOException;
index d6e14ac..b7042bb 100644 (file)
@@ -67,6 +67,10 @@ public class FpslicBootPinsUsb implements FpslicBootPins {
         ftdiuart.uart_and_cbus_mode(1<<1, 1<<1);
         ftdiuart.purge();
     }
+
+    public void purge() throws IOException {
+        ftdiuart.purge();
+    }
     
     private int dmask =
         (1<<0) |
index a249614..921d91d 100644 (file)
@@ -34,9 +34,9 @@ public class FpslicConstants {
 
     public static final int FB    = 29;
 
-    public static final int LUT_SELF  = 0xAA;
-    public static final int LUT_Z     = 0xF0;
-    public static final int LUT_OTHER = 0xCC;
+    public static final int LUT_SELF  = 0xAA;  // 1010 1010
+    public static final int LUT_Z     = 0xF0;  // 1111 0000
+    public static final int LUT_OTHER = 0xCC;  // 1100 1100
 
     public static final int TMUX_W_AND_Z   = 0x00001001;
     public static final int TMUX_W         = 0x00001002;
diff --git a/src/edu/berkeley/slipway/AsyncPaperDemo.java b/src/edu/berkeley/slipway/AsyncPaperDemo.java
new file mode 100644 (file)
index 0000000..d9428c3
--- /dev/null
@@ -0,0 +1,108 @@
+package edu.berkeley.slipway;
+
+import edu.berkeley.slipway.*;
+import com.atmel.fpslic.*;
+import static com.atmel.fpslic.FpslicConstants.*;
+import static com.atmel.fpslic.FpslicUtil.*;
+import edu.berkeley.slipway.gui.*;
+import java.awt.*;
+import java.awt.event.*;
+import java.awt.color.*;
+import org.ibex.util.*;
+import java.io.*;
+import java.util.*;
+import gnu.io.*;
+
+public class AsyncPaperDemo {
+
+    FtdiBoard fpslic;
+
+    public AsyncPaperDemo() throws Exception {
+        fpslic = new FtdiBoard();
+    }
+
+    public void main() throws Exception {
+
+        turnOnLeds();
+        setupScanCell();
+
+        Fpslic.Cell root = fpslic.cell(2, 2);
+            
+        root.yo(root.north());
+        root.ylut(~LUT_SELF);
+        root.c(YLUT);
+        root = root.north();
+
+        root.yo(root.east());
+        root.ylut(~LUT_SELF);
+        root.c(YLUT);
+        root = root.east();
+
+        root.yo(root.south());
+        root.ylut(~LUT_SELF);
+        root.c(YLUT);
+        root = root.south();
+
+        root.yo(root.west());
+        root.c(YLUT);
+        root = root.west();
+
+        root = fpslic.cell(3, 7);
+        root.h(1, true);
+        root.h(2, true);
+        root.wi(L1);
+        root.zi(L2);
+        root.c(YLUT);
+        root.t(TMUX_W);
+        root.b(false);
+        root.f(false);
+        root.ylut(LUT_SELF);
+        root.yi(EAST);
+        root.xlut(LUT_Z);
+        root.xo(false);
+
+        root.west().out(2, true);
+        root.west().h(2, true);
+        root.west().c(YLUT);
+
+        root.west().west().out(1, true);
+        root.west().west().h(1, true);
+        root.west().west().c(YLUT);
+
+        root.ne().xo(root);
+
+        runGui(24, 24);
+    }
+
+    private void turnOnLeds() {
+        for(int i=0; i<24; i++) {
+            fpslic.iob_bot(i, true).enableOutput(NORTH);
+            fpslic.iob_bot(i, false).enableOutput(NW);
+            fpslic.cell(i, 0).xlut(0xff);
+            fpslic.cell(i, 0).ylut(0xff);
+        }
+    }
+
+    private void setupScanCell() {
+        fpslic.cell(23,15).h(3, true);
+        fpslic.cell(23,15).yi(L3);
+        fpslic.cell(23,15).ylut(0xAA);
+        fpslic.iob_right(15, true).enableOutput(WEST);
+    }
+
+    private void runGui(int width, int height) throws Exception {
+        Gui vis = new Gui(fpslic, fpslic, width, height);
+        Frame fr = new Frame();
+        fr.addKeyListener(vis);
+        fr.setLayout(new BorderLayout());
+        fr.add(vis, BorderLayout.CENTER);
+        fr.pack();
+        fr.setSize(900, 900);
+        vis.repaint();
+        fr.repaint();
+        fr.show();
+        synchronized(Demo.class) { Demo.class.wait(); }
+    }
+}
+
+
index 3df2767..ce58538 100644 (file)
@@ -21,62 +21,7 @@ public class Demo {
     public static int PIPELEN=20;
 
     public static void main(String[] s) throws Exception {
-        FtdiBoard device = new FtdiBoard();
-        Fpslic at40k = device;
-
-        long begin = System.currentTimeMillis();
-        //FpslicUtil.readMode4(new ProgressInputStream("configuring fabric", System.in, 111740), device);
-        long end = System.currentTimeMillis();
-        Log.info(Demo.class, "finished in " + ((end-begin)/1000) + "s");
-        Thread.sleep(1000);
-        Log.info(Demo.class, "issuing command");
-
-        for(int i=0; i<24; i++) {
-            at40k.iob_bot(i, true).enableOutput(NORTH);
-            at40k.iob_bot(i, false).enableOutput(NW);
-            at40k.cell(i, 0).xlut(0xff);
-            at40k.cell(i, 0).ylut(0xff);
-        }
-
-        at40k.cell(23,15).h(3, true);
-        at40k.cell(23,15).yi(L3);
-        at40k.cell(23,15).ylut(0xAA);
-        at40k.iob_right(15, true).enableOutput(WEST);
-
-        device.flush();
-
-        Fpslic.Cell root = at40k.cell(10,20);
-            
-        root.yo(root.north());
-        root.ylut(~LUT_SELF);
-        root.c(YLUT);
-        root = root.north();
-
-        root.yo(root.east());
-        root.ylut(~LUT_SELF);
-        root.c(YLUT);
-        root = root.east();
-
-        root.yo(root.south());
-        root.ylut(~LUT_SELF);
-        root.c(YLUT);
-        root = root.south();
-
-        root.yo(root.west());
-        root.c(YLUT);
-        root = root.west();
-
-        Gui vis = new Gui(at40k, device);
-        Frame fr = new Frame();
-        fr.addKeyListener(vis);
-        fr.setLayout(new BorderLayout());
-        fr.add(vis, BorderLayout.CENTER);
-        fr.pack();
-        fr.setSize(900, 900);
-        vis.repaint();
-        fr.repaint();
-        fr.show();
-        synchronized(Demo.class) { Demo.class.wait(); }
+        new AsyncPaperDemo().main();
     }
 
     public static void mainw(String[] s) throws Exception {
index ab95011..cf2cfd7 100644 (file)
@@ -77,6 +77,7 @@ public class FtdiBoard extends Fpslic implements Board {
                 bytes[3] == (byte)'T' &&
                 bytes[4] == (byte)'S') {
                 System.out.println("\rsignature: got proper signature                  ");
+                chip.purge();
                 break;
             }
         }
@@ -89,6 +90,7 @@ public class FtdiBoard extends Fpslic implements Board {
                         while(callbacks.size() == 0) Thread.sleep(500);
                         byte b = in.readByte();
                         ByteCallback bc = (ByteCallback)callbacks.remove(0);
+                        //System.out.println("readback " + b + " in " + (System.currentTimeMillis()-bc.time));
                         bc.call(b);
                         synchronized(lock) {
                             lock.notifyAll();
@@ -111,7 +113,7 @@ public class FtdiBoard extends Fpslic implements Board {
         return cache[x][y][z];
     }
 
-    public void mode4(int z, int y, int x, int d) {
+    public synchronized void mode4(int z, int y, int x, int d) {
         try {
             if (cache[x & 0xff]==null) cache[x & 0xff] = new byte[24][];
             if (cache[x & 0xff][y & 0xff]==null) cache[x & 0xff][y & 0xff] = new byte[256];
@@ -141,19 +143,19 @@ public class FtdiBoard extends Fpslic implements Board {
         synchronized(lock) {
             try {
                 while (callbacks.size() >= limit) {
-                    System.out.println("block");
                     lock.wait(100);
-                    System.out.println("unblock => " + callbacks.size());
                 }
             } catch (Exception e) {
                 throw new RuntimeException(e);
             }
         }
+        bcb.time = System.currentTimeMillis();
         callbacks.add(bcb);
     }
 
     public static abstract class ByteCallback {
         public int result;
+        public long time;
         public abstract void call(byte b) throws Exception;
     }
 
index b5dd1a3..920e46b 100644 (file)
@@ -127,7 +127,7 @@ inline void conf(int z, int y, int x, int d) {
 \r
 ISR(SIG_FPGA_INTERRUPT15) { \r
   interrupt_count++;\r
-  fpga_interrupts(1);\r
+  //fpga_interrupts(1);\r
   sei();\r
 }\r
 \r
@@ -153,9 +153,8 @@ inline int hex(char c) {
 }\r
 \r
 int readFPGA() {\r
-  fpga_interrupts(0);\r
   int ret = FISUA;\r
-  fpga_interrupts(1);\r
+  //fpga_interrupts(1);\r
   return ret;\r
 }\r
 \r
@@ -177,6 +176,7 @@ int main() {
   cts(1);\r
 \r
   int x=0, y=0, z=0;\r
+  int flag=0;\r
   for(;;) {\r
     int i, d=0;\r
     int r = recv();\r
@@ -187,7 +187,8 @@ int main() {
         send('I');\r
         send('T');\r
         send('S');\r
-        PORTE |=  (1<<3);\r
+        fpga_interrupts(0);\r
+        if (flag) {PORTE |=  (1<<5);}\r
         break;\r
 \r
       case 1:\r
@@ -199,9 +200,10 @@ int main() {
         break;\r
 \r
       case 2:\r
+        flag=1;\r
         send(readFPGA());\r
         break;\r
-\r
+        /*\r
       case 3: {\r
         int32_t local_interrupt_count = interrupt_count;\r
         interrupt_count = 0;\r
@@ -211,7 +213,7 @@ int main() {
         send((local_interrupt_count >>  0) & 0xff);\r
         break;\r
       }\r
-\r
+        */\r
         /*\r
       case 3:\r
         //init_timer();\r
index c218649..1ab98ee 100644 (file)
@@ -56,12 +56,15 @@ public class Gui extends ZoomingPanel implements KeyListener, MouseMotionListene
     }
 
     public Gui(Fpslic at40k, FtdiBoard drone) {
+        this(at40k, drone, 24, 24);
+    }
+    public Gui(Fpslic at40k, FtdiBoard drone, int width, int height) {
         this.at40k = at40k;
         this.drone = drone;
         for(int i=0; i<ca.length; i++)
             ca[i] = new Cell[128];
-        for(int x=9; x<14; x++)
-            for(int y=19; y<at40k.getHeight(); y++)
+        for(int x=0; x<width; x++)
+            for(int y=0; y<height; y++)
                 new Cell(x,y, at40k.cell(x, y));
 
 
@@ -102,19 +105,21 @@ public class Gui extends ZoomingPanel implements KeyListener, MouseMotionListene
         }
         public void draw() {
 
-            drawWires();
-            drawLocal();
-
-            AffineTransform t = g.getTransform();
-
-            drawBuffer();
-            g.transform(rotateInnerTransform());
-            drawMux();
-            drawRegister();
-            drawInternalRouting();
-            g.setTransform(t);
-
-            drawGates();
+            if (cell.relevant() || scanme) {
+                drawWires();
+                drawLocal();
+                
+                AffineTransform t = g.getTransform();
+                
+                drawBuffer();
+                g.transform(rotateInnerTransform());
+                drawMux();
+                drawRegister();
+                drawInternalRouting();
+                g.setTransform(t);
+                
+                drawGates();
+            }
             drawBorder();
         }
         public void drawBuffer() {
@@ -142,11 +147,13 @@ public class Gui extends ZoomingPanel implements KeyListener, MouseMotionListene
         public void drawWires() {
             gg.color(MAGENTA);
             for(int i=0; i<5; i++)
+                if (i!=3)
                 if (cell.hwire(i).isDriven()) {
                     gg.color(cell.out(i) ? ORANGE : MAGENTA);
                     gg.line(0, SIZE-(2*(1+RINGS)+2*i), SIZE, SIZE-(2*(1+RINGS)+2*i));
                 }
             for(int i=0; i<5; i++)
+                if (i!=3)
                 if (cell.vwire(i).isDriven()) {
                     gg.color(cell.out(i) ? ORANGE : MAGENTA);
                     gg.line(2*(1+RINGS)+2*i, 0, 2*(1+RINGS)+2*i, SIZE);
@@ -415,18 +422,27 @@ public class Gui extends ZoomingPanel implements KeyListener, MouseMotionListene
                 //g.drawRect(0, 0, CORE_SIZE, CORE_SIZE);
                 //g.scale(1, -1);
 
-                Gate gate = new Muller();
 
                 g.translate(2,   5f);
-                if (xlut_relevant(cell))
+                if (xlut_relevant(cell) || scanme) {
+                    Gate gate = getGate(cell.xlut(), true);
                     gate.draw(g,
                               !xknown ? Color.gray : xon ? Color.red : Color.white,
-                              (xon && xknown) ? Color.white : Color.red);
+                              (xon && xknown) ? Color.white : Color.red,
+                              xon ? Color.white : Color.red
+                              );
+                }
+
                 g.translate(34f, 0f);
-                if (cell.ylut_relevant())
+                if (cell.ylut_relevant() || scanme) {
+                    Gate gate = getGate(cell.ylut(), false);
                     gate.draw(g,
                               !yknown ? Color.gray : yon ? Color.blue : Color.white,
-                              (yon && yknown) ? Color.white : Color.blue);
+                              (yon && yknown) ? Color.white : Color.blue,
+                              yon ? Color.white : Color.blue
+                              );
+                }
+
             } finally {
                 g.setTransform(t);
             }
@@ -540,6 +556,7 @@ public class Gui extends ZoomingPanel implements KeyListener, MouseMotionListene
         repaint();
     }
     public void drawKeyboard(Image keyboardImage, Graphics2D g) {
+        /*
                 int width = 300;
                 int height = (keyboardImage.getHeight(null) * width) / keyboardImage.getWidth(null);
                 g.drawImage(keyboardImage,
@@ -548,6 +565,7 @@ public class Gui extends ZoomingPanel implements KeyListener, MouseMotionListene
                             0, 0,
                             keyboardImage.getWidth(null), keyboardImage.getHeight(null),
                             null);
+        */
     }
 
     public void _paint(Graphics2D g) {
@@ -759,12 +777,13 @@ public class Gui extends ZoomingPanel implements KeyListener, MouseMotionListene
                         } else {
                             drone.readBus(new BCB(c, XLUT));
                         }
+                        if (!cell.yo())
                         for(Fpslic.Cell c2 : new Fpslic.Cell[] { cell.north(), cell.south(), cell.east(), cell.west() })
                             if (c2!=null && !c2.relevant()) {
                                 scan(at40k, cell, NONE, false);
                                 c2.yo(cell);
-                                scan(at40k, c2, NONE, true);
                                 c2.c(YLUT);
+                                scan(at40k, c2, NONE, true);
                                 drone.readBus(new BCB(c, YLUT));
                                 scan(at40k, c2, NONE, false);
                                 c2.yi(NONE);
@@ -778,6 +797,7 @@ public class Gui extends ZoomingPanel implements KeyListener, MouseMotionListene
                         } else {
                             drone.readBus(new BCB(c, YLUT));
                         }
+                        if (!cell.xo())
                         for(Fpslic.Cell c2 : new Fpslic.Cell[] { cell.nw(), cell.sw(), cell.ne(), cell.se() })
                             if (c2!=null && !c2.relevant()) {
                                 scan(at40k, cell, NONE, false);
@@ -791,6 +811,35 @@ public class Gui extends ZoomingPanel implements KeyListener, MouseMotionListene
                             }
                         c.xknown = false;
                         break;
+                    case ZMUX: {
+                        scan(at40k, cell, NONE, false);
+                        c.xknown = false;
+                        c.yknown = false;
+                        if (!cell.xo())
+                        for(Fpslic.Cell c2 : new Fpslic.Cell[] { cell.nw(), cell.sw(), cell.ne(), cell.se() })
+                            if (c2!=null && !c2.relevant()) {
+                                scan(at40k, cell, NONE, false);
+                                c2.xo(cell);
+                                scan(at40k, c2, NONE, true);
+                                c2.c(XLUT);
+                                drone.readBus(new BCB(c, XLUT));
+                                scan(at40k, c2, NONE, false);
+                                c2.xi(NONE);
+                                return;
+                            }
+                        if (!cell.yo())
+                        for(Fpslic.Cell c2 : new Fpslic.Cell[] { cell.north(), cell.south(), cell.east(), cell.west() })
+                            if (c2!=null && !c2.relevant()) {
+                                c2.yo(cell);
+                                c2.c(YLUT);
+                                scan(at40k, c2, NONE, true);
+                                drone.readBus(new BCB(c, YLUT));
+                                scan(at40k, c2, NONE, false);
+                                c2.yi(NONE);
+                                break;
+                            }
+                        return;
+                    }
                 }
                 
             }
@@ -879,6 +928,28 @@ public class Gui extends ZoomingPanel implements KeyListener, MouseMotionListene
         }
     }
 
+    public Gate getGate(byte lut, boolean xlut) {
+        for(Gate g : knownGates)
+            if (g.setLut(lut, xlut))
+                return g;
+        return unknownGate;
+    }
+
+    public Gate unknownGate = new Circle("?");
+    public Gate[] knownGates =
+        new Gate[] {
+            new And(),
+            new Or(),
+            new Circle("0") { public boolean result(boolean x, boolean y, boolean z) { return false; } },
+            new Circle("1") { public boolean result(boolean x, boolean y, boolean z) { return true; } },
+            new Circle("x") { public boolean result(boolean x, boolean y, boolean z) { return x; } },
+            new Circle("y") { public boolean result(boolean x, boolean y, boolean z) { return y; } },
+            new Circle("z") { public boolean result(boolean x, boolean y, boolean z) { return z; } },
+            new Circle("~x") { public boolean result(boolean x, boolean y, boolean z) { return !x; } },
+            new Circle("~y") { public boolean result(boolean x, boolean y, boolean z) { return !y; } },
+            new Circle("~z") { public boolean result(boolean x, boolean y, boolean z) { return !z; } }
+        };
+
     // FIXME: 2-input gates?
     public abstract class Gate {
         public boolean invert_x;
@@ -886,7 +957,7 @@ public class Gui extends ZoomingPanel implements KeyListener, MouseMotionListene
         public boolean invert_z;
         public boolean invert_out;
         public abstract boolean result(boolean x, boolean y, boolean z);
-        public void draw(Graphics2D g, Color fill, Color stroke) {
+        public void draw(Graphics2D g, Color fill, Color stroke, Color text) {
             GeneralPath p = new GeneralPath();
             makePath(p);
             g.setColor(fill);
@@ -896,28 +967,36 @@ public class Gui extends ZoomingPanel implements KeyListener, MouseMotionListene
 
             AffineTransform a = g.getTransform();
             g.scale(1, -1);
-            g.setColor(Color.white);
-            if (label() != null) g.drawString(label(), 7, -14);
+            if (label() != null) {
+                g.setColor(text);
+                g.drawString(label(), 7, -14);
+            }
             g.setTransform(a);
         }
         public String label() { return null; }
-        public boolean setLut(int lut) {
+        public boolean setLut(int lut, boolean xlut) {
+            /*
             for(int inverts = 0; inverts < 16; inverts++) {
                 invert_x   = (inverts & 0x1) != 0;
                 invert_y   = (inverts & 0x2) != 0;
                 invert_z   = (inverts & 0x4) != 0;
                 invert_out = (inverts & 0x8) != 0;
+            */
+                boolean good = true;
                 for(int bit=0; bit<8; bit++) {
-                    boolean x = (bit & 0x1) != 0;
-                    boolean y = (bit & 0x2) != 0;
+                    boolean x = xlut ? ((bit & 0x1) != 0) : ((bit & 0x2) != 0);
+                    boolean y = xlut ? ((bit & 0x2) != 0) : ((bit & 0x1) != 0);
                     boolean z = (bit & 0x4) != 0;
                     boolean expect = (lut & (1<<bit)) != 0;
 
                     // FIXME symmetry issues here....
                     boolean result = result(x ^ invert_x, y ^ invert_y, z ^ invert_z) ^ invert_out;
-                    if (result == expect) return true;
+                    if (result != expect) { good = false; break; }
                 }
+                if (good) return true;
+                /*
             }
+                */
             return false;
         }
         public abstract void makePath(GeneralPath gp);
@@ -926,11 +1005,11 @@ public class Gui extends ZoomingPanel implements KeyListener, MouseMotionListene
     public class Or extends Gate {
         public boolean result(boolean x, boolean y, boolean z) { return x || y || z; }
         public String label() { return "+"; }
-        public void draw(Graphics2D g, Color fill, Color stroke) {
+        public void draw(Graphics2D g, Color fill, Color stroke, Color text) {
             AffineTransform at = g.getTransform();
             g.scale(1, -1);
             g.translate(0, -40);
-            super.draw(g, fill, stroke);
+            super.draw(g, fill, stroke, text);
             g.setTransform(at);
         }
         public void makePath(GeneralPath gp) {
@@ -948,6 +1027,22 @@ public class Gui extends ZoomingPanel implements KeyListener, MouseMotionListene
         }
     }
 
+    public class Circle extends Gate {
+        String label;
+        public Circle(String label) { this.label = label; }
+        public boolean result(boolean x, boolean y, boolean z) { return false; }
+        public String label() { return label; }
+        public void makePath(GeneralPath gp) {
+            int S = 30;
+            gp.moveTo(0, S/2);
+            gp.lineTo(S/2, S);
+            gp.lineTo(S, S/2);
+            gp.lineTo(S/2, 0);
+            gp.lineTo(0, S/2);
+            gp.closePath();
+        }
+    }
+
     public class And extends Gate {
         public boolean result(boolean x, boolean y, boolean z) { return x && y && z; }
         public String label() { return "&"; }
@@ -963,8 +1058,8 @@ public class Gui extends ZoomingPanel implements KeyListener, MouseMotionListene
 
     public class Muller extends And {
         public String label() { return "C"; }
-        public void draw(Graphics2D g, Color fill, Color stroke) {
-            super.draw(g, fill, stroke);
+        public void draw(Graphics2D g, Color fill, Color stroke, Color text) {
+            super.draw(g, fill, stroke, text);
             g.setColor(stroke);
             g.drawLine(0, 0, 23, 0);
         }
@@ -973,8 +1068,8 @@ public class Gui extends ZoomingPanel implements KeyListener, MouseMotionListene
     public class Xor extends Or {
         public boolean result(boolean x, boolean y, boolean z) { return x ^ y ^ z; }
         public String label() { return "^"; }
-        public void draw(Graphics2D g, Color fill, Color stroke) {
-            super.draw(g, fill, stroke);
+        public void draw(Graphics2D g, Color fill, Color stroke, Color text) {
+            super.draw(g, fill, stroke, text);
             g.setColor(stroke);
             AffineTransform at = g.getTransform();
             g.scale(1, -1);
index 66b2dc4..76f23c8 100644 (file)
@@ -109,14 +109,16 @@ public abstract class ZoomingPanel extends JComponent implements KeyListener, Mo
         }
         Gui.Cell cell = whichCell(mousex, mousey);
         Fpslic.Cell c = cell == null ? null : cell.cell;
-        if ((k.getModifiers() & k.ALT_MASK) != 0)
+        if ((k.getModifiers() & k.ALT_MASK) != 0 || (k.getModifiers() & k.META_MASK) != 0)
             switch(k.getKeyCode()) {
                 case VK_S:
                     writeMode4();
                     break;
+                    /*
                 case VK_O:
                     readMode4();
                     break;
+                    */
                 case VK_0: {
                     c.xlut(0x00);
                     c.ylut(0x00);
@@ -129,6 +131,69 @@ public abstract class ZoomingPanel extends JComponent implements KeyListener, Mo
                     repaint();
                     return;
                 }
+                case VK_BACK_QUOTE: {
+                    c.xlut(0xff);
+                    c.ylut(0xff);
+                    repaint();
+                    return;
+                }
+                case VK_A: {
+                    c.xlut(LUT_SELF & LUT_OTHER);
+                    c.ylut(LUT_SELF & LUT_OTHER);
+                    repaint();
+                    return;
+                }
+                case VK_2:
+                case VK_G:
+                    {
+                    c.generalized_c_element();
+                    repaint();
+                    return;
+                }
+                case VK_3: {
+                    c.generalized_c_element();
+                    c.xlut((LUT_SELF & ~LUT_OTHER) | (LUT_Z & ~LUT_OTHER) | (LUT_Z & LUT_SELF & LUT_OTHER));
+                    c.ylut(LUT_Z);
+                    c.c(XLUT);
+                    repaint();
+                    return;
+                }
+                case VK_Z: {
+                    c.xlut(LUT_Z);
+                    c.ylut(LUT_Z);
+                    repaint();
+                    return;
+                }
+                case VK_W: {
+                    c.xlut(LUT_Z);
+                    c.ylut(LUT_SELF);
+                    c.t(TMUX_W);
+                    repaint();
+                    return;
+                }
+                case VK_T: {
+                    //c.t(;
+                    repaint();
+                    return;
+                }
+                case VK_O: {
+                    c.xlut(LUT_SELF | LUT_OTHER);
+                    c.ylut(LUT_SELF | LUT_OTHER);
+                    repaint();
+                    return;
+                }
+                case VK_X: {
+                    c.xlut(LUT_SELF);
+                    c.ylut(LUT_OTHER);
+                    repaint();
+                    return;
+                }
+                case VK_Y: {
+                    c.xlut(LUT_OTHER);
+                    c.ylut(LUT_SELF);
+                    repaint();
+                    return;
+                }
             }
 
         else switch(k.getKeyCode()) {