[SCM] vdr packaging repository branch, master, updated. debian/1.7.28-1-1-gdbbbc5f

Darren Salt devspam at moreofthesa.me.uk
Fri Sep 7 02:09:08 UTC 2012


The following commit has been merged in the master branch:
commit dbbbc5f4b059f3a86897bbbaa382ef255897ccf0
Author: Darren Salt <devspam at moreofthesa.me.uk>
Date:   Fri Sep 7 03:07:04 2012 +0100

    Add a patch to decode EPG info from Freesat and Freeview HD.
    
    Patch source: http://www.realh.co.uk/vdr_freesat_freeviewhd.patch.gz

diff --git a/debian/.vdr-patches b/debian/.vdr-patches
index af2d848..ff9245a 100644
--- a/debian/.vdr-patches
+++ b/debian/.vdr-patches
@@ -2,6 +2,7 @@ debian/patches/12_osdbase-maxitems.patch:10ab91b6a8619bdb50d37e2de6ec50d0
 debian/patches/16_channels.conf.terr-fix.patch:933f8daa6bb6d26c711d0ae987a2b03e
 debian/patches/82_valgrind.patch:27e07a83103317b9bc90ac9b836e2c47
 debian/patches/fix-gcc-issue.patch:da7db4f1f426823da318956836995667
+debian/patches/vdr_freesat_freeviewhd.patch:e0a09be6b0aa1fc8fdd70eb77ce5f5f1
 debian/patches/04_newplugin.patch:5877f4f62dab4f3d437d4eef7cae3ac0
 debian/patches/99_ncursesw-include.patch:202634ae3e5d18b35edd5d04d2390e01
 debian/patches/fix-no-hddvbdevice-segfault.patch:51fca90c1a05d8ddfa6a8988c11be6f2
diff --git a/debian/changelog b/debian/changelog
index 7a64489..8922591 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,11 @@
+vdr (1.7.28-2) unstable; urgency=low
+
+  [Darren Salt]
+  * Added EPG decoding for Freeview HD and Freesat.
+    (Patch from Tony Houghton.)
+
+ -- Darren Salt <devspam at moreofthesa.me.uk>  Fri, 07 Sep 2012 02:48:38 +0100
+
 vdr (1.7.28-1) unstable; urgency=low
 
   * New upstream release
diff --git a/debian/patches/series b/debian/patches/series
index db62469..5afd8a7 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -11,3 +11,4 @@
 
 fix-no-hddvbdevice-segfault.patch
 fix-gcc-issue.patch
