From dfa9f65eb0614beb6fe0d7e7660a300087fc656d Mon Sep 17 00:00:00 2001 From: adam Date: Sun, 24 Sep 2006 07:36:03 +0100 Subject: [PATCH] fixed heinous bug in switchbox routing --- bitstreams/slipway_drone.bst | 6518 +++++++++++------------- src/com/atmel/fpslic/Fpslic.java | 55 +- src/com/atmel/fpslic/FpslicBoot.java | 1 + src/com/atmel/fpslic/FpslicBootPins.java | 1 + src/com/atmel/fpslic/FpslicBootPinsUsb.java | 4 + src/com/atmel/fpslic/FpslicConstants.java | 6 +- src/edu/berkeley/slipway/AsyncPaperDemo.java | 108 + src/edu/berkeley/slipway/Demo.java | 57 +- src/edu/berkeley/slipway/FtdiBoard.java | 8 +- src/edu/berkeley/slipway/FtdiBoardSlave.c | 14 +- src/edu/berkeley/slipway/gui/Gui.java | 163 +- src/edu/berkeley/slipway/gui/ZoomingPanel.java | 67 +- 12 files changed, 3212 insertions(+), 3790 deletions(-) create mode 100644 src/edu/berkeley/slipway/AsyncPaperDemo.java diff --git a/bitstreams/slipway_drone.bst b/bitstreams/slipway_drone.bst index 4774557..dfecad4 100644 --- a/bitstreams/slipway_drone.bst +++ b/bitstreams/slipway_drone.bst @@ -4,8 +4,8 @@ 00000000 10000000 00001101 -00000010 -00011001 +00000001 +11011101 00000000 00000000 11010100 @@ -95,9 +95,9 @@ 00001100 01100011 00001100 -11110100 +11101010 00001100 -10000111 +01111101 00001100 01100011 00000011 @@ -139,7 +139,7 @@ 00001100 01100011 00001100 -11000001 +01100110 00001100 01100011 00000100 @@ -163,8 +163,8 @@ 00001000 10000111 10110000 -11100100 -11110000 +11101100 +11111110 00000010 00000101 00001101 @@ -192,7 +192,7 @@ 10000111 11100001 00001100 -10011011 +10010001 00001100 00000000 00101001 @@ -644,84 +644,155 @@ 10001010 00101011 00001000 -11111000 -00111101 +00011111 +00001111 00010110 00001000 10001000 00010110 00001000 10001111 +00001111 +00001111 +00010001 +10001111 +10011111 +10101111 +10111111 +10000000 +00010111 +00001000 10000000 +00010111 +00001000 +10000111 +01100110 10010000 +01100111 +10100000 +01101000 +10110000 +01101001 00000001 -11110001 -11111111 -10011000 -10000000 -10001010 00010111 00001000 -10000000 +10001000 00010111 00001000 +10001111 +10100001 +10110001 +10000000 +01100110 +10010000 +01100111 +10100000 +01101000 +00011000 +00001000 +10000000 +00011000 +00001000 +10000111 +10110000 +01101001 +01111000 +10111111 +10101111 +10011111 +10001111 +00001111 +00011000 +00001000 +10001000 +00011000 +00001000 +10001111 +00001111 +00001111 +00011111 +00011000 +11111000 +00111101 +10000000 +10010000 +00011001 +00001000 +10000000 +00011001 +00001000 10000111 +00000001 +11110001 +11111111 +10011000 +10000000 +10001010 00110000 10001001 +00011001 +00001000 +10001000 +00011001 +00001000 +10001111 10011001 10000111 10010000 11000000 00001000 10001001 -00010111 -00001000 -10001000 -00010111 -00001000 -10001111 10000001 10000110 +00011010 +00001000 +10000000 +00011010 +00001000 +10000111 00111000 10001001 10011001 10000111 10010000 10000111 -00011000 +10010000 00001000 -10000000 -00011000 +00011010 00001000 -10000111 -10010000 +10001000 +00011010 00001000 +10001111 10001001 10000001 10000110 00110000 10001001 10011001 -00011000 +10000111 +10010000 +00011011 00001000 -10001000 -00011000 +10000000 +00011011 00001000 -10001111 10000111 -10010000 11000111 00001000 10001111 10011111 00001000 -00100000 -00011001 +10000100 +10011001 00001000 -10000000 -00011001 +00011011 00001000 -10000111 +10001000 +00011011 +00001000 +10001111 +00100000 01101110 00110000 01101111 @@ -729,13 +800,13 @@ 00111111 10000100 00100000 -00111000 -00011001 +00011100 00001000 -10001000 -00011001 +10000000 +00011100 00001000 -10001111 +10000111 +00111000 00010100 00100000 00110000 @@ -743,13 +814,13 @@ 01101010 10010000 01101011 -01000000 -00011010 +00011100 00001000 -10000000 -00011010 +10001000 +00011100 00001000 -10000111 +10001111 +01000000 01010000 00101000 00111001 @@ -757,13 +828,13 @@ 01000001 01010000 11001010 +00011101 00001000 -00011010 +10000000 +00011101 00001000 -10001000 -00011010 +10000111 00001000 -10001111 00100000 01101100 00110000 @@ -771,13 +842,13 @@ 00101111 00111111 10000100 -00100000 -00011011 +00011101 00001000 -10000000 -00011011 +10001000 +00011101 00001000 -10000111 +10001111 +00100000 00111000 00010100 00100000 @@ -785,13 +856,13 @@ 10000000 01110000 10010000 -01110001 -00011011 +00011110 00001000 -10001000 -00011011 +10000000 +00011110 00001000 -10001111 +10000111 +01110001 01000000 01010000 00101000 @@ -799,147 +870,76 @@ 00010001 01000001 01010000 +00011110 +00001000 +10001000 +00011110 +00001000 +10001111 11001010 -00011100 00001000 +00100000 +01101010 +00110000 +01101011 10000000 -00011100 +01101110 +00011111 00001000 -10000111 +10000000 +00011111 00001000 +10000111 +10010000 +01101111 +00101000 +00111001 +00001001 +01100001 +11100000 +01101010 00011111 -00001111 -00001111 -00001111 -00010001 -10001111 -10011111 -00011100 00001000 10001000 -00011100 +00011111 00001000 10001111 -10101111 -10111111 +11110000 +01101011 +11100000 +11111011 +11100000 10000000 -01100110 +01101010 10010000 -01100111 -10100000 -01101000 -00011101 +00100000 00001000 10000000 -00011101 +00100000 00001000 10000111 -10110000 -01101001 +01101011 00000001 -10100001 -10110001 +00100100 +10000000 +10010010 +00010100 10000000 -01100110 10010000 -00011101 +00100000 00001000 10001000 -00011101 -00001000 -10001111 -01100111 -10100000 -01101000 -10110000 -01101001 -10000000 -10000011 -10001000 -00011110 -00001000 -10000000 -00011110 -00001000 -10000111 -10000111 -01111000 -10111111 -10101111 -10011111 -10001111 -00001111 -00001111 -00011110 -00001000 -10001000 -00011110 -00001000 -10001111 -00001111 -00011111 -00011000 -00010111 -00010011 -10000100 -10010000 -10010011 -00011111 -00001000 -10000000 -00011111 -00001000 -10000111 -10011000 -10010111 -10011001 -00001000 00100000 -01101010 -00110000 -01101011 -00011111 -00001000 -10001000 -00011111 00001000 10001111 -10000000 -01101110 10010000 -01101111 -00101000 -00111001 -00001001 -01100001 -00100000 -00001000 -10000000 -00100000 -00001000 -10000111 -11100000 -01101010 -11110000 01101011 -11100000 -11111011 -11100000 10000000 -00100000 -00001000 -10001000 -00100000 -00001000 -10001111 01101010 -10010000 -01101011 -00000001 -00100100 -10000000 -10010010 -00010100 +00100000 +01101110 +00110000 +01101111 00100001 00001000 10000000 @@ -947,19 +947,20 @@ 00001000 10000111 10000000 -10010000 +01101010 10010000 01101011 -10000000 -01101010 +00101000 +00111001 +11000001 00100000 -01101110 00100001 00001000 10001000 00100001 00001000 10001111 +01101110 00110000 01101111 10000000 @@ -967,770 +968,755 @@ 10010000 01101011 00101000 -00111001 00100010 00001000 10000000 00100010 00001000 10000111 -11000001 -00100000 +00111001 +00111100 +10000000 01101110 -00110000 +10010000 01101111 -10000000 +00100000 01101010 -10010000 00100010 00001000 10001000 00100010 00001000 10001111 -01101011 -00101000 -00111001 -00111100 -10000000 -01101110 -10010000 -01101111 -00100011 -00001000 -10000000 -00100011 -00001000 -10000111 -00100000 -01101010 00110000 01101011 10000010 10010011 10000001 10010010 +10100100 +10000000 00100011 00001000 -10001000 +10000000 00100011 00001000 -10001111 -10100100 -10000000 +10000111 01100000 10010000 01100001 10100000 01100010 10110000 -00100100 -00001000 -10000000 -00100100 -00001000 -10000111 01100011 00000001 +00100011 +00001000 +10001000 +00100011 +00001000 +10001111 10100001 10110001 10000000 01100000 10010000 01100001 +10100000 +01100010 00100100 00001000 -10001000 +10000000 00100100 00001000 -10001111 -10100000 -01100010 +10000111 10110000 01100011 00111111 00111011 00000010 00111011 -00100101 -00001000 -10000000 -00100101 -00001000 -10000111 00110001 00111011 +00100100 +00001000 +10001000 +00100100 +00001000 +10001111 00101111 10000000 01101010 10010000 01101011 00100000 +01101110 +00110000 00100101 00001000 -10001000 +10000000 00100101 00001000 -10001111 -01101110 -00110000 +10000111 01101111 10000010 10010011 10000000 10010010 11001100 -00100110 -00001000 -10000000 -00100110 -00001000 -10000111 11101100 01000000 +00100101 +00001000 +10001000 +00100101 +00001000 +10001111 01100000 01010000 01100001 01100000 01100010 01110000 +01100011 +01001111 00100110 00001000 -10001000 +10000000 00100110 00001000 -10001111 -01100011 -01001111 +10000111 01011111 01101111 01111111 00111111 00100000 01101010 -00100111 -00001000 -10000000 -00100111 -00001000 -10000111 00110000 01101011 +00100110 +00001000 +10001000 +00100110 +00001000 +10001111 10000000 01101110 10010000 01101111 10000010 10010011 +10000001 +01000000 00100111 00001000 -10001000 +10000000 00100111 00001000 -10001111 -10000001 -01000000 +10000111 01100000 01010000 01100001 01100000 01100010 01110000 -00101000 -00001000 -10000000 -00101000 -00001000 -10000111 01100011 01111110 +00100111 +00001000 +10001000 +00100111 +00001000 +10001111 10001110 10011001 10000111 10010000 00001000 00011111 +00001111 +00001111 00101000 00001000 -10001000 +10000000 00101000 00001000 -10001111 -00001111 -00001111 +10000111 00001111 00010001 00101111 00111111 10001111 10011111 -00101001 -00001000 -10000000 -00101001 -00001000 -10000111 11101111 11111111 +00101000 +00001000 +10001000 +00101000 +00001000 +10001111 00100000 01110000 00110000 01110001 10000000 01101100 +10010000 +01101101 00101001 00001000 -10001000 +10000000 00101001 00001000 -10001111 -10010000 -01101101 +10000111 00101000 00111001 11010001 11100000 01110000 11110000 -00101010 -00001000 -10000000 -00101010 -00001000 -10000111 01110001 11100010 +00101001 +00001000 +10001000 +00101001 +00001000 +10001111 11111111 11100000 10000000 01110000 10010000 01110001 +00000001 +00100100 00101010 00001000 -10001000 +10000000 00101010 00001000 -10001111 -00000001 -00100100 +10000111 10000000 10010010 00111100 10010000 01110001 10000000 -00101011 -00001000 -10000000 -00101011 -00001000 -10000111 01110000 11101100 +00101010 +00001000 +10001000 +00101010 +00001000 +10001111 01111000 00000100 10000000 10010000 11110110 01010101 +11111111 +11101111 00101011 00001000 -10001000 +10000000 00101011 00001000 -10001111 -11111111 -11101111 +10000111 10011111 10001111 00111111 00101111 00001111 00001111 -00101100 -00001000 -10000000 -00101100 -00001000 -10000111 00001111 00011111 +00101011 +00001000 +10001000 +00101011 +00001000 +10001111 00011000 01001000 00100000 01101100 00110000 01101101 +00101111 +00111111 00101100 00001000 -10001000 +10000000 00101100 00001000 -10001111 -00101111 -00111111 +10000111 10000100 00100000 00111000 00010100 00100000 00110000 -00101101 -00001000 -10000000 -00101101 -00001000 -10000111 10000000 01110000 +00101100 +00001000 +10001000 +00101100 +00001000 +10001111 10010000 01110001 00101000 00111001 01101001 11100000 +01101100 +11110000 00101101 00001000 -10001000 +10000000 00101101 00001000 -10001111 -01101100 -11110000 +10000111 01101101 11100010 11111111 01000000 10000000 01101100 -00101110 -00001000 -10000000 -00101110 -00001000 -10000111 10010000 01101101 +00101101 +00001000 +10001000 +00101101 +00001000 +10001111 00000001 00100100 10000000 10010010 00010100 10000000 +10010000 +10010000 00101110 00001000 -10001000 +10000000 00101110 00001000 -10001111 -10010000 -10010000 +10000111 01101101 10000000 01101100 00111010 00000010 00111010 -00101111 -00001000 -10000000 -00101111 -00001000 -10000111 00000001 00111010 +00101110 +00001000 +10001000 +00101110 +00001000 +10001111 01010101 00001000 00011111 00001111 00001111 00001111 +00010001 00101111 -00001000 -10001000 00101111 00001000 -10001111 -00010001 +10000000 00101111 +00001000 +10000111 00111111 10001111 10011111 10101111 10111111 11101111 -00110000 -00001000 -10000000 -00110000 -00001000 -10000111 11111111 01011100 +00101111 +00001000 +10001000 +00101111 +00001000 +10001111 00000110 10001001 10010000 10010000 01100101 10000000 +01100100 +01011011 00110000 00001000 -10001000 +10000000 00110000 00001000 -10001111 -01100100 -01011011 +10000111 00000110 10001010 10010000 10010000 01100101 10000000 -00110001 -00001000 -10000000 -00110001 -00001000 -10000111 01100100 00100000 +00110000 +00001000 +10001000 +00110000 +00001000 +10001111 01101110 00110000 01101111 00101111 00111111 10000100 +00100000 +00111000 00110001 00001000 -10001000 +10000000 00110001 00001000 -10001111 -00100000 -00111000 +10000111 00010100 00100000 00110000 10000000 01101010 10010000 -00110010 -00001000 -10000000 -00110010 -00001000 -10000111 01101011 00101000 +00110001 +00001000 +10001000 +00110001 +00001000 +10001111 00111001 00001001 01011110 11100000 01101110 11110000 +01101111 +10001100 00110010 00001000 -10001000 +10000000 00110010 00001000 -10001111 -01101111 -10001100 +10000111 11100000 11111011 10000000 10000000 01101110 10010000 -00110011 -00001000 -10000000 -00110011 -00001000 -10000111 01101111 00000001 +00110010 +00001000 +10001000 +00110010 +00001000 +10001111 00100100 10000000 10010010 00010100 10000000 10010000 +10010000 +01101111 00110011 00001000 -10001000 +10000000 00110011 00001000 -10001111 -10010000 -01101111 +10000111 10000000 01101110 00100000 01101110 00110000 01101111 -00110100 -00001000 -10000000 -00110100 -00001000 -10000111 10000000 01101010 +00110011 +00001000 +10001000 +00110011 +00001000 +10001111 10010000 01101011 00101000 00111001 00001001 01000010 +00100000 +01101110 00110100 00001000 -10001000 +10000000 00110100 00001000 -10001111 -00100000 -01101110 +10000111 00110000 01101111 10000000 01101010 10010000 01101011 -00110101 -00001000 -10000000 -00110101 -00001000 -10000111 00101000 00111001 +00110100 +00001000 +10001000 +00110100 +00001000 +10001111 00010100 10000000 01101010 10010000 01101011 00100000 +01101110 +00110000 00110101 00001000 -10001000 +10000000 00110101 00001000 -10001111 -01101110 -00110000 +10000111 01101111 10000010 10010011 10000000 10010010 01010100 -00110110 -00001000 -10000000 -00110110 -00001000 -10000111 10000000 01100000 +00110101 +00001000 +10001000 +00110101 +00001000 +10001111 10010000 01100001 10100000 01100010 10110000 01100011 +00000001 +10100001 00110110 00001000 -10001000 +10000000 00110110 00001000 -10001111 -00000001 -10100001 +10000111 10110001 10000000 01100000 10010000 01100001 10100000 -00110111 -00001000 -10000000 -00110111 -00001000 -10000111 01100010 10110000 +00110110 +00001000 +10001000 +00110110 +00001000 +10001111 01100011 00111111 00010101 10000000 01101110 10010000 +01101111 +00100000 00110111 00001000 -10001000 +10000000 00110111 00001000 -10001111 -01101111 -00100000 +10000111 01101010 00110000 01101011 10000010 10010011 10000001 -00111000 -00001000 -10000000 -00111000 -00001000 -10000111 10010010 01000100 +00110111 +00001000 +10001000 +00110111 +00001000 +10001111 11011101 10001011 10010000 10010000 01100101 10000000 +01100100 +10011011 00111000 00001000 -10001000 +10000000 00111000 00001000 -10001111 -01100100 -10011011 +10000111 10001111 10000000 10001111 01111000 11111111 11101111 -00111001 -00001000 -10000000 -00111001 -00001000 -10000111 10111111 10101111 +00111000 +00001000 +10001000 +00111000 +00001000 +10001111 10011111 10001111 00111111 00101111 00001111 00001111 +00001111 +00011111 00111001 00001000 -10001000 +10000000 00111001 00001000 -10001111 -00001111 -00011111 +10000111 00011000 11001111 11011111 11011110 11001101 10001100 -00111010 -00001000 -10000000 -00111010 -00001000 -10000111 10000110 00010111 +00111001 +00001000 +10001000 +00111001 +00001000 +10001111 00010000 01101011 00010000 01101010 00010000 01101111 +00010000 +01101110 00111010 00001000 -10001000 +10000000 00111010 00001000 -10001111 -00010000 -01101110 +10000111 00010000 01110001 00010000 01110000 00010000 01101101 -00111011 -00001000 -10000000 -00111011 -00001000 -10000111 00010000 01101100 +00111010 +00001000 +10001000 +00111010 +00001000 +10001111 00010000 00011001 10001010 10001000 10001010 01011001 +10001111 +10001011 00111011 00001000 -10001000 +10000000 00111011 00001000 -10001111 -10001111 -10001011 +10000111 00011111 01111000 10000000 01100000 10010000 01100001 -00111100 -00001000 -10000000 -00111100 -00001000 -10000111 10100000 01100010 +00111011 +00001000 +10001000 +00111011 +00001000 +10001111 10110000 01100011 00111111 00000010 10100001 10110001 +10000000 +01100000 00111100 00001000 -10001000 +10000000 00111100 00001000 -10001111 -10000000 -01100000 +10000111 10010000 01100001 10100000 01100010 10110000 01100011 -00111101 +00111111 +11000000 +00111100 00001000 -10000000 -00111101 +10001000 +00111100 00001000 -10000111 -00111111 +10001111 +11010000 00100000 01101010 00110000 @@ -1740,24 +1726,24 @@ 10010000 00111101 00001000 -10001000 +10000000 00111101 00001000 -10001111 +10000111 01101111 10000010 10010011 00001001 -00110010 +01000011 11100000 01101010 11110000 -00111110 +00111101 00001000 -10000000 -00111110 +10001000 +00111101 00001000 -10000111 +10001111 01101011 11100000 11111011 @@ -1768,10 +1754,10 @@ 01101011 00111110 00001000 -10001000 +10000000 00111110 00001000 -10001111 +10000111 00000001 00100100 10000000 @@ -1780,12 +1766,12 @@ 10000000 10010000 10010000 -00111111 +00111110 00001000 -10000000 -00111111 +10001000 +00111110 00001000 -10000111 +10001111 01101011 10000000 01101010 @@ -1796,24 +1782,24 @@ 10000000 00111111 00001000 -10001000 +10000000 00111111 00001000 -10001111 +10000111 01101010 10010000 01101011 00101000 00111001 00001001 -00111000 +01001001 00100000 -01000000 +00111111 00001000 -10000000 -01000000 +10001000 +00111111 00001000 -10000111 +10001111 01101110 00110000 01101111 @@ -1824,24 +1810,24 @@ 00101000 01000000 00001000 -10001000 +10000000 01000000 00001000 -10001111 +10000111 00111001 00001100 -00011110 +00101111 10000000 01101010 10010000 01101011 00100000 -01000001 +01000000 00001000 -10000000 -01000001 +10001000 +01000000 00001000 -10000111 +10001111 01101110 00110000 01101111 @@ -1852,179 +1838,206 @@ 00001100 01000001 00001000 -10001000 +10000000 01000001 00001000 -10001111 -00011110 +10000111 +00101111 00111011 -00011111 +00110000 00111011 11111111 11100111 11110000 11100001 +01000001 +00001000 +10001000 +01000001 +00001000 +10001111 +00001001 +00110000 +11100010 +00001001 +00010011 +11101110 +00001001 +10101001 01000010 00001000 10000000 01000010 00001000 10000111 -00001001 -00011111 -11100010 -00001100 -00111000 -11100010 -00001001 -01100101 +00100000 +01101100 +00110000 +01101101 +00101111 +00111111 +10000100 +00100000 01000010 00001000 10001000 01000010 00001000 10001111 -11100011 -00001001 -10100110 -01000000 -01100110 -01010000 -01100111 -01100000 +00111000 +00010100 +00100000 +00110000 +10000000 +01110000 +10010000 +01110001 01000011 00001000 10000000 01000011 00001000 10000111 -01101000 -01110000 +00101000 +00111001 01101001 -00010000 -01100110 -00010000 -01100111 -00010000 -01000011 -00001000 -10001000 +11100000 +01101100 +11110000 +01101101 +11100010 +01000011 +00001000 +10001000 01000011 00001000 10001111 -01101000 -00010000 -01101001 -10000111 -10111011 -10000111 -10110000 -10011011 +11111111 +10001111 +10000000 +10000000 +01101100 +10010000 +01101101 +00000001 01000100 00001000 10000000 01000100 00001000 10000111 -10101011 -10101000 -00100000 -01101100 -00110000 +00100100 +10000000 +10010010 +00010100 +10000000 +10010000 +10010000 01101101 -00101111 -00111111 01000100 00001000 10001000 01000100 00001000 10001111 +10000000 +01101100 +00111010 +00011110 +00111010 +01010101 +00100000 +01101100 +01000101 +00001000 +10000000 +01000101 +00001000 +10000111 +00110000 +01101101 +00101111 +00111111 10000100 00100000 00111000 00010100 -00100000 -00110000 -10000000 -01110000 01000101 00001000 -10000000 +10001000 01000101 00001000 -10000111 +10001111 +00100000 +00110000 +10000000 +01110000 10010000 01110001 00101000 00111001 +01000110 +00001000 +10000000 +01000110 +00001000 +10000111 01101001 11100000 01101100 11110000 -01000101 +01101101 +11100010 +11111111 +10000010 +01000110 00001000 10001000 -01000101 +01000110 00001000 10001111 -01101101 -11100010 -11111111 -10100000 +10000000 10000000 01101100 10010000 01101101 -01000110 +00000001 +00100100 +10000000 +01000111 00001000 10000000 -01000110 +01000111 00001000 10000111 -00000001 -00100100 -10000000 10010010 00010100 10000000 10010000 10010000 -01000110 -00001000 -10001000 -01000110 -00001000 -10001111 01101101 10000000 01101100 -00111010 -11011011 -00111010 -01010101 -11001011 01000111 00001000 -10000000 +10001000 01000111 00001000 -10000111 -10111011 -10010111 -10110000 -10101011 -10101000 +10001111 +00111010 +11101110 +00111010 +01010101 00100000 01101100 00110000 -01000111 +01101101 +01001000 00001000 -10001000 -01000111 +10000000 +01001000 00001000 -10001111 -01101101 +10000111 00101111 00111111 10000100 @@ -2032,13 +2045,13 @@ 00111000 00010100 00100000 +00110000 01001000 00001000 -10000000 +10001000 01001000 00001000 -10000111 -00110000 +10001111 10000000 01110000 10010000 @@ -2046,26 +2059,27 @@ 00101000 00111001 01101001 -01001000 +11100000 +01001001 00001000 -10001000 -01001000 +10000000 +01001001 00001000 -10001111 -11100000 +10000111 01101100 11110000 01101101 11100010 11111111 -10100000 +10001001 +10000000 10000000 01001001 00001000 -10000000 +10001000 01001001 00001000 -10000111 +10001111 01101100 10010000 01101101 @@ -2074,12 +2088,12 @@ 10000000 10010010 00010100 -01001001 +01001010 00001000 -10001000 -01001001 +10000000 +01001010 00001000 -10001111 +10000111 10000000 10010000 10010000 @@ -2087,41 +2101,28 @@ 10000000 01101100 00111010 -10101100 -01001010 -00001000 -10000000 -01001010 -00001000 -10000111 -00111010 -01010101 -10111011 -01110111 -10111010 -10100111 -10010110 -10000101 +10111110 01001010 00001000 10001000 01001010 00001000 10001111 -10101000 +00111010 +01010101 00100000 01101100 00110000 01101101 00101111 00111111 -10000100 01001011 00001000 10000000 01001011 00001000 10000111 +10000100 00100000 00111000 00010100 @@ -2129,13 +2130,13 @@ 00110000 10000000 01110000 -10010000 01001011 00001000 10001000 01001011 00001000 10001111 +10010000 01110001 00101000 00111001 @@ -2143,265 +2144,279 @@ 11100000 01101100 11110000 -01101101 01001100 00001000 10000000 01001100 00001000 10000111 +01101101 11100010 11111111 -10100000 +10000100 +10000000 10000000 01101100 10010000 -01101101 -00000001 01001100 00001000 10001000 01001100 00001000 10001111 +01101101 +00000001 00100100 10000000 10010010 00010100 10000000 10010000 -10010000 -01101101 01001101 00001000 10000000 01001101 00001000 10000111 +10010000 +01101101 10000000 01101100 00111010 -01110110 +10001110 00111010 01010101 -00100000 -01101100 01001101 00001000 10001000 01001101 00001000 10001111 +00100000 +01101100 00110000 01101101 00101111 00111111 10000100 00100000 -00111000 -00010100 01001110 00001000 10000000 01001110 00001000 10000111 +00111000 +00010100 00100000 00110000 10000000 01110000 10010000 01110001 -00101000 -00111001 01001110 00001000 10001000 01001110 00001000 10001111 +00101000 +00111001 01101001 11100000 01101100 11110000 01101101 11100010 -11111111 -01000000 01001111 00001000 10000000 01001111 00001000 10000111 +11111111 +10000011 +10000000 10000000 01101100 10010000 01101101 00000001 -00100100 -10000000 -10010010 01001111 00001000 10001000 01001111 00001000 10001111 +00100100 +10000000 +10010010 00010100 10000000 10010000 10010000 01101101 -10000000 -01101100 -00111010 01010000 00001000 10000000 01010000 00001000 10000111 -10111111 +10000000 +01101100 +00111010 +01011110 00111010 01010101 -00100000 -01101010 -00110000 -01101011 -10000000 +00010111 +00010011 01010000 00001000 10001000 01010000 00001000 10001111 -01101110 -10010000 -01101111 -10000010 -10010011 +00100000 00001001 -11001110 -00111111 +10111110 +00111101 +00100000 +01101010 +00110000 +01101011 01010001 00001000 10000000 01010001 00001000 10000111 -00100000 -01101010 -00110000 -01101011 10000000 01101110 10010000 01101111 +10000010 +10010011 +00001001 +10111101 01010001 00001000 10001000 01010001 00001000 10001111 -10000010 -10010011 -00001001 -11000001 00111111 00100000 01101010 00110000 +01101011 +10000000 +01101110 +10010000 01010010 00001000 10000000 01010010 00001000 10000111 -01101011 -10000000 -01101110 -10010000 01101111 10000010 10010011 -00111001 +00001001 +10110000 +00111111 +00100000 +01101010 01010010 00001000 10001000 01010010 00001000 10001111 -10110100 +00110000 +01101011 10000000 01101110 10010000 01101111 -00100000 -01101010 -00110000 +10000010 +10010011 01010011 00001000 10000000 01010011 00001000 10000111 +00111001 +10100011 +10000000 +01101110 +10010000 +01101111 +00100000 +01101010 +01010011 +00001000 +10001000 +01010011 +00001000 +10001111 +00110000 01101011 10000010 10010011 10000001 10010010 00001100 -11100010 -00111111 -01010011 +11010001 +01010100 00001000 -10001000 -01010011 +10000000 +01010100 00001000 -10001111 +10000111 +00111111 00111011 -11100001 +11010000 00111011 11111111 11100111 11110000 11100001 -00001001 01010100 00001000 -10000000 +10001000 01010100 00001000 -10000111 -11100001 +10001111 +00001001 +11010000 00100000 01101010 00110000 01101011 10000000 01101110 -10010000 -01010100 +01010101 00001000 -10001000 -01010100 +10000000 +01010101 00001000 -10001111 +10000111 +10010000 01101111 10000010 10010011 00001001 -01110110 +01000000 11100000 01101010 -11110000 01010101 00001000 -10000000 +10001000 01010101 00001000 -10000111 +10001111 +11110000 01101011 11100000 11111011 @@ -2409,13 +2424,13 @@ 10000000 01101010 10010000 -01101011 -01010101 +01010110 00001000 -10001000 -01010101 +10000000 +01010110 00001000 -10001111 +10000111 +01101011 00000001 00100100 10000000 @@ -2423,13 +2438,13 @@ 00010100 10000000 10010000 -10010000 01010110 00001000 -10000000 +10001000 01010110 00001000 -10000111 +10001111 +10010000 01101011 10000000 01101010 @@ -2437,27 +2452,27 @@ 01101110 00110000 01101111 -10000000 -01010110 +01010111 00001000 -10001000 -01010110 +10000000 +01010111 00001000 -10001111 +10000111 +10000000 01101010 10010000 01101011 00101000 00111001 00001001 -11000011 -00100000 +10001101 01010111 00001000 -10000000 +10001000 01010111 00001000 -10000111 +10001111 +00100000 01101110 00110000 01101111 @@ -2465,27 +2480,27 @@ 01101010 10010000 01101011 -00101000 -01010111 +01011000 00001000 -10001000 -01010111 +10000000 +01011000 00001000 -10001111 +10000111 +00101000 00111001 00001100 -10101001 +01110011 10000000 01101010 10010000 01101011 -00100000 01011000 00001000 -10000000 +10001000 01011000 00001000 -10000111 +10001111 +00100000 01101110 00110000 01101111 @@ -2493,27 +2508,27 @@ 10010011 10000000 10010010 -00001100 -01011000 +01011001 00001000 -10001000 -01011000 +10000000 +01011001 00001000 -10001111 -10101001 +10000111 +00001100 +01110011 00111011 -10101010 +01110100 00111011 10101110 10111011 10100111 -10110000 01011001 00001000 -10000000 +10001000 01011001 00001000 -10000111 +10001111 +10110000 00100000 01101010 00110000 @@ -2521,27 +2536,27 @@ 10000000 01101110 10010000 -01101111 -01011001 +01011010 00001000 -10001000 -01011001 +10000000 +01011010 00001000 -10001111 -00101000 -00111001 +10000111 +01101111 +10000010 +10010011 00001001 -01000001 +00001011 11100000 01101010 11110000 -01101011 01011010 00001000 -10000000 +10001000 01011010 00001000 -10000111 +10001111 +01101011 11100000 11111011 11100000 @@ -2549,13 +2564,13 @@ 01101010 10010000 01101011 -00000001 -01011010 +01011011 00001000 -10001000 -01011010 +10000000 +01011011 00001000 -10001111 +10000111 +00000001 00100100 10000000 10010010 @@ -2563,13 +2578,13 @@ 10000000 10010000 10010000 -01101011 01011011 00001000 -10000000 +10001000 01011011 00001000 -10000111 +10001111 +01101011 10000000 01101010 00100000 @@ -2577,27 +2592,27 @@ 00110000 01101111 10000000 -01101010 -01011011 +01011100 00001000 -10001000 -01011011 +10000000 +01011100 00001000 -10001111 +10000111 +01101010 10010000 01101011 00101000 00111001 00001001 -10000111 +01010001 00100000 -01101110 01011100 00001000 -10000000 +10001000 01011100 00001000 -10000111 +10001111 +01101110 00110000 01101111 10000000 @@ -2605,27 +2620,27 @@ 10010000 01101011 00101000 -00111001 -01011100 +01011101 00001000 -10001000 -01011100 +10000000 +01011101 00001000 -10001111 +10000111 +00111001 00001100 -01101101 +00110111 10000000 01101010 10010000 01101011 00100000 -01101110 01011101 00001000 -10000000 +10001000 01011101 00001000 -10000111 +10001111 +01101110 00110000 01101111 10000010 @@ -2633,27 +2648,27 @@ 10000000 10010010 00001100 -01101101 -01011101 +01011110 00001000 -10001000 -01011101 +10000000 +01011110 00001000 -10001111 +10000111 +00110111 00111011 -01101110 +00111000 00111011 01101110 01110111 01100111 01110000 -00100000 01011110 00001000 -10000000 +10001000 01011110 00001000 -10000111 +10001111 +00100000 01101010 00110000 01101011 @@ -2661,27 +2676,27 @@ 01101110 10010000 01101111 -10000010 -01011110 +01011111 00001000 -10001000 -01011110 +10000000 +01011111 00001000 -10001111 +10000111 +10000010 10010011 00001001 -00001100 +11010110 11100000 01101010 11110000 01101011 -11100000 01011111 00001000 -10000000 +10001000 01011111 00001000 -10000111 +10001111 +11100000 11111011 11100000 10000000 @@ -2689,13 +2704,13 @@ 10010000 01101011 00000001 -00100100 -01011111 +01100000 00001000 -10001000 -01011111 +10000000 +01100000 00001000 -10001111 +10000111 +00100100 10000000 10010010 00010100 @@ -2703,13 +2718,13 @@ 10010000 10010000 01101011 -10000000 01100000 00001000 -10000000 +10001000 01100000 00001000 -10000111 +10001111 +10000000 01101010 00100000 01101110 @@ -2717,27 +2732,27 @@ 01101111 10000000 01101010 -10010000 -01100000 +01100001 00001000 -10001000 -01100000 +10000000 +01100001 00001000 -10001111 +10000111 +10010000 01101011 00101000 00111001 00001001 -01001011 +00010101 00100000 01101110 -00110000 01100001 00001000 -10000000 +10001000 01100001 00001000 -10000111 +10001111 +00110000 01101111 10000000 01101010 @@ -2745,69 +2760,69 @@ 01101011 00101000 00111001 -00001100 -01100001 +01100010 00001000 -10001000 -01100001 +10000000 +01100010 00001000 -10001111 -00110001 +10000111 +00001100 +11111011 10000000 01101010 10010000 01101011 00100000 01101110 -00110000 01100010 00001000 -10000000 +10001000 01100010 00001000 -10000111 +10001111 +00110000 01101111 10000010 10010011 10000000 10010010 00001100 -00110001 -00111011 -01100010 +11111011 +01100011 00001000 -10001000 -01100010 +10000000 +01100011 00001000 -10001111 -00110010 +10000111 +00111011 +11111100 00111011 01001110 01010101 01000111 01010000 00100000 -01101010 01100011 00001000 -10000000 +10001000 01100011 00001000 -10000111 +10001111 +01101010 00110000 01101011 10000000 01101110 10010000 01101111 -10000010 -10010011 -01100011 +00101000 +01100100 00001000 -10001000 -01100011 +10000000 +01100100 00001000 -10001111 +10000111 +00111001 01100001 00111111 00100000 @@ -2815,27 +2830,27 @@ 00110000 01101011 10000000 -01101110 01100100 00001000 -10000000 +10001000 01100100 00001000 -10000111 +10001111 +01101110 10010000 01101111 -10000010 -10010011 +00101000 +00111001 10100001 11100000 01101010 -11110000 -01100100 +01100101 00001000 -10001000 -01100100 +10000000 +01100101 00001000 -10001111 +10000111 +11110000 01101011 11100000 11111011 @@ -2843,13 +2858,13 @@ 10000000 01101010 10010000 -01101011 01100101 00001000 -10000000 +10001000 01100101 00001000 -10000111 +10001111 +01101011 00000001 00100100 10000000 @@ -2857,13 +2872,13 @@ 00010100 10000000 10010000 -10010000 -01100101 +01100110 00001000 -10001000 -01100101 +10000000 +01100110 00001000 -10001111 +10000111 +10010000 01101011 10000000 01101010 @@ -2871,27 +2886,27 @@ 01101110 00110000 01101111 -10000000 01100110 00001000 -10000000 +10001000 01100110 00001000 -10000111 +10001111 +10000000 01101010 10010000 01101011 00101000 00111001 00001001 -10111000 -00100000 -01100110 +10000010 +01100111 00001000 -10001000 -01100110 +10000000 +01100111 00001000 -10001111 +10000111 +00100000 01101110 00110000 01101111 @@ -2899,27 +2914,27 @@ 01101010 10010000 01101011 -00101000 01100111 00001000 -10000000 +10001000 01100111 00001000 -10000111 +10001111 +00101000 00111001 00001100 -10011110 +01101000 10000000 01101010 10010000 01101011 -00100000 -01100111 +01101000 00001000 -10001000 -01100111 +10000000 +01101000 00001000 -10001111 +10000111 +00100000 01101110 00110000 01101111 @@ -2927,179 +2942,108 @@ 10010011 10000000 10010010 -00001100 01101000 00001000 -10000000 +10001000 01101000 00001000 -10000111 -10011110 +10001111 +00001100 +01101000 00111011 -10011111 +01101001 00111011 01001000 01101001 10101010 -10001110 -01101000 -00001000 -10001000 -01101000 -00001000 -10001111 -10011001 -10000111 -10010000 -10001011 -01000100 -00010111 -00010011 -10000100 01101001 00001000 10000000 01101001 00001000 10000111 +10001110 +10011001 +10000111 10010000 -10010011 -10011000 -10010111 -01001000 +10001011 +00110011 +00111111 00100000 -01101100 -00110000 01101001 00001000 10001000 01101001 00001000 10001111 -01101101 -00101111 -00111111 -10000100 -00100000 -00111000 -00010100 -00100000 +01101010 +00110000 +01101011 +10000000 +01101110 +10010000 +01101111 +10000010 01101010 00001000 10000000 01101010 00001000 10000111 +10010011 +00001001 +10110011 +00111111 +00100000 +01101010 00110000 -10000000 -01110000 -10010000 -01110001 -00101000 -00111001 -01101001 +01101011 01101010 00001000 10001000 01101010 00001000 10001111 -11100000 -01101100 -11110000 -01101101 -11100010 -11111111 -01000000 10000000 +01101110 +10010000 +01101111 +10000010 +10010011 +00111001 +10100110 01101011 00001000 10000000 01101011 00001000 10000111 -01101100 +00111111 +00100000 +01101010 +00110000 +01101011 +10000000 +01101110 10010000 -01101101 -00000001 -00100100 -10000000 -10010010 -00010100 01101011 00001000 10001000 01101011 00001000 10001111 -10000000 -10010000 -10010000 -01101101 -10000000 -01101100 -00111010 -01000001 -01101100 -00001000 -10000000 -01101100 -00001000 -10000111 -00111010 -01010101 -01000000 -00111111 -00100000 -01101010 -00110000 -01101011 -01101100 -00001000 -10001000 -01101100 -00001000 -10001111 -10000000 -01101110 -10010000 01101111 10000010 10010011 00001001 -01111101 -01101101 -00001000 -10000000 -01101101 -00001000 -10000111 -00111111 -00100000 -01101010 -00110000 -01101011 -10000000 -01101110 -10010000 -01101101 -00001000 -10001000 -01101101 -00001000 -10001111 -01101111 -10000010 -10010011 -00111001 -01110000 +11101000 00111111 00100000 01101010 -01101110 +01101100 00001000 10000000 -01101110 +01101100 00001000 10000111 00110000 @@ -3110,38 +3054,38 @@ 01101111 10000010 10010011 -01101110 +01101100 00001000 10001000 -01101110 +01101100 00001000 10001111 -00001001 -10110010 +00111001 +11011011 00111111 00100000 01101010 00110000 01101011 10000000 -01101111 +01101101 00001000 10000000 -01101111 +01101101 00001000 10000111 01101110 10010000 01101111 -10000010 -10010011 +00101000 00111001 -10100101 +00001001 +00011101 00111111 -01101111 +01101101 00001000 10001000 -01101111 +01101101 00001000 10001111 00100000 @@ -3152,236 +3096,209 @@ 01101110 10010000 01101111 -01110000 -00001000 -10000000 -01110000 -00001000 -10000111 -10000010 -10010011 -00001001 -11100111 -00111111 -00100000 -01101010 -00110000 -01110000 -00001000 -10001000 -01110000 -00001000 -10001111 -01101011 -10000000 01101110 -10010000 -01101111 -10000010 -10010011 -00111001 -01110001 00001000 10000000 -01110001 +01101110 00001000 10000111 -11011010 +00101000 +00111001 +00111001 +00010000 10000000 01101110 10010000 01101111 -00100000 -01101010 -00110000 -01110001 +01101110 00001000 10001000 -01110001 +01101110 00001000 10001111 +00100000 +01101010 +00110000 01101011 10000010 10010011 10000001 10010010 -00001100 -01100010 -00111111 -01110010 +01101111 00001000 10000000 -01110010 +01101111 00001000 10000111 +00001100 +10011000 +00111111 00111011 -01100001 +10010111 00111011 -01100000 +10010110 10000000 -01101110 -10010000 01101111 -01110010 00001000 10001000 -01110010 +01101111 00001000 10001111 +01101110 +10010000 +01101111 00100000 01101010 00110000 01101011 10000010 -10010011 -10000001 -10010010 -01110011 +01110000 00001000 10000000 -01110011 +01110000 00001000 10000111 +10010011 +10000001 +10010010 00001100 -01010111 +10001101 00111111 00111011 -01010110 -00111011 -01010101 -10000000 -01110011 +10001100 +01110000 00001000 10001000 -01110011 +01110000 00001000 10001111 +00111011 +10001011 +10000000 01101110 10010000 01101111 00100000 01101010 -00110000 -01101011 -10000010 -01110100 +01110001 00001000 10000000 -01110100 +01110001 00001000 10000111 +00110000 +01101011 +10000010 10010011 10000001 10010010 00001100 -10010011 -00111111 -00111011 -10010010 -01110100 +11001001 +01110001 00001000 10001000 -01110100 +01110001 00001000 10001111 +00111111 00111011 -10010001 +11001000 +00111011 +11000111 10000000 01101110 10010000 -01101111 -00100000 -01101010 -01110101 +01110010 00001000 10000000 -01110101 +01110010 00001000 10000111 +01101111 +00100000 +01101010 00110000 01101011 10000010 10010011 10000001 -10010010 -00001100 -11001111 -01110101 +01110010 00001000 10001000 -01110101 +01110010 00001000 10001111 +10010010 +00001100 +00000101 00111111 00111011 -11001110 +00000100 00111011 -11001101 -11101110 -00001001 -01110001 -01110110 +00000011 +01110011 00001000 10000000 -01110110 +01110011 00001000 10000111 +10000100 +01001000 00100000 01101100 00110000 01101101 00101111 00111111 -10000100 -00100000 -01110110 +01110011 00001000 10001000 -01110110 +01110011 00001000 10001111 +10000100 +00100000 00111000 00010100 00100000 00110000 10000000 01110000 -10010000 -01110001 -01110111 +01110100 00001000 10000000 -01110111 +01110100 00001000 10000111 +10010000 +01110001 00101000 00111001 01101001 11100000 01101100 11110000 -01101101 -11100010 -01110111 +01110100 00001000 10001000 -01110111 +01110100 00001000 10001111 +01101101 +11100010 11111111 -10001111 -10000000 +01000000 10000000 01101100 10010000 01101101 -00000001 -01111000 +01110101 00001000 10000000 -01111000 +01110101 00001000 10000111 +00000001 00100100 10000000 10010010 @@ -3389,2136 +3306,1466 @@ 10000000 10010000 10010000 -01101101 -01111000 +01110101 00001000 10001000 -01111000 +01110101 00001000 10001111 +01101101 10000000 01101100 00111010 -11000010 +00001111 00111010 01010101 -00100000 -01101100 -01111001 +11000001 +01110110 00001000 10000000 -01111001 +01110110 00001000 10000111 -00110000 -01101101 -00101111 -00111111 -10000100 -00100000 -00111000 -00010100 -01111001 +11010000 +01100111 +00111010 +10100001 +00111010 +01110001 +00111010 +01000001 +01110110 00001000 10001000 -01111001 +01110110 00001000 -10001111 -00100000 -00110000 +10001101 +00111010 +00010001 +00111010 +11100001 +00111010 +11110000 10000000 -01110000 -10010000 -01110001 -00101000 -00111001 -01111010 00001000 10000000 -01111010 +10000000 00001000 10000111 -01101001 -11100000 -01101100 -11110000 -01101101 -11100010 -11111111 -10000010 -01111010 +10010100 +00000000 +10010100 +00000000 +10010100 +00000000 +10010100 +00000000 +10000000 00001000 10001000 -01111010 +10000000 00001000 10001111 -10000000 -10000000 -01101100 -10010000 -01101101 -00000001 -00100100 -10000000 -01111011 +10010100 +00000000 +10010100 +00000000 +10010100 +00000000 +10010100 +00000000 +10000001 00001000 10000000 -01111011 +10000001 00001000 10000111 -10010010 -00010100 -10000000 -10010000 -10010000 -01101101 -10000000 -01101100 -01111011 +10010100 +00000000 +10010100 +00000000 +10010100 +00000000 +10010100 +00000000 +10000001 00001000 10001000 -01111011 +10000001 00001000 10001111 -00111010 -10011110 -00111010 -01010101 -00100000 -01101100 -00110000 -01101101 -01111100 +10010100 +00000000 +10010100 +00000000 +10010100 +00000000 +10010100 +00000000 +10000010 00001000 10000000 -01111100 +10000010 00001000 10000111 -00101111 -00111111 -10000100 -00100000 -00111000 -00010100 -00100000 -00110000 -01111100 +10010100 +00000000 +10010100 +00000000 +10010100 +00000000 +10010100 +00000000 +10000010 00001000 10001000 -01111100 +10000010 00001000 10001111 -10000000 -01110000 -10010000 -01110001 -00101000 -00111001 -01101001 -11100000 -01111101 +10010100 +00000000 +10010100 +00000010 +10010100 +00000010 +10010100 +00000000 +10000011 00001000 10000000 -01111101 +10000011 00001000 10000111 -01101100 -11110000 -01101101 -11100010 -11111111 -10001001 -10000000 -10000000 -01111101 +10010100 +00000000 +10010100 +00000000 +10010100 +00000000 +10010100 +00000000 +10000011 00001000 10001000 -01111101 +10000011 00001000 10001111 -01101100 -10010000 -01101101 -00000001 -00100100 -10000000 -10010010 -00010100 -01111110 +10010100 +00000000 +10010100 +00000000 +10010100 +00000000 +10010100 +00000000 +10000100 00001000 10000000 -01111110 +10000100 00001000 10000111 -10000000 -10010000 -10010000 -01101101 -10000000 -01101100 -00111010 -01101110 -01111110 +10010100 +00000000 +10010100 +00000000 +10010100 +00000001 +10010100 +00000000 +10000100 00001000 10001000 -01111110 +10000100 00001000 10001111 -00111010 -01010101 -00100000 -01101100 -00110000 -01101101 -00101111 -00111111 -01111111 +00100100 +10111110 +11101111 +11100000 +10111111 +10111111 +11100000 +11100110 +10000101 00001000 10000000 -01111111 +10000101 00001000 10000111 -10000100 -00100000 -00111000 -00010100 -00100000 -00110000 -10000000 -01110000 -01111111 -00001000 -10001000 -01111111 -00001000 -10001111 -10010000 -01110001 -00101000 -00111001 -01101001 -11100000 -01101100 -11110000 -00000000 -00000111 -10000000 -00000000 -00000111 -10000111 -01101101 -11100010 -11111111 -10000100 -10000000 -10000000 -01101100 -10010000 -00000000 -00000111 -10001000 -00000000 -00000111 -10001111 -01101101 -00000001 -00100100 -10000000 -10010010 -00010100 -10000000 -10010000 -00000001 -00000111 -10000000 -00000001 -00000111 -10000111 -10010000 -01101101 -10000000 -01101100 -00111010 -00111110 -00111010 -01010101 -00000001 -00000111 -10001000 -00000001 -00000111 -10001111 -00100000 -01101100 -00110000 -01101101 -00101111 -00111111 -10000100 -00100000 -00000010 -00000111 -10000000 -00000010 -00000111 -10000111 -00111000 -00010100 -00100000 -00110000 -10000000 -01110000 -10010000 -01110001 -00000010 -00000111 -10001000 -00000010 -00000111 -10001111 -00101000 -00111001 -01101001 -11100000 -01101100 -11110000 -01101101 -11100010 -00000011 -00000111 -10000000 -00000011 -00000111 -10000111 -11111111 -10000011 -10000000 -10000000 -01101100 -10010000 -01101101 -00000001 -00000011 -00000111 -10001000 -00000011 -00000111 -10001111 -00100100 -10000000 -10010010 -00010100 -10000000 -10010000 -10010000 -01101101 -00000100 -00000111 -10000000 -00000100 -00000111 -10000111 -10000000 -01101100 -00111010 -00001100 -00111010 -01010101 -00111011 -10001001 -00000100 -00000111 -10001000 -00000100 -00000111 -10001111 -00111010 -00100100 -00111010 -10001001 -00111010 -01010011 -00111010 -00111101 -00000101 -00000111 -10000000 -00000101 -00000111 -10000111 -00111010 -01010101 -00111011 -01111101 -00111010 -11000001 -00111010 -10010001 -00000101 -00000111 -10001000 -00000101 -00000111 -10001001 -00111010 -01100001 -10000000 -00001000 -10000000 -10000000 -00001000 -10000111 -10010100 -00000000 -10010100 -00000000 -10010100 -00000000 -10010100 -00000000 -10000000 -00001000 -10001000 -10000000 -00001000 -10001111 -10010100 -00000000 -10010100 -00000000 -10010100 -00000000 -10010100 -00000000 -10000001 -00001000 -10000000 -10000001 -00001000 -10000111 -10010100 -00000000 -10010100 -00000000 -10010100 -00000000 -10010100 -00000000 -10000001 -00001000 -10001000 -10000001 -00001000 -10001111 -10010100 -00000000 -10010100 -00000000 -10010100 -00000000 -10010100 -00000000 -10000010 -00001000 -10000000 -10000010 -00001000 -10000111 -10010100 -00000000 -10010100 -00000000 -10010100 -00000000 -10010100 -00000000 -10000010 -00001000 -10001000 -10000010 -00001000 -10001111 -10010100 -00000000 -10010100 -00000010 -10010100 -00000010 -10010100 -00000000 -10000011 -00001000 -10000000 -10000011 -00001000 -10000111 -10010100 -00000000 -10010100 -00000000 -10010100 -00000000 -10010100 -00000000 -10000011 -00001000 -10001000 -10000011 -00001000 -10001111 -10010100 -00000000 -10010100 -00000000 -10010100 -00000000 -10010100 -00000000 -10000100 -00001000 -10000000 -10000100 -00001000 -10000111 -10010100 -00000000 -10010100 -00000000 -10010100 -00000001 -10010100 -00000000 -10000100 -00001000 -10001000 -10000100 -00001000 -10001111 -00100100 -10111110 -11101111 -11100000 -10111111 -10111111 -11100000 -11100110 -10000101 -00001000 -10000000 -10000101 -00001000 -10000111 -11100000 -11101011 -11100001 -11000000 -10010000 -10010010 -00110110 -00000111 -10000101 -00001000 -10001000 -10000101 -00001000 -10001111 -11110111 -11100000 -11100110 -11100000 -11000000 -10010010 -00110111 -00000111 -10000110 -00001000 -10000000 -10000110 -00001000 -10000111 -11110111 -10010100 -00000011 -10010100 -00000000 -00101111 -00100111 -01110000 -10000110 -00001000 -10001000 -10000110 -00001000 -10001111 -10111101 -10111001 -10110001 -01101001 -10111001 -00101011 -11110000 -10011010 -10000111 -00001000 -10000000 -10000111 -00001000 -10000111 -10010101 -10011000 -10010101 -10010001 -00000000 -10010001 -00000000 -10010001 -10000111 -00001000 -10001000 -10000111 -00001000 -10001111 -00000000 -10010001 -00000000 -01011111 -01001111 -01001111 -01001111 -10010011 -10001000 -00001000 -10000000 -10001000 -00001000 -10000111 -00000000 -10010011 -00000000 -10010011 -00000000 -10010011 -00000000 -00101011 -10001000 -00001000 -10001000 -10001000 -00001000 -10001111 -11110000 -10011000 -10010101 -10011010 -10010101 -10010110 -11100000 -00110000 -10001001 -00001000 -10000000 -10001001 -00001000 -10000111 -00000111 -11110000 -11100000 -11100000 -10010101 -11111111 -10010101 -10010101 -10001001 -00001000 -10001000 -10001001 -00001000 -10001111 -10010101 -01001111 -10010101 -10010001 -00000100 -10010001 -00000100 -10010001 -10001010 -00001000 -10000000 -10001010 -00001000 -10000111 -00000000 -10010001 -00000000 -00010111 -00000111 -11110100 -10010001 -00000000 -10001010 -00001000 -10001000 -10001010 -00001000 -10001111 -10010001 -00000000 -10010001 -00000100 -10010001 -00000100 -00011011 -00001011 -10001011 -00001000 -10000000 -10001011 -00001000 -10000111 -11000000 -10010001 -00000100 -10010001 -00000100 -10010001 -00000000 -10010001 -10001011 -00001000 -10001000 -10001011 -00001000 -10001111 -00000000 -00011011 -00001011 -00000001 -10010101 -10010001 -00000000 -10010001 -10001100 -00001000 -10000000 -10001100 -00001000 -10000111 -00000000 -10010001 -00000100 -10010001 -00000100 -11100000 -11100000 -00010111 -10001100 -00001000 -10001000 -10001100 -00001000 -10001111 -00000111 -11110100 -11100000 -11100000 -00000001 -10010101 -10010001 -00000100 -10001101 -00001000 -10000000 -10001101 -00001000 -10000111 -10010001 -00000100 -10010001 -00000000 -10010001 -00000000 -00010111 -00000111 -10001101 -00001000 -10001000 -10001101 -00001000 -10001111 -11110001 -10010001 -00000100 -10010001 -00000100 -10010001 -00000000 -10010001 -10001110 -00001000 -10000000 -10001110 -00001000 -10000111 -00000000 -00010111 -00000111 -11110100 -10010001 -00000000 -10010001 -00000000 -10001110 -00001000 -10001000 -10001110 -00001000 -10001111 -10010001 -00000100 -10010001 -00000100 -11100000 -11100000 -00011011 -00001011 -10001111 -00001000 -10000000 -10001111 -00001000 -10000111 -01010000 -01000000 -11110100 +11100000 +11101101 +11100000 11000000 -10010001 -00000100 -10010001 -00000100 -10001111 +10010000 +10010010 +00110110 +00000111 +10000101 00001000 10001000 -10001111 +10000101 00001000 10001111 -10010001 -00000000 -10010001 -00000000 +11110111 11100000 +11100110 11100000 -00011011 -00001011 -10010000 +11000000 +10010010 +00110111 +00000111 +10000110 00001000 10000000 -10010000 +10000110 00001000 10000111 -01010000 -01000000 -11110000 -11100000 -11100000 -11000000 -11100000 -11100000 -10010000 +11110111 +10010100 +00000011 +10010100 +00000000 +00101111 +00100111 +01110000 +10000110 00001000 10001000 -10010000 +10000110 00001000 10001111 -00000001 -10010101 -10010001 -00001000 -10010001 -00001000 -10010001 -00000000 -10010001 +10111101 +10111001 +10110001 +01101001 +10111001 +00101011 +11110000 +10011010 +10000111 00001000 10000000 -10010001 -00001000 10000111 -10010001 -00000000 -11100000 -11100000 -00010111 -00000111 -11110100 -11100000 -10010001 -00001000 -10001000 -10010001 00001000 -10001111 -11100000 -00000001 +10000111 +10010101 +10011000 10010101 10010001 00000000 10010001 00000000 10010001 -10010010 -00001000 -10000000 -10010010 -00001000 10000111 00001000 -10010001 -00001000 -00010111 -00000111 -11110001 -10010001 -00000000 -10010010 -00001000 10001000 -10010010 +10000111 00001000 10001111 -10010001 00000000 10010001 -00001000 -10010001 -00001000 -00010111 -00000111 +00000000 +01011111 +01001111 +01001111 +01001111 10010011 +10001000 00001000 10000000 -10010011 +10001000 00001000 10000111 -11110100 -10010001 -00001000 -10010001 -00001000 -10010001 00000000 -10010001 -10010011 -00001000 -10001000 10010011 -00001000 -10001111 00000000 -11100000 -11100000 -00011011 -00001011 -01010000 -01000000 -11110100 -10010100 -00001000 -10000000 -10010100 -00001000 -10000111 -11000000 -10010001 +10010011 00000000 -10010001 +10010011 00000000 -10010001 -00001000 -10010001 -10010100 +00101011 +10001000 00001000 10001000 -10010100 +10001000 00001000 10001111 -00001000 -11100000 -11100000 -00011011 -00001011 -01010000 -01000000 11110000 +10011000 10010101 +10011010 +10010101 +10010110 +11100000 +00110000 +10001001 00001000 10000000 -10010101 +10001001 00001000 10000111 +00000111 +11110000 11100000 11100000 -11000000 -11100000 -11100000 -00000001 10010101 -00101011 +11111111 10010101 +10010101 +10001001 00001000 10001000 -10010101 +10001001 00001000 10001111 -11110000 -11101000 -10111011 -11100000 -10111011 10010101 -10111010 -10111010 -10010110 +01001111 +10010101 +10010001 +00000100 +10010001 +00000100 +10010001 +10001010 00001000 10000000 -10010110 +10001010 00001000 10000111 -10010101 -10111011 -10111011 -10111011 -10111011 -10010101 -10010100 -10011010 -10010110 +00000000 +10010001 +00000000 +00010111 +00000111 +11110100 +10010001 +00000000 +10001010 00001000 10001000 -10010110 +10001010 00001000 10001111 -11100000 -11100000 -10010111 -11110111 -11001111 -00101111 -01010011 -00110000 -10010111 +10010001 +00000000 +10010001 +00000100 +10010001 +00000100 +00011011 +00001011 +10001011 00001000 10000000 -10010111 +10001011 00001000 -10000111 -11110100 -00101111 -00100111 -11111101 -10010101 -10010111 -10010101 -00101111 -10010111 +10000111 +11000000 +10010001 +00000100 +10010001 +00000100 +10010001 +00000000 +10010001 +10001011 00001000 10001000 -10010111 +10001011 00001000 10001111 -01010110 -00110000 -11110100 -00101111 -00100111 -11111101 +00000000 +00011011 +00001011 +00000001 10010101 -01010101 -10011000 +10010001 +00000000 +10010001 +10001100 00001000 10000000 -10011000 +10001100 00001000 10000111 -01000000 -10010101 -00101111 -01010100 -00110000 -11110100 -00101111 -00100111 -10011000 +00000000 +10010001 +00000100 +10010001 +00000100 +11100000 +11100000 +00010111 +10001100 00001000 10001000 -10011000 +10001100 00001000 10001111 -11111101 -10010101 -10010111 -10010101 -11101111 -11101111 +00000111 +11110100 +11100000 +11100000 +00000001 10010101 10010001 -10011001 +00000100 +10001101 00001000 10000000 -10011001 +10001101 00001000 10000111 -00000100 10010001 00000100 -01011111 -01001111 -11100000 -00110000 +10010001 +00000000 +10010001 +00000000 +00010111 00000111 -10011001 +10001101 00001000 10001000 -10011001 +10001101 00001000 10001111 -11110000 -11100000 -11100000 +11110001 10010001 -00000000 +00000100 +10010001 +00000100 10010001 00000000 -11100000 -10011010 +10010001 +10001110 00001000 10000000 -10011010 +10001110 00001000 10000111 -11100000 +00000000 00010111 00000111 11110100 +10010001 +00000000 +10010001 +00000000 +10001110 +00001000 +10001000 +10001110 +00001000 +10001111 +10010001 +00000100 +10010001 +00000100 11100000 11100000 -00000001 -10010101 -10011010 +00011011 +00001011 +10001111 +00001000 +10000000 +10001111 +00001000 +10000111 +01010000 +01000000 +11110100 +11000000 +10010001 +00000100 +10010001 +00000100 +10001111 00001000 10001000 -10011010 +10001111 00001000 10001111 10010001 00000000 10010001 00000000 -01011111 -01001111 11100000 -00110000 -10011011 +11100000 +00011011 +00001011 +10010000 00001000 10000000 -10011011 +10010000 00001000 10000111 -00000111 +01010000 +01000000 11110000 11100000 11100000 +11000000 +11100000 +11100000 +10010000 +00001000 +10001000 +10010000 +00001000 +10001111 +00000001 +10010101 10010001 00001000 10010001 00001000 -10011011 +10010001 +00000000 +10010001 00001000 -10001000 -10011011 +10000000 +10010001 00001000 -10001111 +10000111 +10010001 +00000000 11100000 11100000 00010111 00000111 11110100 11100000 +10010001 +00001000 +10001000 +10010001 +00001000 +10001111 11100000 00000001 -10011100 +10010101 +10010001 +00000000 +10010001 +00000000 +10010001 +10010010 00001000 10000000 -10011100 +10010010 00001000 10000111 -10010101 -10010010 -10010010 -10110110 +00001000 +10010001 +00001000 +00010111 +00000111 +11110001 +10010001 +00000000 10010010 -00100100 -10010011 -10010011 -10011100 00001000 10001000 -10011100 +10010010 00001000 10001111 -10010011 -10010011 10010001 00000000 10010001 -00000000 +00001000 10010001 -00000000 -10011101 +00001000 +00010111 +00000111 +10010011 00001000 10000000 -10011101 +10010011 00001000 10000111 +11110100 +10010001 +00001000 +10010001 +00001000 10010001 00000000 -10010110 -00011101 -00011101 -10010011 -00000000 +10010001 10010011 -10011101 00001000 10001000 -10011101 +10010011 00001000 10001111 00000000 -10010011 +11100000 +11100000 +00011011 +00001011 +01010000 +01000000 +11110100 +10010100 +00001000 +10000000 +10010100 +00001000 +10000111 +11000000 +10010001 00000000 -10010011 +10010001 00000000 -11101000 -10111011 +10010001 +00001000 +10010001 +10010100 +00001000 +10001000 +10010100 +00001000 +10001111 +00001000 11100000 -10011110 +11100000 +00011011 +00001011 +01010000 +01000000 +11110000 +10010101 00001000 10000000 -10011110 +10010101 00001000 10000111 -10111011 -10010100 -10010001 -10010001 -10010001 -10010001 -10010000 -10111110 -10011110 +11100000 +11100000 +11000000 +11100000 +11100000 +00000001 +10010101 +00101011 +10010101 00001000 10001000 -10011110 +10010101 00001000 10001111 -10010000 -10010000 +11110000 +11101000 +10111011 +11100000 +10111011 10010101 10111010 10111010 -10110011 -11101000 -10111011 -10011111 +10010110 00001000 10000000 -10011111 +10010110 00001000 10000111 -11100000 +10010101 +10111011 +10111011 +10111011 10111011 -00100111 10010101 -10010001 -00000000 -10010001 -00000000 -10011111 +10010010 +10010010 +10010110 00001000 10001000 -10011111 +10010110 00001000 10001111 +10110110 +10010010 +00100100 +10010011 +10010011 +10010011 +10010011 10010001 -00000100 -10010001 -00000100 -00010111 -00000111 -11110100 -11000000 -10100000 +10010111 00001000 10000000 -10100000 +10010111 00001000 10000111 -10010001 00000000 10010001 00000000 -01011001 -01001111 -10000001 10010001 -10100000 -00001000 -10001000 -10100000 -00001000 -10001111 00000000 10010001 00000000 10010110 -11100000 -00110000 -00000111 -11110000 -10100001 +10010111 00001000 -10000000 -10100001 +10001000 +10010111 00001000 -10000111 -11100000 -11100000 +10001111 +00011101 +00011101 10010011 00000000 10010011 00000000 -10010001 -00000100 -10100001 -00001000 -10001000 -10100001 -00001000 -10001111 -10010001 -00000100 -10010001 -00000000 -10010001 +10010011 00000000 -00010111 -00000111 -10100010 +10011000 00001000 10000000 -10100010 +10011000 00001000 10000111 -11110000 +10010011 +00000000 +10010100 10010001 -00000100 10010001 -00000100 10010001 -00000000 10010001 -10100010 +10010000 +10011000 00001000 10001000 -10100010 +10011000 00001000 10001111 -00000000 -00010111 -00000111 -11110001 -10010001 -00000100 -10010001 -00000100 -10100011 +10111110 +10010000 +10010000 +10010101 +10010100 +10011010 +11100000 +11100000 +10011001 00001000 10000000 -10100011 +10011001 00001000 10000111 -10010001 -00000000 -10010001 -00000000 -00011011 -00001011 -01010000 -01000000 -10100011 +10010111 +11110111 +11001111 +00101111 +01010011 +00110000 +11110100 +00101111 +10011001 00001000 10001000 -10100011 +10011001 00001000 10001111 -11110100 -10010001 -00000000 -10010001 -00000000 -10010001 -00000000 -10010001 -10100100 +00100111 +11111101 +10010101 +10010111 +10010101 +00101111 +01010110 +00110000 +10011010 00001000 10000000 -10100100 +10011010 00001000 10000111 -00000000 -10010110 -00011101 -00011101 -10010011 -00000000 -10010011 -00000000 -10100100 +11110100 +00101111 +00100111 +11111101 +10010101 +01010101 +01000000 +10010101 +10011010 00001000 10001000 -10100100 +10011010 00001000 10001111 -10010011 -00000000 -10010011 -00000000 -10011000 +00101111 +01010100 +00110000 +11110100 +00101111 +00100111 +11111101 +10010101 10011011 -11000000 -10011000 -10100101 00001000 10000000 -10100101 +10011011 00001000 10000111 -11000000 -10011010 -11000000 -10010001 -00000000 -10010001 -00000000 -10010001 -10100101 +10010111 +10010101 +11101111 +11101111 +10010101 +10110011 +00100111 +10010101 +10011011 00001000 10001000 -10100101 +10011011 00001000 10001111 +10010001 00000100 10010001 00000100 -00011011 -00001011 -01010000 -01000000 -11110110 -10100110 +01011111 +01001111 +11100000 +00110000 +10011100 00001000 10000000 -10100110 +10011100 00001000 10000111 -11001111 -10010001 -00000000 +00000111 +11110000 +11100000 +11100000 10010001 00000000 10010001 00000000 -10010001 -10100110 +10011100 00001000 10001000 -10100110 +10011100 00001000 10001111 -00000000 -01011111 -01001111 -01001111 -01001111 -10011000 -10010001 -00000000 -10100111 +11100000 +11100000 +00010111 +00000111 +11110100 +11100000 +11100000 +00000001 +10011101 00001000 10000000 -10100111 +10011101 00001000 10000111 +10010101 10010001 00000000 10010001 -00000100 -10010001 -00000100 -00010111 -00000111 -10100111 +00000000 +01011111 +01001111 +11100000 +10011101 00001000 10001000 -10100111 +10011101 00001000 10001111 -11110011 -10010011 -00000000 -10010011 -00000000 -10010011 -00000000 -10010011 -10101000 +00110000 +00000111 +11110000 +11100000 +11100000 +10010001 +00001000 +10010001 +10011110 00001000 10000000 -10101000 +10011110 00001000 10000111 -00000000 -11001111 -00101111 -00100111 -11111101 -10010101 -10010101 -10010010 -10101000 +00001000 +11100000 +11100000 +00010111 +00000111 +11110100 +11100000 +11100000 +10011110 00001000 10001000 -10101000 +10011110 00001000 10001111 -10010010 -10110110 -10010010 -00100100 -10010011 -10010011 -10010011 -10010011 -10101001 +00000001 +10010101 +10010001 +00000000 +10010001 +00000000 +10010001 +00000100 +10011111 00001000 10000000 -10101001 +10011111 00001000 10000111 -10010011 -10010011 -10010001 -00001000 10010001 -00001000 +00000100 +00010111 +00000111 +11110100 +11000000 10010001 00000000 -10101001 +10011111 00001000 10001000 -10101001 +10011111 00001000 10001111 10010001 00000000 -00010111 -00000111 -11110000 -10010001 -00001000 -10010001 -10101010 -00001000 -10000000 -10101010 -00001000 -10000111 -00001000 01011001 01001111 10000001 10010001 -00001000 +00000000 10010001 +10100000 00001000 -10101010 -00001000 -10001000 -10101010 +10000000 +10100000 00001000 -10001111 +10000111 +00000000 10010110 11100000 00110000 00000111 -11110100 -10010011 -00001000 -10010011 -10101011 -00001000 -10000000 -10101011 -00001000 -10000111 -00001000 -10111001 -10010100 -11000000 +11110000 11100000 11100000 -11001111 -10011000 -10101011 +10100000 00001000 10001000 -10101011 +10100000 00001000 10001111 +10010011 +00000000 +10010011 +00000000 10010001 +00000100 10010001 -10010001 -10010001 -10010001 -10010001 -10010000 -10111110 -10101100 +00000100 +10100001 00001000 10000000 -10101100 +10100001 00001000 10000111 -10010000 -10010000 -10010101 -00101111 10010001 00000000 10010001 00000000 -10101100 +00010111 +00000111 +11110000 +10010001 +10100001 00001000 10001000 -10101100 +10100001 00001000 10001111 -01011111 -01001111 -11100000 -00110000 -00000111 -11110000 -11100000 -11100000 -10101101 +00000100 +10010001 +00000100 +10010001 +00000000 +10010001 +00000000 +00010111 +10100010 00001000 10000000 -10101101 +10100010 00001000 10000111 +00000111 +11110001 10010001 -00001000 +00000100 10010001 -00001000 -00010111 -00000111 -11110011 +00000100 10010001 -10101101 +00000000 +10100010 00001000 10001000 -10101101 +10100010 00001000 10001111 +10010001 +00000000 +00011011 +00001011 +01010000 +01000000 +11110100 +10010001 +10100011 +00001000 +10000000 +10100011 +00001000 +10000111 00000000 10010001 00000000 -01011001 -01001111 -10000011 10010001 00000000 -10101110 -00001000 -10000000 -10101110 -00001000 -10000111 10010001 00000000 10010110 -11100000 -00110000 -00000111 -11110000 -11100000 -10101110 +10100011 00001000 10001000 -10101110 +10100011 00001000 10001111 -11100000 +00011101 +00011101 10010011 00000000 10010011 00000000 -10011011 -11000000 -10011000 -10101111 -00001000 -10000000 -10101111 -00001000 -10000111 -11000000 -10011010 -10011010 -10010101 -10010010 -10010010 -10110110 -10010010 -10101111 -00001000 -10001000 -10101111 -00001000 -10001111 -00100100 -10010011 -10010011 -10010011 10010011 -10010011 -10010011 -10010011 -10110000 +00000000 +10100100 00001000 10000000 -10110000 +10100100 00001000 10000111 10010011 +00000000 +10011000 10011011 11000000 -11101100 -11100000 -10010011 -00000000 -10010011 -10110000 +10011000 +11000000 +10011010 +10100100 00001000 10001000 -10110000 +10100100 00001000 10001111 -00000000 -10011011 11000000 -11101100 -11100000 -10010011 +10010001 00000000 -10010011 -10110001 +10010001 +00000000 +10010001 +00000100 +10010001 +10100101 00001000 10000000 -10110001 +10100101 00001000 10000111 -00000000 -10010001 00000100 +00011011 +00001011 +01010000 +01000000 +11110110 +11001111 10010001 -00000100 -01011111 -01001111 -11100000 -10110001 +10100101 00001000 10001000 -10110001 +10100101 00001000 10001111 -00110000 -00000111 -11110000 -11100000 -11100000 +00000000 10010001 00000000 10010001 -10110010 +00000000 +10010001 +00000000 +01011111 +10100110 00001000 10000000 -10110010 +10100110 00001000 10000111 -00000000 -00010111 -00000111 -11110100 -11000000 +01001111 +01001111 +01001111 +10011000 10010001 -00000100 +00000000 10010001 -10110010 +00000000 +10100110 00001000 10001000 -10110010 +10100110 00001000 10001111 -00000100 -10110001 -01011001 -01001111 -10000011 10010001 00000100 10010001 -10110011 +00000100 +00010111 +00000111 +11110011 +10010011 +10100111 00001000 10000000 -10110011 +10100111 00001000 10000111 -00000100 -10010110 -11100000 -00110000 -00000111 -11110000 -11100000 -11100000 -10110011 +00000000 +10010011 +00000000 +10010011 +00000000 +10010011 +00000000 +11001111 +10100111 00001000 10001000 -10110011 +10100111 00001000 10001111 -10010011 -00000100 -10010011 -00000100 -10010001 -00000100 -10010001 -00000100 -10110100 +00101111 +00100111 +11111101 +10010101 +10010101 +10010010 +10010010 +10110110 +10101000 00001000 10000000 -10110100 +10101000 00001000 10000111 -10010001 -00000000 -10010001 -00000000 -00010111 -00000111 -11110100 -11000000 -10110100 +10010010 +00100100 +10010011 +10010011 +10010011 +10010011 +10010011 +10010011 +10101000 00001000 10001000 -10110100 +10101000 00001000 10001111 10010001 -00000100 +00001000 10010001 -00000100 +00001000 10010001 00000000 10010001 00000000 -10110101 +10101001 00001000 10000000 -10110101 +10101001 00001000 10000111 00010111 00000111 -11110101 -10010001 -00000000 +11110000 10010001 -00000000 +00001000 10010001 -10110101 +00001000 +01011001 +10101001 00001000 10001000 -10110101 +10101001 00001000 10001111 -00000100 +01001111 +10000001 10010001 -00000100 -00011011 -00001011 -01010000 -01000000 -11110101 -10110110 +00001000 +10010001 +00001000 +10010110 +11100000 +10101010 00001000 10000000 -10110110 +10101010 00001000 10000111 -10010001 -00000000 -10010001 -00000000 -10010001 -00000000 -10010001 -00000000 -10110110 +00110000 +00000111 +11110100 +10010011 +00001000 +10010011 +00001000 +10111001 +10101010 00001000 10001000 -10110110 +10101010 00001000 10001111 -10010110 -00011101 -00011101 -10010011 -00000000 -10010011 -00000000 -10010011 -10110111 +10010100 +11000000 +11100000 +11100000 +11001111 +10011000 +10010001 +10010001 +10101011 00001000 10000000 -10110111 +10101011 00001000 10000111 -00000000 -10010011 -00000000 -10011010 -11000000 10010001 -00000100 10010001 -10110111 +10010001 +10010001 +10010000 +10111110 +10010000 +10010000 +10101011 00001000 10001000 -10110111 +10101011 00001000 10001111 -00000100 +10010101 +00101111 10010001 00000000 10010001 00000000 -00011011 -00001011 -01010000 -10111000 +01011111 +01001111 +10101100 00001000 10000000 -10111000 +10101100 00001000 10000111 -01000000 +11100000 +00110000 +00000111 11110000 -11001111 -11101100 11100000 -10010011 -00000000 -10010011 -10111000 +11100000 +10010001 +00001000 +10101100 00001000 10001000 -10111000 +10101100 00001000 10001111 -00000000 -11001111 -10110111 -01101000 -10111111 -10010100 10010001 +00001000 +00010111 +00000111 +11110011 +10010001 +00000000 10010001 -10111001 +10101101 00001000 10000000 -10111001 +10101101 00001000 10000111 +00000000 +01011001 +01001111 +10000011 10010001 +00000000 10010001 -10010001 -10010001 -10010001 -10010001 -10010000 -10111110 -10111001 +00000000 +10101101 00001000 10001000 -10111001 +10101101 00001000 10001111 -10010000 -10010000 -10010101 -11101111 +10010110 11100000 -10111111 -10111111 -11101010 -10111010 +00110000 +00000111 +11110000 +11100000 +11100000 +10010011 +10101110 00001000 10000000 -10111010 +10101110 00001000 10000111 -10111001 -10111000 -10010010 00000000 -10010010 +10010011 00000000 -10010010 -00000100 -10111010 +10011011 +11000000 +10011000 +11000000 +10011010 +10101110 00001000 10001000 -10111010 +10101110 00001000 10001111 +10011010 +10010101 10010010 -00000100 -10010010 -00001000 10010010 -00001000 +10110110 10010010 -00000000 -10111011 +00100100 +10010011 +10101111 00001000 10000000 -10111011 +10101111 00001000 10000111 -10010010 -00000000 -10111100 -10111000 -10110001 -01101001 -10111001 -10011000 -10111011 +10010011 +10010011 +10010011 +10010011 +10010011 +10010011 +10010011 +10011011 +10101111 00001000 10001000 -10111011 +10101111 00001000 10001111 -11101111 -10111111 -10111110 -10010100 -10010001 +11000000 +11101100 +11100000 +10010011 00000000 -10010001 +10010011 00000000 -10111100 +10011011 +10110000 00001000 10000000 -10111100 +10110000 00001000 10000111 -10010001 +11000000 +11101100 +11100000 +10010011 00000000 -10010001 +10010011 00000000 -10011010 -10010110 -00011101 -00011101 -10111100 +10010001 +10110000 00001000 10001000 -10111100 +10110000 00001000 10001111 -10010011 -00000000 -10010011 -00000000 -10010011 -00000000 -10010011 -00000000 -10111101 +00000100 +10010001 +00000100 +01011111 +01001111 +11100000 +00110000 +00000111 +10110001 00001000 10000000 -10111101 +10110001 00001000 10000111 -10011000 +11110000 +11100000 +11100000 10010001 00000000 10010001 00000000 -10010001 -00000100 -10010001 -10111101 +00010111 +10110001 00001000 10001000 -10111101 +10110001 00001000 10001111 -00000100 -00010111 00000111 11110100 -11000001 +11000000 10010001 -00000000 +00000100 10010001 -10111110 +00000100 +10110001 +10110010 00001000 10000000 -10111110 +10110010 00001000 10000111 -00000000 01011001 01001111 -10000001 -10010001 -00000000 +10000011 10010001 -00000000 -10111110 +00000100 +10010001 +00000100 +10010110 +10110010 00001000 10001000 -10111110 +10110010 00001000 10001111 -10010110 11100000 00110000 00000111 @@ -5526,41 +4773,41 @@ 11100000 11100000 10010011 -10111111 +00000100 +10110011 00001000 10000000 -10111111 +10110011 00001000 10000111 -00000000 10010011 -00000000 +00000100 10010001 00000100 10010001 00000100 10010001 -10111111 +00000000 +10110011 00001000 10001000 -10111111 +10110011 00001000 10001111 -00000000 10010001 00000000 00010111 00000111 11110100 -11000001 -10010001 11000000 +10010001 +00000100 +10110100 00001000 10000000 -11000000 +10110100 00001000 10000111 -00000100 10010001 00000100 10010001 @@ -5568,601 +4815,447 @@ 10010001 00000000 00010111 -11000000 +00000111 +10110100 00001000 10001000 -11000000 +10110100 00001000 10001111 -00000111 -11110000 -11000001 +11110101 10010001 00000000 10010001 00000000 10010001 -11000001 +00000100 +10010001 +10110101 00001000 10000000 -11000001 +10110101 00001000 10000111 00000100 -10010001 -00000100 00011011 00001011 01010000 01000000 -11110000 -11000001 -00001000 -10001000 -11000001 -00001000 -10001111 -11000001 -10011011 -11000001 -10011000 -00100111 -11111101 -10010101 -00110000 -11000010 -00001000 -10000000 -11000010 -00001000 -10000111 -11110100 -11000001 -00110000 -11110100 -11000011 -00110000 -11110100 -11000010 -11000010 -00001000 -10001000 -11000010 -00001000 -10001111 -00110000 -11110000 -11001111 -10010001 -00000000 -10010001 -00000000 -10010001 -11000011 -00001000 -10000000 -11000011 -00001000 -10000111 -00000000 -10010001 -00000000 -10010010 -00000000 -10010010 -00000000 -10010010 -11000011 -00001000 -10001000 -11000011 -00001000 -10001111 -00000000 -10010010 -00000000 -00101111 -00100111 -11111101 -10010101 -00101111 -11000100 -00001000 -10000000 -11000100 -00001000 -10000111 -00101111 -00101111 -10010001 -00000000 +11110101 10010001 00000000 -01011111 -01001111 -11000100 +10110101 00001000 10001000 -11000100 +10110101 00001000 10001111 -11100000 -00110000 -00000111 -11110000 -11100000 -11100000 -10010001 -00001000 -11000101 -00001000 -10000000 -11000101 -00001000 -10000111 -10010001 -00001000 -00010111 -00000111 -11110011 -10010001 -00000000 10010001 -11000101 -00001000 -10001000 -11000101 -00001000 -10001111 00000000 -01011001 -01001111 -10000011 10010001 00000000 10010001 00000000 -11000110 +10010110 +00011101 +10110110 00001000 10000000 -11000110 +10110110 00001000 10000111 -10010110 -11100000 -00110000 -00000111 -11110000 -11100000 -11100000 +00011101 10010011 -11000110 -00001000 -10001000 -11000110 -00001000 -10001111 00000000 10010011 00000000 -10011011 -11000011 -10011000 -10011010 -00000001 -11000111 -00001000 -10000000 -11000111 -00001000 -10000111 -00100111 -11111101 -10010101 -00101111 -00101111 -10010001 +10010011 00000000 -10010001 -11000111 +10010011 +10110110 00001000 10001000 -11000111 +10110110 00001000 10001111 00000000 -01011111 -01001111 -11100000 -00110000 -00000111 -11110000 -11100000 -11001000 -00001000 -10000000 -11001000 -00001000 -10000111 -11100000 -10010001 -00001000 -10010001 -00001000 -00010111 -00000111 -11110011 -11001000 -00001000 -10001000 -11001000 -00001000 -10001111 +10011010 +11000000 10010001 -00000000 +00000100 10010001 -00000000 -01011001 -01001111 -10000011 +00000100 10010001 -11001001 +10110111 00001000 10000000 -11001001 +10110111 00001000 10000111 00000000 10010001 00000000 -10010110 -11100000 -00110000 -00000111 +00011011 +00001011 +01010000 +01000000 11110000 -11001001 +10110111 00001000 10001000 -11001001 +10110111 00001000 10001111 -11100000 +11001111 +11101100 11100000 10010011 00000000 10010011 00000000 -10011011 -11000011 -11001010 +11001111 +10111000 00001000 10000000 -11001010 +10111000 00001000 10000111 -10011000 -10011010 -00100111 -11111101 -10010101 -00101111 -00101111 -00101111 -11001010 +10110111 +01101000 +10111111 +10010100 +10010001 +10010001 +10010001 +10010001 +10111000 00001000 10001000 -11001010 +10111000 00001000 10001111 -00101111 10010001 -00000000 10010001 -00000000 -01011111 -01001111 -11100000 -11001011 +10010001 +10010001 +10010000 +10111110 +10010000 +10010000 +10111001 00001000 10000000 -11001011 +10111001 00001000 10000111 -00110000 -00000111 -11110000 -11100000 +10010101 +11101111 11100000 -10010001 -00001000 -10010001 -11001011 +10111111 +10111111 +11101010 +10111001 +10111000 +10111001 00001000 10001000 -11001011 +10111001 00001000 10001111 -00001000 -00010111 -00000111 -11110011 -10010001 +10010010 00000000 -10010001 +10010010 00000000 -11001100 +10010010 +00000100 +10010010 +00000100 +10111010 00001000 10000000 -11001100 +10111010 00001000 10000111 -01011001 -01001111 -10000011 -10010001 +10010010 +00001000 +10010010 +00001000 +10010010 00000000 -10010001 +10010010 00000000 -10010110 -11001100 +10111010 00001000 10001000 -11001100 +10111010 00001000 10001111 -11100000 -00110000 -00000111 -11110000 -11100000 -11100000 -10010011 -00000000 -11001101 +10111100 +10111000 +10110001 +01101001 +10111001 +10011000 +11101111 +10111111 +10111011 00001000 10000000 -11001101 +10111011 00001000 10000111 -10010011 -00000000 -10011011 -11000011 -10011000 -10011010 +10111110 +10010100 10010001 00000000 -11001101 -00001000 -10001000 -11001101 -00001000 -10001111 10010001 00000000 -01011111 -01001111 -11100000 -00110000 -00000111 -11110000 -11001110 -00001000 -10000000 -11001110 -00001000 -10000111 -11100000 -11100000 10010001 -00001000 -10010001 -00001000 -00010111 -00000111 -11001110 +00000000 +10111011 00001000 10001000 -11001110 +10111011 00001000 10001111 -11110011 10010001 00000000 -10010001 +10011010 +10010110 +00011101 +00011101 +10010011 00000000 -01011001 -01001111 -10000011 -11001111 +10111100 00001000 10000000 -11001111 +10111100 00001000 10000111 -10010001 +10010011 00000000 -10010001 +10010011 00000000 -10010110 +10010011 +00000000 +10011000 11100000 -00110000 -00000111 -11001111 +10111100 00001000 10001000 -11001111 +10111100 00001000 10001111 -11110000 -11100000 11100000 -10010011 +10010001 00000000 -10010011 +10010001 00000000 -10011001 -11010000 +10010001 +00000100 +10010001 +10111101 00001000 10000000 -11010000 +10111101 00001000 10000111 +00000100 +00010111 +00000111 +11110100 11000001 -10011010 -10011010 -10010001 -00000000 10010001 00000000 10010001 -11010000 +10111101 00001000 10001000 -11010000 +10111101 00001000 10001111 -00000100 -10010001 -00000100 -00010111 -00000111 -11110000 -11001110 -10011000 -11010001 -00001000 -10000000 -11010001 -00001000 -10000111 -10010001 00000000 +01011001 +01001111 +10000001 10010001 00000000 10010001 -00000100 -10010001 -00000100 -11010001 +00000000 +10111110 00001000 -10001000 -11010001 +10000000 +10111110 00001000 -10001111 -00010111 +10000111 +10010110 +11100000 +00110000 00000111 11110000 -11001110 -10011000 -10010001 +11100000 +11100000 +10010011 +10111110 +00001000 +10001000 +10111110 +00001000 +10001111 +00000000 +10010011 00000000 10010001 -11010010 +00000100 +10010001 +00000100 +10010001 +10111111 00001000 10000000 -11010010 +10111111 00001000 10000111 00000000 10010001 -00000100 -10010001 -00000100 +00000000 00010111 00000111 -11110011 -11010010 +11110100 +11000001 +10010001 +10111111 00001000 10001000 -11010010 +10111111 00001000 10001111 -11001110 -10010001 00000100 10010001 00000100 10010001 00000000 10010001 -11010011 +00000000 +00010111 +11000000 00001000 10000000 -11010011 +11000000 00001000 10000111 +00000111 +11110000 +11000001 +10010001 00000000 +10010001 +00000000 +10010001 +11000000 +00001000 +10001000 +11000000 +00001000 +10001111 +00000100 +10010001 +00000100 00011011 00001011 01010000 01000000 11110000 -11001110 -10011000 -11010011 +11000001 00001000 -10001000 -11010011 +10000000 +11000001 00001000 -10001111 -10011001 -11001110 -10011010 +10000111 +11000001 +10011011 +11000001 +10011000 00100111 11111101 10010101 00110000 +11000001 +00001000 +10001000 +11000001 +00001000 +10001111 +11110100 +11000001 +00110000 +11110100 +11000011 +00100011 11110000 -11010100 +11001111 +11000010 00001000 10000000 -11010100 +11000010 00001000 10000111 -11001110 10010001 00000000 10010001 00000000 -10010001 -00000100 -10010001 -11010100 +01011111 +01001111 +11100000 +00110000 +11000010 00001000 10001000 -11010100 +11000010 00001000 10001111 -00000100 -00010111 00000111 -11110100 -11000001 +11110000 +11100000 +11100000 10010001 -00000000 +00001000 10010001 -11010101 +00001000 +11000011 00001000 10000000 -11010101 +11000011 00001000 10000111 -00000000 -01011001 -01001111 -10000001 +00010111 +00000111 +11110011 10010001 00000000 10010001 00000000 -11010101 +01011001 +11000011 00001000 10001000 -11010101 +11000011 00001000 10001111 +01001111 +11100100 +10000011 +10010001 +00000000 +10010001 +00000000 10010110 +11000100 +00001000 +10000000 +11000100 +00001000 +10000111 11100000 00110000 00000111 @@ -6170,278 +5263,322 @@ 11100000 11100000 10010011 -11010110 +00000000 +11000100 00001000 -10000000 -11010110 +10001000 +11000100 00001000 -10000111 -00000000 +10001111 10010011 00000000 +10011011 +11000011 +10011000 +10011010 10010001 -00000100 -10010001 -00000100 +00000000 +11000101 +00001000 +10000000 +11000101 +00001000 +10000111 10010001 -11010110 +00000000 +01011111 +01001111 +11100000 +00110000 +00000111 +11110000 +11000101 00001000 10001000 -11010110 +11000101 00001000 10001111 -00000000 +11100000 +11100000 10010001 -00000000 +00001000 +10010001 +00001000 00010111 00000111 -11110100 -11000001 -10010001 -11010111 +11000110 00001000 10000000 -11010111 +11000110 00001000 10000111 -00000100 -10010001 -00000100 +11110011 10010001 00000000 10010001 00000000 -00010111 -11010111 +01011001 +01001111 +11100100 +11000110 00001000 10001000 -11010111 +11000110 00001000 10001111 -00000111 -11110000 -11000001 +10000011 10010001 00000000 10010001 00000000 -10010001 -11011000 +10010110 +11100000 +00110000 +11000111 00001000 10000000 -11011000 +11000111 00001000 10000111 -00000100 -10010001 -00000100 -00011011 -00001011 -01010000 -01000000 +00000111 11110000 -11011000 +11100000 +11100000 +10010011 +00000000 +10010011 +00000000 +11000111 00001000 10001000 -11011000 +11000111 00001000 10001111 -11000001 10011011 -11000001 +11000010 10011000 -00101111 -00100111 -11111101 -10010101 -11011001 -00001000 -10000000 -11011001 -00001000 -10000111 +10011010 10010001 00000000 10010001 00000000 -10010001 -00000100 -10010001 -00000100 -11011001 +11001000 +00001000 +10000000 +11001000 +00001000 +10000111 +01011111 +01001111 +11100000 +00110000 +00000111 +11110000 +11100000 +11100000 +11001000 00001000 10001000 -11011001 +11001000 00001000 10001111 +10010001 +00001000 +10010001 +00001000 00010111 00000111 -11110100 -11000001 -10010001 -00000000 +11110011 10010001 -00000000 -11011010 +11001001 00001000 10000000 -11011010 +11001001 00001000 10000111 -01011001 -01001111 -10000001 -10010001 00000000 10010001 00000000 -10010110 -11011010 +01011001 +01001111 +11100100 +10000011 +10010001 +11001001 00001000 10001000 -11011010 +11001001 00001000 10001111 +00000000 +10010001 +00000000 +10010110 11100000 00110000 00000111 11110000 -11100000 -11100000 -10010011 -00000000 -11011011 +11001010 00001000 10000000 -11011011 +11001010 00001000 10000111 +11100000 +11100000 10010011 00000000 -10010001 -00000100 -10010001 -00000100 -10010001 +10010011 00000000 -11011011 +10011011 +11000010 +11001010 00001000 10001000 -11011011 +11001010 00001000 10001111 +10011000 +10011010 10010001 00000000 -00010111 -00000111 -11110100 -11000001 10010001 -00000100 -11011100 +00000000 +01011111 +01001111 +11001011 00001000 10000000 -11011100 +11001011 00001000 10000111 -10010001 -00000100 -10010001 -00000000 -10010001 -00000000 -00010111 +11100000 +00110000 00000111 -11011100 +11110000 +11100000 +11100000 +10010001 +00001000 +11001011 00001000 10001000 -11011100 +11001011 00001000 10001111 -11110000 -11000001 10010001 -00000000 +00001000 +00010111 +00000111 +11110011 10010001 00000000 10010001 -00000100 -11011101 +11001100 00001000 10000000 -11011101 +11001100 00001000 10000111 +00000000 +01011001 +01001111 +11100101 +10000011 10010001 -00000100 -00011011 -00001011 -01010000 -01000000 -11110000 -11000001 -11011101 +00000000 +10010001 +11001100 00001000 10001000 -11011101 +11001100 00001000 10001111 -10011011 -11000001 -10011000 -00101111 -00100111 -11111101 -10010101 -10010001 -11011110 +00000000 +10010110 +11100000 +00110000 +00000111 +11110000 +11100000 +11100000 +11001101 00001000 10000000 -11011110 +11001101 00001000 10000111 +10010011 +00000000 +10010011 00000000 +10011011 +11000010 +10011000 +10011010 +11001101 +00001000 +10001000 +11001101 +00001000 +10001111 10010001 00000000 10010001 -00000100 +00000000 +01011111 +01001111 +11100000 +00110000 +11001110 +00001000 +10000000 +11001110 +00001000 +10000111 +00000111 +11110000 +11100000 +11100000 10010001 -00000100 -00010111 -11011110 +00001000 +10010001 +00001000 +11001110 00001000 10001000 -11011110 +11001110 00001000 10001111 +00010111 00000111 -11110100 -11000001 +11110011 10010001 00000000 10010001 00000000 01011001 -11011111 +11001111 00001000 10000000 -11011111 +11001111 00001000 10000111 01001111 -10000001 +11100101 +10000011 10010001 00000000 10010001 00000000 10010110 -11100000 -11011111 +11001111 00001000 10001000 -11011111 +11001111 00001000 10001111 +11100000 00110000 00000111 11110000 @@ -6449,139 +5586,167 @@ 11100000 10010011 00000000 -10010011 -11100000 +11010000 00001000 10000000 -11100000 +11010000 00001000 10000111 +10010011 00000000 +10011011 +11000010 +10011000 +10011010 +10111010 +10111010 +11010000 +00001000 +10001000 +11010000 +00001000 +10001111 +10010111 +11110100 +11001110 +10011010 10010001 -00000100 -10010001 -00000100 +00000000 10010001 00000000 +11010001 +00001000 +10000000 +11010001 +00001000 +10000111 10010001 -11100000 +00000100 +10010001 +00000100 +00010111 +00000111 +11110000 +11001110 +11010001 00001000 10001000 -11100000 +11010001 00001000 10001111 +10011000 +10010001 +00000000 +10010001 00000000 -00010111 -00000111 -11110100 -11000001 10010001 00000100 10010001 -11100001 +11010010 00001000 10000000 -11100001 +11010010 00001000 10000111 00000100 -10010001 -00000000 -10010001 -00000000 00010111 00000111 11110000 -11100001 +11001110 +10011000 +10010001 +00000000 +11010010 00001000 10001000 -11100001 +11010010 00001000 10001111 -11000001 -10010001 -00000000 10010001 00000000 10010001 00000100 10010001 -11100010 +00000100 +00010111 +00000111 +11010011 00001000 10000000 -11100010 +11010011 00001000 10000111 +11110011 +11001110 +10010001 +00000100 +10010001 00000100 +10010001 +00000000 +11010011 +00001000 +10001000 +11010011 +00001000 +10001111 +10010001 +00000000 00011011 00001011 01010000 01000000 11110000 -11000001 -10011011 -11100010 +11001110 +11010100 00001000 -10001000 -11100010 +10000000 +11010100 00001000 -10001111 -11000001 +10000111 10011000 -00101111 +10011001 +11001110 +10011010 00100111 11111101 10010101 -10010001 -00000000 -11100011 -00001000 -10000000 -11100011 -00001000 -10000111 -10010001 -00000000 -10010001 -00000100 -10010001 -00000100 -00010111 -00000111 -11100011 +00110000 +11010100 00001000 10001000 -11100011 +11010100 00001000 10001111 -11110100 -10011000 +11110000 +11001110 10010001 00000000 10010001 00000000 10010001 00000100 -11100100 +11010101 00001000 10000000 -11100100 +11010101 00001000 10000111 10010001 00000100 00010111 00000111 -11110011 +11110100 +11000001 10010001 00000000 -10010001 -11100100 +11010101 00001000 10001000 -11100100 +11010101 00001000 10001111 +10010001 00000000 01011001 01001111 @@ -6589,13 +5754,13 @@ 10010001 00000000 10010001 -00000000 -11100101 +11010110 00001000 10000000 -11100101 +11010110 00001000 10000111 +00000000 10010110 11100000 00110000 @@ -6603,13 +5768,13 @@ 11110000 11100000 11100000 -10010011 -11100101 +11010110 00001000 10001000 -11100101 +11010110 00001000 10001111 +10010011 00000000 10010011 00000000 @@ -6617,27 +5782,27 @@ 00000100 10010001 00000100 -10010001 -11100110 +11010111 00001000 10000000 -11100110 +11010111 00001000 10000111 +10010001 00000000 10010001 00000000 00010111 00000111 11110100 -11000000 -10010001 -11100110 +11000001 +11010111 00001000 10001000 -11100110 +11010111 00001000 10001111 +10010001 00000100 10010001 00000100 @@ -6645,27 +5810,27 @@ 00000000 10010001 00000000 -00010111 -11100111 +11011000 00001000 10000000 -11100111 +11011000 00001000 10000111 +00010111 00000111 11110000 -11000000 +11000001 10010001 00000000 10010001 00000000 -10010001 -11100111 +11011000 00001000 10001000 -11100111 +11011000 00001000 10001111 +10010001 00000100 10010001 00000100 @@ -6673,154 +5838,166 @@ 00001011 01010000 01000000 -11110000 -11101000 +11011001 00001000 10000000 -11101000 +11011001 00001000 10000111 -11000000 +11110000 +11000001 10011011 -11000000 +11000001 10011000 -10111011 -10111011 -10111011 00101111 -11101000 +00100111 +11111101 +11011001 00001000 10001000 -11101000 +11011001 00001000 10001111 -00100111 -11111101 10010101 -10111011 -11001101 -10111010 -10111010 -10110011 -11101001 +10010001 +00000000 +10010001 +00000000 +10010001 +00000100 +10010001 +11011010 00001000 10000000 -11101001 +11011010 00001000 10000111 -11101000 -10111011 -11100000 -10111011 -00101111 +00000100 +00010111 +00000111 +11110100 +11000001 10010001 00000000 10010001 -11101001 +11011010 00001000 10001000 -11101001 +11011010 00001000 10001111 00000000 -01011111 +01011001 01001111 -11100000 -00110000 -00000111 -11110000 -11100000 -11101010 +10000001 +10010001 +00000000 +10010001 +00000000 +11011011 00001000 10000000 -11101010 +11011011 00001000 10000111 +10010110 11100000 -10010001 -00001000 -10010001 -00001000 -00010111 +00110000 00000111 -11110011 -11101010 +11110000 +11100000 +11100000 +10010011 +11011011 00001000 10001000 -11101010 +11011011 00001000 10001111 -10010001 00000000 -10010001 +10010011 00000000 -01011001 -01001111 -10000011 10010001 -11101011 +00000100 +10010001 +00000100 +10010001 +11011100 00001000 10000000 -11101011 +11011100 00001000 10000111 00000000 10010001 00000000 -10010110 -11100000 -00110000 +00010111 00000111 -11110000 -11101011 +11110100 +11000001 +10010001 +11011100 00001000 10001000 -11101011 +11011100 00001000 10001111 -11100000 -11100000 -10010011 +00000100 +10010001 +00000100 +10010001 00000000 -10010011 +10010001 00000000 -10011011 -11001110 -11101100 +00010111 +11011101 00001000 10000000 -11101100 -00001000 -10000111 -10011000 -10011010 -11001110 -10011000 +11011101 +00001000 +10000111 +00000111 +11110000 +11000001 10010001 00000000 10010001 00000000 -11101100 +10010001 +11011101 00001000 10001000 -11101100 +11011101 00001000 10001111 -10010001 00000100 10010001 00000100 -00010111 -00000111 +00011011 +00001011 +01010000 +01000000 11110000 -11001110 -11101101 +11011110 00001000 10000000 -11101101 +11011110 00001000 10000111 +11000001 +10011011 +11000001 10011000 +00101111 +00100111 +11111101 +10010101 +11011110 +00001000 +10001000 +11011110 +00001000 +10001111 10010001 00000000 10010001 @@ -6828,628 +6005,630 @@ 10010001 00000100 10010001 -11101101 -00001000 -10001000 -11101101 -00001000 -10001111 00000100 -00010111 -00000111 -11110011 -11001110 -10011000 -10010001 -00000000 -11101110 +11011111 00001000 10000000 -11101110 +11011111 00001000 10000111 +00010111 +00000111 +11110100 +11000000 10010001 00000000 10010001 -00000100 -10010001 -00000100 -00010111 -00000111 -11101110 +00000000 +11011111 00001000 10001000 -11101110 +11011111 00001000 10001111 -11110000 -11001110 -10011000 +01011001 +01001111 +10000001 10010001 00000000 10010001 00000000 -10010001 -11101111 +10010110 +11100000 00001000 10000000 -11101111 +11100000 00001000 10000111 -00000100 -10010001 -00000100 -00010111 +11100000 +00110000 00000111 -11110011 -11001110 -10011000 -11101111 +11110000 +11100000 +11100000 +10010011 +00000000 +11100000 00001000 10001000 -11101111 +11100000 00001000 10001111 -10010001 -00000000 -10010001 +10010011 00000000 10010001 00000100 10010001 00000100 -11110000 +10010001 +00000000 +11100001 00001000 10000000 -11110000 +11100001 00001000 10000111 -00010111 -00000111 -11110000 -11001110 -10011000 10010001 00000000 +00010111 +00000111 +11110100 +11000001 10010001 -11110000 +00000100 +11100001 00001000 10001000 -11110000 +11100001 00001000 10001111 -00000000 10010001 00000100 10010001 -00000100 +00000000 +10010001 +00000000 00010111 00000111 -11110011 -11110001 +11100010 00001000 10000000 -11110001 +11100010 00001000 10000111 -11001110 -10010001 -00000100 +11110000 +11000000 10010001 -00000100 +00000000 10010001 00000000 10010001 -11110001 +00000100 +11100010 00001000 10001000 -11110001 +11100010 00001000 10001111 -00000000 +10010001 +00000100 00011011 00001011 01010000 01000000 11110000 -11001111 -10011000 -11110010 +11000000 +11100011 00001000 10000000 -11110010 +11100011 00001000 10000111 -10011001 -11001111 -10011010 -11001111 -10010001 -00000100 +10011011 +11000000 +10011000 +00101111 +00100111 +11111101 +10010101 10010001 -00000100 -11110010 +11100011 00001000 10001000 -11110010 +11100011 00001000 10001111 -10010001 00000000 10010001 00000000 -00011011 -00001011 -01010000 -01000000 -11110011 -00001000 -10000000 -11110011 -00001000 -10000111 -11110000 -11001110 -10011000 -10011001 -11001110 -10011010 -11001110 10010001 -11110011 -00001000 -10001000 -11110011 -00001000 -10001111 00000100 10010001 00000100 -10010001 -00000000 -10010001 -00000000 -00011011 -11110100 +00010111 +11100100 00001000 10000000 -11110100 +11100100 00001000 10000111 -00001011 -01010000 -01000000 -11110000 -11001110 -10011000 -10011001 -11001110 +00000111 11110100 +10011000 +10010001 +00000000 +10010001 +00000000 +10010001 +11100100 00001000 10001000 -11110100 +11100100 00001000 10001111 -10011010 -11001110 -10010001 00000100 10010001 00000100 +00010111 +00000111 +11110011 10010001 00000000 -11110101 +11100101 00001000 10000000 -11110101 +11100101 00001000 10000111 10010001 00000000 -00011011 -00001011 -01010000 -01000000 -11110000 -11001110 -11110101 +01011001 +01001111 +10000001 +10010001 +00000000 +10010001 +11100101 00001000 10001000 -11110101 +11100101 00001000 10001111 -10011000 -10011001 -11001110 -10011010 -11001110 -00100011 +00000000 +10010110 +11100000 +00110000 +00000111 11110000 -11001100 -11110110 +11100000 +11100000 +11100110 00001000 10000000 -11110110 +11100110 00001000 10000111 -10010001 +10010011 00000000 -10010001 +10010011 00000000 -01011111 -01001111 -11100000 -00110000 -11110110 +10010001 +00000100 +10010001 +00000100 +11100110 00001000 10001000 -11110110 +11100110 00001000 10001111 -00000111 -11110000 -11100000 -11100000 10010001 -00001000 +00000000 10010001 -00001000 -11110111 +00000000 +00010111 +00000111 +11110100 +11000000 +11100111 00001000 10000000 -11110111 +11100111 00001000 10000111 -00010111 -00000111 -11110011 +10010001 +00000100 +10010001 +00000100 10010001 00000000 10010001 00000000 -01011001 -11110111 +11100111 00001000 10001000 -11110111 +11100111 00001000 10001111 -01001111 -11100100 -10000011 +00010111 +00000111 +11110000 +11000000 10010001 00000000 10010001 00000000 -10010110 -11111000 +11101000 00001000 10000000 -11111000 +11101000 00001000 10000111 -11100000 -00110000 -00000111 -11110000 -11100000 -11100000 -10010011 -00000000 -11111000 +10010001 +00000100 +10010001 +00000100 +00011011 +00001011 +01010000 +01000000 +11101000 00001000 10001000 -11111000 +11101000 00001000 10001111 -10010011 -00000000 +11110000 +11000000 10011011 11000000 10011000 -10011010 -10010001 -00000000 -11111001 +10111011 +10111011 +10111011 +11101001 00001000 10000000 -11111001 +11101001 00001000 10000111 +00101111 +00100111 +11111101 +10010101 +10111011 +11001101 +10011000 10010001 +11101001 +00001000 +10001000 +11101001 +00001000 +10001111 00000000 -01011111 -01001111 -11100000 -00110000 +10010001 +00000000 +10010001 +00000100 +10010001 +00000100 +00010111 +11101010 +00001000 +10000000 +11101010 +00001000 +10000111 00000111 11110000 -11111001 +11001110 +10011000 +10010001 +00000000 +10010001 +00000000 +11101010 00001000 10001000 -11111001 +11101010 00001000 10001111 -11100000 -11100000 10010001 -00001000 +00000100 10010001 -00001000 +00000100 00010111 00000111 -11111010 +11110011 +11001110 +11101011 00001000 10000000 -11111010 +11101011 00001000 10000111 -11110011 +10011000 10010001 00000000 10010001 00000000 -01011001 -01001111 -11100100 -11111010 +10010001 +00000100 +10010001 +11101011 00001000 10001000 -11111010 +11101011 00001000 10001111 -10000011 -10010001 -00000000 +00000100 +00010111 +00000111 +11110000 +11001110 +10011000 10010001 00000000 -10010110 -11100000 -00110000 -11111011 +11101100 00001000 10000000 -11111011 +11101100 00001000 10000111 -00000111 -11110000 -11100000 -11100000 -10010011 -00000000 -10010011 +10010001 00000000 -11111011 +10010001 +00000100 +10010001 +00000100 +00010111 +00000111 +11101100 00001000 10001000 -11111011 +11101100 00001000 10001111 -10011011 -11000000 +11110011 +11001110 10011000 -10011010 10010001 00000000 10010001 00000000 -11111100 +10010001 +11101101 00001000 10000000 -11111100 +11101101 00001000 10000111 -01011111 -01001111 -11100000 -00110000 +00000100 +10010001 +00000100 +00010111 00000111 11110000 -11100000 -11100000 -11111100 +11001111 +10011000 +11101101 00001000 10001000 -11111100 +11101101 00001000 10001111 10010001 -00001000 +00000000 +10010001 +00000000 10010001 +00000100 +10010001 +00000100 +11101110 00001000 +10000000 +11101110 +00001000 +10000111 00010111 00000111 11110011 +11001111 10010001 -11111101 +00000100 +10010001 +00000100 +11101110 00001000 -10000000 -11111101 +10001000 +11101110 00001000 -10000111 +10001111 +10010001 00000000 10010001 00000000 -01011001 -01001111 -11100100 -10000011 +00011011 +00001011 +01010000 +01000000 +11101111 +00001000 +10000000 +11101111 +00001000 +10000111 +11110000 +11001111 +10011000 +10011001 +11001111 +10011010 +11001111 10010001 -11111101 +11101111 00001000 10001000 -11111101 +11101111 00001000 10001111 +00000100 +10010001 +00000100 +10010001 00000000 10010001 00000000 -10010110 -11100000 -00110000 -00000111 +00011011 11110000 -11111110 00001000 10000000 -11111110 +11110000 00001000 10000111 -11100000 -11100000 -10010011 -00000000 -10010011 -00000000 -10011011 -11000000 -11111110 +00001011 +01010000 +01000000 +11110000 +11001110 +10011000 +10011001 +11001110 +11110000 00001000 10001000 -11111110 +11110000 00001000 10001111 -10011000 10011010 +11001110 10010001 -00000000 +00000100 +10010001 +00000100 10010001 00000000 -01011111 -01001111 -11111111 +11110001 00001000 10000000 -11111111 +11110001 00001000 10000111 -11100000 -00110000 -00000111 -11110000 -11100000 -11100000 10010001 -00001000 -11111111 +00000000 +00011011 +00001011 +01010000 +01000000 +11110000 +11001110 +11110001 00001000 10001000 -11111111 +11110001 00001000 10001111 +10011000 +10011001 +11001110 +10011010 +11001110 10010001 -00001000 -00010111 -00000111 -11110011 -10010001 -00000000 +00000100 10010001 +11110010 +00001000 10000000 -00000111 -10000000 -10000000 -00000111 +11110010 +00001000 10000111 -00000000 -01011001 -01001111 -11100101 -10000011 +00000100 10010001 00000000 10010001 -10000000 -00000111 +00000000 +00011011 +00001011 +01010000 +11110010 +00001000 10001000 -10000000 -00000111 +11110010 +00001000 10001111 -00000000 -10010110 -11100000 -00110000 -00000111 +01000000 11110000 -11100000 -11100000 -10000001 -00000111 -10000000 -10000001 -00000111 -10000111 -10010011 -00000000 -10010011 -00000000 -10011011 -11000000 +11001111 10011000 +10011001 +11001111 10011010 -10000001 -00000111 -10001000 -10000001 -00000111 -10001111 +11001111 +11110011 +00001000 +10000000 +11110011 +00001000 +10000111 +10110011 +00101111 10010001 00000000 10010001 00000000 01011111 01001111 +11110011 +00001000 +10001000 +11110011 +00001000 +10001111 11100000 00110000 -10000010 -00000111 -10000000 -10000010 -00000111 -10000111 00000111 11110000 11100000 11100000 10010001 00001000 +11110100 +00001000 +10000000 +11110100 +00001000 +10000111 10010001 00001000 -10000010 -00000111 -10001000 -10000010 -00000111 -10001111 00010111 00000111 11110011 10010001 00000000 10010001 +11110100 +00001000 +10001000 +11110100 +00001000 +10001111 00000000 01011001 -10000011 -00000111 -10000000 -10000011 -00000111 -10000111 01001111 -11100101 10000011 10010001 00000000 10010001 00000000 +11110101 +00001000 +10000000 +11110101 +00001000 +10000111 10010110 -10000011 -00000111 -10001000 -10000011 -00000111 -10001111 11100000 00110000 00000111 @@ -7457,55 +6636,44 @@ 11100000 11100000 10010011 +11110101 +00001000 +10001000 +11110101 +00001000 +10001111 00000000 -10000100 -00000111 -10000000 -10000100 -00000111 -10000111 10010011 00000000 10011011 11000000 10011000 10011010 -10011010 -11001011 -10000100 -00000111 -10001000 -10000100 -00000111 -10001111 -10011010 -11001100 -10011010 -11001100 -10011010 -11001100 -10011010 -11001111 -10000101 -00000111 +11100000 +11110110 +00001000 10000000 -10000101 -00000111 +11110110 +00001000 10000111 +11100000 +11001100 10011010 +11001101 10011010 +11001101 10011010 -11001011 +11001101 +11110110 +00001000 +10001000 +11110110 +00001000 +10001101 10011010 -11001111 +11001101 10011010 -11001111 -10000101 -00000111 -10001000 -10000101 -00000111 -10001001 +11001100 10011010 11001111 11100111 diff --git a/src/com/atmel/fpslic/Fpslic.java b/src/com/atmel/fpslic/Fpslic.java index 3a97c03..9cf1ff6 100644 --- a/src/com/atmel/fpslic/Fpslic.java +++ b/src/com/atmel/fpslic/Fpslic.java @@ -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; diff --git a/src/com/atmel/fpslic/FpslicBoot.java b/src/com/atmel/fpslic/FpslicBoot.java index 0d2c523..d0ea67d 100644 --- a/src/com/atmel/fpslic/FpslicBoot.java +++ b/src/com/atmel/fpslic/FpslicBoot.java @@ -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; diff --git a/src/com/atmel/fpslic/FpslicBootPins.java b/src/com/atmel/fpslic/FpslicBootPins.java index 2f5e451..d73638a 100644 --- a/src/com/atmel/fpslic/FpslicBootPins.java +++ b/src/com/atmel/fpslic/FpslicBootPins.java @@ -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; diff --git a/src/com/atmel/fpslic/FpslicBootPinsUsb.java b/src/com/atmel/fpslic/FpslicBootPinsUsb.java index d6e14ac..b7042bb 100644 --- a/src/com/atmel/fpslic/FpslicBootPinsUsb.java +++ b/src/com/atmel/fpslic/FpslicBootPinsUsb.java @@ -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) | diff --git a/src/com/atmel/fpslic/FpslicConstants.java b/src/com/atmel/fpslic/FpslicConstants.java index a249614..921d91d 100644 --- a/src/com/atmel/fpslic/FpslicConstants.java +++ b/src/com/atmel/fpslic/FpslicConstants.java @@ -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 index 0000000..d9428c3 --- /dev/null +++ b/src/edu/berkeley/slipway/AsyncPaperDemo.java @@ -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(); } + } +} + + diff --git a/src/edu/berkeley/slipway/Demo.java b/src/edu/berkeley/slipway/Demo.java index 3df2767..ce58538 100644 --- a/src/edu/berkeley/slipway/Demo.java +++ b/src/edu/berkeley/slipway/Demo.java @@ -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 { diff --git a/src/edu/berkeley/slipway/FtdiBoard.java b/src/edu/berkeley/slipway/FtdiBoard.java index ab95011..cf2cfd7 100644 --- a/src/edu/berkeley/slipway/FtdiBoard.java +++ b/src/edu/berkeley/slipway/FtdiBoard.java @@ -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; } diff --git a/src/edu/berkeley/slipway/FtdiBoardSlave.c b/src/edu/berkeley/slipway/FtdiBoardSlave.c index b5dd1a3..920e46b 100644 --- a/src/edu/berkeley/slipway/FtdiBoardSlave.c +++ b/src/edu/berkeley/slipway/FtdiBoardSlave.c @@ -127,7 +127,7 @@ inline void conf(int z, int y, int x, int d) { ISR(SIG_FPGA_INTERRUPT15) { interrupt_count++; - fpga_interrupts(1); + //fpga_interrupts(1); sei(); } @@ -153,9 +153,8 @@ inline int hex(char c) { } int readFPGA() { - fpga_interrupts(0); int ret = FISUA; - fpga_interrupts(1); + //fpga_interrupts(1); return ret; } @@ -177,6 +176,7 @@ int main() { cts(1); int x=0, y=0, z=0; + int flag=0; for(;;) { int i, d=0; int r = recv(); @@ -187,7 +187,8 @@ int main() { send('I'); send('T'); send('S'); - PORTE |= (1<<3); + fpga_interrupts(0); + if (flag) {PORTE |= (1<<5);} break; case 1: @@ -199,9 +200,10 @@ int main() { break; case 2: + flag=1; send(readFPGA()); break; - + /* case 3: { int32_t local_interrupt_count = interrupt_count; interrupt_count = 0; @@ -211,7 +213,7 @@ int main() { send((local_interrupt_count >> 0) & 0xff); break; } - + */ /* case 3: //init_timer(); diff --git a/src/edu/berkeley/slipway/gui/Gui.java b/src/edu/berkeley/slipway/gui/Gui.java index c218649..1ab98ee 100644 --- a/src/edu/berkeley/slipway/gui/Gui.java +++ b/src/edu/berkeley/slipway/gui/Gui.java @@ -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