complearn 0.6.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (104) hide show
  1. data/AUTHORS +13 -0
  2. data/COPYING +340 -0
  3. data/ChangeLog +0 -0
  4. data/INSTALL +231 -0
  5. data/Makefile +352 -0
  6. data/Makefile.am +76 -0
  7. data/Makefile.in +352 -0
  8. data/NEWS +7 -0
  9. data/README +0 -0
  10. data/aclocal.m4 +104 -0
  11. data/bin/Makefile +209 -0
  12. data/bin/Makefile.am +8 -0
  13. data/bin/Makefile.in +209 -0
  14. data/bin/labeltree +68 -0
  15. data/bin/labeltree.in +68 -0
  16. data/bin/makesvm +70 -0
  17. data/bin/makesvm.in +70 -0
  18. data/bin/maketree +98 -0
  19. data/bin/maketree.in +98 -0
  20. data/bin/ncd +43 -0
  21. data/bin/ncd.in +43 -0
  22. data/bin/ncdmatrix +54 -0
  23. data/bin/ncdmatrix.in +54 -0
  24. data/bin/ncdvector +50 -0
  25. data/bin/ncdvector.in +50 -0
  26. data/complearn-0.6.2.gem +0 -0
  27. data/complearn.gemspec +57 -0
  28. data/config.log +597 -0
  29. data/config.status +1082 -0
  30. data/configure +4922 -0
  31. data/configure.ac +91 -0
  32. data/confstat5FpLBf/config.h +65 -0
  33. data/confstat5FpLBf/subs-1.sed +50 -0
  34. data/confstat5FpLBf/subs-2.sed +13 -0
  35. data/confstat5FpLBf/subs.frag +0 -0
  36. data/confstat5FpLBf/subs.sed +59 -0
  37. data/confstat5FpLBf/undefs.sed +24 -0
  38. data/doc/FAQ.txt +67 -0
  39. data/doc/Makefile +286 -0
  40. data/doc/Makefile.am +11 -0
  41. data/doc/Makefile.in +286 -0
  42. data/doc/devguide.txt +15 -0
  43. data/doc/example.complearnrc +14 -0
  44. data/doc/examples.txt +35 -0
  45. data/doc/man/Makefile +255 -0
  46. data/doc/man/Makefile.am +11 -0
  47. data/doc/man/Makefile.in +255 -0
  48. data/doc/man/complearn.5 +91 -0
  49. data/doc/man/labeltree.1 +35 -0
  50. data/doc/man/makesvm.1 +60 -0
  51. data/doc/man/maketree.1 +58 -0
  52. data/doc/man/ncd.1 +51 -0
  53. data/doc/man/ncdmatrix.1 +40 -0
  54. data/doc/man/ncdvector.1 +42 -0
  55. data/doc/readme.txt +101 -0
  56. data/doc/userguide.txt +46 -0
  57. data/examples/genes/blueWhale.txt +1 -0
  58. data/examples/genes/cat.txt +1 -0
  59. data/examples/genes/chimpanzee.txt +1 -0
  60. data/examples/genes/finWhale.txt +1 -0
  61. data/examples/genes/graySeal.txt +1 -0
  62. data/examples/genes/harborSeal.txt +1 -0
  63. data/examples/genes/horse.txt +1 -0
  64. data/examples/genes/human.txt +1 -0
  65. data/examples/genes/mouse.txt +1 -0
  66. data/examples/genes/rat.txt +1 -0
  67. data/ext/Makefile +167 -0
  68. data/ext/Quartet.c +399 -0
  69. data/ext/Quartet.h +62 -0
  70. data/ext/TreeScore.c +244 -0
  71. data/ext/TreeScore.h +3 -0
  72. data/ext/config.h +65 -0
  73. data/ext/config.h.in +64 -0
  74. data/ext/extconf.rb +3 -0
  75. data/ext/lib/CompLearnLib/CLConfig.rb +241 -0
  76. data/ext/lib/CompLearnLib/CompressionObject.rb +59 -0
  77. data/ext/lib/CompLearnLib/CompressionTask.rb +99 -0
  78. data/ext/lib/CompLearnLib/DistMatrix.rb +18 -0
  79. data/ext/lib/CompLearnLib/FoundComp.rb +10 -0
  80. data/ext/lib/CompLearnLib/FoundComp.rb.in +10 -0
  81. data/ext/lib/CompLearnLib/Ncd.rb +248 -0
  82. data/ext/lib/CompLearnLib/RunEnv.rb +150 -0
  83. data/ext/lib/CompLearnLib/Task.rb +39 -0
  84. data/ext/lib/CompLearnLib/TaskMaster.rb +13 -0
  85. data/ext/lib/CompLearnLib/TaskMasterMPI.rb +112 -0
  86. data/ext/lib/CompLearnLib/TaskMasterSingle.rb +39 -0
  87. data/ext/lib/CompLearnLib/Tree.rb +300 -0
  88. data/install-sh +294 -0
  89. data/missing +336 -0
  90. data/mkinstalldirs +111 -0
  91. data/o +24 -0
  92. data/scripts/CompLearn.iss +89 -0
  93. data/scripts/CompLearn.iss.in +89 -0
  94. data/scripts/debian/changelog +6 -0
  95. data/scripts/debian/control +14 -0
  96. data/scripts/makeSetup.sh +23 -0
  97. data/scripts/makeSetup.sh.in +23 -0
  98. data/scripts/makedeb.zsh +46 -0
  99. data/scripts/makedeb.zsh.in +46 -0
  100. data/tests/alltests.rb +2 -0
  101. data/tests/bz2test.rb +516 -0
  102. data/tests/sshagent-test.rb +48 -0
  103. data/tests/tests.rb +275 -0
  104. metadata +164 -0