+vdr_freesat_freeviewhd.patch
diff --git a/debian/patches/vdr_freesat_freeviewhd.patch b/debian/patches/vdr_freesat_freeviewhd.patch
new file mode 100644
index 0000000..24dcfa2
--- /dev/null
+++ b/debian/patches/vdr_freesat_freeviewhd.patch
@@ -0,0 +1,5734 @@
+Description: Freesat and Freeview HD EPG support for VDR
+ Based on the patch from <http://www.rst38.org.uk/vdr/> with updated tables
+ from vdr-plugin-eepg.
+Author: Tony Houghton <h at realh.co.uk>
+Index: vdr-1.7.26/README.freesat
+===================================================================
+--- /dev/null	1970-01-01 00:00:00.000000000 +0000
++++ vdr-1.7.26/README.freesat	2012-04-02 17:25:28.878386271 +0100
+@@ -0,0 +1,36 @@
++Freesat EPG patch for vdr
++Update and Debianisation by Tony Houghton
++
++Installation:
++
++1. Apply the patch
++2. make clean && make vdr
++3. Install vdr
++4. Copy freesat.t1 and freesat.t2 to /video
++
++Restart VDR - enjoy a 7 day EPG with Freesat.
++
++Updates:
++
++VDR will reload the freesat.t1 and freesat.t2 every 10 minutes should the contents
++of them be changed.
++
++Advance configuration:
++
++1. Edit libsi/Makefile and add the following to DEFINES:
++
++  FREESAT_DATA_DIRECTORY   - Directory where the freesat.tX files are stored
++  FREESAT_ARCHIVE_MESSAGES - Store raw huffman strings in /var/tmp/pid/freesat.X
++  FREESAT_PRINT_MISSED_DECODING - Append missed hexcodes to end of string
++  FREESAT_NO_SYSLOG             - Disable use of isyslog
++
++Credits:
++
++Original code from MythTV
++(Huffman codes updated with data from mitsubushi, Jochen Mann and dom)
++Huffman codes now extracted from vdr-plugin-eepg
++
++Enjoy,
++
++dom /at/ suborbital.org.uk
++h /at/ realh.co.uk
+Index: vdr-1.7.26/eit.c
+===================================================================
+--- vdr-1.7.26.orig/eit.c	2012-03-10 14:43:52.000000000 +0000
++++ vdr-1.7.26/eit.c	2012-04-02 17:25:29.066390463 +0100
+@@ -348,6 +348,10 @@
+   Set(0x12, 0x40, 0xC0);  // event info now&next actual/other TS (0x4E/0x4F), future actual/other TS (0x5X/0x6X)
+   if (Setup.SetSystemTime && Setup.TimeTransponder)
+      Set(0x14, 0x70);     // TDT
++
++  Set(3842, 0x4E, 0xFE);  // event info, actual(0x4E)/other(0x4F) TS, present/following
++  Set(3842, 0x50, 0xF0);  // event info, actual TS, schedule(0x50)/schedule for future days(0x5X)
++  Set(3842, 0x60, 0xF0);  // event info, other  TS, schedule(0x60)/schedule for future days(0x6X)
+ }
+ 
+ void cEitFilter::SetDisableUntil(time_t Time)
+@@ -364,6 +368,7 @@
+         return;
+      }
+   switch (Pid) {
++    case 3842:
+     case 0x12: {
+          if (Tid >= 0x4E && Tid <= 0x6F) {
+             cSchedulesLock SchedulesLock(true, 10);
+Index: vdr-1.7.26/freesat.t1
+===================================================================
+--- /dev/null	1970-01-01 00:00:00.000000000 +0000
++++ vdr-1.7.26/freesat.t1	2012-04-02 17:25:29.146392245 +0100
+@@ -0,0 +1,2027 @@
++START:00:T:
++START:010:B:
++START:1000:C:
++START:1001:I:
++START:1101:S:
++START:01100:L:
++START:01110:D:
++START:01111:H:
++START:10100:R:
++START:10101:N:
++START:10110:E:
++START:11000:F:
++START:11001:A:
++START:11100:M:
++START:11101:P:
++START:11110:W:
++START:011011:Q:
++START:101111:G:
++START:111110:J:
++START:0110100:K:
++START:1011101:U:
++START:1111110:O:
++START:01101010:6:
++START:01101011:.:
++START:10111000:V:
++START:11111110:Y:
++START:101110011:2:
++START:111111111:X:
++START:1011100100:Z:
++START:1111111100:8:
++START:10111001010:1:
++START:10111001011:3:
++START:111111110100:4:
++START:111111110101:':
++START:111111110111: :
++START:11111111011000:5:
++START:11111111011011:0:
++START:111111110110011:m:
++START:1111111101100100:c:
++START:1111111101101000:9:
++START:1111111101101010:a:
++START:1111111101101011:d:
++START:11111111011001010:s:
++START:11111111011001011:p:
++START:11111111011010010:(:
++START:111111110110100110:t:
++START:1111111101101001110:7:
++START:11111111011010011110:ESCAPE:
++START:11111111011010011111:l:
++ESCAPE:0:ESCAPE:
++ESCAPE:1:ESCAPE:
++STOP:0:ESCAPE:
++STOP:1:ESCAPE:
++0x03:0:ESCAPE:
++0x03:1:ESCAPE:
++0x04:0:ESCAPE:
++0x04:1:ESCAPE:
++0x05:0:ESCAPE:
++0x05:1:ESCAPE:
++0x06:0:ESCAPE:
++0x06:1:ESCAPE:
++0x07:0:ESCAPE:
++0x07:1:ESCAPE:
++0x08:0:ESCAPE:
++0x08:1:ESCAPE:
++0x09:0:ESCAPE:
++0x09:1:ESCAPE:
++0x0a:0:ESCAPE:
++0x0a:1:ESCAPE:
++0x0b:0:ESCAPE:
++0x0b:1:ESCAPE:
++0x0c:0:ESCAPE:
++0x0c:1:ESCAPE:
++0x0d:0:ESCAPE:
++0x0d:1:ESCAPE:
++0x0e:0:ESCAPE:
++0x0e:1:ESCAPE:
++0x0f:0:ESCAPE:
++0x0f:1:ESCAPE:
++0x10:0:ESCAPE:
++0x10:1:ESCAPE:
++0x11:0:ESCAPE:
++0x11:1:ESCAPE:
++0x12:0:ESCAPE:
++0x12:1:ESCAPE:
++0x13:0:ESCAPE:
++0x13:1:ESCAPE:
++0x14:0:ESCAPE:
++0x14:1:ESCAPE:
++0x15:0:ESCAPE:
++0x15:1:ESCAPE:
++0x16:0:ESCAPE:
++0x16:1:ESCAPE:
++0x17:0:ESCAPE:
++0x17:1:ESCAPE:
++0x18:0:ESCAPE:
++0x18:1:ESCAPE:
++0x19:0:ESCAPE:
++0x19:1:ESCAPE:
++0x1a:0:ESCAPE:
++0x1a:1:ESCAPE:
++0x1b:0:ESCAPE:
++0x1b:1:ESCAPE:
++0x1c:0:ESCAPE:
++0x1c:1:ESCAPE:
++0x1d:0:ESCAPE:
++0x1d:1:ESCAPE:
++0x1e:0:ESCAPE:
++0x1e:1:ESCAPE:
++0x1f:0:ESCAPE:
++0x1f:1:ESCAPE:
++ :0000:W:
++ :0011:M:
++ :0100:C:
++ :0101:B:
++ :0111:P:
++ :1001:T:
++ :1100:N:
++ :1111:S:
++ :00011:I:
++ :00100:G:
++ :01100:H:
++ :01101:D:
++ :10000:o:
++ :10001:A:
++ :10100:t:
++ :10110:a:
++ :10111:F:
++ :11010:L:
++ :11011:R:
++ :001011:U:
++ :101011:O:
++ :111001:J:
++ :111010:E:
++ :0001000:f:
++ :0001001:Q:
++ :0001011:V:
++ :0010100:STOP:
++ :0010101:w:
++ :1110000:2:
++ :1110001:K:
++ :1110110:Y:
++ :1110111:i:
++ :00010100:-:
++ :10101001:1:
++ :101010000:&:
++ :101010101:X:
++ :0001010101:r:
++ :1010100010:5:
++ :1010100011:Z:
++ :1010101001:9:
++ :1010101101:s:
++ :1010101110:4:
++ :1010101111:3:
++ :00010101000:7:
++ :00010101100:b:
++ :00010101110:y:
++ :10101010000:':
++ :10101011000:6:
++ :000101011010:v:
++ :000101011011:d:
++ :000101011110:(:
++ :101010100010: :
++ :101010100011:0:
++ :101010110010:n:
++ :101010110011:8:
++ :0001010100110:g:
++ :0001010111110:u:
++ :00010101001000:+:
++ :00010101001001:.:
++ :00010101001010:ESCAPE:
++ :00010101001011:l:
++ :00010101001111:m:
++ :00010101111110:p:
++ :000101010011100:\\:
++ :000101010011101:/:
++ :000101011111111:e:
++ :0001010111111101:\":
++ :00010101111111001:c:
++ :000101011111110000:k:
++ :000101011111110001:h:
++!:1:STOP:
++!:01: :
++!:001:.:
++!:0001:!:
++!:00001:\":
++!:000000:ESCAPE:
++!:000001:0x3a:
++\":0: :
++\":10:ESCAPE:
++\":11:I:
++#:0:ESCAPE:
++#:1:ESCAPE:
++$:0:ESCAPE:
++$:1:ESCAPE:
++%:1: :
++%:00:ESCAPE:
++%:01:STOP:
++&:1: :
++&:01:B:
++&:000:ESCAPE:
++&:001:.:
++':1:s:
++':000:m:
++':010:C:
++':0010:t:
++':0011: :
++':01100:d:
++':01110:v:
++':011011:r:
++':011111:A:
++':0110101:n:
++':01101000:G:
++':01111001:l:
++':011010011:D:
++':011110000:B:
++':011110001:e:
++':011110101:i:
++':011110110:6:
++':0110100100:L:
++':0111101001:STOP:
++':0111101111:w:
++':01101001010:O:
++':01111010000:S:
++':01111010001:E:
++':01111011101:N:
++':011110111001:R:
++':0110100101100:a:
++':0110100101101:M:
++':0110100101110:K:
++':0110100101111:F:
++':0111101110000:0:
++':01111011100010:ESCAPE:
++':01111011100011:c:
++(:1:c:
++(:000:1:
++(:0010:M:
++(:0011:U:
++(:0100:R:
++(:0101:D:
++(:0110:H:
++(:01110:S:
++(:011110:F:
++(:0111110:G:
++(:01111110:ESCAPE:
++(:01111111:Y:
++):1:STOP:
++):00:ESCAPE:
++):01: :
++*:0:*:
++*:101: :
++*:1000:d:
++*:1100:m:
++*:1101:t:
++*:1111:s:
++*:10010:e:
++*:11100:g:
++*:11101:k:
++*:100110:ESCAPE:
++*:100111:y:
+++:0:ESCAPE:
+++:1: :
++,:1: :
++,:01:0:
++,:000:ESCAPE:
++,:001:.:
++-:11: :
++-:011:S:
++-:100:G:
++-:101:O:
++-:0011:T:
++-:0100:U:
++-:00000:E:
++-:00010:D:
++-:000010:m:
++-:000110:0:
++-:000111:I:
++-:001010:6:
++-:010100:F:
++-:010101:o:
++-:0000110:L:
++-:0000111:C:
++-:0010001:A:
++-:0010010:t:
++-:0010011:Y:
++-:0010111:2:
++-:0101100:B:
++-:0101101:.:
++-:00100000:P:
++-:00100001:Z:
++-:01011100:8:
++-:01011101:i:
++-:01011110:d:
++-:01011111:H:
++-:001011001:N:
++-:001011011:R:
++-:0010110000:1:
++-:0010110001:W:
++-:00101101001:c:
++-:00101101010:a:
++-:00101101011:M:
++-:001011010000:ESCAPE:
++-:001011010001:Q:
++.:1:.:
++.:01:STOP:
++.:0010: :
++.:00000:I:
++.:00001:T:
++.:00010:C:
++.:00110:p:
++.:00111:0:
++.:000111:H:
++.:00011010:W:
++.:000110001:S:
++.:000110110:3:
++.:000110111:B:
++.:0001100000:1:
++.:0001100001:M:
++.:0001100110:c:
++.:00011001000:t:
++.:00011001001:R:
++.:00011001010:F:
++.:00011001110:E:
++.:00011001111:A:
++.:0001100101100:ESCAPE:
++.:0001100101101:l:
++.:0001100101110:d:
++.:0001100101111:U:
++/:00:1:
++/:10:7:
++/:010:4:
++/:011:2:
++/:110:3:
++/:1110:5:
++/:111100:6:
++/:111110:C:
++/:1111010:9:
++/:1111011: :
++/:1111110:8:
++/:11111111:U:
++/:1111111000:G:
++/:1111111010:0:
++/:11111110010:ESCAPE:
++/:11111110011:W:
++/:11111110110:V:
++/:11111110111:S:
++0:00:6:
++0:01: :
++0:11:0:
++0:1001:p:
++0:1010:STOP:
++0:10000:1:
++0:10001:a:
++0:10111:7:
++0:1011000:-:
++0:1011010:s:
++0:10110011:4:
++0:10110110:t:
++0:101101111:%:
++0:1011001000:8:
++0:1011001001:0x3a:
++0:1011001010:5:
++0:1011001011:2:
++0:1011011100:/:
++0:10110111011:U:
++0:101101110101:,:
++0:1011011101000:.:
++0:10110111010010:ESCAPE:
++0:10110111010011:l:
++1:01:STOP:
++1:000:.:
++1:101:0:
++1:111:1:
++1:0010:2:
++1:0011: :
++1:1101:/:
++1:10010:8:
++1:11000:3:
++1:100000:5:
++1:100001:s:
++1:100010:6:
++1:100011:0x3a:
++1:100110:':
++1:110010:X:
++1:110011:9:
++1:1001111:4:
++1:10011101:-:
++1:100111001:7:
++1:1001110000:):
++1:10011100010:ESCAPE:
++1:10011100011:,:
++2:0:0:
++2:11:4:
++2:101:STOP:
++2:1001: :
++2:10000:0x3a:
++2:1000101:5:
++2:1000111:/:
++2:10001000:.:
++2:10001001:1:
++2:10001100:W:
++2:100011011:7:
++2:10001101001:3:
++2:10001101011:Z:
++2:100011010000:n:
++2:100011010001:6:
++2:100011010101:':
++2:1000110101000:ESCAPE:
++2:1000110101001:s:
++3:0: :
++3:10:STOP:
++3:1100:r:
++3:1101:/:
++3:1111:B:
++3:11100:0:
++3:1110100:0x3a:
++3:1110110:-:
++3:11101010:1:
++3:11101011:8:
++3:11101111:4:
++3:1110111000:6:
++3:1110111011:9:
++3:11101110011:t:
++3:11101110100:3:
++3:111011100100:ESCAPE:
++3:111011100101:e:
++3:111011101010:7:
++3:111011101011:5:
++4:0:STOP:
++4:11: :
++4:1001:0x3a:
++4:1011:/:
++4:10001:8:
++4:10101:.:
++4:100000:9:
++4:101000:0:
++4:1010010:M:
++4:10000101:I:
++4:10000110:):
++4:10100110:R:
++4:10100111:-:
++4:100001000:W:
++4:100001110:P:
++4:100001111:5:
++4:1000010011:2:
++4:10000100100:ESCAPE:
++4:10000100101:':
++5:0:STOP:
++5:11: :
++5:101:0:
++5:1001:/:
++5:100001:-:
++5:100011:0x3a:
++5:1000001:t:
++5:1000100:3:
++5:1000101:1:
++5:10000000:ESCAPE:
++5:10000001:a:
++6:00:STOP:
++6:01: :
++6:10:0:
++6:111:0x3a:
++6:11001:.:
++6:11011:i:
++6:110000:-:
++6:110101:a:
++6:1100011:4:
++6:1101000:8:
++6:1101001:/:
++6:11000100:6:
++6:110001011:9:
++6:1100010100:3:
++6:11000101010:ESCAPE:
++6:11000101011:t:
++7:1:STOP:
++7:01: :
++7:000:0:
++7:0011:.:
++7:00101:/:
++7:0010000:1:
++7:0010010:5:
++7:00100010:ESCAPE:
++7:00100011:4:
++7:00100110:3:
++7:00100111:2:
++8:1: :
++8:00:0:
++8:010:0x3a:
++8:01101:STOP:
++8:011000:t:
++8:011001:p:
++8:011101:8:
++8:011110:.:
++8:011111:6:
++8:0111000:5:
++8:01110010:9:
++8:011100110:M:
++8:0111001110:F:
++8:01110011110:ESCAPE:
++8:01110011111:c:
++9:0:1:
++9:11:STOP:
++9:1000:9:
++9:1010:.:
++9:10011:0:
++9:100100: :
++9:100101:8:
++9:101100:7:
++9:101101:/:
++9:101110:6:
++9:1011111:0x3a:
++9:10111101:4:
++9:101111000:ESCAPE:
++9:101111001:3:
++0x3a:1: :
++0x3a:00:0:
++0x3a:011:.:
++0x3a:0100:2:
++0x3a:01010:1:
++0x3a:010111:3:
++0x3a:0101101:C:
++0x3a:01011000:ESCAPE:
++0x3a:01011001:T:
++;:1: :
++;:00:ESCAPE:
++;:01:.:
++<:0:ESCAPE:
++<:1:ESCAPE:
++=:0:ESCAPE:
++=:1:ESCAPE:
++>:0:ESCAPE:
++>:1:ESCAPE:
++?:1:STOP:
++?:01: :
++?:001:0x3a:
++?:0000:ESCAPE:
++?:0001:.:
++@:0:ESCAPE:
++@:1:H:
++A:001:r:
++A:010: :
++A:100:l:
++A:110:n:
++A:0000:m:
++A:0111:g:
++A:1111:d:
++A:00010:w:
++A:01100:T:
++A:01101:c:
++A:10101:t:
++A:10110:f:
++A:10111:i:
++A:11100:s:
++A:000110:u:
++A:000111:STOP:
++A:101001:R:
++A:111010:b:
++A:1010001:v:
++A:1110110:p:
++A:10100000:S:
++A:11101110:M:
++A:101000011:P:
++A:111011111:.:
++A:10100001000:e:
++A:10100001001:B:
++A:10100001010:1:
++A:11101111011:-:
++A:101000010110:k:
++A:101000010111:h:
++A:111011110000:a:
++A:111011110100:y:
++A:111011110101:*:
++A:1110111100010:x:
++A:1110111100011:':
++A:1110111100100:N:
++A:1110111100110:2:
++A:11101111001010:0x3a:
++A:11101111001111:z:
++A:111011110010110:L:
++A:111011110010111:F:
++A:111011110011100:D:
++A:1110111100111010:ESCAPE:
++A:1110111100111011:q:
++B:00:C:
++B:01:B:
++B:101:r:
++B:1001:i:
++B:1100:o:
++B:1101:u:
++B:1110:a:
++B:1111:e:
++B:10001:l:
++B:1000000:STOP:
++B:1000010:y:
++B:10000010:O:
++B:10000110:3:
++B:100000111:A:
++B:100001110:S:
++B:1000001101:0x3a:
++B:10000011000:.:
++B:10000011001:w:
++B:10000111101:h:
++B:10000111110:*:
++B:10000111111: :
++B:100001111001:R:
++B:1000011110000:':
++B:10000111100011:T:
++B:100001111000100:ESCAPE:
++B:100001111000101:4:
++C:00:o:
++C:01: :
++C:100:l:
++C:110:h:
++C:1010:r:
++C:1110:a:
++C:10110:i:
++C:10111:e:
++C:111100:u:
++C:111101:B:
++C:1111100:y:
++C:1111110:!:
++C:11111011:.:
++C:111110100:w:
++C:111111100:STOP:
++C:111111110:S:
++C:111111111:T:
++C:1111101011:2:
++C:1111111011:I:
++C:11111010100:4:
++C:11111010101:*:
++C:11111110101:D:
++C:111111101000:U:
++C:1111111010010:':
++C:11111110100110:n:
++C:111111101001110:z:
++C:11111110100111100:O:
++C:11111110100111101:E:
++C:11111110100111110:A:
++C:111111101001111110:ESCAPE:
++C:111111101001111111:s:
++D:01:o:
++D:10:a:
++D:000:r:
++D:110:e:
++D:111:i:
++D:00100:t:
++D:00111:u:
++D:001011: :
++D:0010101:J:
++D:0011000:y:
++D:0011010:STOP:
++D:0011011:I:
++D:00110011:0x3a:
++D:001010001:*:
++D:001010010:-:
++D:001010011:&:
++D:001100100:':
++D:0010100000:A:
++D:0010100001:h:
++D:00110010101:N:
++D:00110010110:V:
++D:001100101110:D:
++D:001100101111:w:
++D:0011001010000:O:
++D:0011001010001:E:
++D:0011001010011:d:
++D:00110010100100:ESCAPE:
++D:00110010100101:T:
++E:00:m:
++E:011:v:
++E:101:n:
++E:111:a:
++E:0100:E:
++E:1000:STOP:
++E:1101:x:
++E:10011:d:
++E:11001:l:
++E:010100:4:
++E:010101:y:
++E:010110:u:
++E:100100:r:
++E:110000:i:
++E:0101111:s:
++E:1001010:F:
++E:1100010:X:
++E:10010110:R:
++E:11000111: :
++E:010111010:g:
++E:100101111:0x3a:
++E:110001100:T:
++E:110001101:':
++E:0101110001:c:
++E:0101110011:q:
++E:0101110110:e:
++E:0101110111:C:
++E:1001011100:p:
++E:01011100000:-:
++E:01011100101:Z:
++E:10010111011:t:
++E:010111000010:S:
++E:010111000011:.:
++E:100101110101:W:
++E:0101110010000:!:
++E:1001011101000:o:
++E:01011100100010:f:
++E:01011100100011:U:
++E:01011100100100:N:
++E:01011100100101:M:
++E:01011100100110:L:
++E:01011100100111:A:
++E:10010111010011:D:
++E:100101110100100:ESCAPE:
++E:100101110100101:w:
++F:00:i:
++F:10:a:
++F:011:r:
++F:110:u:
++F:111:o:
++F:0100:e:
++F:01011:l:
++F:0101000:A:
++F:0101010:O:
++F:01010010: :
++F:010100110:h:
++F:010100111:t:
++F:010101101:f:
++F:010101111:L:
++F:0101011001:STOP:
++F:01010111000:j:
++F:01010111001:I:
++F:01010111010:.:
++F:01010111011:1:
++F:010101100000:M:
++F:010101100010:*:
++F:010101100011:K:
++F:0101011000010:y:
++F:01010110000111:H:
++F:010101100001100:ESCAPE:
++F:010101100001101:!:
++G:10:r:
++G:001:M:
++G:010:a:
++G:011:o:
++G:110:i:
++G:111:e:
++G:00001:u:
++G:00010:X:
++G:000001:h:
++G:000111:l:
++G:0000001:y:
++G:0001100:w:
++G:00000000:0x3a:
++G:00011011:C:
++G:000000011:STOP:
++G:000110100:-:
++G:0001101010:P:
++G:0001101011: :
++G:00000001000:':
++G:00000001010:A:
++G:000000010010:U:
++G:000000010110:T:
++G:000000010111:4:
++G:0000000100110:ESCAPE:
++G:0000000100111:Y:
++H:0:o:
++H:100:a:
++H:101:i:
++H:110:e:
++H:1110:u:
++H:11110:R:
++H:111110:A:
++H:1111110:.:
++H:111111101:y:
++H:111111110:S:
++H:1111111110:E:
++H:1111111111:r:
++H:11111110000:STOP:
++H:11111110010:L:
++H:11111110011:M:
++H:111111100011:w:
++H:1111111000101:D:
++H:11111110001000:ESCAPE:
++H:11111110001001:I:
++I:0:T:
++I:100:s:
++I:101:n:
++I:1101:t:
++I:11001: :
++I:11101:':
++I:11111:r:
++I:110000:I:
++I:110001:STOP:
++I:111001:m:
++I:1110000:d:
++I:1110001:N:
++I:1111001:z:
++I:1111010:.:
++I:11110000:a:
++I:11110001:Y:
++I:111101100:S:
++I:111101110:c:
++I:11110110101:D:
++I:11110110110:f:
++I:11110111100:l:
++I:11110111111:y:
++I:111101101000:V:
++I:111101101110:o:
++I:111101111011:F:
++I:1111011010010:,:
++I:1111011010011:A:
++I:1111011011110:O:
++I:1111011110101:g:
++I:1111011111000:C:
++I:1111011111001:0x3a:
++I:1111011111011:v:
++I:11110110111110:p:
++I:11110110111111:E:
++I:11110111101000:B:
++I:11110111110100:k:
++I:11110111110101:b:
++I:1111011110100100:ESCAPE:
++I:1111011110100101:R:
++I:1111011110100110:L:
++I:1111011110100111:G:
++J:00:a:
++J:01:u:
++J:11:e:
++J:101:o:
++J:1001:i:
++J:10000: :
++J:100010:K:
++J:1000111:STOP:
++J:100011001:s:
++J:100011010:F:
++J:1000110000:V:
++J:1000110001:':
++J:1000110111:f:
++J:10001101101:G:
++J:100011011000:ESCAPE:
++J:100011011001:D:
++K:01:i:
++K:11:y:
++K:001:e:
++K:101: :
++K:0000:a:
++K:1000:o:
++K:00010:STOP:
++K:00011:r:
++K:100101:t:
++K:100110:n:
++K:100111:S:
++K:10010011:G:
++K:100100000:-:
++K:100100011:O:
++K:100100100:h:
++K:100100101:w:
++K:1001000010:1:
++K:1001000011:':
++K:10010001011:u:
++K:100100010000:T:
++K:100100010001:N:
++K:100100010010:0x3a:
++K:100100010011:.:
++K:100100010100:,:
++K:1001000101010:ESCAPE:
++K:1001000101011:l:
++L:00:a:
++L:10:o:
++L:11:i:
++L:010:e:
++L:0111:u:
++L:01101:K:
++L:0110000:l:
++L:0110010:A:
++L:0110011: :
++L:01100011:y:
++L:0110001000:L:
++L:0110001001:I:
++L:01100010100:C:
++L:01100010101:.:
++L:01100010111:STOP:
++L:011000101101:':
++L:0110001011000:E:
++L:01100010110010:ESCAPE:
++L:01100010110011:Y:
++M:01:a:
++M:10:o:
++M:000:e:
++M:111:i:
++M:0010:T:
++M:1100:y:
++M:1101:u:
++M:00110:STOP:
++M:001111:c:
++M:00111001:r:
++M:00111010:E:
++M:001110111:F:
++M:0011100001:Z:
++M:0011100011: :
++M:0011101100:1:
++M:0011101101:I:
++M:00111000001:h:
++M:00111000100:C:
++M:001110000001:Q:
++M:001110001010:K:
++M:0011100010110:P:
++M:00111000000000:0x3a:
++M:00111000000001:.:
++M:00111000000010:':
++M:00111000101110:M:
++M:001110000000110:ESCAPE:
++M:001110000000111:w:
++M:001110001011110:S:
++M:001110001011111:R:
++N:1:e:
++N:00:o:
++N:011:i:
++N:0101:a:
++N:01001:u:
++N:010000:C:
++N:01000100:E:
++N:01000110:F:
++N:010001110:B:
++N:010001111:H:
++N:0100010110:Y:
++N:01000101000:G:
++N:01000101001:':
++N:01000101011:I:
++N:01000101110:A:
++N:010001010100:M:
++N:010001011110: :
++N:010001011111:STOP:
++N:0100010101010:T:
++N:01000101010110:.:
++N:010001010101110:ESCAPE:
++N:010001010101111:Z:
++O:000:':
++O:010:f:
++O:110:u:
++O:111:n:
++O:0010:M:
++O:0011:l:
++O:1001:m:
++O:01101:r:
++O:01110:d:
++O:10000:p:
++O:10100:h:
++O:10110:STOP:
++O:011001:S:
++O:011110:z:
++O:011111:b:
++O:100011:v:
++O:101010:w:
++O:101011:U:
++O:1011100:T:
++O:1011101:O:
++O:1011110:K:
++O:01100001:C:
++O:01100010:x:
++O:01100011:.:
++O:10001001:t:
++O:10001011: :
++O:10111110:s:
++O:10111111:N:
++O:011000001:g:
++O:100010000:-:
++O:100010101:a:
++O:1000100010:i:
++O:1000100011:e:
++O:1000101001:o:
++O:01100000000:A:
++O:01100000001:j:
++O:01100000010:c:
++O:10001010000:2:
++O:011000000111:R:
++O:100010100010:P:
++O:100010100011:0x3a:
++O:0110000001100:E:
++O:01100000011010:ESCAPE:
++O:01100000011011:L:
++P:01:r:
++P:10:l:
++P:000:e:
++P:001:a:
++P:111:o:
++P:1101:i:
++P:110000:D:
++P:110001:u:
++P:110011:h:
++P:11001000: :
++P:11001010:2:
++P:110010010:H:
++P:110010011:M:
++P:110010110:S:
++P:11001011100:0x3a:
++P:11001011101:*:
++P:110010111101:s:
++P:1100101111001:I:
++P:1100101111100:STOP:
++P:1100101111101:G:
++P:1100101111110:':
++P:11001011111110:y:
++P:110010111100000:Y:
++P:110010111100001:L:
++P:110010111100010:C:
++P:110010111100011:ESCAPE:
++P:110010111111110:O:
++P:110010111111111:.:
++Q:1:u:
++Q:000:I:
++Q:001:STOP:
++Q:010:V:
++Q:0111: :
++Q:01101:C:
++Q:011000:ESCAPE:
++Q:011001:':
++R:00:a:
++R:01:o:
++R:11:e:
++R:100:i:
++R:1011:u:
++R:10101:E:
++R:101000:D:
++R:1010011:STOP:
++R:10100101:h:
++R:1010010000:I:
++R:1010010010:y:
++R:1010010011:n:
++R:101001000110: :
++R:1010010001000:':
++R:1010010001011:S:
++R:1010010001110:N:
++R:10100100010010:B:
++R:10100100010011:.:
++R:10100100010100:&:
++R:10100100011110:T:
++R:10100100011111:1:
++R:101001000101010:ESCAPE:
++R:101001000101011:C:
++S:001:o:
++S:010:p:
++S:011:u:
++S:110:h:
++S:111:t:
++S:0001:a:
++S:1001:e:
++S:1011:c:
++S:00000:n:
++S:10001:i:
++S:10101:k:
++S:000011:w:
++S:101000:m:
++S:0000101:A:
++S:1000010:l:
++S:1010010:q:
++S:1010011:M:
++S:00001000:2:
++S:00001001:P:
++S:10000000:O:
++S:10000010:I:
++S:10000011: :
++S:10000111:STOP:
++S:100000010:y:
++S:100001100:E:
++S:1000000111:?:
++S:1000011011:H:
++S:10000001100:B:
++S:10000110100:g:
++S:100000011011:r:
++S:100001101010:*:
++S:1000011010110:3:
++S:1000011010111:.:
++S:10000001101000:5:
++S:10000001101010:0x3a:
++S:10000001101011:1:
++S:100000011010010:C:
++S:1000000110100110:ESCAPE:
++S:1000000110100111:Y:
++T:0:h:
++T:101:o:
++T:111:V:
++T:1000:e:
++T:1001:r:
++T:11000:a:
++T:11010:w:
++T:110011:i:
++T:1101101:O:
++T:1101111:H:
++T:11001001:y:
++T:11001010:M:
++T:11011000:.:
++T:11011100:u:
++T:11011101:W:
++T:110010001:P:
++T:110010110:0x3a:
++T:110010111:4:
++T:110110011:I:
++T:1101100100: :
++T:1101100101:STOP:
++T:11001000010:X:
++T:11001000011:s:
++T:110010000000:T:
++T:110010000001:S:
++T:110010000010:B:
++T:1100100000110:U:
++T:11001000001110:A:
++T:1100100000111100:C:
++T:1100100000111101:*:
++T:1100100000111111:N:
++T:11001000001111100:ESCAPE:
++T:11001000001111101:Y:
++U:0:n:
++U:10:p:
++U:1101:K:
++U:1111:l:
++U:11000:R:
++U:11100:S:
++U:110011:E:
++U:111011:s:
++U:1100101:g:
++U:1110101:T:
++U:11001001: :
++U:110010000:-:
++U:110010001:r:
++U:111010000:2:
++U:111010001:m:
++U:111010011:STOP:
++U:1110100100:.:
++U:11101001010:c:
++U:111010010110:k:
++U:11101001011100:ESCAPE:
++U:11101001011101:z:
++U:11101001011110:t:
++U:11101001011111:B:
++V:1: :
++V:000:0x3a:
++V:011:i:
++V:0010:e:
++V:0011:a:
++V:0100:3:
++V:010101:C:
++V:010111:STOP:
++V:0101000:':
++V:0101001:4:
++V:0101101:o:
++V:01011001:I:
++V:0101100000:s:
++V:0101100001:D:
++V:0101100010:.:
++V:01011000110:8:
++V:0101100011101:u:
++V:0101100011110:r:
++V:0101100011111:B:
++V:01011000111000:ESCAPE:
++V:01011000111001:E:
++W:01:o:
++W:11:e:
++W:001:h:
++W:100:a:
++W:101:i:
++W:00000:.:
++W:00010:O:
++W:00011:r:
++W:000011:y:
++W:0000100:u:
++W:00001010:STOP:
++W:000010111:A:
++W:00001011001:Y:
++W:00001011010:T:
++W:00001011011: :
++W:000010110000:I:
++W:0000101100010:ESCAPE:
++W:0000101100011:l:
++X:00:STOP:
++X:10: :
++X:11:t:
++X:010:T:
++X:0111:c:
++X:01101:m:
++X:011001:U:
++X:01100000:a:
++X:01100001:X:
++X:01100010:-:
++X:011000110:x:
++X:0110001111:9:
++X:01100011100:ESCAPE:
++X:01100011101:i:
++Y:1:o:
++Y:01:e:
++Y:000:u:
++Y:0011: :
++Y:00100:v:
++Y:001010:a:
++Y:00101110:P:
++Y:00101111:':
++Y:001011000:n:
++Y:001011011:r:
++Y:0010110010:D:
++Y:00101100110:w:
++Y:00101100111:s:
++Y:00101101000:R:
++Y:00101101001:L:
++Y:00101101010:STOP:
++Y:001011010110:C:
++Y:0010110101110:ESCAPE:
++Y:0010110101111:N:
++Z:1:o:
++Z:00:a:
++Z:010:i:
++Z:01100:O:
++Z:01101:u:
++Z:01110:e:
++Z:011110: :
++Z:0111111:STOP:
++Z:01111101:0x3a:
++Z:011111000:ESCAPE:
++Z:011111001:-:
++[:0:ESCAPE:
++[:1:ESCAPE:
++\\:0:ESCAPE:
++\\:1:x:
++]:0:ESCAPE:
++]:1:ESCAPE:
++^:0:ESCAPE:
++^:1:ESCAPE:
++_:0:ESCAPE:
++_:1:ESCAPE:
++`:0:ESCAPE:
++`:1:ESCAPE:
++a:001:r:
++a:011:t:
++a:100:l:
++a:110:n:
++a:0001:m:
++a:0100:c:
++a:1010:s:
++a:1110:y:
++a:10110: :
++a:10111:d:
++a:11110:i:
++a:11111:k:
++a:000010:b:
++a:000011:STOP:
++a:010110:p:
++a:010111:g:
++a:0000000:e:
++a:0000001:':
++a:0000011:w:
++a:0101001:u:
++a:0101010:z:
++a:0101011:v:
++a:00000101:f:
++a:01010001:h:
++a:000001001:0x3a:
++a:0000010000:!:
++a:0101000000:o:
++a:0101000001:x:
++a:00000100010:-:
++a:00000100011:a:
++a:01010000101:.:
++a:01010000110:N:
++a:01010000111:,:
++a:010100001000:q:
++a:0101000010010:j:
++a:01010000100111:?:
++a:010100001001101:J:
++a:0101000010011000:ESCAPE:
++a:0101000010011001:U:
++b:000:r:
++b:001:o:
++b:010:e:
++b:011:a:
++b:100:i:
++b:1011:u:
++b:1100:y:
++b:1101:l:
++b:1111: :
++b:10101:s:
++b:11100:b:
++b:11101:STOP:
++b:101000:h:
++b:1010010:3:
++b:10100111:':
++b:1010011001:t:
++b:1010011010:j:
++b:10100110000:n:
++b:10100110001:d:
++b:10100110111:w:
++b:101001101101:m:
++b:1010011011001:.:
++b:10100110110000:ESCAPE:
++b:10100110110001:0x3a:
++c:00:k:
++c:010:o:
++c:100:h:
++c:110:t:
++c:111:e:
++c:0111:r:
++c:10100: :
++c:10110:i:
++c:10111:a:
++c:011000:l:
++c:011001:y:
++c:011010:s:
++c:011011:STOP:
++c:1010100:c:
++c:1010111:u:
++c:10101010:0x3a:
++c:10101011:P:
++c:101011001:D:
++c:1010110100:G:
++c:1010110110:b:
++c:10101100000:L:
++c:10101100001:K:
++c:10101100011:A:
++c:10101101010:q:
++c:10101101110:.:
++c:10101101111:C:
++c:101011000100:n:
++c:101011000101:':
++c:1010110101100:B:
++c:1010110101101:I:
++c:10101101011101:f:
++c:10101101011110:8:
++c:101011010111000:M:
++c:101011010111001:ESCAPE:
++c:101011010111111:F:
++c:1010110101111100:w:
++c:1010110101111101:Q:
++d:11: :
++d:001:e:
++d:100:STOP:
++d:101:a:
++d:0001:y:
++d:0100:i:
++d:0110:s:
++d:00000:o:
++d:01010:d:
++d:000011:u:
++d:010110:r:
++d:010111:l:
++d:011101:v:
++d:011110:g:
++d:0000100:':
++d:0111111:.:
++d:00001010:0x3a:
++d:00001011:h:
++d:01110000:c:
++d:01110010:n:
++d:01110011:w:
++d:011100010:?:
++d:011111000:!:
++d:011111001:-:
++d:011111010:f:
++d:0111000111:m:
++d:0111110110:,:
++d:01111101110:t:
++d:01111101111:b:
++d:011100011001:):
++d:011100011010:/:
++d:011100011011:k:
++d:0111000110001:p:
++d:01110001100001:z:
++d:011100011000000:ESCAPE:
++d:011100011000001:4:
++e:01: :
++e:000:s:
++e:101:r:
++e:0010:t:
++e:1001:n:
++e:1100:STOP:
++e:1110:a:
++e:1111:w:
++e:10000:l:
++e:11011:e:
++e:001110:m:
++e:100010:c:
++e:100011:d:
++e:0011010:i:
++e:0011011:p:
++e:0011110:b:
++e:1101000:v:
++e:1101011:y:
++e:00110000:g:
++e:00110001:f:
++e:00110010:x:
++e:00111110:k:
++e:00111111:0x3a:
++e:11010011:o:
++e:11010100:':
++e:001100111:h:
++e:110100101:.:
++e:0011001100:P:
++e:0011001101:B:
++e:1101001000:,:
++e:1101010100:V:
++e:1101010101:z:
++e:1101010111:j:
++e:11010010010:4:
++e:11010010011:?:
++e:11010101101:u:
++e:110101011001:-:
++e:1101010110001:!:
++e:11010101100001:q:
++e:110101011000001:G:
++e:1101010110000000:ESCAPE:
++e:1101010110000001:S:
++f:0: :
++f:101:o:
++f:1001:t:
++f:1100:a:
++f:1101:i:
++f:1111:e:
++f:10000:.:
++f:11100:r:
++f:11101:f:
++f:100010:STOP:
++f:10001101:y:
++f:10001111:u:
++f:100011000:':
++f:100011101:l:
++f:1000110011:n:
++f:1000111000:g:
++f:10001100100:c:
++f:10001110010:-:
++f:100011001010:,:
++f:100011001011:s:
++f:100011100111:0x3a:
++f:1000111001101:k:
++f:10001110011000:ESCAPE:
++f:10001110011001:b:
++g:00:h:
++g:10: :
++g:010:STOP:
++g:011:e:
++g:1100:i:
++g:11100:0x3a:
++g:11101:r:
++g:11111:a:
++g:110100:s:
++g:110111:l:
++g:111101:u:
++g:1101011:b:
++g:1101100:g:
++g:1101101:o:
++g:1111001:n:
++g:11010100:2:
++g:11110000:!:
++g:111100011:d:
++g:1101010100:.:
++g:1101010101:,:
++g:1101010110:':
++g:1101010111:t:
++g:1111000101:y:
++g:11110001000:w:
++g:111100010011:m:
++g:11110001001011:?:
++g:111100010010000:p:
++g:111100010010001:f:
++g:111100010010010:@:
++g:111100010010011:-:
++g:111100010010101:;:
++g:1111000100101000:ESCAPE:
++g:1111000100101001:z:
++h:0:e:
++h:101:o:
++h:1001:i:
++h:1100:a:
++h:1110: :
++h:1111:t:
++h:11010:r:
++h:11011:STOP:
++h:100000:b:
++h:100001:u:
++h:10001000:w:
++h:10001001:d:
++h:10001010:n:
++h:10001011:y:
++h:10001100:!:
++h:10001101:l:
++h:10001111:.:
++h:100011100:':
++h:1000111010:s:
++h:10001110110:m:
++h:100011101111:0x3a:
++h:10001110111000:f:
++h:10001110111001:?:
++h:10001110111010:c:
++h:1000111011101100:v:
++h:1000111011101101:q:
++h:1000111011101110:g:
++h:100011101110111100:h:
++h:100011101110111101:ESCAPE:
++h:100011101110111110:,:
++h:100011101110111111:*:
++i:01:n:
++i:000:c:
++i:1001:o:
++i:1010:l:
++i:1100:g:
++i:1101:s:
++i:1110:t:
++i:1111:e:
++i:00101:a:
++i:00110:v:
++i:10000:r:
++i:10001:d:
++i:10110:m:
++i:001000:p:
++i:001110: :
++i:101111:f:
++i:0011110:z:
++i:0011111:STOP:
++i:1011100:b:
++i:1011101:k:
++i:00100101:-:
++i:00100110:x:
++i:001001001:':
++i:001001111:q:
++i:0010011100:u:
++i:0010011101:i:
++i:00100100001:h:
++i:00100100010:0x3a:
++i:00100100011:w:
++i:0010010000001:,:
++i:0010010000010:y:
++i:0010010000011:/:
++i:00100100000000:.:
++i:001001000000010:ESCAPE:
++i:001001000000011:j:
++j:0:y:
++j:11:o:
++j:101:e:
++j:1001:a:
++j:10001:u:
++j:100001:i:
++j:1000000:STOP:
++j:10000010:ESCAPE:
++j:10000011: :
++k:00: :
++k:10:e:
++k:010:i:
++k:110:STOP:
++k:0110:y:
++k:0111:s:
++k:1111:f:
++k:111001:a:
++k:111010:l:
++k:1110001:0x3a:
++k:1110110:k:
++k:11100000:':
++k:11101111:.:
++k:111000011:w:
++k:111011100:o:
++k:1110000101:h:
++k:11100001000:b:
++k:11100001001:,:
++k:11101110111:n:
++k:111011101010:?:
++k:111011101100:m:
++k:111011101101:!:
++k:1110111010010:u:
++k:1110111010011:c:
++k:1110111010110:d:
++k:1110111010111:t:
++k:11101110100001:j:
++k:11101110100010:-:
++k:111011101000000:p:
++k:111011101000001:/:
++k:111011101000111:S:
++k:1110111010001100:ESCAPE:
++k:1110111010001101:r:
++l:01:e:
++l:000:l:
++l:101:a:
++l:0011:y:
++l:1000:STOP:
++l:1001:d:
++l:1100:o:
++l:1110:i:
++l:1111: :
++l:00100:u:
++l:11010:s:
++l:001010:t:
++l:001011:m:
++l:1101101:k:
++l:11011000:f:
++l:11011100:b:
++l:11011110:':
++l:11011111:c:
++l:110110011:v:
++l:110111010:0x3a:
++l:1101100101:.:
++l:1101110110:w:
++l:11011001000:z:
++l:11011101111:p:
++l:110110010010:h:
++l:110110010011:*:
++l:1101110111000:g:
++l:1101110111001:,:
++l:11011101110100:r:
++l:11011101110101:n:
++l:11011101110111:-:
++l:110111011101100:!:
++l:1101110111011011:?:
++l:11011101110110101:C:
++l:110111011101101000:ESCAPE:
++l:110111011101101001:j:
++m:10:e:
++m:001:m:
++m:011: :
++m:111:a:
++m:0000:i:
++m:0001:STOP:
++m:0100:y:
++m:1101:p:
++m:01010:b:
++m:11000:o:
++m:110010:n:
++m:110011:s:
++m:0101100:l:
++m:0101110:f:
++m:01011010:0x3a:
++m:01011110:4:
++m:010110110:h:
++m:010111110:w:
++m:0101101111:':
++m:0101111110:r:
++m:0101111111:u:
++m:01011011101:.:
++m:010110111001:k:
++m:0101101110000:ESCAPE:
++m:0101101110001:d:
++n:000:i:
++n:100:g:
++n:101: :
++n:110:d:
++n:0011:a:
++n:0100:s:
++n:0110:e:
++n:1110:STOP:
++n:1111:t:
++n:01110:c:
++n:01111:n:
++n:001010:y:
++n:010100:':
++n:010101:k:
++n:010111:o:
++n:0010000:r:
++n:0010011:f:
++n:0010110:u:
++n:0010111:j:
++n:00100010:v:
++n:00100100:-:
++n:00100101:.:
++n:01011000:l:
++n:01011010:x:
++n:01011011:0x3a:
++n:001000111:,:
++n:010110011:m:
++n:0010001100:!:
++n:00100011010:z:
++n:01011001001:?:
++n:01011001010:h:
++n:01011001011:b:
++n:001000110110:B:
++n:001000110111:*:
++n:010110010000:w:
++n:0101100100011:q:
++n:01011001000101:p:
++n:010110010001000:;:
++n:0101100100010010:/:
++n:0101100100010011:ESCAPE:
++o:00:r:
++o:110:n:
++o:0100:f:
++o:0101: :
++o:0110:w:
++o:1000:o:
++o:1011:u:
++o:01111:t:
++o:10010:c:
++o:10100:p:
++o:10101:d:
++o:11100:m:
++o:11110:l:
++o:011100:a:
++o:011101:b:
++o:100110:y:
++o:100111:STOP:
++o:111010:s:
++o:111011:k:
++o:1111101:v:
++o:1111110:g:
++o:11111111:i:
++o:111110001:h:
++o:111110010:!:
++o:111111100:e:
++o:111111101:j:
++o:1111100110:':
++o:11111000001:?:
++o:11111000010:0x3a:
++o:11111001110:z:
++o:11111001111:x:
++o:111110000000:J:
++o:111110000110:.:
++o:111110000111:-:
++o:11111000000100:4:
++o:11111000000110:,:
++o:11111000000111:G:
++o:111110000001011:):
++o:1111100000010100:S:
++o:11111000000101010:D:
++o:111110000001010110:ESCAPE:
++o:111110000001010111:q:
++p:00:e:
++p:010:STOP:
++p:100:i:
++p:110:o:
++p:0110:s:
++p:1010: :
++p:1110:p:
++p:01110:l:
++p:01111:r:
++p:10110:h:
++p:11110:a:
++p:101110:t:
++p:101111:':
++p:1111100:d:
++p:1111101:m:
++p:1111110:y:
++p:111111101:0x3a:
++p:111111111:!:
++p:1111111100:w:
++p:1111111101:u:
++p:11111110000:b:
++p:11111110010:-:
++p:11111110011:.:
++p:111111100011:n:
++p:1111111000101:k:
++p:11111110001001:,:
++p:111111100010000:ESCAPE:
++p:111111100010001:c:
++q:1:u:
++q:01:STOP:
++q:001:0x3a:
++q:0000:ESCAPE:
++q:0001:':
++r:000: :
++r:011:i:
++r:101:e:
++r:0011:y:
++r:0100:d:
++r:1000:s:
++r:1001:t:
++r:1100:a:
++r:1101:STOP:
++r:1111:o:
++r:01011:n:
++r:11101:l:
++r:001001:k:
++r:001010:r:
++r:001011:m:
++r:010101:u:
++r:111001:g:
++r:0010000:':
++r:0101001:c:
++r:1110001:0x3a:
++r:00100010:f:
++r:00100011:.:
++r:01010001:b:
++r:11100000:v:
++r:010100000:,:
++r:010100001:p:
++r:111000010:w:
++r:1110000111:j:
++r:11100001100:-:
++r:111000011010:h:
++r:1110000110110:G:
++r:11100001101110:q:
++r:111000011011111:S:
++r:1110000110111100:!:
++r:111000011011110100:*:
++r:111000011011110110:T:
++r:1110000110111101010:ESCAPE:
++r:1110000110111101011:E:
++r:1110000110111101110:1:
++r:1110000110111101111:/:
++s:10: :
++s:11:STOP:
++s:011:t:
++s:0000:s:
++s:0010:i:
++s:0011:h:
++s:00011:;:
++s:01010:e:
++s:010001:o:
++s:010011:c:
++s:010110:0x3a:
++s:0001000:.:
++s:0001001:!:
++s:0001011:y:
++s:0100000:p:
++s:0100100:a:
++s:0101111:u:
++s:00010100:,:
++s:00010101:f:
++s:01000011:':
++s:01001011:n:
++s:01011100:l:
++s:01011101:r:
++s:010000101:k:
++s:010010100:d:
++s:0100001001:m:
++s:0100101011:b:
++s:01000010000:?:
++s:01000010001:w:
++s:01001010100:g:
++s:010010101010:q:
++s:01001010101101:E:
++s:01001010101110:-:
++s:010010101011000:ESCAPE:
++s:010010101011001:):
++s:010010101011110:W:
++s:010010101011111:1:
++t:000:i:
++t:011:STOP:
++t:100: :
++t:111:h:
++t:0010:a:
++t:0100:r:
++t:1010:s:
++t:1011:o:
++t:1101:e:
++t:00111:t:
++t:01010:y:
++t:11000:u:
++t:010110:m:
++t:110010:c:
++t:110011:l:
++t:0011000:':
++t:0011010:0x3a:
++t:00110010:w:
++t:00110110:!:
++t:01011100:.:
++t:01011101:b:
++t:01011110:E:
++t:01011111:f:
++t:001100110:?:
++t:001101110:n:
++t:0011001110:z:
++t:0011011110:d:
++t:00110011111:,:
++t:00110111110:P:
++t:001100111100:v:
++t:001100111101:-:
++t:001101111110:):
++t:0011011111110:g:
++t:00110111111110:ESCAPE:
++t:001101111111110:S:
++t:0011011111111111:4:
++t:00110111111111100:k:
++t:001101111111111010:j:
++t:001101111111111011:p:
++u:00:r:
++u:100:s:
++u:111:n:
++u:0100:e:
++u:0101:m:
++u:1100:t:
++u:01100:c:
++u:01101:g:
++u:01110:b:
++u:10100:p:
++u:10101:i:
++u:10110:l:
++u:11010:d:
++u:11011:a:
++u:011110:STOP:
++u:101110:y:
++u:0111110:z:
++u:1011110: :
++u:01111111:':
++u:10111110:-:
++u:011111100:k:
++u:101111111:0x3a:
++u:0111111010:f:
++u:0111111011:,:
++u:1011111100:w:
++u:101111110100:v:
++u:101111110101:x:
++u:101111110111:o:
++u:1011111101100:j:
++u:10111111011010:u:
++u:101111110110110:.:
++u:1011111101101111:h:
++u:10111111011011100:?:
++u:10111111011011101:ESCAPE:
++v:1:e:
++v:01:i:
++v:001:a:
++v:0001:o:
++v:00000: :
++v:000011:STOP:
++v:0000100:y:
++v:00001011:s:
++v:000010101:r:
++v:0000101000:ESCAPE:
++v:0000101001:.:
++w:0:s:
++w:100: :
++w:110:STOP:
++w:1011:i:
++w:1110:o:
++w:10100:a:
++w:11110:n:
++w:11111:e:
++w:1010111:y:
++w:10101000:m:
++w:10101011:d:
++w:10101101:l:
++w:101010011:b:
++w:101010100:k:
++w:101010101:r:
++w:1010100100:j:
++w:1010110001:,:
++w:1010110011:h:
++w:10101001011:-:
++w:10101100000:c:
++w:10101100001:f:
++w:10101100101:p:
++w:101010010100:g:
++w:101011001000:t:
++w:1010100101010:.:
++w:1010100101011:0x3a:
++w:1010110010011:q:
++w:10101100100101:':
++w:101011001001001:?:
++w:1010110010010000:ESCAPE:
++w:1010110010010001:B:
++x:00:p:
++x:10: :
++x:11:t:
++x:0110:STOP:
++x:01000:o:
++x:01010:c:
++x:01110:i:
++x:01111:m:
++x:010010:e:
++x:010110:y:
++x:0100110:u:
++x:0100111:f:
++x:0101111:,:
++x:010111000:g:
++x:010111001:a:
++x:010111011:9:
++x:0101110101:':
++x:01011101001:x:
++x:010111010000:ESCAPE:
++x:010111010001:s:
++y:0: :
++y:11:STOP:
++y:10001:o:
++y:10010:s:
++y:10100:a:
++y:10110:l:
++y:10111:0x3a:
++y:100110:d:
++y:1000001:n:
++y:1000010:t:
++y:1010100:':
++y:1010101:b:
++y:1010111:.:
++y:10000000:i:
++y:10000110:,:
++y:10000111:p:
++y:10011100:m:
++y:10011110:c:
++y:10101100:w:
++y:10101101:e:
++y:100000010:?:
++y:100000011:f:
++y:100111010:r:
++y:100111011:g:
++y:1001111100:z:
++y:1001111110:-:
++y:1001111111:T:
++y:100111110100:2:
++y:100111110110:!:
++y:100111110111:k:
++y:1001111101010:v:
++y:10011111010110:y:
++y:100111110101110:h:
++y:1001111101011111:j:
++y:10011111010111100:ESCAPE:
++y:10011111010111101:):
++z:00:z:
++z:01:STOP:
++z:101:i:
++z:1000:y:
++z:1001:e:
++z:1100:w:
++z:1101: :
++z:1110:l:
++z:11110:a:
++z:111110:o:
++z:11111100:m:
++z:11111101:0x3a:
++z:11111111:c:
++z:111111100:,:
++z:1111111011:b:
++z:11111110100:u:
++z:111111101011:!:
++z:11111110101000:ESCAPE:
++z:11111110101001:t:
++z:11111110101010:h:
++z:11111110101011:?:
++{:0:ESCAPE:
++{:1:ESCAPE:
++|:0:ESCAPE:
++|:1:ESCAPE:
++}:0:ESCAPE:
++}:1:ESCAPE:
++~:0:ESCAPE:
++~:1:ESCAPE:
++0x7f:0:ESCAPE:
++0x7f:1:ESCAPE:
+Index: vdr-1.7.26/freesat.t2
+===================================================================
+--- /dev/null	1970-01-01 00:00:00.000000000 +0000
++++ vdr-1.7.26/freesat.t2	2012-04-02 17:25:29.214393762 +0100
+@@ -0,0 +1,3160 @@
++START:010:A:
++START:100:C:
++START:111:T:
++START:0001:J:
++START:0011:D:
++START:1010:S:
++START:00000:H:
++START:00100:I:
++START:00101:R:
++START:01101:F:
++START:01110:.:
++START:01111:W:
++START:10111:M:
++START:11000:B:
++START:11001:P:
++START:11011:N:
++START:000010:O:
++START:011001:[:
++START:101101:L:
++START:110101:E:
++START:0000110:K:
++START:1101000:Y:
++START:1101001:G:
++START:00001110:2:
++START:01100000:p:
++START:01100001:b:
++START:01100010:U:
++START:01100011:(:
++START:10110000:1:
++START:10110011:V:
++START:000011110:Q:
++START:101100010:3:
++START:0000111110:9:
++START:0000111111:8:
++START:1011000110:6:
++START:1011000111:5:
++START:1011001000:Z:
++START:1011001001:7:
++START:1011001010:4:
++START:101100101110:X:
++START:101100101111: :
++START:1011001011001:w:
++START:1011001011010:':
++START:1011001011011:\":
++START:10110010110000:t:
++START:101100101100010:a:
++START:1011001011000110:`:
++START:10110010110001110:ESCAPE:
++START:10110010110001111:m:
++ESCAPE:0:ESCAPE:
++ESCAPE:1:ESCAPE:
++STOP:0:ESCAPE:
++STOP:1:ESCAPE:
++0x03:0:ESCAPE:
++0x03:1:ESCAPE:
++0x04:0:ESCAPE:
++0x04:1:ESCAPE:
++0x05:0:ESCAPE:
++0x05:1:ESCAPE:
++0x06:0:ESCAPE:
++0x06:1:ESCAPE:
++0x07:0:ESCAPE:
++0x07:1:ESCAPE:
++0x08:0:ESCAPE:
++0x08:1:ESCAPE:
++0x09:0:ESCAPE:
++0x09:1:ESCAPE:
++0x0a:0:ESCAPE:
++0x0a:1:ESCAPE:
++0x0b:0:ESCAPE:
++0x0b:1:ESCAPE:
++0x0c:0:ESCAPE:
++0x0c:1:ESCAPE:
++0x0d:0:ESCAPE:
++0x0d:1:ESCAPE:
++0x0e:0:ESCAPE:
++0x0e:1:ESCAPE:
++0x0f:0:ESCAPE:
++0x0f:1:ESCAPE:
++0x10:0:ESCAPE:
++0x10:1:ESCAPE:
++0x11:0:ESCAPE:
++0x11:1:ESCAPE:
++0x12:0:ESCAPE:
++0x12:1:ESCAPE:
++0x13:0:ESCAPE:
++0x13:1:ESCAPE:
++0x14:0:ESCAPE:
++0x14:1:ESCAPE:
++0x15:0:ESCAPE:
++0x15:1:ESCAPE:
++0x16:0:ESCAPE:
++0x16:1:ESCAPE:
++0x17:0:ESCAPE:
++0x17:1:ESCAPE:
++0x18:0:ESCAPE:
++0x18:1:ESCAPE:
++0x19:0:ESCAPE:
++0x19:1:ESCAPE:
++0x1a:0:ESCAPE:
++0x1a:1:ESCAPE:
++0x1b:0:ESCAPE:
++0x1b:1:ESCAPE:
++0x1c:0:ESCAPE:
++0x1c:1:ESCAPE:
++0x1d:0:ESCAPE:
++0x1d:1:ESCAPE:
++0x1e:0:ESCAPE:
++0x1e:1:ESCAPE:
++0x1f:0:ESCAPE:
++0x1f:1:ESCAPE:
++ :010:a:
++ :100:t:
++ :0001:o:
++ :0010:s:
++ :00110:d:
++ :01100:[:
++ :01111:p:
++ :10101:b:
++ :11001:c:
++ :11010:h:
++ :11100:w:
++ :11101:i:
++ :11111:f:
++ :000000:A:
++ :000011:M:
++ :001111:e:
++ :011100:B:
++ :011101:C:
++ :101000:T:
++ :101101:S:
++ :101110:g:
++ :110000:r:
++ :110110:n:
++ :110111:l:
++ :111101:m:
++ :0000011:v:
++ :0000100:G:
++ :0000101:N:
++ :0011101:y:
++ :0110101:H:
++ :0110111:L:
++ :1010010:J:
++ :1010011:F:
++ :1011001:R:
++ :1011110:u:
++ :1100010:D:
++ :1100011:W:
++ :1111001:P:
++ :00000100:k:
++ :00000101:O:
++ :01101000:-:
++ :01101101:1:
++ :10110001:K:
++ :10111110:j:
++ :11110000:I:
++ :11110001:E:
++ :001110010:q:
++ :001110011:U:
++ :011010010:V:
++ :011011000:Y:
++ :011011001: :
++ :101100001:2:
++ :101111110:STOP:
++ :0011100000:3:
++ :0011100001:8:
++ :0011100010:6:
++ :0110100111:5:
++ :1011000000:(:
++ :1011111110:7:
++ :00111000110:0:
++ :01101001100:':
++ :01101001101:9:
++ :10110000010:Z:
++ :10111111110:4:
++ :10111111111:Q:
++ :001110001111:X:
++ :1011000001100:ESCAPE:
++ :1011000001101:.:
++ :1011000001110:&:
++ :00111000111000:\\:
++ :00111000111010:@:
++ :00111000111011:`:
++ :10110000011110:\":
++ :10110000011111:z:
++ :001110001110011:$:
++ :0011100011100100:+:
++ :00111000111001011:x:
++ :001110001110010101:]:
++ :0011100011100101000:/:
++ :0011100011100101001:?:
++!:1: :
++!:01:STOP:
++!:001:.:
++!:0000:0x3a:
++!:00011:[:
++!:0001001:\":
++!:0001010:/:
++!:0001011:!:
++!:00010000:):
++!:000100010:':
++!:0001000111:?:
++!:00010001100:ESCAPE:
++!:00010001101:]:
++\":11: :
++\":001:.:
++\":0000:p:
++\":0101:B:
++\":0111:T:
++\":1000:i:
++\":00010:f:
++\":00011:W:
++\":01000:S:
++\":01100:t:
++\":01101:C:
++\":10100:STOP:
++\":10111:,:
++\":010010:J:
++\":100100:m:
++\":101010:n:
++\":101011:I:
++\":0100110:E:
++\":0100111:D:
++\":1001010:w:
++\":1001011:g:
++\":1001100:b:
++\":1001101:L:
++\":1001110:-:
++\":1011000:c:
++\":1011001:H:
++\":10011110:P:
++\":10110100:r:
++\":10110111:K:
++\":100111111:l:
++\":101101010:Y:
++\":101101011:Q:
++\":101101100:G:
++\":101101101:A:
++\":1001111100:ESCAPE:
++\":1001111101:a:
++#:0:ESCAPE:
++#:1:ESCAPE:
++$:0:1:
++$:11:3:
++$:100:4:
++$:1011:2:
++$:10101:7:
++$:101001:5:
++$:1010000:ESCAPE:
++$:1010001:9:
++%:1: :
++%:00:ESCAPE:
++%:01:,:
++&:1: :
++&:01:w:
++&:001:B:
++&:0000:E:
++&:000100:2:
++&:000110:A:
++&:000111:R:
++&:00010100:O:
++&:00010101:4:
++&:00010111:J:
++&:000101100:ESCAPE:
++&:000101101:P:
++':1:s:
++':001:t:
++':010: :
++':0000:l:
++':01101:r:
++':000100:n:
++':000101:.:
++':000110:C:
++':011000:B:
++':011101:A:
++':0111000:d:
++':0111100:v:
++':00011100:S:
++':00011111:p:
++':01100101:D:
++':01111011:i:
++':01111100:c:
++':01111101:m:
++':01111111:,:
++':000111010:f:
++':000111011:g:
++':011001000:F:
++':011001001:h:
++':011001101:H:
++':011001110:N:
++':011100101:R:
++':011100110:STOP:
++':011100111:T:
++':011110101:G:
++':011111101:L:
++':0001111000:o:
++':0001111001:K:
++':0001111011:a:
++':0110011001:u:
++':0110011111:O:
++':0111001001:I:
++':0111101000:w:
++':0111101001:b:
++':0111111001:e:
++':00011110101:?:
++':01100110000:E:
++':01100110001:7:
++':01110010000:P:
++':000111101001:W:
++':011001111001:0x3a:
++':011001111010:!:
++':011100100011:J:
++':011111100001:q:
++':011111100011:M:
++':0001111010001:V:
++':0110011110001:9:
++':0110011110111:y:
++':0111001000100:8:
++':0111001000101:5:
++':0111111000000:6:
++':0111111000101:k:
++':00011110100000:2:
++':00011110100001:0:
++':01100111100001:Y:
++':01100111101100:):
++':01111110000010:j:
++':01111110000011:Q:
++':011001111000000:-:
++':011001111000001:':
++':011001111011011:z:
++':011111100010000:X:
++':011111100010001:U:
++':011111100010010:4:
++':011111100010011:3:
++':0110011110110100:ESCAPE:
++':0110011110110101:1:
++(:01:1:
++(:000:P:
++(:101:t:
++(:1000:2:
++(:1101:5:
++(:1110:N:
++(:00111:T:
++(:10010:p:
++(:11111:c:
++(:001001:a:
++(:001010:S:
++(:001100:R:
++(:100111:e:
++(:111100:J:
++(:111101:A:
++(:0010110:D:
++(:0011011:K:
++(:1001100:v:
++(:1001101:s:
++(:1100000:b:
++(:1100010:G:
++(:1100011:8:
++(:1100100:M:
++(:1100101:H:
++(:1100110:C:
++(:00100000:m:
++(:00100010:o:
++(:00100011:E:
++(:00101110:W:
++(:11000011:g:
++(:11001110:L:
++(:001000010:d:
++(:001011111:U:
++(:001101000:F:
++(:001101010:f:
++(:110000100:w:
++(:110000101:B:
++(:110011111:n:
++(:0010000110:l:
++(:0010000111:9:
++(:0010111100:4:
++(:0010111101:I:
++(:0011010010:3:
++(:0011010111:h:
++(:1100111101:i:
++(:00110100110:Z:
++(:00110100111:V:
++(:00110101100: :
++(:11001111000:k:
++(:001101011011:O:
++(:110011110010:':
++(:0011010110100:ESCAPE:
++(:0011010110101:u:
++(:1100111100110:X:
++(:1100111100111:7:
++):0: :
++):11:.:
++):101:STOP:
++):1001:,:
++):10000:0x3a:
++):100011:;:
++):1000101:!:
++):10001001:(:
++):1000100000:ESCAPE:
++):1000100001:o:
++):1000100010:?:
++):1000100011:):
++*:0:*:
++*:100:s:
++*:101: :
++*:1100:m:
++*:1110:t:
++*:11010:g:
++*:11011:k:
++*:11111:d:
++*:111101:y:
++*:1111001:e:
++*:11110000:i:
++*:111100010:ESCAPE:
++*:111100011:n:
+++:1:n:
+++:00:ESCAPE:
+++:01: :
++,:1: :
++,:01:S:
++,:001:0:
++,:0001:A:
++,:00000:5:
++,:0000110:b:
++,:0000111:3:
++,:00001000:2:
++,:00001001:\":
++,:00001011:1:
++,:0000101000:Q:
++,:0000101010:':
++,:00001010111:4:
++,:000010100100:T:
++,:000010100101:B:
++,:000010100110:7:
++,:000010100111:6:
++,:000010101100:STOP:
++,:0000101011010:ESCAPE:
++,:0000101011011:i:
++-:00: :
++-:0100:t:
++-:0101:b:
++-:0110:w:
++-:0111:u:
++-:1001:o:
++-:1010:s:
++-:1011:f:
++-:10000:c:
++-:11011:l:
++-:11101:d:
++-:100010:9:
++-:110000:h:
++-:110010:1:
++-:110011:y:
++-:110101:r:
++-:111000:a:
++-:111100:m:
++-:111110:p:
++-:1000110:S:
++-:1101000:e:
++-:1101001:i:
++-:1111011:n:
++-:10001110:C:
++-:11000101:W:
++-:11000111:g:
++-:11100101:J:
++-:11100110:D:
++-:11110101:2:
++-:11111100:7:
++-:11111110:G:
++-:11111111:O:
++-:100011111:H:
++-:110001000:A:
++-:110001100:6:
++-:110001101:B:
++-:111001111:M:
++-:111101000:E:
++-:111101001:L:
++-:111111010:U:
++-:111111011:k:
++-:1000111100:F:
++-:1100010010:j:
++-:1100010011:P:
++-:1110010001:q:
++-:1110010010:5:
++-:1110010011:T:
++-:1110011101:I:
++-:10001111011:K:
++-:11100100000:v:
++-:11100100001:Z:
++-:11100111001:N:
++-:100011110101:R:
++-:111001110001:Y:
++-:1000111101001:0:
++-:10001111010000:4:
++-:10001111010001:z:
++-:11100111000001:V:
++-:11100111000010:3:
++-:11100111000011:8:
++-:111001110000001:Q:
++-:1110011100000000:':
++-:11100111000000010:ESCAPE:
++-:11100111000000011:x:
++.:1: :
++.:01:STOP:
++.:0011:.:
++.:00010:i:
++.:00100:0:
++.:00101:c:
++.:000001:u:
++.:0000000:a:
++.:0000001:[:
++.:0001101:3:
++.:00001000:4:
++.:00001110:H:
++.:00011000:S:
++.:00011001:W:
++.:00011100:o:
++.:00011110:1:
++.:000010100:5:
++.:000010101:L:
++.:000010111:p:
++.:000011000:T:
++.:000011001:A:
++.:000011010:M:
++.:000011110:C:
++.:000011111:2:
++.:000111011:D:
++.:000111110:B:
++.:0000100100:N:
++.:0000100110:t:
++.:0000100111:J:
++.:0000101101:R:
++.:0000110111:P:
++.:0001110101:s:
++.:0001111111:I:
++.:00001011000:r:
++.:00001101100:V:
++.:00011101000:w:
++.:00011101001:F:
++.:00011111101:G:
++.:000010010100:E:
++.:000010010101:0x3a:
++.:000010110010:h:
++.:000011011010:,:
++.:000111111000:':
++.:0000100101101:b:
++.:0000100101110:K:
++.:0000100101111:Y:
++.:0000101100111:O:
++.:0000110110110:-:
++.:0001111110010:f:
++.:0001111110011:(:
++.:00001011001100:\":
++.:00001101101110:y:
++.:000010010110000:?:
++.:000010010110001:m:
++.:000010010110010:Q:
++.:000011011011110:*:
++.:000011011011111:&:
++.:0000100101100110:U:
++.:0000100101100111:;:
++.:0000101100110100:8:
++.:0000101100110101:6:
++.:0000101100110111:k:
++.:00001011001101100:d:
++.:000010110011011010:ESCAPE:
++.:000010110011011011:n:
++/:01:c:
++/:110:1:
++/:111:e:
++/:0000:5:
++/:0010:8:
++/:00010:T:
++/:00011:f:
++/:00110:B:
++/:00111:2:
++/:10001:3:
++/:10010:7:
++/:10100:6:
++/:10110:a:
++/:101111:4:
++/:1000000:F:
++/:1000010:s:
++/:1000011:M:
++/:1001100:H:
++/:1001110:D:
++/:1001111:A:
++/:1010101:S:
++/:10000011:m:
++/:10011010:W:
++/:10101000:G:
++/:10101001:U:
++/:10101100:d:
++/:10101101:O:
++/:10101110:N:
++/:10111001:C:
++/:10111011:P:
++/:100110110:L:
++/:101011110: :
++/:101011111:I:
++/:101110000:E:
++/:101110001:R:
++/:101110100:K:
++/:101110101:t:
++/:1000001001:J:
++/:1000001011:9:
++/:10000010000:v:
++/:10000010001:p:
++/:10000010100:h:
++/:10011011101:o:
++/:10011011110:Q:
++/:10011011111:0:
++/:100000101010:l:
++/:100000101011:i:
++/:100110111000:V:
++/:1001101110011:y:
++/:10011011100100:ESCAPE:
++/:10011011100101:g:
++0:0:0:
++0:111: :
++0:1001:a:
++0:1011:p:
++0:10001:s:
++0:11000:.:
++0:11001:8:
++0:11011:,:
++0:100000:4:
++0:100001:t:
++0:101001:5:
++0:110100:6:
++0:1010000:3:
++0:1010001:7:
++0:1010101:]:
++0:1010110:-:
++0:1010111:1:
++0:10101000:):
++0:10101001:/:
++0:11010100:STOP:
++0:11010101:9:
++0:11010111:2:
++0:110101100:%:
++0:1101011010:0x3a:
++0:110101101101:f:
++0:110101101111:m:
++0:1101011011100:y:
++0:11010110110001:l:
++0:11010110110010:;:
++0:11010110110011:':
++0:11010110111010:k:
++0:11010110111011:!:
++0:110101101100000:C:
++0:1101011011000010:ESCAPE:
++0:1101011011000011:J:
++1:00:9:
++1:100:1:
++1:111:0:
++1:0101: :
++1:0111:2:
++1:1011:.:
++1:1100:5:
++1:01000:6:
++1:01001:8:
++1:01101:/:
++1:10100:]:
++1:11010:3:
++1:011001:7:
++1:110110:4:
++1:0110000:STOP:
++1:0110001:-:
++1:1010100:):
++1:1010110:0x3a:
++1:1010111:s:
++1:1101110:,:
++1:1101111:x:
++1:10101010:':
++1:101010110:X:
++1:10101011110:t:
++1:10101011111:R:
++1:101010111011:;:
++1:1010101110000:p:
++1:1010101110001:m:
++1:1010101110010:!:
++1:1010101110101:&:
++1:10101011100110:e:
++1:101010111001110:b:
++1:101010111001111:a:
++1:101010111010000:D:
++1:101010111010001:C:
++1:101010111010010:%:
++1:1010101110100110:ESCAPE:
++1:1010101110100111:o:
++2:11:0:
++2:000: :
++2:010:.:
++2:100:5:
++2:0011:/:
++2:1011:,:
++2:00100:]:
++2:00101:p:
++2:01101:1:
++2:10101:4:
++2:011000:6:
++2:011001:2:
++2:011100:0x3a:
++2:011101:-:
++2:011111:):
++2:1010000:STOP:
++2:1010010:8:
++2:1010011:9:
++2:01111000:D:
++2:01111001:3:
++2:01111010:t:
++2:01111011:7:
++2:10100010:n:
++2:101000110:a:
++2:1010001110:':
++2:10100011111:;:
++2:101000111100:s:
++2:1010001111010:\":
++2:101000111101100:ESCAPE:
++2:101000111101101:i:
++2:101000111101110:W:
++2:101000111101111:L:
++3:00: :
++3:10:0:
++3:110:.:
++3:1110:/:
++3:01000:2:
++3:01001:1:
++3:01010:):
++3:01100:0x3a:
++3:01110:-:
++3:11111:]:
++3:010110:D:
++3:011010:4:
++3:011011:STOP:
++3:011111:5:
++3:111100:,:
++3:0101110:7:
++3:0101111:3:
++3:0111101:6:
++3:1111011:t:
++3:01111001:B:
++3:11110100:8:
++3:111101010:9:
++3:0111100001:;:
++3:1111010110:r:
++3:1111010111:s:
++3:01111000000:n:
++3:01111000101:b:
++3:01111000110:':
++3:01111000111:A:
++3:011110000010:p:
++3:011110000011:e:
++3:0111100010000:a:
++3:0111100010001:&:
++3:0111100010010:%:
++3:01111000100110:ESCAPE:
++3:01111000100111:k:
++4:01: :
++4:000:4:
++4:100:.:
++4:110:0:
++4:0010:/:
++4:1010:5:
++4:1011:-:
++4:00110:1:
++4:11101:]:
++4:11110:,:
++4:001110:2:
++4:111001:8:
++4:111110:):
++4:0011110:0x3a:
++4:0011111:':
++4:1110000:t:
++4:1110001:3:
++4:1111111:STOP:
++4:11111101:6:
++4:1111110000:9:
++4:1111110010:7:
++4:11111100011:C:
++4:11111100110:;:
++4:111111000101:x:
++4:1111110011101:m:
++4:1111110011110:I:
++4:11111100010000:f:
++4:11111100010001:e:
++4:11111100010010:b:
++4:11111100010011:L:
++4:11111100111000:%:
++4:11111100111110:p:
++4:11111100111111:c:
++4:111111001110010:ESCAPE:
++4:111111001110011:i:
++5:00:0:
++5:10: :
++5:010:.:
++5:0111:p:
++5:1100:5:
++5:01100:/:
++5:11010:a:
++5:11011:-:
++5:11101:6:
++5:011010:3:
++5:111100:2:
++5:111110:8:
++5:111111:]:
++5:0110110:0x3a:
++5:1110000:):
++5:1110001:s:
++5:1110011:,:
++5:1111010:7:
++5:1111011:9:
++5:01101110:4:
++5:11100100:STOP:
++5:11100101:t:
++5:0110111110:c:
++5:0110111111:1:
++5:01101111001:;:
++5:01101111011:m:
++5:011011110000:e:
++5:011011110001:':
++5:011011110101:k:
++5:0110111101001:l:
++5:01101111010000:ESCAPE:
++5:01101111010001:f:
++6:00: :
++6:10:.:
++6:111:0:
++6:0101:]:
++6:01001:1:
++6:01100:7:
++6:01110:):
++6:11000:,:
++6:11001:0x3a:
++6:11010:/:
++6:010001:-:
++6:011010:5:
++6:011011:4:
++6:011111:8:
++6:110111:t:
++6:0100000:6:
++6:0111100:3:
++6:0111101:2:
++6:1101101:9:
++6:01000010:STOP:
++6:01000011:+:
++6:11011000:':
++6:1101100101:a:
++6:1101100110:?:
++6:11011001000:m:
++6:11011001001:e:
++6:11011001110:;:
++6:1101100111100:f:
++6:1101100111101:b:
++6:1101100111110:M:
++6:11011001111110:\":
++6:110110011111110:ESCAPE:
++6:110110011111111:i:
++7:11:.:
++7:001: :
++7:011:0:
++7:101:-:
++7:0000:8:
++7:0100:7:
++7:1001:]:
++7:01010:/:
++7:000101:6:
++7:000110:2:
++7:000111:1:
++7:010111:t:
++7:100000:9:
++7:100010:):
++7:100011:5:
++7:0001001:3:
++7:0101101:,:
++7:1000010:a:
++7:1000011:4:
++7:00010000:STOP:
++7:01011000:0x3a:
++7:01011001:p:
++7:0001000101:R:
++7:0001000110:;:
++7:00010001000:':
++7:00010001111:m:
++7:000100010011:f:
++7:000100011100:A:
++7:000100011101:?:
++7:0001000100100:ESCAPE:
++7:0001000100101:s:
++8:01: :
++8:000:4:
++8:110:.:
++8:0011:0:
++8:1000:9:
++8:1001:7:
++8:1011:8:
++8:1110:1:
++8:00100:/:
++8:10100:3:
++8:11110:5:
++8:101010:):
++8:111110:6:
++8:111111:]:
++8:0010100:0x3a:
++8:0010101:,:
++8:1010111:t:
++8:00101100:p:
++8:00101101:-:
++8:00101111:a:
++8:10101100:c:
++8:10101101:2:
++8:001011101:STOP:
++8:0010111001:;:
++8:001011100000:l:
++8:001011100001:':
++8:0010111000100:f:
++8:0010111000101:D:
++8:0010111000110:A:
++8:00101110001110:ESCAPE:
++8:00101110001111:i:
++9:000:5:
++9:001:]:
++9:111:9:
++9:0101:0:
++9:0110:.:
++9:0111:-:
++9:1000:4:
++9:1001:8:
++9:1011:6:
++9:1100: :
++9:1101:7:
++9:01000:2:
++9:10100:3:
++9:010010:1:
++9:010011:/:
++9:101010:t:
++9:1010111:):
++9:10101100:0x3a:
++9:101011010:,:
++9:10101101100:p:
++9:10101101101:;:
++9:10101101111:STOP:
++9:1010110111000:n:
++9:1010110111001:m:
++9:1010110111010:a:
++9:10101101110111:e:
++9:101011011101100:ESCAPE:
++9:101011011101101:k:
++0x3a:1: :
++0x3a:01:0:
++0x3a:001:3:
++0x3a:00001:1:
++0x3a:00010:T:
++0x3a:00011:C:
++0x3a:000001:4:
++0x3a:0000000:ESCAPE:
++0x3a:0000001:5:
++;:0:ESCAPE:
++;:1: :
++<:0:ESCAPE:
++<:1:ESCAPE:
++=:0:ESCAPE:
++=:1:ESCAPE:
++>:0:ESCAPE:
++>:1:ESCAPE:
++?:1: :
++?:01:STOP:
++?:000:0x3a:
++?:00100:!:
++?:00110:[:
++?:00111:.:
++?:001010:;:
++?:0010110:':
++?:00101111:,:
++?:001011101:/:
++?:0010111000:ESCAPE:
++?:0010111001:Q:
++@:0:k:
++@:10: :
++@:111:T:
++@:1101:b:
++@:11000:ESCAPE:
++@:11001:H:
++A:01: :
++A:110:D:
++A:111:n:
++A:0000:s:
++A:0001:m:
++A:0010:d:
++A:1000:r:
++A:1011:l:
++A:00110:c:
++A:10010:u:
++A:10100:g:
++A:001111:b:
++A:100111:t:
++A:101011:f:
++A:1010100:w:
++A:1010101:i:
++A:10011001:v:
++A:10011011:p:
++A:001110010:h:
++A:001110100:.:
++A:001110111:B:
++A:100110100:q:
++A:0011100000:C:
++A:0011100010:,:
++A:0011100110:y:
++A:0011101010:S:
++A:0011101100:k:
++A:0011101101:T:
++A:1001100001:R:
++A:1001100010:F:
++A:1001100011:z:
++A:1001101011:a:
++A:00111000010:P:
++A:00111000110:-:
++A:00111010110:A:
++A:00111010111:I:
++A:10011000001:e:
++A:10011010100:N:
++A:10011010101:x:
++A:001110000110:X:
++A:001110000111:K:
++A:001110001110:3:
++A:001110001111:&:
++A:001110011101:M:
++A:001110011111:Y:
++A:0011100111000:L:
++A:0011100111001:W:
++A:0011100111100:*:
++A:1001100000000:o:
++A:1001100000001:1:
++A:1001100000010:':
++A:1001100000011:0x3a:
++A:00111001111010:j:
++A:001110011110110:G:
++A:0011100111101110:O:
++A:00111001111011110:4:
++A:001110011110111110:ESCAPE:
++A:001110011110111111:E:
++B:00:C:
++B:010:a:
++B:101:r:
++B:110:e:
++B:111:B:
++B:0111:i:
++B:1000:u:
++B:1001:o:
++B:01101:l:
++B:01100000:T:
++B:01100001:.:
++B:01100011:y:
++B:01100100:I:
++B:01100110:h:
++B:01100111: :
++B:011000100:A:
++B:0110001010:O:
++B:01100010110:0x3a:
++B:01100101000:&:
++B:01100101001:3:
++B:01100101010:j:
++B:01100101011:M:
++B:01100101110:D:
++B:011000101111:W:
++B:011001011000:*:
++B:011001011010:,:
++B:011001011011:1:
++B:011001011110:ESCAPE:
++B:011001011111:P:
++B:0110001011100:E:
++B:0110010110011:R:
++B:01100010111011:w:
++B:011000101110100:-:
++B:011001011001001:U:
++B:011001011001010:S:
++B:011001011001011:F:
++B:0110001011101010:X:
++B:0110001011101011:V:
++B:0110010110010000:Q:
++B:0110010110010001:4:
++C:00:h:
++C:011:B:
++C:100:a:
++C:110:o:
++C:0101:r:
++C:1010:.:
++C:1110: :
++C:1111:l:
++C:01000:':
++C:10111:i:
++C:010011:e:
++C:101101:u:
++C:0100101:y:
++C:1011001:,:
++C:01001001:I:
++C:010010000:A:
++C:1011000000:C:
++C:1011000001:D:
++C:1011000011:STOP:
++C:1011000100:S:
++C:1011000101:T:
++C:1011000111:G:
++C:01001000100:*:
++C:01001000111:w:
++C:10110001101:J:
++C:010010001010:R:
++C:010010001100:2:
++C:010010001101:U:
++C:101100001000:?:
++C:101100001010:O:
++C:101100001011:H:
++C:101100011000:E:
++C:0100100010110:z:
++C:1011000010011:-:
++C:1011000110011:s:
++C:01001000101111:1:
++C:10110000100101:!:
++C:10110001100100:P:
++C:010010001011101:n:
++C:101100001001000:K:
++C:101100001001001:7:
++C:101100011001011:4:
++C:0100100010111000:0x3a:
++C:1011000110010100:F:
++C:1011000110010101:):
++C:01001000101110010:ESCAPE:
++C:01001000101110011:b:
++D:00:a:
++D:01:,:
++D:100:r:
++D:101:o:
++D:110:e:
++D:1110:i:
++D:111111:u:
++D:1111001: :
++D:1111011:':
++D:11110000:.:
++D:11110001:]:
++D:11111010:y:
++D:111101010:w:
++D:111101011:W:
++D:111110001:N:
++D:111110010:C:
++D:111110111:J:
++D:1111010010:h:
++D:1111100000:t:
++D:1111100111:I:
++D:1111101101:0x3a:
++D:11110100001:M:
++D:11110100010:&:
++D:11110100011:V:
++D:11111000010:-:
++D:11111000011:G:
++D:11111001100:O:
++D:11111001101:A:
++D:11111011001:S:
++D:111101000000:F:
++D:111101001100:*:
++D:111101001101:s:
++D:111101001111:d:
++D:111110110000:v:
++D:1111010011100:m:
++D:1111010011101:j:
++D:1111101100010:ESCAPE:
++D:1111101100011:T:
++D:11110100000110:9:
++D:111101000001000:):
++D:111101000001011:E:
++D:111101000001110:8:
++D:111101000001111:7:
++D:1111010000010010:U:
++D:1111010000010011:R:
++D:1111010000010100:B:
++D:1111010000010101:4:
++E:000:p:
++E:010:a:
++E:011:n:
++E:110:l:
++E:1001:m:
++E:1010:x:
++E:1110:v:
++E:1111:d:
++E:00100:s:
++E:00110:r:
++E:00111:u:
++E:10000:E:
++E:10001: :
++E:001010:.:
++E:001011:i:
++E:101101:0x3a:
++E:1011000:y:
++E:1011001:t:
++E:1011100:g:
++E:1011110:4:
++E:101110110:w:
++E:101111100:c:
++E:101111110:b:
++E:1011101010:R:
++E:1011101011:F:
++E:1011101111:C:
++E:10111010001:k:
++E:10111010010:f:
++E:10111010011:o:
++E:10111011100:U:
++E:10111011101:L:
++E:10111110101:e:
++E:10111110110:N:
++E:10111111100:h:
++E:10111111101:I:
++E:10111111111:D:
++E:101111101000:M:
++E:101111101111:':
++E:101111111100:2:
++E:101111111101:-:
++E:1011101000011:q:
++E:1011111010010:O:
++E:1011111010011:A:
++E:1011111011101:Z:
++E:10111010000000:W:
++E:10111010000001:S:
++E:10111010000010:H:
++E:10111010000011:9:
++E:10111010000100:):
++E:10111110111000:T:
++E:10111110111001:,:
++E:101110100001010:P:
++E:1011101000010110:ESCAPE:
++E:1011101000010111:z:
++F:00:o:
++F:10:r:
++F:010:e:
++F:110:i:
++F:111:a:
++F:0110:l:
++F:01110:u:
++F:0111100: :
++F:0111101:O:
++F:01111101:A:
++F:01111111:B:
++F:011111100:f:
++F:0111110000:.:
++F:0111110011:L:
++F:01111100010:M:
++F:01111100011:E:
++F:01111100101:T:
++F:01111110101:C:
++F:01111110110:W:
++F:011111001000:0x3a:
++F:011111101000:U:
++F:011111101001:':
++F:011111101111:1:
++F:0111110010010:y:
++F:0111110010011:,:
++F:01111110111000:-:
++F:01111110111010:I:
++F:011111101110011:h:
++F:0111111011100100:*:
++F:0111111011100101:K:
++F:0111111011101100:F:
++F:0111111011101101:ESCAPE:
++F:01111110111011100:X:
++F:01111110111011101:R:
++F:01111110111011110:;:
++F:01111110111011111:4:
++G:00:r:
++G:01:a:
++G:101:o:
++G:110:e:
++G:1001:u:
++G:1111:i:
++G:10001:n:
++G:11101:l:
++G:100000:X:
++G:1110000:y:
++G:1110001: :
++G:1110011:w:
++G:10000101:4:
++G:10000111:P:
++G:11100101:h:
++G:100001000:-:
++G:100001100:C:
++G:111001001:M:
++G:1000011010:B:
++G:1110010000:.:
++G:1110010001:I:
++G:10000100100:;:
++G:10000100101:,:
++G:10000100110:A:
++G:10000100111:N:
++G:10000110111:0x3a:
++G:1000011011000:O:
++G:1000011011001:L:
++G:10000110110110:b:
++G:100001101101000:K:
++G:100001101101001:2:
++G:100001101101010:1:
++G:100001101101011:':
++G:1000011011011100:ESCAPE:
++G:1000011011011101:m:
++G:1000011011011110:T:
++G:1000011011011111:S:
++H:00:e:
++H:01:a:
++H:10:o:
++H:110:i:
++H:1111:u:
++H:11100:R:
++H:1110100:P:
++H:1110110:y:
++H:11101011:I:
++H:111011100:Q:
++H:111011101:M:
++H:111011110:A:
++H:111011111: :
++H:1110101000:S:
++H:1110101001:.:
++H:11101010101:G:
++H:11101010110:):
++H:111010101001:E:
++H:1110101011100:O:
++H:1110101011101:L:
++H:11101010100000:1:
++H:11101010100001:&:
++H:11101010111100:H:
++H:11101010111101:w:
++H:11101010111110:v:
++H:111010101000100:X:
++H:111010101000101:W:
++H:111010101000110:D:
++H:111010101111110:s:
++H:111010101111111:F:
++H:1110101010001110:ESCAPE:
++H:1110101010001111:r:
++I:0:n:
++I:110:t:
++I:1001:s:
++I:1111:r:
++I:10000:T:
++I:10101:a:
++I:11100: :
++I:100010:c:
++I:101001:m:
++I:101100:z:
++I:101101:.:
++I:101111:d:
++I:111011:I:
++I:1000111:':
++I:1011101:l:
++I:10100000:A:
++I:10100001:v:
++I:10111001:V:
++I:11101001:f:
++I:11101011:o:
++I:100011001:C:
++I:100011010:P:
++I:101000100:w:
++I:101000110:0x3a:
++I:101110000:p:
++I:111010000:R:
++I:111010001:,:
++I:111010101:Y:
++I:1000110000:E:
++I:1000110001:6:
++I:1000110111:q:
++I:1010001011:y:
++I:1010001110:M:
++I:1110101000:g:
++I:1110101001:D:
++I:10001101100:e:
++I:10001101101:5:
++I:10100010100:S:
++I:10100010101:9:
++I:10100011111:F:
++I:10111000100:b:
++I:10111000110:-:
++I:10111000111:L:
++I:101000111100:B:
++I:101000111101:):
++I:1011100010100:N:
++I:1011100010101:Q:
++I:1011100010110:k:
++I:10111000101111:O:
++I:101110001011101:?:
++I:1011100010111000:ESCAPE:
++I:1011100010111001:h:
++J:00:e:
++J:10:a:
++J:11:o:
++J:011:u:
++J:0101:i:
++J:01000: :
++J:0100110:D:
++J:0100111:.:
++J:01001001:r:
++J:010010110:s:
++J:0100100000:M:
++J:0100100010:J:
++J:0100100011:,:
++J:0100101000:B:
++J:0100101001:-:
++J:0100101010:V:
++J:0100101110:K:
++J:0100101111:T:
++J:01001000010:C:
++J:01001010110:n:
++J:010010000110:!:
++J:0100100001110:w:
++J:0100100001111:R:
++J:0100101011100:F:
++J:0100101011110:7:
++J:0100101011111:':
++J:01001010111010:G:
++J:010010101110110:ESCAPE:
++J:010010101110111:L:
++K:00:i:
++K:01:a:
++K:10:e:
++K:1111:y:
++K:11000:n:
++K:11001:o:
++K:11011:r:
++K:11101: :
++K:110100:':
++K:111000:u:
++K:1101011:.:
++K:1110011:l:
++K:11100101:h:
++K:110101000:T:
++K:110101011:G:
++K:111001001:,:
++K:1101010100:w:
++K:11010100100:5:
++K:11010100101:4:
++K:11010100110:A:
++K:11010101010:3:
++K:11100100000:2:
++K:11100100011:M:
++K:110101001110:-:
++K:110101010110:0x3a:
++K:110101010111:!:
++K:111001000010:):
++K:111001000101:S:
++K:1101010011110:V:
++K:1110010000110:6:
++K:1110010000111:1:
++K:11010100111111:L:
++K:11100100010000:I:
++K:11100100010001:?:
++K:110101001111100:ESCAPE:
++K:110101001111101:v:
++K:111001000100100:k:
++K:111001000100101:Y:
++K:111001000100110:N:
++K:111001000100111:E:
++L:00:i:
++L:10:o:
++L:011:]:
++L:110:e:
++L:111:a:
++L:0100:u:
++L:010100:l:
++L:010101:A:
++L:010111:y:
++L:01011011: :
++L:010110000:I:
++L:010110001:R:
++L:010110101:,:
++L:0101100100:O:
++L:0101100101:':
++L:01011001101:.:
++L:01011001110:C:
++L:01011001111:Y:
++L:01011010001:F:
++L:01011010010:L:
++L:010110011001:t:
++L:010110100001:G:
++L:010110100111:S:
++L:0101100110001:h:
++L:0101101000001:W:
++L:0101101001100:J:
++L:01011001100000:E:
++L:01011010000001:\":
++L:01011010011011:STOP:
++L:010110011000010:T:
++L:010110011000011:P:
++L:010110100000000:D:
++L:010110100000001:7:
++L:010110100110101:j:
++L:0101101001101000:ESCAPE:
++L:0101101001101001:U:
++M:00:o:
++M:11:a:
++M:011:e:
++M:101:i:
++M:0101:c:
++M:1001:u:
++M:01001:y:
++M:10001:r:
++M:100000:S:
++M:100001:P:
++M:0100001: :
++M:01000001:C:
++M:01000110:F:
++M:010000000:1:
++M:010001000:h:
++M:010001010:I:
++M:010001110:T:
++M:010001111:X:
++M:0100000010:A:
++M:0100010010:z:
++M:01000100110:f:
++M:01000101110:.:
++M:010000001100:Z:
++M:010000001101:K:
++M:010000001110:B:
++M:010001001111:s:
++M:010001011000:R:
++M:010001011001:W:
++M:010001011010:O:
++M:0100000011110:,:
++M:0100000011111:':
++M:0100010110111:D:
++M:0100010111100:4:
++M:0100010111110:E:
++M:01000100111000:m:
++M:01000100111001:J:
++M:01000100111010:ESCAPE:
++M:01000101111010:l:
++M:01000101111011:-:
++M:01000101111110:):
++M:01000101111111:w:
++M:010001001110110:t:
++M:010001001110111:V:
++M:010001011011000:Q:
++M:010001011011001:N:
++M:010001011011010:6:
++M:010001011011011:2:
++N:00:a:
++N:10:o:
++N:11:e:
++N:011:i:
++N:01010:u:
++N:01011:E:
++N:010010:A:
++N:0100010:y:
++N:0100110:g:
++N:01000001:B:
++N:01000010:I:
++N:01000110:F:
++N:01000111: :
++N:010000000:):
++N:010000001:':
++N:010000111:Y:
++N:010011100:L:
++N:010011101:H:
++N:0100001100:C:
++N:0100111100:W:
++N:0100111110:N:
++N:0100111111:T:
++N:010000110101:M:
++N:010000110111:O:
++N:010011110100:,:
++N:010011110101:J:
++N:010011110111:h:
++N:0100001101000:D:
++N:0100001101001:.:
++N:0100111101100:X:
++N:0100111101101:ESCAPE:
++N:01000011011000:k:
++N:01000011011001:Z:
++N:01000011011010:Q:
++N:01000011011011:G:
++O:111:n:
++O:0000:s:
++O:0001:N:
++O:0011:z:
++O:0100:r:
++O:1000:u:
++O:1010:p:
++O:1011:l:
++O:1101:':
++O:00101:U:
++O:01011:h:
++O:01110:f:
++O:01111:w:
++O:10010:.:
++O:11000: :
++O:001000:o:
++O:001001:J:
++O:010100:b:
++O:010101:m:
++O:011001:H:
++O:011010:O:
++O:011011:v:
++O:100111:c:
++O:110011:x:
++O:1001101:d:
++O:1100100:a:
++O:01100001:t:
++O:01100010:k:
++O:10011000:g:
++O:11001010:R:
++O:011000000:K:
++O:100110010:i:
++O:110010111:V:
++O:0110000011:2:
++O:0110001101:S:
++O:0110001110:B:
++O:1001100110:W:
++O:1001100111:-:
++O:01100000100:,:
++O:01100011000:j:
++O:01100011001:L:
++O:01100011111:I:
++O:11001011001:A:
++O:11001011011:C:
++O:011000001010:0x3a:
++O:011000111100:e:
++O:110010110000:y:
++O:110010110001:/:
++O:110010110100:M:
++O:0110000010110:!:
++O:0110001111011:P:
++O:1100101101011:F:
++O:01100000101110:E:
++O:01100000101111:D:
++O:01100011110100:8:
++O:01100011110101:4:
++O:11001011010101:T:
++O:110010110101000:ESCAPE:
++O:110010110101001:q:
++P:11:a:
++P:000:i:
++P:010:e:
++P:011:l:
++P:100:o:
++P:101:r:
++P:0010:h:
++P:001111:u:
++P:0011010:C:
++P:0011100:.:
++P:0011101: :
++P:00110000:B:
++P:00110010:D:
++P:00110111:s:
++P:001100011:O:
++P:001100111:,:
++P:0011000101:y:
++P:0011001100:M:
++P:0011011000:E:
++P:0011011001:':
++P:0011011011:3:
++P:00110001001:T:
++P:001100010000:L:
++P:001100010001:G:
++P:001100110100:*:
++P:001100110110:A:
++P:001100110111:S:
++P:001101101000:w:
++P:001101101001:F:
++P:0011001101011:J:
++P:0011011010100:f:
++P:0011011010101:R:
++P:0011011010111:t:
++P:00110011010100:V:
++P:00110110101100:Y:
++P:00110110101101:I:
++P:001100110101011:&:
++P:0011001101010100:ESCAPE:
++P:0011001101010101:):
++Q:1:u:
++Q:00:V:
++Q:011: :
++Q:0101:.:
++Q:01000:a:
++Q:0100100:w:
++Q:0100110:E:
++Q:0100111:C:
++Q:01001011:&:
++Q:010010101:':
++Q:0100101000:T:
++Q:01001010010:ESCAPE:
++Q:01001010011:s:
++R:01:a:
++R:11:o:
++R:100:i:
++R:101:e:
++R:0000:p:
++R:0011:u:
++R:00011:E:
++R:00100:h:
++R:000100: :
++R:001010:y:
++R:00010100:D:
++R:00010110:.:
++R:00101100:T:
++R:00101110:S:
++R:000101010:F:
++R:001011010:B:
++R:001011011:n:
++R:001011111:A:
++R:0001010110:w:
++R:0001011100:N:
++R:0001011101:&:
++R:0001011110:V:
++R:0001011111:H:
++R:0010111101:':
++R:00010101110:t:
++R:00010101111:I:
++R:001011110000:C:
++R:001011110010:O:
++R:00101111000100:,:
++R:00101111000101:s:
++R:00101111000110:U:
++R:00101111000111:M:
++R:00101111001100:-:
++R:00101111001101:ESCAPE:
++R:00101111001111:0x3a:
++R:001011110011100:2:
++R:001011110011101:R:
++S:1:]:
++S:0000:a:
++S:0010:h:
++S:0111:t:
++S:00010:p:
++S:00011:,:
++S:00110:L:
++S:01000:i:
++S:01001:u:
++S:01010:o:
++S:01011:c:
++S:01100:e:
++S:001111:k:
++S:0011100:w:
++S:0110101: :
++S:0110111:m:
++S:00111010:q:
++S:01101000:M:
++S:01101001:n:
++S:01101100:l:
++S:001110110:P:
++S:011011011:y:
++S:0011101110:A:
++S:01101101001:.:
++S:001110111101:r:
++S:001110111110:S:
++S:001110111111:W:
++S:011011010000:C:
++S:011011010101:E:
++S:011011010110:v:
++S:0110110100011:ESCAPE:
++S:0110110101000:I:
++S:0110110101111:g:
++S:00111011110000:*:
++S:00111011110010:4:
++S:00111011110011:1:
++S:01101101000100:O:
++S:01101101010010:STOP:
++S:01101101011100:z:
++S:011011010001011:B:
++S:011011010111010:H:
++S:011011010111011:T:
++S:0011101111000100:G:
++S:0011101111000110:}:
++S:0011101111000111:D:
++S:0110110100010100:-:
++S:0110110101001100:3:
++S:0110110101001101:2:
++S:00111011110001010:':
++S:00111011110001011:?:
++S:01101101010011101:s:
++S:01101101010011110:j:
++S:01101101010011111:b:
++S:011011010001010100:R:
++S:011011010001010101:K:
++S:011011010001010110:J:
++S:011011010001010111:F:
++S:011011010100111000:0x3a:
++S:011011010100111001:):
++T:0:h:
++T:100:o:
++T:1010:V:
++T:1011:w:
++T:1100:r:
++T:1111:e:
++T:11010:a:
++T:11011:i:
++T:11100:u:
++T:1110100:H:
++T:1110110:W:
++T:11101010: :
++T:11101011:y:
++T:111011101:M:
++T:111011111:x:
++T:1110111000:S:
++T:11101110010:A:
++T:11101111001:s:
++T:11101111011:J:
++T:111011100111:X:
++T:111011110000:.:
++T:1110111001101:-:
++T:1110111100011:L:
++T:1110111101000:C:
++T:1110111101011:c:
++T:11101110011000:T:
++T:11101110011001:U:
++T:11101111000101:4:
++T:11101111010010:O:
++T:111011110001001:G:
++T:111011110100110:E:
++T:111011110100111:,:
++T:111011110101010:':
++T:1110111100010001:;:
++T:1110111101010000:P:
++T:1110111101010001:1:
++T:1110111101010010:ESCAPE:
++T:1110111101010111:D:
++T:11101111000100000:0x3a:
++T:11101111000100001:*:
++T:11101111010100110:R:
++T:11101111010100111:N:
++T:11101111010101100:I:
++T:11101111010101101:B:
++U:00:K:
++U:10:n:
++U:011:S:
++U:110:p:
++U:1111:l:
++U:01010:s:
++U:01011:r:
++U:11101:R:
++U:010000:g:
++U:111000: :
++U:0100111:.:
++U:1110010:m:
++U:01000100:k:
++U:01000101:t:
++U:01000110:E:
++U:01000111:-:
++U:01001000:F:
++U:01001100:2:
++U:11100110:c:
++U:11100111:N:
++U:010010010:f:
++U:010010011:8:
++U:010010100:,:
++U:010010111:Z:
++U:0100101010:h:
++U:0100110100:i:
++U:0100110101:w:
++U:0100110110:a:
++U:01001010110:b:
++U:01001010111:D:
++U:01001101110:!:
++U:010010110000:e:
++U:010010110001:V:
++U:010010110010:P:
++U:010010110011:I:
++U:010010110100:B:
++U:010010110101:A:
++U:010011011111:d:
++U:0100101101100:H:
++U:0100101101101:C:
++U:0100101101110:0x3a:
++U:0100101101111:):
++U:0100110111101:z:
++U:01001101111000:ESCAPE:
++U:01001101111001:T:
++V:01: :
++V:11:i:
++V:000:.:
++V:001:a:
++V:101:e:
++V:10001:C:
++V:10011:o:
++V:1000001:F:
++V:1000011:I:
++V:10000001:1:
++V:10000101:4:
++V:10010000:r:
++V:10010010:E:
++V:10010011:s:
++V:10010101:':
++V:10010110:0x3a:
++V:10010111:l:
++V:100000001:/:
++V:100001001:-:
++V:100100010:D:
++V:100100011:u:
++V:100101001:,:
++V:1000000000:6:
++V:1000000001:2:
++V:1000010000:5:
++V:1001010000:;:
++V:10010100010:ESCAPE:
++V:100001000100:7:
++V:100101000110:3:
++V:1000010001010:9:
++V:1000010001011:y:
++V:1000010001100:P:
++V:1000010001101:H:
++V:1000010001110:A:
++V:1000010001111:8:
++V:1001010001111:W:
++V:10010100011100:f:
++V:10010100011101:B:
++W:00:h:
++W:10:i:
++W:011:a:
++W:110:o:
++W:111:e:
++W:0100:r:
++W:01011:O:
++W:0101001: :
++W:0101010:y:
++W:010100000:B:
++W:010100001:.:
++W:010101100:I:
++W:010101110:W:
++W:010101111:A:
++W:0101000100:':
++W:0101000101:M:
++W:0101000111:T:
++W:01010001100:2:
++W:01010001101:0x3a:
++W:01010110100:H:
++W:01010110110:V:
++W:010101101010:l:
++W:010101101110:s:
++W:010101101111:,:
++W:0101011010111:u:
++W:010101101011000:5:
++W:010101101011001:):
++W:010101101011011:E:
++W:0101011010110100:ESCAPE:
++W:0101011010110101:m:
++X:1: :
++X:000:a:
++X:0010:z:
++X:0011:m:
++X:0111:t:
++X:01001:U:
++X:01010:-:
++X:01011:e:
++X:011000:u:
++X:011001:I:
++X:011011:,:
++X:0100010:V:
++X:0110100:5:
++X:0110101:.:
++X:01000000:S:
++X:01000010:0x3a:
++X:01000110:c:
++X:01000111:i:
++X:010000010:9:
++X:010000011:':
++X:010000111:X:
++X:0100001100:):
++X:01000011010:ESCAPE:
++X:01000011011:y:
++Y:1:o:
++Y:00:e:
++Y:010:u:
++Y:01100:a:
++Y:01110:v:
++Y:01111: :
++Y:0110100:n:
++Y:01101010:r:
++Y:01101101:O:
++Y:01101111:i:
++Y:011010111:N:
++Y:011011000:L:
++Y:011011001:s:
++Y:011011101:m:
++Y:0110101100:.:
++Y:0110101101:M:
++Y:0110111001:P:
++Y:011011100001:R:
++Y:011011100010:2:
++Y:0110111000000:-:
++Y:0110111000110:C:
++Y:0110111000111:,:
++Y:01101110000010:ESCAPE:
++Y:01101110000011:d:
++Z:01:a:
++Z:10:e:
++Z:11:o:
++Z:0010:z:
++Z:0011:i:
++Z:00001:Z:
++Z:00010: :
++Z:00011:u:
++Z:0000010:O:
++Z:0000011:.:
++Z:00000000:y:
++Z:00000001:4:
++Z:00000010:,:
++Z:0000001100:f:
++Z:0000001101:-:
++Z:0000001110:STOP:
++Z:00000011110:ESCAPE:
++Z:00000011111:l:
++[:1:S:
++[:01:A:
++[:0000:2:
++[:0010:R:
++[:0011:1:
++[:000101:n:
++[:000110:m:
++[:0001111:l:
++[:00010011:r:
++[:00011101:b:
++[:000100001:C:
++[:000100010:f:
++[:000100101:M:
++[:000111001:c:
++[:0001000001:STOP:
++[:0001000111:K:
++[:0001001000:H:
++[:0001110001:T:
++[:00010000000:J:
++[:00010000001:B:
++[:00010001101:Z:
++[:00010010011:P:
++[:00011100000:L:
++[:000100011000:F:
++[:000100100101:I:
++[:000111000011:N:
++[:0001000110010:s:
++[:0001000110011:V:
++[:0001001001000:U:
++[:0001001001001:G:
++[:0001110000101:D:
++[:00011100001000:O:
++[:000111000010010:ESCAPE:
++[:000111000010011:W:
++\\:0:ESCAPE:
++\\:1:x:
++]:1:STOP:
++]:01: :
++]:001:.:
++]:0001:[:
++]:00001:0x3a:
++]:000001:,:
++]:0000001:;:
++]:00000000:ESCAPE:
++]:00000001:]:
++^:0:ESCAPE:
++^:1:ESCAPE:
++_:0:ESCAPE:
++_:1:ESCAPE:
++`:001:w:
++`:011:H:
++`:110:P:
++`:111:F:
++`:0101:n:
++`:1011:D:
++`:00001:s:
++`:00010:A:
++`:01001:t:
++`:10000:g:
++`:10011:c:
++`:000000:W:
++`:000001:r:
++`:000110:e:
++`:000111:C:
++`:100011:l:
++`:100100:h:
++`:100101:G:
++`:101001:B:
++`:101010:T:
++`:101011:S:
++`:0100000:o:
++`:0100001:d:
++`:0100010:b:
++`:0100011:R:
++`:1000100:O:
++`:1000101:L:
++`:1010001:f:
++`:10100000:J:
++`:101000010:ESCAPE:
++`:101000011:M:
++a:01:n:
++a:001:r:
++a:101:t:
++a:0000:m:
++a:1001:s:
++a:1110: :
++a:1111:l:
++a:00011:d:
++a:10000:i:
++a:11000:y:
++a:11010:c:
++a:000100:p:
++a:100010:u:
++a:100011:v:
++a:110011:g:
++a:110110:b:
++a:110111:k:
++a:0001010:w:
++a:00010111:z:
++a:11001000:.:
++a:11001011:f:
++a:000101100:,:
++a:000101101:':
++a:110010011:e:
++a:110010101:h:
++a:1100101001:x:
++a:11001001000:a:
++a:11001001001:-:
++a:11001001011:j:
++a:11001010000:0x3a:
++a:11001010001:o:
++a:110010010100:q:
++a:11001001010100:!:
++a:11001001010111:?:
++a:1100100101010100:ESCAPE:
++a:1100100101010110:;:
++a:1100100101010111:):
++a:1100100101011001:/:
++a:1100100101011011:@:
++a:11001001010101010:J:
++a:11001001010101011:]:
++a:11001001010110100:N:
++a:11001001010110101:L:
++a:110010010101100000:R:
++a:110010010101100001:S:
++a:110010010101100010:V:
++a:11001001010110001100:[:
++a:11001001010110001110:P:
++a:11001001010110001111:STOP:
++a:110010010101100011010:W:
++a:110010010101100011011:1:
++b:00:e:
++b:010:u:
++b:011:a:
++b:100:y:
++b:101:o:
++b:1100:l:
++b:1110:r:
++b:1111:i:
++b:110100:s:
++b:110110: :
++b:110111:b:
++b:11010101:c:
++b:110101000:j:
++b:110101100:,:
++b:110101101:.:
++b:1101010011:':
++b:1101011111:t:
++b:11010100101:0x3a:
++b:11010111000:w:
++b:11010111001:d:
++b:11010111010:h:
++b:11010111011:&:
++b:11010111101:-:
++b:110101111000:m:
++b:110101111001:n:
++b:1101010010000:?:
++b:1101010010010:v:
++b:11010100100010:f:
++b:11010100100111:p:
++b:110101001000111:;:
++b:110101001001101:D:
++b:1101010010001100:/:
++b:1101010010011001:@:
++b:11010100100011010:X:
++b:11010100100011011:\":
++b:11010100100110001:k:
++b:110101001001100000:STOP:
++b:1101010010011000010:ESCAPE:
++b:1101010010011000011:!:
++c:00:o:
++c:011:a:
++c:100:e:
++c:110:h:
++c:0100:i:
++c:0101:l:
++c:1011:k:
++c:1111:t:
++c:10100:u:
++c:10101:r:
++c:11100: :
++c:1110100:y:
++c:1110101:c:
++c:11101101:s:
++c:11101110:.:
++c:111011111:,:
++c:1110110001:G:
++c:11101100001:n:
++c:11101100110:D:
++c:11101111000:K:
++c:11101111011:C:
++c:111011000000:0x3a:
++c:111011001001:-:
++c:111011001010:A:
++c:111011001110:L:
++c:111011001111:':
++c:111011110010:d:
++c:111011110100:q:
++c:111011110101:I:
++c:1110110010000:N:
++c:1110110010001:z:
++c:1110111100111:F:
++c:11101100000101:w:
++c:11101100000111:E:
++c:11101100101100:?:
++c:11101111001100:M:
++c:11101111001101:S:
++c:111011000001000:b:
++c:111011000001001:ESCAPE:
++c:111011000001100:!:
++c:111011001011010:Q:
++c:111011001011011:P:
++c:111011001011100:;:
++c:111011001011110:B:
++c:1110110000011011:V:
++c:1110110010111011:m:
++c:1110110010111110:/:
++c:11101100000110101:):
++c:11101100101110100:U:
++c:11101100101111110:W:
++c:111011000001101000:p:
++c:111011000001101001:H:
++c:111011001011101010:STOP:
++c:111011001011111110:R:
++c:111011001011111111:T:
++c:1110110010111010110:]:
++c:1110110010111010111:[:
++d:0: :
++d:101:e:
++d:1100:a:
++d:1110:i:
++d:10001:.:
++d:10011:o:
++d:11011:r:
++d:11111:s:
++d:100001:d:
++d:100101:l:
++d:110100:u:
++d:111101:y:
++d:1001001:-:
++d:1101011:v:
++d:1111000:g:
++d:1111001:,:
++d:10000000:h:
++d:10000001:0x3a:
++d:10000010:m:
++d:10010000:w:
++d:10010001:n:
++d:11010101:':
++d:100000111:f:
++d:1101010001:?:
++d:1101010010:b:
++d:1101010011:c:
++d:10000011000:!:
++d:11010100000:p:
++d:11010100001:t:
++d:100000110010:STOP:
++d:100000110011:):
++d:100000110100:k:
++d:100000110101:;:
++d:100000110111:/:
++d:10000011011010:\":
++d:10000011011011:j:
++d:100000110110000:z:
++d:100000110110011:q:
++d:1000001101100011:@:
++d:1000001101100100:ESCAPE:
++d:10000011011000101:C:
++d:10000011011001010:]:
++d:100000110110001000:Z:
++d:100000110110001001:[:
++d:100000110110010110:T:
++d:100000110110010111:`:
++e:10: :
++e:010:s:
++e:110:r:
++e:0000:d:
++e:0011:a:
++e:1111:n:
++e:00010:c:
++e:01100:e:
++e:01101:w:
++e:01111:t:
++e:11100:l:
++e:000110:x:
++e:001000:v:
++e:001001:i:
++e:001010:y:
++e:011100:m:
++e:111010:.:
++e:0001110:f:
++e:0010111:b:
++e:0111010:,:
++e:1110110:p:
++e:00011110:-:
++e:00011111:h:
++e:00101100:k:
++e:01110110:':
++e:11101110:g:
++e:11101111:o:
++e:001011011:0x3a:
++e:0010110100:):
++e:0010110101:q:
++e:0111011101:?:
++e:0111011110:u:
++e:01110111000:z:
++e:01110111110:!:
++e:011101111110:STOP:
++e:011101111111:j:
++e:0111011100110:/:
++e:01110111001001:4:
++e:01110111001010:B:
++e:01110111001110:]:
++e:01110111001111:;:
++e:011101110010000:\":
++e:0111011100100011:D:
++e:0111011100101100:ESCAPE:
++e:0111011100101110:@:
++e:01110111001000100:T:
++e:01110111001000101:C:
++e:01110111001011011:[:
++e:01110111001011111:L:
++e:011101110010110100:V:
++e:011101110010110101:G:
++e:011101110010111100:1:
++e:01110111001011110101:E:
++e:011101110010111101000:2:
++e:011101110010111101001:N:
++e:011101110010111101100:F:
++e:011101110010111101101:A:
++e:0111011100101111011100:\\:
++e:0111011100101111011101:P:
++e:0111011100101111011110:M:
++e:0111011100101111011111:H:
++f:00:o:
++f:10: :
++f:010:i:
++f:110:r:
++f:0111:a:
++f:1110:e:
++f:01100:t:
++f:11110:u:
++f:11111:f:
++f:011011:l:
++f:01101000:s:
++f:01101001:y:
++f:011010110:.:
++f:0110101000:?:
++f:0110101011:,:
++f:0110101111:-:
++f:01101010011:0x3a:
++f:01101010100:':
++f:01101010101:g:
++f:011010100100:m:
++f:011010111000:ESCAPE:
++f:011010111010:b:
++f:011010111011:n:
++f:0110101001011:c:
++f:0110101110010:!:
++f:01101011100110:):
++f:01101011100111:w:
++f:011010100101001:p:
++f:011010100101010:/:
++f:0110101001010000:h:
++f:0110101001010110:;:
++f:01101010010100010:STOP:
++f:01101010010100011:d:
++f:01101010010101110:k:
++f:01101010010101111:v:
++g:11: :
++g:000:a:
++g:010:h:
++g:101:e:
++g:0011:u:
++g:0110:r:
++g:1000:i:
++g:01110:l:
++g:10010:s:
++g:10011:o:
++g:001001:,:
++g:001010:n:
++g:011110:g:
++g:011111:.:
++g:0010110:y:
++g:00100001:':
++g:00100010:-:
++g:00100011:0x3a:
++g:001000000:d:
++g:001011101:b:
++g:001011110:t:
++g:001011111:w:
++g:0010000010:?:
++g:0010000011:m:
++g:00101110001:!:
++g:00101110011:f:
++g:001011100001:;:
++g:001011100101:STOP:
++g:0010111000000:k:
++g:0010111001000:p:
++g:00101110000010:):
++g:00101110000011:\":
++g:001011100100101:c:
++g:001011100100111:/:
++g:0010111001001000:ESCAPE:
++g:0010111001001100:]:
++g:0010111001001101:z:
++g:00101110010010010:`:
++g:001011100100100110:v:
++g:001011100100100111:@:
++h:0:e:
++h:100:o:
++h:101:i:
++h:110: :
++h:1111:a:
++h:111001:r:
++h:111011:t:
++h:11100001:y:
++h:11100011:l:
++h:11101000:.:
++h:11101001:n:
++h:11101011:u:
++h:111000000:d:
++h:111000100:s:
++h:111010100:,:
++h:1110000011:w:
++h:1110001010:':
++h:1110001011:-:
++h:11101010101:m:
++h:11101010110:0x3a:
++h:11101010111:b:
++h:111000001001:c:
++h:111000001011:?:
++h:111010101000:!:
++h:1110000010000:):
++h:1110000010100:h:
++h:1110000010101:k:
++h:1110101010011:f:
++h:11101010100101:g:
++h:111000001000100:p:
++h:111000001000101:;:
++h:111000001000110:/:
++h:111000001000111:STOP:
++h:111010101001001:v:
++h:1110101010010000:q:
++h:11101010100100010:ESCAPE:
++h:111010101001000110:\":
++h:11101010100100011100:z:
++h:11101010100100011101:j:
++h:11101010100100011110:]:
++h:11101010100100011111:*:
++i:10:n:
++i:000:t:
++i:010:s:
++i:0011:l:
++i:1100:o:
++i:1101:c:
++i:1111:e:
++i:00100:a:
++i:01100:m:
++i:01101:d:
++i:01110:v:
++i:11100:g:
++i:11101:r:
++i:001010:p:
++i:011110:f:
++i:0010110:z:
++i:0111110: :
++i:00101111:b:
++i:01111110:k:
++i:001011100:-:
++i:001011101:x:
++i:0111111100:u:
++i:0111111110:q:
++i:01111111010:.:
++i:01111111110:,:
++i:011111110111:w:
++i:011111111111:':
++i:0111111101101:i:
++i:0111111111101:j:
++i:01111111011001:0x3a:
++i:01111111111000:h:
++i:011111110110000:/:
++i:011111111110011:y:
++i:0111111101100011:?:
++i:0111111111100100:P:
++i:01111111011000101:R:
++i:01111111111001011:!:
++i:011111111110010100:):
++i:011111111110010101:S:
++i:0111111101100010000:STOP:
++i:0111111101100010001:C:
++i:0111111101100010010:ESCAPE:
++i:01111111011000100110:D:
++i:01111111011000100111:;:
++j:0:o:
++j:11:u:
++j:101:a:
++j:1001:e:
++j:10000:i:
++j:100011:y:
++j:1000101: :
++j:10001001:.:
++j:100010000:':
++j:1000100011:t:
++j:10001000100:n:
++j:100010001011:s:
++j:1000100010100:ESCAPE:
++j:1000100010101:h:
++k:10: :
++k:11:e:
++k:000:s:
++k:011:i:
++k:0010:.:
++k:01001:y:
++k:001100:':
++k:001101:a:
++k:001110:p:
++k:001111:,:
++k:010100:l:
++k:010101:f:
++k:010110:n:
++k:0100000:/:
++k:0100010:-:
++k:0100011:o:
++k:01011101:0x3a:
++k:010000111:b:
++k:010111000:w:
++k:010111001:m:
++k:010111100:h:
++k:010111110:u:
++k:010111111:k:
++k:0100001000:r:
++k:0100001001:ESCAPE:
++k:0100001010:?:
++k:0100001100:t:
++k:0100001101:g:
++k:0101111011:d:
++k:01000010110:j:
++k:010000101110:):
++k:010111101000:;:
++k:010111101001:c:
++k:010111101010:S:
++k:0100001011110:v:
++k:0100001011111:R:
++k:0101111010110:!:
++k:01011110101110:@:
++k:010111101011110:\":
++k:010111101011111:STOP:
++l:010:a:
++l:011:i:
++l:100:l:
++l:110:e:
++l:111: :
++l:0000:u:
++l:0001:d:
++l:0010:y:
++l:1011:o:
++l:10100:s:
++l:001100:.:
++l:001110:t:
++l:0011010:v:
++l:0011110:f:
++l:1010100:m:
++l:1010101:k:
++l:1010110:p:
++l:00110111:c:
++l:00111110:-:
++l:10101111:,:
++l:001101101:0x3a:
++l:001111111:b:
++l:101011100:':
++l:0011011000:r:
++l:0011011001:h:
++l:0011111100:n:
++l:0011111101:g:
++l:1010111011:w:
++l:10101110100:?:
++l:1010111010100:!:
++l:1010111010110:z:
++l:10101110101011:/:
++l:101011101010100:;:
++l:101011101011100:E:
++l:101011101011101:*:
++l:101011101011111:STOP:
++l:1010111010101011:ESCAPE:
++l:1010111010111100:):
++l:10101110101010100:@:
++l:10101110101010101:j:
++l:10101110101111010:\":
++l:101011101011110110:[:
++l:101011101011110111:]:
++m:00:a:
++m:01:e:
++m:111: :
++m:1001:p:
++m:1011:o:
++m:1100:i:
++m:10000:.:
++m:10001:s:
++m:11010:u:
++m:11011:m:
++m:101001:y:
++m:101011:b:
++m:1010000:,:
++m:1010100:/:
++m:10100010:]:
++m:101000110:0x3a:
++m:101010100:':
++m:1010001111:r:
++m:1010101011:f:
++m:1010101100:l:
++m:1010101110:n:
++m:10100011100:?:
++m:10100011101:!:
++m:10101010100:STOP:
++m:10101010101:w:
++m:10101011011:h:
++m:10101011110:-:
++m:101010111110:4:
++m:1010101101010:t:
++m:1010101101011:@:
++m:1010101111110:;:
++m:1010101111111:c:
++m:10101011010000:):
++m:10101011010001:ESCAPE:
++m:10101011010011:d:
++m:101010110100101:g:
++m:10101011010010000:[:
++m:10101011010010001:v:
++m:10101011010010010:k:
++m:10101011010010011:z:
++n:01: :
++n:001:t:
++n:100:g:
++n:111:d:
++n:0000:s:
++n:1010:a:
++n:1101:e:
++n:10110:c:
++n:11000:i:
++n:000111:.:
++n:101111:n:
++n:110011:o:
++n:0001001:u:
++n:0001011:v:
++n:0001100:f:
++n:1011100:k:
++n:1011101:':
++n:1100100:y:
++n:1100101:,:
++n:00010000:m:
++n:00010100:l:
++n:00010101:-:
++n:000100011:w:
++n:000110101:0x3a:
++n:0001000101:z:
++n:0001101000:h:
++n:0001101100:b:
++n:0001101101:j:
++n:0001101110:r:
++n:00010001000:p:
++n:00011010011:x:
++n:00011011111:?:
++n:000100010011:;:
++n:000110100101:):
++n:000110111100:!:
++n:000110111101:q:
++n:0001000100100:/:
++n:0001000100101:STOP:
++n:0001101001000:ESCAPE:
++n:00011010010010:B:
++n:0001101001001100:]:
++n:0001101001001101:\":
++n:0001101001001110:@:
++n:0001101001001111:*:
++o:001:u:
++o:011: :
++o:100:r:
++o:111:n:
++o:0000:l:
++o:1100:m:
++o:1101:f:
++o:00010:v:
++o:01000:s:
++o:01001:p:
++o:10100:t:
++o:10101:o:
++o:10111:w:
++o:000110:k:
++o:000111:i:
++o:010100:g:
++o:010111:c:
++o:101101:d:
++o:0101011:e:
++o:0101100:y:
++o:0101101:a:
++o:1011001:b:
++o:01010101:h:
++o:10110000:.:
++o:010101000:-:
++o:010101001:,:
++o:1011000101:':
++o:1011000111:x:
++o:10110001001:0x3a:
++o:10110001101:z:
++o:101100010001:?:
++o:101100011001:j:
++o:1011000100000:!:
++o:1011000110001:q:
++o:10110001000010:J:
++o:10110001100000:/:
++o:10110001100001:):
++o:1011000100001101:;:
++o:1011000100001110:G:
++o:10110001000011000:\":
++o:10110001000011110:ESCAPE:
++o:101100010000110010:]:
++o:101100010000110011:@:
++o:1011000100001111100:4:
++o:1011000100001111101:STOP:
++o:1011000100001111110:B:
++o:10110001000011111110:O:
++o:10110001000011111111:C:
++p:001:l:
++p:010: :
++p:011:o:
++p:101:r:
++p:111:e:
++p:0000:p:
++p:1100:a:
++p:1101:i:
++p:00011:t:
++p:10000:u:
++p:10001:h:
++p:10010:s:
++p:000101:m:
++p:0001001:d:
++p:1001101:y:
++p:1001110:.:
++p:1001111:,:
++p:00010000:-:
++p:000100011:?:
++p:100110001:0x3a:
++p:1001100100:':
++p:1001100101:]:
++p:1001100110:+:
++p:1001100111:b:
++p:00010001001:f:
++p:00010001010:k:
++p:00010001011:!:
++p:10011000001:c:
++p:10011000010:n:
++p:10011000011:w:
++p:000100010000:STOP:
++p:000100010001:;:
++p:100110000001:/:
++p:1001100000001:g:
++p:10011000000001:):
++p:100110000000001:\":
++p:1001100000000001:S:
++p:10011000000000000:ESCAPE:
++p:10011000000000001:B:
++q:1:u:
++q:000:,:
++q:001:.:
++q:011: :
++q:01001:b:
++q:01010:':
++q:01011:i:
++q:010001:a:
++q:01000000:?:
++q:01000001:0x3a:
++q:01000011:):
++q:010000100:ESCAPE:
++q:010000101:w:
++r:000:a:
++r:001:o:
++r:100:i:
++r:110: :
++r:111:e:
++r:0100:s:
++r:0101:t:
++r:01110:d:
++r:10100:n:
++r:10101:y:
++r:011010:u:
++r:011011:m:
++r:011111:k:
++r:101101:l:
++r:101110:.:
++r:101111:r:
++r:0110000:f:
++r:0110010:,:
++r:0110011:v:
++r:1011000:c:
++r:1011001:g:
++r:01100011:':
++r:01111000:-:
++r:01111001:b:
++r:01111011:p:
++r:011000101:0x3a:
++r:011110100:w:
++r:0111101010:?:
++r:0111101011:h:
++r:01100010010:!:
++r:011000100001:q:
++r:011000100010:j:
++r:011000100011:STOP:
++r:011000100110:/:
++r:0110001000001:;:
++r:0110001001111:):
++r:01100010011100:8:
++r:01100010011101:z:
++r:011000100000001:\":
++r:011000100000011:]:
++r:0110001000000000:T:
++r:0110001000000100:x:
++r:0110001000000101:ESCAPE:
++r:01100010000000011:Z:
++r:011000100000000100:*:
++r:0110001000000001010:D:
++r:0110001000000001011:B:
++s:0: :
++s:101:t:
++s:1000:.:
++s:1110:e:
++s:10011:,:
++s:11000:o:
++s:11001:s:
++s:11110:h:
++s:11111:i:
++s:100101:c:
++s:110100:u:
++s:110110:p:
++s:1101111:a:
++s:10010001:n:
++s:10010011:m:
++s:11010100:y:
++s:11010110:0x3a:
++s:11011100:l:
++s:11011101:k:
++s:100100001:b:
++s:100100100:f:
++s:110101010:w:
++s:110101111:':
++s:1001000000:!:
++s:1001000001:g:
++s:1001001010:r:
++s:1101010110:?:
++s:1101010111:-:
++s:1101011101:q:
++s:11010111001:d:
++s:100100101100:/:
++s:100100101101:):
++s:100100101111:STOP:
++s:110101110000:]:
++s:110101110001:;:
++s:1001001011101:v:
++s:100100101110001:\":
++s:100100101110011:z:
++s:1001001011100000:j:
++s:1001001011100001:ESCAPE:
++s:1001001011100100:[:
++s:10010010111001011:@:
++s:100100101110010101:T:
++s:1001001011100101000:x:
++s:1001001011100101001:`:
++t:10:h:
++t:000:i:
++t:010:o:
++t:011:e:
++t:111: :
++t:0010:a:
++t:00110:u:
++t:11001:r:
++t:11011:s:
++t:001111:.:
++t:110001:t:
++t:110100:y:
++t:0011101:c:
++t:1100001:l:
++t:00111001:-:
++t:11000000:v:
++t:11000001:m:
++t:11010101:w:
++t:11010110:,:
++t:11010111:':
++t:001110000:n:
++t:0011100011:?:
++t:1101010001:b:
++t:1101010010:0x3a:
++t:00111000100:!:
++t:11010100000:z:
++t:11010100110:d:
++t:11010100111:f:
++t:110101000010:x:
++t:0011100010100:g:
++t:0011100010101:;:
++t:1101010000110:p:
++t:00111000101100:P:
++t:00111000101101:STOP:
++t:00111000101111:):
++t:11010100001110:/:
++t:11010100001111:k:
++t:0011100010111000:@:
++t:0011100010111010:E:
++t:00111000101110011:]:
++t:00111000101110111:\":
++t:001110001011100100:F:
++t:001110001011101100:ESCAPE:
++t:0011100010111001010:j:
++t:0011100010111011010:1:
++t:0011100010111011011:[:
++t:00111000101110010110:\\:
++t:001110001011100101110:K:
++t:001110001011100101111:C:
++u:011:t:
++u:101:n:
++u:110:s:
++u:111:r:
++u:0001:d:
++u:0010:e:
++u:0101:l:
++u:1000:p:
++u:00000:b:
++u:00001: :
++u:00110:i:
++u:01000:a:
++u:01001:g:
++u:10010:c:
++u:10011:m:
++u:0011100:y:
++u:00111010:z:
++u:00111100:':
++u:00111110:f:
++u:00111111:k:
++u:001111010:,:
++u:0011101101:-:
++u:0011101110:o:
++u:0011110110:.:
++u:0011110111:x:
++u:00111011000:w:
++u:00111011110:0x3a:
++u:001110110010:q:
++u:001110111110:h:
++u:001110111111:v:
++u:0011101100110:j:
++u:001110110011100:u:
++u:001110110011101:?:
++u:0011101100111110:/:
++u:0011101100111111:!:
++u:00111011001111001:ESCAPE:
++u:001110110011110000:\\:
++u:001110110011110001:STOP:
++u:001110110011110100:;:
++u:001110110011110110:J:
++u:001110110011110111:):
++u:0011101100111101010:T:
++u:0011101100111101011:]:
++v:1:e:
++v:01:i:
++v:000:a:
++v:0011:o:
++v:00101:.:
++v:001001: :
++v:00100001:':
++v:00100011:y:
++v:001000000:u:
++v:001000100:s:
++v:0010001010:r:
++v:00100000100:-:
++v:00100000110:,:
++v:00100010110:n:
++v:001000001010:g:
++v:001000001011:v:
++v:001000001111:l:
++v:001000101110:@:
++v:001000101111:0x3a:
++v:0010000011101:k:
++v:00100000111000:b:
++v:001000001110010:t:
++v:0010000011100110:d:
++v:00100000111001110:/:
++v:001000001110011110:ESCAPE:
++v:001000001110011111:1:
++w:00:i:
++w:011:e:
++w:100: :
++w:101:s:
++w:110:h:
++w:0101:a:
++w:1111:o:
++w:01000:.:
++w:01001:w:
++w:11100:n:
++w:1110110:r:
++w:11101010:,:
++w:11101011:l:
++w:11101111:y:
++w:111010010:c:
++w:111011101:b:
++w:1110100010:0x3a:
++w:1110100110:m:
++w:1110100111:':
++w:1110111000:d:
++w:11101000000:f:
++w:11101000001:]:
++w:11101000010:!:
++w:11101000111:k:
++w:11101110010:-:
++w:111010000111:g:
++w:111010001100:?:
++w:111010001101:t:
++w:111011100111:p:
++w:1110100001100:STOP:
++w:1110100001101:u:
++w:1110111001101:):
++w:11101110011001:j:
++w:111011100110001:q:
++w:1110111001100000:/:
++w:11101110011000010:;:
++w:111011100110000111:[:
++w:1110111001100001100:ESCAPE:
++w:1110111001100001101:B:
++x:01:p:
++x:11:t:
++x:101: :
++x:0000:i:
++x:0010:a:
++x:1000:c:
++x:00010:u:
++x:00111:e:
++x:10011:-:
++x:000110:f:
++x:001101:o:
++x:100100:.:
++x:0001110:,:
++x:0001111:m:
++x:0011001:y:
++x:00110001:9:
++x:10010101:':
++x:10010110:q:
++x:001100000:s:
++x:100101000:0x3a:
++x:100101110:h:
++x:0011000011:?:
++x:1001010010:l:
++x:1001011110:w:
++x:00110000100:A:
++x:10010100110:x:
++x:10010100111:b:
++x:10010111111:):
++x:001100001011:/:
++x:0011000010100:4:
++x:0011000010101:!:
++x:1001011111000:g:
++x:1001011111001:STOP:
++x:1001011111011:;:
++x:100101111101001:v:
++x:100101111101010:F:
++x:100101111101011:E:
++x:1001011111010000:ESCAPE:
++x:1001011111010001:C:
++y:1: :
++y:000:o:
++y:0011:s:
++y:0101:.:
++y:01001:,:
++y:01100:e:
++y:01110:':
++y:001001:a:
++y:001010:i:
++y:001011:d:
++y:010001:n:
++y:011011:0x3a:
++y:011111:l:
++y:0010000:w:
++y:0110100:t:
++y:0110101:m:
++y:0111101:-:
++y:00100011:b:
++y:01000000:?:
++y:01000001:r:
++y:01000010:p:
++y:01000011:f:
++y:01111001:c:
++y:0010001001:;:
++y:0010001010:J:
++y:0111100000:h:
++y:0111100001:!:
++y:0111100011:g:
++y:00100010000:):
++y:00100010111:/:
++y:01111000101:]:
++y:001000100011:k:
++y:001000101100:ESCAPE:
++y:001000101101:u:
++y:011110001001:STOP:
++y:0010001000100:z:
++y:0111100010001:\":
++y:00100010001011:j:
++y:01111000100001:2:
++y:001000100010100:y:
++y:001000100010101:x:
++y:0111100010000000:v:
++y:0111100010000001:T:
++y:0111100010000010:E:
++y:0111100010000011:P:
++z:10:e:
++z:001:a:
++z:011:z:
++z:110: :
++z:111:i:
++z:0001:l:
++z:0100:y:
++z:01010:o:
++z:000000:c:
++z:000010:,:
++z:000011:.:
++z:010110:w:
++z:0000010:':
++z:00000110:0x3a:
++z:00000111:t:
++z:01011101:m:
++z:010111000:k:
++z:010111100:-:
++z:010111101:u:
++z:010111111:b:
++z:01011100100:s:
++z:01011100101:/:
++z:01011100111:d:
++z:01011111001:p:
++z:01011111011:?:
++z:010111001100:h:
++z:010111110000:@:
++z:010111110100:):
++z:0101110011010:!:
++z:0101111100011:v:
++z:0101111101010:g:
++z:01011100110110:f:
++z:01011100110111:r:
++z:01011111000100:q:
++z:01011111000101:n:
++z:01011111010110:ESCAPE:
++z:01011111010111:]:
++{:0:ESCAPE:
++{:1:ESCAPE:
++|:0:ESCAPE:
++|:1:ESCAPE:
++}:0:ESCAPE:
++}:1:STOP:
++~:0:ESCAPE:
++~:1:ESCAPE:
++0x7f:0:ESCAPE:
++0x7f:1:ESCAPE:
+Index: vdr-1.7.26/libsi/Makefile
+===================================================================
+--- vdr-1.7.26.orig/libsi/Makefile	2012-01-18 12:31:40.000000000 +0000
++++ vdr-1.7.26/libsi/Makefile	2012-04-02 17:25:29.314395991 +0100
+@@ -24,7 +24,7 @@
+ 
+ ### The object files (add further files here):
+ 
+-OBJS = util.o si.o section.o descriptor.o
++OBJS = util.o si.o section.o descriptor.o freesat.o
+ 
+ ### Implicit rules:
+ 
+Index: vdr-1.7.26/libsi/freesat.c
+===================================================================
+--- /dev/null	1970-01-01 00:00:00.000000000 +0000
++++ vdr-1.7.26/libsi/freesat.c	2012-04-02 17:25:29.374397329 +0100
+@@ -0,0 +1,360 @@
++/* FreeSat Huffman decoder for VDR
++ *
++ * Insert GPL licence
++ */
++
++/* The following features can be controlled:
++ *
++ * FREESAT_DATA_DIRECTORY   - Directory where the freesat.tX files are stored
++ * FREESAT_ARCHIVE_MESSAGES - Store raw huffman strings in /var/tmp/
++ * FREESAT_PRINT_MISSED_DECODING - Append missed hexcodes to end of string
++ * FREESAT_NO_SYSLOG             - Disable use of isyslog
++ */
++
++#include "freesat.h"
++#include <stdlib.h> 
++#include <string.h>
++#include <stdio.h>
++#include <time.h>
++#include <unistd.h>
++#include <sys/stat.h>
++
++
++#define RELOAD_TIME     600      /* Minimum time between checking for updated tables */
++#ifndef FREESAT_DATA_DIRECTORY
++#define FREESAT_DATA_DIRECTORY       "/var/lib/vdr/"
++#endif
++#define TABLE1_FILENAME FREESAT_DATA_DIRECTORY "freesat.t1"
++#define TABLE2_FILENAME FREESAT_DATA_DIRECTORY "freesat.t2"
++
++#ifndef FREESAT_NO_SYSLOG
++#include "../tools.h"
++/* Logging via vdr */
++#ifndef isyslog
++#define isyslog(a...) void( (SysLogLevel > 1) ? syslog_with_tid(LOG_INFO,  a) : void() )
++#endif
++void syslog_with_tid(int priority, const char *format, ...) __attribute__ ((format (printf, 2, 3)));
++#else
++#define isyslog(a...)  fprintf(stderr,a)
++#endif
++
++
++
++struct hufftab { 
++    unsigned int value; 
++    short bits; 
++    char next; 
++}; 
++ 
++#define START   '\0' 
++#define STOP    '\0' 
++#define ESCAPE  '\1' 
++ 
++
++int freesat_decode_error = 0;  /* If set an error has occurred during decoding */
++
++static struct hufftab *tables[2][256];
++static int             table_size[2][256];
++static time_t          load_time = 0;
++
++static void load_file(int tableid, char *filename);
++
++
++static void freesat_table_load()
++{
++    struct stat sb;
++    time_t      now = time(NULL);
++    int         i;
++
++    /* Only reload if we've never loaded, or it's more than 10 minutes away */
++    if ( load_time != 0 ) {
++        int reload = 1;
++        if ( now - load_time < RELOAD_TIME ) {
++            return;
++        }
++        if ( stat(TABLE1_FILENAME,&sb) == 0 ) {
++            if ( sb.st_mtime < load_time ) {
++                if ( stat(TABLE2_FILENAME,&sb) == 0 ) {
++                    if ( sb.st_mtime < load_time ) {
++                        reload = 0;
++                    }
++                }
++            }
++        }
++        if ( reload == 0 ) {
++            return;
++        }
++    } 
++
++    /* Reset the load time */
++    load_time = now;
++
++
++    /* Reset all the tables */
++    for ( i = 0 ; i < 256; i++ ) {
++        if ( tables[0][i] != NULL ) {
++            free(tables[0][i]);
++        }
++        if ( tables[1][i] ) {
++            free(tables[1][i]);
++        }
++        tables[0][i] = NULL;
++        tables[1][i] = NULL;
++        table_size[0][i] = 0;
++        table_size[1][i] = 0;
++    }
++
++    /* And load the files up */
++    load_file(1, TABLE1_FILENAME);
++    load_file(2, TABLE2_FILENAME);
++}
++
++
++/** \brief Convert a textual character description into a value
++ *
++ *  \param str - Encoded (in someway) string
++ *
++ *  \return Raw character
++ */
++static unsigned char resolve_char(char *str)
++{
++    int val;
++    if ( strcmp(str,"ESCAPE") == 0 ) {
++        return ESCAPE;
++    } else if ( strcmp(str,"STOP") == 0 ) {
++        return STOP;
++    } else if ( strcmp(str,"START") == 0 ) {
++        return START;
++    } else if ( sscanf(str,"0x%02x", &val) == 1 ) {
++        return val;
++    }
++    return str[0];
++
++
++}
++
++
++/** \brief Decode a binary string into a value
++ *
++ *  \param binary - Binary string to decode
++ *
++ *  \return Decoded value
++ */
++static unsigned long decode_binary(char *binary)
++{
++    unsigned long mask = 0x80000000;
++    unsigned long maskval = 0;
++    unsigned long val = 0;
++    size_t i;
++
++    for ( i = 0; i < strlen(binary); i++ ) {
++        if ( binary[i] == '1' ) {
++            val |= mask;
++        }
++        maskval |= mask;
++        mask >>= 1;
++    }
++    return val;
++}
++
++/** \brief Load an individual freesat data file
++ *
++ *  \param tableid   - Table id that should be loaded
++ *  \param filename  - Filename to load
++ */
++static void load_file(int tableid, char *filename)
++{
++    char     buf[1024];
++    char    *from, *to, *binary; 
++    FILE    *fp;
++
++    tableid--;
++
++    if ( ( fp = fopen(filename,"r") ) != NULL ) {
++        isyslog("Loading table %d Filename <%s>",tableid + 1, filename);
++
++        while ( fgets(buf,sizeof(buf),fp) != NULL ) {
++            from = binary = to = NULL;
++            int elems = sscanf(buf,"%a[^:]:%a[^:]:%a[^:]:", &from, &binary, &to);
++            if ( elems == 3 ) {
++                int bin_len = strlen(binary);
++                int from_char = resolve_char(from);
++                char to_char = resolve_char(to);
++                unsigned long bin = decode_binary(binary);
++                int i = table_size[tableid][from_char]++;
++
++                tables[tableid][from_char] = (struct hufftab *)realloc(tables[tableid][from_char], (i+1) * sizeof(tables[tableid][from_char][0]));
++                tables[tableid][from_char][i].value = bin;
++                tables[tableid][from_char][i].next = to_char;
++                tables[tableid][from_char][i].bits = bin_len;
++                free(from);
++                free(to);
++                free(binary);
++            }
++        }
++    } else {
++        isyslog("Cannot load <%s> for table %d",filename,tableid + 1);
++    }
++}
++
++#ifdef FREESAT_ARCHIVE_MESSAGES
++static void write_message(const unsigned char *src, size_t size)
++{
++    static FILE *fp = NULL;
++    static int  written = 0;
++    static int  suffix = 0;
++    char buf[32768];
++
++    if ( written > 10000 ) {
++        fclose(fp);
++        fp = NULL;
++        written = 0;
++    }
++    if ( fp == NULL ) {
++        snprintf(buf,sizeof(buf),"mkdir -p /var/tmp/%d",getpid());
++        system(buf);
++
++        snprintf(buf,sizeof(buf),"/var/tmp/%d/freesat.%d",getpid(),suffix);
++        fp = fopen(buf, "w");
++        suffix = (suffix + 1)%1000;
++    }
++    size_t offs = 0;
++    size_t i;
++    for (  i = 0; i < size; i++ ) {
++        offs += snprintf(buf + offs, sizeof(buf) - offs, "%02x", src[i]);
++    }
++    fprintf(fp, "%s\n",buf);
++    fflush(fp);
++    written++;
++}
++#endif
++
++/** \brief Decode an EPG string as necessary
++ *
++ *  \param src - Possibly encoded string
++ *  \param size - Size of the buffer
++ *
++ *  \retval NULL - Can't decode
++ *  \return A decoded string
++ */
++char  *freesat_huffman_decode( const unsigned char *src, size_t size) 
++{ 
++    int tableid;
++
++    freesat_decode_error = 0;
++
++#ifdef FREESAT_ARCHIVE_MESSAGES
++    write_message(src, size);
++#endif
++    if (src[0] == 0x1f && (src[1] == 1 || src[1] == 2)) {
++        int    uncompressed_len = 30;
++        char * uncompressed = (char *)calloc(1,uncompressed_len + 1);
++        unsigned value = 0, byte = 2, bit = 0; 
++        int p = 0; 
++        int lastch = START; 
++
++        tableid = src[1] - 1;
++        while (byte < 6 && byte < size) {
++            value |= src[byte] << ((5-byte) * 8); 
++            byte++; 
++        } 
++  
++        freesat_table_load();   /**< Load the tables as necessary */
++
++        do {
++            int found = 0; 
++            unsigned bitShift = 0; 
++            if (lastch == ESCAPE) {
++                char nextCh = (value >> 24) & 0xff; 
++                found = 1; 
++                // Encoded in the next 8 bits. 
++                // Terminated by the first ASCII character. 
++                bitShift = 8; 
++                if ((nextCh & 0x80) == 0) 
++                    lastch = nextCh; 
++                if (p >= uncompressed_len) {
++                    uncompressed_len += 10;
++                    uncompressed = (char *)realloc(uncompressed, uncompressed_len + 1);
++                }
++                uncompressed[p++] = nextCh; 
++                uncompressed[p] = 0;
++            } else {
++                int j;
++                for ( j = 0; j < table_size[tableid][lastch]; j++) {
++                    unsigned mask = 0, maskbit = 0x80000000; 
++                    short kk;
++                    for ( kk = 0; kk < tables[tableid][lastch][j].bits; kk++) {
++                        mask |= maskbit; 
++                        maskbit >>= 1; 
++                    } 
++                    if ((value & mask) == tables[tableid][lastch][j].value) {
++                        char nextCh = tables[tableid][lastch][j].next; 
++                        bitShift = tables[tableid][lastch][j].bits; 
++                        if (nextCh != STOP && nextCh != ESCAPE) {
++                            if (p >= uncompressed_len) {
++                                uncompressed_len += 10;
++                                uncompressed = (char *)realloc(uncompressed, uncompressed_len + 1);
++                            }
++                            uncompressed[p++] = nextCh; 
++                            uncompressed[p] = 0;
++                        } 
++                        found = 1;
++                        lastch = nextCh; 
++                        break; 
++                    } 
++                } 
++            } 
++            if (found) {
++                // Shift up by the number of bits. 
++                unsigned b;
++                for ( b = 0; b < bitShift; b++) 
++                { 
++                    value = (value << 1) & 0xfffffffe; 
++                    if (byte < size) 
++                        value |= (src[byte] >> (7-bit)) & 1; 
++                    if (bit == 7) 
++                    { 
++                        bit = 0; 
++                        byte++; 
++                    } 
++                    else bit++; 
++                } 
++            } else {
++#ifdef FREESAT_PRINT_MISSED_DECODING
++                char  temp[1020];
++                size_t   tlen = 0;
++
++                tlen = snprintf(temp,sizeof(temp),"...[%02x][%02x][%02x][%02x]",(value >> 24 ) & 0xff, (value >> 16 ) & 0xff, (value >> 8) & 0xff, value &0xff);
++                do {
++                    // Shift up by the number of bits. 
++                    unsigned b;
++                    for ( b = 0; b < 8; b++) {
++                        value = (value << 1) & 0xfffffffe; 
++                        if (byte < size) 
++                            value |= (src[byte] >> (7-bit)) & 1; 
++                        if (bit == 7) {
++                            bit = 0; 
++                            byte++; 
++                        } 
++                        else bit++; 
++                    } 
++                    tlen += snprintf(temp+tlen, sizeof(temp) - tlen,"[%02x]", value & 0xff);
++                } while ( tlen < sizeof(temp) - 6 && byte <  size);
++                
++                uncompressed_len += tlen;
++                uncompressed = (char *)realloc(uncompressed, uncompressed_len + 1);
++                freesat_decode_error = 1;
++                strcpy(uncompressed + p, temp);
++#endif
++                isyslog("Missing table %d entry: <%s>",tableid + 1, uncompressed);
++                // Entry missing in table. 
++                return uncompressed; 
++            } 
++        } while (lastch != STOP && value != 0); 
++ 
++        return uncompressed;
++    } 
++    return NULL; 
++} 
++
++
+Index: vdr-1.7.26/libsi/freesat.h
+===================================================================
+--- /dev/null	1970-01-01 00:00:00.000000000 +0000
++++ vdr-1.7.26/libsi/freesat.h	2012-04-02 17:25:29.426398486 +0100
+@@ -0,0 +1,12 @@
++
++
++#ifndef FREESAT_H
++#define FREESAT_H
++
++#include <sys/types.h>
++
++extern char *freesat_huffman_decode(const unsigned char *compressed, size_t size); 
++
++#endif
++
++
+Index: vdr-1.7.26/libsi/si.c
+===================================================================
+--- vdr-1.7.26.orig/libsi/si.c	2011-12-10 15:47:15.000000000 +0000
++++ vdr-1.7.26/libsi/si.c	2012-04-02 17:25:29.518400539 +0100
+@@ -17,6 +17,7 @@
+ #include <stdlib.h> // for broadcaster stupidity workaround
+ #include <string.h>
+ #include "descriptor.h"
++#include "freesat.h"
+ 
+ namespace SI {
+ 
+@@ -405,6 +406,8 @@
+   return false;
+ }
+ 
++#include <stdio.h>
++
+ // originally from libdtv, Copyright Rolf Hakenes <hakenes at hippomi.de>
+ void String::decodeText(char *buffer, int size) {
+    const unsigned char *from=data.getData(0);
+@@ -415,6 +418,21 @@
+       return;
+       }
+    bool singleByte;
++
++
++   if ( from[0] == 0x1f ) {
++       char *temp = freesat_huffman_decode(from, len);
++       if (temp ) {
++           len = strlen(temp);
++           len = len < size - 1 ? len : size - 1;
++           strncpy(buffer, temp, len);
++           buffer[len] = 0;
++           free(temp);
++           return;
++       }
++   }
++
++
+    const char *cs = getCharacterTable(from, len, &singleByte);
+    // FIXME Need to make this UTF-8 aware (different control codes).
+    // However, there's yet to be found a broadcaster that actually
+@@ -443,6 +461,7 @@
+ 
+ void String::decodeText(char *buffer, char *shortVersion, int sizeBuffer, int sizeShortVersion) {
+    const unsigned char *from=data.getData(0);
++   unsigned char *temp = NULL;
+    char *to=buffer;
+    char *toShort=shortVersion;
+    int IsShortName=0;
+@@ -452,6 +471,14 @@
+       *toShort = '\0';
+       return;
+       }
++
++
++   if ( from[0] == 0x1f ) {
++       temp = ( unsigned char *)freesat_huffman_decode(from, len);
++       from = temp;
++   }
++
++
+    bool singleByte;
+    const char *cs = getCharacterTable(from, len, &singleByte);
+    // FIXME Need to make this UTF-8 aware (different control codes).
+@@ -489,6 +516,7 @@
+       if (convertCharacterTable(shortVersion, strlen(shortVersion), convShortVersion, sizeof(convShortVersion), cs))
+          strncpy(shortVersion, convShortVersion, strlen(convShortVersion) + 1);
+    }
++   if (temp) free(temp);
+ }
+ 
+ Descriptor *Descriptor::getDescriptor(CharArray da, DescriptorTagDomain domain, bool returnUnimplemetedDescriptor) {
diff --git a/debian/vdr.install b/debian/vdr.install
index bb019ae..ed7c9ae 100644
--- a/debian/vdr.install
+++ b/debian/vdr.install
@@ -32,3 +32,5 @@ debian/themes/*.theme                   var/lib/vdr/themes/
 
 debian/lintian/vdr                      usr/share/lintian/overrides/
 locale                                  usr/share/
+
+freesat.t*                              var/lib/vdr/

-- 
vdr packaging repository



More information about the pkg-vdr-dvb-changes mailing list