@@ -0,0 +1,2 @@
1
+ system("ruby tests/sshagent-test.rb")
2
+ system("ruby tests/tests.rb")
@@ -0,0 +1,516 @@
1
+ require 'bz2'
2
+
3
+ unpackedStr = <<EOF
4
+ 6767616374616174676163746161746361676363636174676174636163616361746161
5
+ 6374677467677467746361746763617474746767746174747474747461747474747461
6
+ 6767676767746367616163747467637461746761637463616763746174676163637461
7
+ 6161676774636374676163746361677463616161746174617474677474676374676767
8
+ 6374746174746374637461746763676767677463746363616361636763616361676163
9
+ 6167746361676767746763746174746361677463616174676774636163616767616361
10
+ 7461746163747461616174746363746174746774746363616361676761636163676767
11
+ 6174676367636763616363636163677474746763677467636163616367746774616361
12
+ 6367746163616361636774616361636163677461636163616367746163616361636774
13
+ 6163616361636774616361636163677461636163616367746163616361636774616361
14
+ 6361636774616361636163677461636163616367746163616361636774616361636163
15
+ 6774616361636163677461636163616367746163616361636774616361636163677467
16
+ 7461636163677461636163616367746163616361636774677461636163677461636163
17
+ 6163677461636163616367746163616361636774677461636163677461636163616367
18
+ 7461636163616367746163616361636774616361636163677461636163616367746774
19
+ 6163616367746163616361636774616361636163677461636163616367746163616361
20
+ 6367746174616361636763676161636763747474616174747461616774616161746161
21
+ 6374616763747461617463616161636363636363747461636363636363677474616163
22
+ 6374746174747461746161746161746163677467636374617474746174677463747467
23
+ 6363616161636363636163616161636161676163746167616363677461636374616161
24
+ 7461746161676763637461616761616161636763747461746161676374746163636161
25
+ 7463636363746174746174746163746167637461637461617461637461616174636174
26
+ 6161637463746774746367636167747461746374617461676174617461636367616363
27
+ 7467616374637461617474636774636363746174636761616361616361747474746163
28
+ 6174677463746163677474616763636363616361746363636167747461617467746167
29
+ 6374746161616361746174616161676361616767636163746761616161746763637461
30
+ 6761746761677463676363616761637463636174616161636163616161676774747467
31
+ 6774636374676763637474746363617474616774746174746161746161676174746163
32
+ 6163617467636161676363746363676361746363636767746761616161746763636374
33
+ 6374616167746361636363616774676163637461616167676167637467677461746361
34
+ 6167636163616361616363616361677461676374636174616163616363747467637463
35
+ 6167636361636163636363636163676767617461636167636167746761746161616161
36
+ 7474616167636361746761617467616161677474636761637461616763746174617474
37
+ 6161616361616767677474676774616161747474636774676363616763636163636763
38
+ 6767636361746163676174746161636363616161637461617461676163636361636767
39
+ 6367746161616763677467747461636167616761616161616161746174616374616161
40
+ 6774746161617474747461616374616767636367746167616161676374616361677474
41
+ 6161636174616161616174616361676361636761616167746161637474746161636163
42
+ 6374636367616374616361636761636167637461616761636363616161637467676761
43
+ 7474616761746163636374616374617467637474616763636374616161637474616761
44
+ 7461677474616363637461616163616161616374617463636763636167616761616374
45
+ 6163746167636161746167637474616161616374636161616767616374746767636767
46
+ 7467637474746163617463636374637461676167676167636374677474637461746161
47
+ 7463676174616161636363636761746174616363746361636361746374637474676374
48
+ 6161747463616763637461746174616363676363617463747463616763616161636363
49
+ 7461616161616767616167616161616774616167636163616167746174637474616163
50
+ 6174616161616161677474616767746361616767746774616763746361746761676174
51
+ 6767676161676361617467676763746163617474747463746161616174746167616163
52
+ 6163636361636761616761746363747461636761616163746161677461747461616167
53
+ 6761676761747474616774616774616161747474676167616174616761676167637463
54
+ 6161747467616174636767676363617467616167636163676361636163616363676363
55
+ 6367746361636363746363746361616774676774616163746363636161616161616163
56
+ 6374617474746161617474617463616361636363616361616761676761676174616167
57
+ 7463677461616361616767746161676361746163746767616161677467746763747467
58
+ 6761746161636161676174677461676374746161616361616167636174637467676374
59
+ 7461636163636361676161676174747463617461747461616163746761636361746374
60
+ 7467616763746161616763746167636363616161636174637461636161616361636161
61
+ 6374616163616374616761616161746161616163616161616361747474616774636163
62
+ 6374746174616161616774617461676761676174616761616174747461616374746767
63
+ 6367637461746167616761616167746163636763616167676761616167617467616161
64
+ 6761746161616174746161616167636163636163616361676361616167617474616363
65
+ 6363747467746163637474747467636174616174676167747461676374616761616361
66
+ 6163637461616361616167616761616374746361676374616767636363636363676161
67
+ 6163636167616367616763746163636361746761616361617463746174746163616767
68
+ 6174676161637463677463746174677474676361616161746167746761676161676174
69
+ 7474677467676774616761676774676161616167636374616163676167636374676774
70
+ 6761746167637467677474676363636167616163616761617463747461677474636161
71
+ 6374747461616163747461636374636161616161636374616161617474636361617467
72
+ 7461616774747461616161746174616774637461616161616767746163616763747474
73
+ 7474616761636374616767617461636167636374747461747461676167616774616167
74
+ 6361746161617461746161616363617461677474676763637461616161676361676363
75
+ 6174636161747461616761616167636774746361616763746361616361617463616161
76
+ 6763617463747461617467746361616161617461617467636161636361616374636374
77
+ 6161636374616161616374676767637461617463746174747461617461617461676161
78
+ 6763616174616174676374616174617467616774616163616167616161746174747463
79
+ 7463636374676361746161676374746174617463616761616367676174616163636163
80
+ 7467617461677474616163616163616167617461746174617461616363746161636361
81
+ 7461616163616161617461746361616174746161747467747461616363636161636163
82
+ 6167677461746763616161747461676767616161676174746161616167616167746161
83
+ 6161676761616374636767636161616361636161676363636367636374677474746163
84
+ 6361616161616361746361636374637461676361747474636361677461746761676167
85
+ 6763616374676363746763636367677467616367637461677474616161636767636367
86
+ 6367677461746363746761636367746763616161676774616763617461617463617474
87
+ 7467747463636374616161746167676761637474677461746761616367676363616361
88
+ 6367616767676374747461637467746374637474616374746363616174636367746761
89
+ 6161747467616363747463636367746761616761676763676767616174617461617461
90
+ 6174616167616367616761616761636363746174676761676374747461617474616163
91
+ 6367616363636161616761676163636174617467616163636161636367616361676761
92
+ 6163616163616161636374637461746174676767636367676361617474746167677474
93
+ 6767676774676163637463676761676161746161616163616163637463636761677467
94
+ 6174747461616174637461676163746161636361677463676161616774616374616361
95
+ 7463616374746174746761746363616161616163637474676174636161636767616163
96
+ 6161677474616363637461676767617461616361676367636161746363746174747463
97
+ 6167616774636361746174636761636161746167676774747461636761636374636761
98
+ 7467747467676174636167676163617463636367617467677467636167636167637461
99
+ 7463616161676774746367747474677474636161636761747461616167746363746163
100
+ 6774676174637467616774746361676163636767616774616174636361676774636767
101
+ 7474746374617463746174747461617461616374746374636363616774616367616161
102
+ 6767616361616761676161677467616767636363616374746361636361616167636763
103
+ 6374747461616363616161746167617467617461746161746374746161746374616761
104
+ 6361677474746174636361616163616361637461636363676167616763746367676774
105
+ 7474677474616767677467676361676167636363676774616163746763617461616161
106
+ 6374746161676374747474617474617463616761676774746361617474636374637463
107
+ 6374746161636161636174677474746174616174746161746774616374637463616374
108
+ 6161747461747463637461747463746363746167637467746167636374746363746161
109
+ 6363637461677463676161636761616161677467637461676763746174617467636161
110
+ 6374636367636161616767616363616161746774636774616767616363617461636767
111
+ 6363746163747463616163637461746367636167617467637467746161616163746374
112
+ 7474616363616161676167636374637463636761636363637474616361746363746363
113
+ 6174617474616174617474636174636174616763616363616174636374616763636374
114
+ 6361636163746167636363746161636361746174676161746363636163746163636361
115
+ 7461636361746163636367637463617474616163617461616163637467676761677461
116
+ 6374617474746174676374616763746174617463616167636374616763746774747461
117
+ 7474636361746363746174676174636167676174676167636374636161617474636161
118
+ 6161746163676363637461617463676761676363637461636761676363677463676363
119
+ 6361616163616174637463617461746761616774636163616374616763636174636174
120
+ 7463746363746174636167746163746163746161746161616367676174636374746361
121
+ 6361637461676363617461637461617463616363616374636161676161746174617461
122
+ 7467616374616174636174746363746763617467616363636374616763636174616174
123
+ 6174676174747461746374636161636363746167636167616761636361616363676167
124
+ 6363636361747463676163637467616361676161676761676161746361676161637461
125
+ 6774637463636767617474636761746774616761617461746763616763616767636363
126
+ 6374746367636363746174746374746363746167636167616174617467636361616361
127
+ 7463617463617461617461616174617463637463616361616361617463637461747463
128
+ 7474636767616763617474636361636167636363747461746174616363616761676374
129
+ 6174617461636361747461616374747461636167746161616761636363747463746363
130
+ 7461616361616374616374747463747461746767617463636761676361746363746163
131
+ 6363616367617474636367617461746761636361616374616174616361636374636374
132
+ 6174676161616161616374747463746763637463746361636363746167636363746174
133
+ 6763617461746761636174677461746363637461636374617463617463616361676361
134
+ 6167636174636363616363746361616163617461616761616174617467746374676163
135
+ 6161616167616774746163747474676174616761677461616161636174616761676774
136
+ 7474616161636363746374746174747463746167616174616163616767616174636761
137
+ 6163637461617463637461616761617463636161616161746374746367746763746163
138
+ 6361747461747461636163636174617474637461616167746161676774636167637461
139
+ 6161746161676374617463676767636363617461636363636761616161746774746767
140
+ 7474746174616363637474636363617461637461617463616163636363636374617463
141
+ 7474746174746174746174746174617474616163636774746174637463616767616163
142
+ 7461746161747467746167746761636161636374636363616374676163747463746167
143
+ 7463746761617474676763747474676161617467616163637461747461676363617463
144
+ 6174636363636174636374636174676161616161617461636161636363616367616763
145
+ 6361746167616167636167636361636161616174617474746374746161636163616167
146
+ 6361676363676363746363617461617463637461617461617461746761617463617474
147
+ 6174636161746374616374676361637463676767616361617467676163636774616374
148
+ 6161616167616363747461617463636361746167636174636161746361746161746161
149
+ 6361616363676374637461676361617461616161637461676761637461676363636361
150
+ 7474636361637474637467616774616363636761616774746163616361616767616174
151
+ 7474637461746174636174636167676374746161747463746163746161636174676163
152
+ 6161616161617474676361636361637461746361617463637463746163636161617463
153
+ 7463617463636163636174746161636363746161636374616174636374616163616174
154
+ 6174636361746374746174636167746361746161746367676167676374676167676167
155
+ 6763637461616163636161616361636161637461636761616161617463617461676361
156
+ 7461637463637463616174636763636361746174616767637467616174676163616763
157
+ 7461746361746161746774616361676363636361636161746161746161746374746161
158
+ 6163637461616374617463746174617463617474617461616361637461616363616363
159
+ 7474636174616374617474746174616361636161637463636163636163616163616163
160
+ 6167636174636363746174636163616161636174676161617461616161636363637463
161
+ 7461617463616363746361637463617463637461677461747461617461617461746363
162
+ 6374676767616767636374636363636363616374637463636767617474746174636363
163
+ 6161616174676161746161746361746363616167616174746761637461616161617467
164
+ 6161747461617463617461617467636361616361747461637461676363617461616361
165
+ 6763616374616374636161636374617461637474637461636174616367616374616163
166
+ 6174616361636361636367636163746161636361746774746363636374636161616361
167
+ 6163616774617461616161617461616161746761636761747474676161746763616361
168
+ 6161616161616174616163637474636374616363636363746374616774746774616174
169
+ 6174636161636361746163746163747463636163746367636163636161746163746174
170
+ 6374617463637467676174746167616167747474616767747461616163746167616363
171
+ 6161676167636374746361616167637463746161676361616774636374616361676163
172
+ 7474616163747463746763616361746374616161636361747463746161676761637467
173
+ 6361616761617463746174637474616361746361617474676174746763616161746361
174
+ 6161636163747474616174746161676374616167746363746361637461676174746767
175
+ 7467676763746374616163636363616367616161747474746167747461616361676374
176
+ 6161617467636363746161746361616374676763747463616174636361637474637463
177
+ 6363676363677463746167616161616161616167676367676761676161676363636367
178
+ 6763616763676363616167637467637474637474746761617474746763616174746361
179
+ 6163617467616361747463616363676361676761637474676774616161616167616767
180
+ 6763746367616163637463746774637474746167617474746163616774637461617467
181
+ 6374746163746361676363617474747461636374617467747463617461616163636767
182
+ 7467616374617474747463616163746161746361636161616761746174746767746163
183
+ 7463747474616363747474746174746367677467636374676167637467676361746767
184
+ 7467676767616374676374637474616774637474637461617463636767676363676161
185
+ 6374676767636361616363746767746163616374616374616767616761746761746361
186
+ 6761747474616361617467746161746367746361637467636363617467637474747467
187
+ 7461617467617463747474747474617467677467617467636374617474617461617474
188
+ 6767616767677474636767616161637467617474676774636363617474616174616174
189
+ 7467676167637463637467616361746167636174747463636363676161746161616361
190
+ 6163617467616763747463746761637463637463636374636361746363747474637461
191
+ 6374637474616374636763637463617463746174676774616761616763636767616763
192
+ 6167676161637467676774676161636167746174616363636163636363746167636367
193
+ 6763616163637467676374636174676361676761676361746363677461676163637461
194
+ 6163746174747474747463616374616361636374676763616767746774637463637463
195
+ 6161746374746767677467637461747461617474746361747461637461637461747461
196
+ 7474616174617461616161636374636374676363617467746363636161746174636161
197
+ 6163616363746374617474746774637467617463616774637474616174636163746763
198
+ 7467746374746163746163747463746174636163747463636167746374746167636167
199
+ 6367676761617463616374617461747461747461616361676174636761616163637461
200
+ 6161636163636163617474637474746761636363636763746767676767616767616761
201
+ 7463637461746374746174616363616163616374746174746374676174746374747467
202
+ 6763636174636361676161677474746163617474747461617463637461636363676774
203
+ 7474746767676174616174637463616361746174746774746163637461747461747463
204
+ 6167677461616161616167616163636374747467676374616361746767676161746167
205
+ 7474746761676363617467617461746361617463676763747463637467676763747474
206
+ 6174636774617467616763636361746361636174677474746163746774616767616174
207
+ 6767617467746167616361636163676167636174616374747461636174636167636361
208
+ 6374617461617474617474676363617474636374616363676767677467616161677461
209
+ 7474746167747467616374676763746163746374746361746767616767746161746174
210
+ 7461616174676774636363637467637461746174746174676167636374746167676374
211
+ 7474617474747463637461747474616363677461676761676763637461616367676761
212
+ 6174746774616374616763616161637463747463617474616761636174746774746374
213
+ 7463616367616361636174617474616367746167746767636363616374747463616374
214
+ 6174677463747467746361617461676761676361677461747463676374617463617461
215
+ 6767616767637474636774636361747467617474636363636374617474637463616767
216
+ 6174617461636363747467616361616361637474676167636161616761747463616374
217
+ 7474616367617474617467747474677461676761677463616174617461616367747463
218
+ 7474636363746361676361637474636374616767636374677463636767616174676363
219
+ 6163676163677474617474637467616374617463636167617467636174617461636161
220
+ 6374746761616174616367617474746363746361617467676763746374747463617463
221
+ 7463617474616163616763616774636174677474616174616774747474636174616774
222
+ 6774676167616167637474746367636174636361616763676167616167746767636361
223
+ 7461677461676161637461616363616361616374616174637474676161746761747467
224
+ 6361746767617467746363746363746363677461636361636163617474746761616761
225
+ 6763636161637474616367746163746174746161616174616167616161676761616767
226
+ 6161746367616163636374637474746161637467677474746361616763636161746763
227
+ 6361746161636361747461746774637474746374636161747461616761616774617474
228
+ 6167746161616163616174746163617461616374747467746367616167747461616174
229
+ 7461746167676374746761617463637461746174676374746361617467676367746163
230
+ 6363637474746361616374616767747474636361616761746763746163617463636363
231
+ 6361747461746167616167616163746363746163616374747463616367616363616361
232
+ 6361637461617461617474677461747474747461617463616763746374747461677474
233
+ 6374747461746174746174637463677474676174676374616163616163636161676374
234
+ 6361636763616361636761677461636161746167617467637463616167616167746167
235
+ 6161616363617463746761616363617463637461636374676374617474617463637467
236
+ 6174746374746174636763636374616363637463637474616367616174746374637461
237
+ 7461746161746767617467616161746361616361616363636374636363746361636167
238
+ 7461616161616363617461676761636174636161746761746174746761616774746174
239
+ 6761677461636163746761747461636761616761637474676161747474746761637463
240
+ 7474616361746161747463637461636363616167616763746161616163636167676167
241
+ 6161637463636767637461747461676161677474676163616163636761677461677474
242
+ 7474616363616174616761616174676163636174746367636174677474616174637463
243
+ 6174636167616167617467746774746163616374636174676167636367746363636174
244
+ 6363637461676763637461616161616374676174676374617463636361676763636761
245
+ 7474616161746361616163616163746374616174616763746163616367616363746767
246
+ 7474746174617474617467676363616174676374636167616161746374677467676374
247
+ 6361616163636174616763747463617461636363617474677474637474676161747461
248
+ 6774636363616374616163677461637474746761616161617467617463746763617463
249
+ 7461746163746774616161747463617474616167616167637461616174616167636174
250
+ 7461616363747474746161677474616161676163746767676167747474616161746374
251
+ 6363636374746161746761636174676363616361616374616761746163617463636163
252
+ 6374676174636361746361637461747461746174636161746161747461746161636163
253
+ 7461747474617474677461747463636161637461616161617463746361616161746163
254
+ 7474617461746363617463616161636363616761616363746161617463636174616163
255
+ 6361636163746161616163616163676761617463636374676167616161616161616174
256
+ 6761616367616161617463746174746367636374637474746361637461636363636161
257
+ 6361617461617461676761747461636374617474677474617474747461617474617474
258
+ 6174617474746363616167636174747474617474636363747463616363746161636367
259
+ 6163746161747461617461616363677463746167747474636163746363616163616174
260
+ 6761637461677461636161637461616361746361616161636161617461637467676374
261
+ 6174746361746161746361746161616767616361616163637467616763636374616174
262
+ 6163746161746774636363746161747463746174747461747467676774636161636161
263
+ 6163747461747461676763637461747461636363636163746361747463616363636361
264
+ 6163746163636361617474617463616174616161747474616767616174616763746174
265
+ 6363636763746174676167636367676361637467746161747461636367676774747463
266
+ 6763636163616167616374616161676361746374637467676363636163747474637461
267
+ 6363616361616767616163616363746774636363636374616174746363746174676374
268
+ 7467746167746361747467616761637461746361676363746374747461746363616163
269
+ 6374617461676374637463676363677461636761637474616361676363616163617463
270
+ 6163636763616767746361637474617474616174616361746374616174746767616767
271
+ 6767636367636363746167636363746761746161616361747461676361636374637461
272
+ 7474676363747461617463616363747474616363617474637463617474747461637461
273
+ 6163616174636374746761617474746763636774616763636374616174636361616763
274
+ 6374617467747474747461636363746763746167746161676363746174616374746163
275
+ 6174676174616163616363746161746761636363616363616161636363617467636174
276
+ 6163636163617461677463616163636374616763636361746767636361637474616361
277
+ 6767616763636374747463616763636374637474616174616163637463616767636374
278
+ 6767637461746174676174746363616374616361616374746161636163746763746774
279
+ 7461616363637474676761617461616374616363616163747461637461616374617461
280
+ 7461746361617467617467616367616761636174746174636367616761616167636163
281
+ 6174746363616167676363617463617461636163637461746367747463616161616167
282
+ 6763637474636761746163676761617461617463637463747474617463617463746361
283
+ 6761616774617474637474747474636763616767637474637474637467676763637474
284
+ 6374616363616374636161676363746167636363636161636363636367616763746167
285
+ 6761676761746763746761636361636361616361676763617474617474636363637467
286
+ 6161636363636374676761616774746363616374616374746161746163637463636774
287
+ 6763747463746167636374636367676167746174636161746361636374676167637463
288
+ 6163636163616774747467617467676167676761616174636761616161636163617467
289
+ 6374746361616763616374617474746174746163616174637463747474616767676774
290
+ 6374616374747461636163746363746363616167636374636367616174616374617467
291
+ 6161616361746361747463616367617463746367676163676761677461746163676761
292
+ 7463746163637474637474636174676763636163616767617474636361746767676374
293
+ 6163617467746161747461747467676374637461637474746363746161747467746174
294
+ 6763747463747461636763636161747461616161746174636163747474616361746361
295
+ 6161746361636361637474636767617474746761616763636763636763637467617461
296
+ 7474676163616374746367746167616367746167747474676163746174746363746174
297
+ 6163677474746374617474746174746761746761676761746363746174746363747474
298
+ 6167746174746161746161677461636167747467616374746363616174636161636361
299
+ 6774747463676774617461616363636761616161676761617461617461616174677461
300
+ 6174616374746763637474616374746163636161746163616374636374677463636163
301
+ 6163746163747467746163746361746367636174746374676174746163636363616163
302
+ 7461616163617463746174676361676161616161676361616763636363746174676167
303
+ 7467636767617474746761746363746174616767677463636763636367636374616363
304
+ 6374746374636361746161616174746374746363746767746167636361747461636174
305
+ 7463747467637461747474676174637461676161617474676361637461637461637463
306
+ 6363636374746363637467616763637463616361616163616761636161616374616363
307
+ 6161636361746163746361637461746167636363747463746163746161746374636174
308
+ 7461637461676363676361616763637461676363746163676161746761616363636161
309
+ 6161616767616374616761617467616163746761617461746761746161747461677474
310
+ 7461616163636161616163616161746761747474636761637463617474616761747461
311
+ 7461676374636163636374617461617474617463616161746774636361746167746374
312
+ 6163617474616174617474747463637467676374747463617463617467746367637463
313
+ 6174616767616374616374616174617461746367617463636361637474616174677463
314
+ 7474636363746363746174677463746167616167676361746761746174746174636363
315
+ 7461747463617474617461617461676363677461676363617463637461616163616163
316
+ 6361746374636163616374616763636167636174616163636363636174746174636374
317
+ 6174746167746174747467636167637474677467616767636167636163746167677474
318
+ 7461746374637461637461677461617461677461746361616174616361746174676763
319
+ 6163746761637461746774616361616161636374616161636374636374616361617467
320
+ 6374616161616174746174746174636363636163746763636174616374636174616363
321
+ 6161746161636174676363746174636761616163637461616361746161746374676161
322
+ 7463616163746361616361616363746163616763637461637461617474616774637474
323
+ 6174746167636374637463637461746374616161636361616374616767746767636361
324
+ 7461677463746161617474747474636163746774746174747474746374636167616374
325
+ 6361637463746363676361636374747461637461677461637461616361616361746761
326
+ 6374636374616363676374616174616374636174616763636167636361617463616361
327
+ 6363746174636161616167616161637463637461677463676161616161616163746174
328
+ 6163617463616361617461637463616374637463637467636167637474637474747467
329
+ 6174746174616163617474746163636763746163616761616374616174746174617474
330
+ 7474616361747474746174747467616167636361636174746161746363636361636374
331
+ 7461617463617463617474616363636761746767676774676163636167616361676167
332
+ 6367617474616161636763636767636374617461637474746374617474747461636163
333
+ 7463746167746167676374636163746163636363747474746167746367636163746163
334
+ 7467746174617463636167616174616361616361676761616374747461616174747463
335
+ 6374676174636174636361617461637467616763636161676363636174637463616163
336
+ 6361636374676774636361617461747474746363746374676163746167636174676361
337
+ 7467617461676361747474617461677461616161617461636374637461746174676761
338
+ 6374636361636374617467617474676363616161616763616361746774746761616763
339
+ 7463636361746367637467677474636161746167746163747467636367636367746174
340
+ 7461637461616161637461676767676761746163676767617461617467636774617474
341
+ 6163616774636374616374746161636363636763616163676161636361616174676763
342
+ 6174616363636374747461746161746163746174636363746774676167676161746767
343
+ 7474617461616361616763746363617474746763637467636763636161616361676163
344
+ 6374616161617463636374616174636763617461637463617463636774616167746361
345
+ 6361746767636363746167746161747467746167636167746163746761746363616161
346
+ 6361636363746761616763746174617461676761676374616361676363747461617461
347
+ 6174746763746361746767616374676163637463617463746174676374617474637467
348
+ 6363747467636161616374636161616374617467616163676167746163617461676363
349
+ 6761616361617461617463637461676363636767676767637461636167616374617463
350
+ 6374636363636374616174616763746763637467617467616374616374616763746167
351
+ 6363746367636161616363746167636363746163636163636361636161747461617463
352
+ 7461617463676761676167637461747474677461677461617461676363746363747463
353
+ 7463617467617463616161636174616163636174746174636374616174676767746163
354
+ 7461617461746361746361747461636167636363746174616374636363746374616361
355
+ 7461637474617474617461616374636161636761676763616161746163616361636163
356
+ 6361636174746161616161746174636161636363617463617474746163616367616761
357
+ 6161616367636363746161746167636363746363616363746163746363636363747463
358
+ 7463637463637461746361637474616163636374616167617474677461637461676763
359
+ 6363636174747461637467746161617461746167747474616174616161616163617474
360
+ 6167617474677467616174637461617461617467676161677467636161677463747463
361
+ 7474617474746163636761616161616774617467636161676161637467637461617474
362
+ 6361746763637463636163677461746161616161636774676763747474747463616163
363
+ 7474747461746167676174616761616774616174636361747467677463747461676761
364
+ 6163636161616161617474676774676361616374636361616174616161616774616174
365
+ 6161616363746174747461636363636163746361746163746161637467636161746174
366
+ 7474617474637461637463637467636363617463617474617461746374616163616363
367
+ 6361616374677461746161616161636167636374617461746363636361637461746774
368
+ 6161616161636361636161746374637474616367636374746361746361746361676361
369
+ 7461617463636361616374617461617461747474617463746363746361676761636161
370
+ 6761616763616174746174637463616161637467616361637467616374617463616174
371
+ 6363616161637463746361616763746174636163746161676374747461616161746167
372
+ 6174746174747463746361616363617463747474617463636374677461676367637474
373
+ 7474636774636163617467677463636174636174616761617474637463616174677467
374
+ 6774616361746763616374636167616363636174616361746361616363676174746374
375
+ 7474616161746174637463637463617461747463637461617463616374617467617461
376
+ 6174746374616774746163636763746161636161746374617474746361616374617474
377
+ 6361746367676374676167616767676167746167676161746361746174637474747463
378
+ 7461637474617463676761746761746761746174676763636761676361676174676361
379
+ 6161636163746763636763636374616361616763616174636374637461636161636367
380
+ 6361747467676167616367746167676374746361746361746167636361746167636174
381
+ 6761747474637463616363616163746361616163676361746767676163747463636161
382
+ 6361616174637474746174636163636361616361636761676161636374616161746174
383
+ 7463636174746163746167676763747463746174746167636167636361636167677461
384
+ 6161746363676363636161747463676763637461636174636367746761637467636361
385
+ 7463616763636174616761616767636363616163746363746774637463636763636374
386
+ 6163746363616374636161677461636161746167746367746167636167676767746374
387
+ 7463747461637474617463636767747474746163636367637463617461676161636161
388
+ 6161636161616163746174616361616163746374636163636374617467747474616767
389
+ 6167637461747461636161636374746774746361636167637461747474677467637463
390
+ 7463616361636161616174676174617463616161616161677474677474676363747474
391
+ 7463616163637463616167636361616374676767636374616174616174746774616163
392
+ 6361747467676761747461616363616163637474616363746367636174747463746163
393
+ 6163617474746763616361636163676361747463747463616161676363617467637461
394
+ 7474636174617467747463616767617463616174746174636361636167746374676161
395
+ 6367616367616163616167616361747463676161616161746167676367676174746174
396
+ 6163616161636361617467636363747463616363616374616363746363637461617463
397
+ 6174746767616167636374636763616374636163616767746174616363747474636374
398
+ 6161636167677474747474617474636361616167616363746161746361746367616761
399
+ 6361676363616163616367746367746174616363616163676363746761676363637461
400
+ 6374616174746163746374636174746763636163617463636374746163616763746763
401
+ 6374616361677461637463676161747461746174746374747467746763746163746167
402
+ 6761636161636361636761747463616174616363747467616174637461617463616174
403
+ 6761616161746161746163636361636374636174636161637463636174746161616367
404
+ 7463746374746161746367676161677461746374747467636167676174617463746161
405
+ 7474746374746163616163617463636363636361616361616374617463636361636161
406
+ 6174616163746174616363637461637461746374616161616374616163746763746374
407
+ 7467636367746761637461746367636167676374746361746363746167636174746167
408
+ 6161637474616174637463676367676374616161616163747461616161747474617461
409
+ 7461636363747463616161636374637474746161677474747463636161636374637474
410
+ 6167676774616374747463636161747467746161746163616363676363746363636174
411
+ 6361616161617467616763637461616374617467616763636161616167746363676361
412
+ 7463676174616374617474616761636174616174747467616374616761616161746774
413
+ 6174746163636361616174636361746374636374746174746363616161746161616161
414
+ 7467746361616374616374677461746374616174636167616161676761637461677474
415
+ 6161616374637461637474747474617463747474636174616174636163636374616763
416
+ 6363746361676363746161746374746163747461617474636363616367616774616163
417
+ 7474636361746161746361636361616361636163636161746161676361616167617463
418
+ 6167636367677467616361616363616374616174636161677474636361746161637461
419
+ 7461746167636763636763616174746363636174676763637463637463616374616161
420
+ 6761616363637467616774636163637467746174636174616161746361636363616174
421
+ 6361636374676361636361747461616163747461616174616367616374746374616363
422
+ 7463617463747463637474746161616174617461616361616763616774746161746161
423
+ 7474637467637461616361636363636367746161746161616361747467637461617461
424
+ 6361676363747461747461676163677463636163676363746361676761746161676763
425
+ 7463616774616763636174616763636774616774617461746363616161636163746163
426
+ 6761677461746163636363637461616174616161747461616761616161636361747461
427
+ 6161636374616161616174676174636363636361616161747463616163616361617461
428
+ 6363616361616363616774616363616363616763636163616174746161616363616161
429
+ 6363636163636174616161747467676167616167676374747467616167616161616163
430
+ 7474616361616167637463616374616361616161616374677461637474616161617461
431
+ 6161746163616174677461746774746174636174746174746374636163617467676161
432
+ 7474746161636361746761637461617467617461746761616161616363617463677474
433
+ 6774617474746361616374617461616761616374746161746761636361616361747463
434
+ 6761616161746361636163636363637474617463616161617474617474616174636163
435
+ 7463617474636174636761746374616363636763636363617463746161636174637463
436
+ 6167636174676174676161616374746367676374636363747463746167676167746374
437
+ 6763637461616363747461636161617463637463616363676763637463747474747467
438
+ 6763636174616361637461636163617463616761636163616174616163636763637474
439
+ 7474636174636167747461636363616361746374677463676367616367747461617474
440
+ 6174676763746761617463617463636761746174747461636163676363616163676761
441
+ 6763747463746174617474637474746174637467636374677461636174616361746774
442
+ 6167676163676767676161746174616374616367676374636374616361636374746374
443
+ 6361676167616361746761616163617474676761617463617461637461747461747474
444
+ 6163616774636174616763636163616763747474746174676767617461636774636374
445
+ 6163636174676167676363616161746774636374746374676167676167636161636367
446
+ 7461617463616374616163637463637467746361676361617474636361746163617463
447
+ 6767676163746761616374616774616761617467616174637467616767676767677474
448
+ 6374636167746167616361616167636361636363746161636163676174746374747467
449
+ 6763747463636163747463617474637474636361747463617474617463746361676363
450
+ 7474616763616767616774616361636374637474617474636374746361746761616163
451
+ 6167676174637461616361616363636374636167676161747461636174636367617474
452
+ 6361676163616161617463636361747463636163636361746163746174616361617463
453
+ 6161616761636174636374616767746374746374616774616374616774747474616163
454
+ 6163746361746163746163746367746363746174747474636163636167616363746763
455
+ 7461676761676163636361676163616163746163617463636361676363616163636374
456
+ 7474616161746163636363746363636361746174746161616363746761617467617461
457
+ 6374746363746174746367636174616367636161747463746363676174636361746363
458
+ 6374616163616161637461676767676761677463637461676363637461677461637463
459
+ 7463636174636374616774616374616763616174636174746363616174636374636361
460
+ 6361636374636361616163616163676167676161746161746774747463676163636163
461
+ 7461616763636161746774637461747463746761637463637461677461676367676174
462
+ 6374636374616163636374616163617467616174636767746767636361616363746774
463
+ 6167616163617463636774746361746361636361746367676763616163746167636374
464
+ 6363617463637461746174747463746361616363637463637461617463637461617461
465
+ 6363636174637463616767636174746174746761616161636367746374616374636161
466
+ 6174676161676167746374747467746167746174617461616161746163747474676774
467
+ 6374746774616161636361616161616167676167616163617461746763636374636363
468
+ 7461616761637474636161676761616761616763616163616763636363616374617463
469
+ 6167636163636361616167637467616161747463747474637474616161637461747463
470
+ 6374746767636161746163636167616161676361616363636361746161637474746361
471
+ 7461617474636174617461747467636174617461636363617461637467746763747467
472
+ 6763636167746174677463637474617474746363636163616161616161616363616167
473
+ 7461616161616363636363616161636163636163616163636361616161636163616361
474
+ 6174677461616161746361637463746174746161636361636361616374636163636363
475
+ 6167676767677461747461746163616363636174617461636174616167616361746163
476
+ 7461746774616361746367746763617474616174746763746167746363636361746761
477
+ 6174617474616167636174677461636167676167747474617461746174617474616361
478
+ 7461616761636174616374617467746174617463677467636174746161747467637461
479
+ 6774636363636174676161746174746161676361746774616361677461677474746174
480
+ 6174617461747461636174616167616361746163746174677461746174636774676361
481
+ 7474616174746763746167746363636361746761617461747461616763617467746163
482
+ 6167746167747474617461746174617474616361746161676163617461617461677467
483
+ 6374746161746367746763617474636163637474616174746374616767616361677463
484
+ 7474637461746767616363746361616374617474636361616167616763747461617463
485
+ 6163637467676363746367616761616163636167636161746363747467637463676161
486
+ 6367746774616363746374746374636763746363676767636363617474746361616367
487
+ 7467676767677474746374617461616367676161637461746163637467676361746374
488
+ 6767747463747461637474636167676763636174616161617463637474676161616363
489
+ 6161746363747463616774746374637463616161746767676163617463746367617420
490
+ 202020202020202020202020202020202020202020202020202020202020
491
+ EOF
492
+
493
+ str = ''
494
+ unpackedStr.gsub(/[0-9a-f]+/i) { |h|
495
+ str << [h].pack('H*')
496
+ }
497
+
498
+ cstr = BZ2.compress(str)
499
+ if str.size > 0 && cstr.size == 0
500
+ puts "Program error"
501
+ puts "Original string size is #{str.size}"
502
+ puts "Compressed string size is #{cstr.size}"
503
+ exit 1
504
+ end
505
+
506
+ dcstr = BZ2.decompress(cstr)
507
+
508
+ if dcstr != str
509
+ puts "Program error"
510
+ puts "Original and compressed-decompressed strings don't match"
511
+ exit 2
512
+ end
513
+
514
+ puts "Everything worked fine."
515
+ exit 0
516
+