complearn 0.6.2
Sign up to get free protection for your applications and to get access to all the features.
- data/AUTHORS +13 -0
- data/COPYING +340 -0
- data/ChangeLog +0 -0
- data/INSTALL +231 -0
- data/Makefile +352 -0
- data/Makefile.am +76 -0
- data/Makefile.in +352 -0
- data/NEWS +7 -0
- data/README +0 -0
- data/aclocal.m4 +104 -0
- data/bin/Makefile +209 -0
- data/bin/Makefile.am +8 -0
- data/bin/Makefile.in +209 -0
- data/bin/labeltree +68 -0
- data/bin/labeltree.in +68 -0
- data/bin/makesvm +70 -0
- data/bin/makesvm.in +70 -0
- data/bin/maketree +98 -0
- data/bin/maketree.in +98 -0
- data/bin/ncd +43 -0
- data/bin/ncd.in +43 -0
- data/bin/ncdmatrix +54 -0
- data/bin/ncdmatrix.in +54 -0
- data/bin/ncdvector +50 -0
- data/bin/ncdvector.in +50 -0
- data/complearn-0.6.2.gem +0 -0
- data/complearn.gemspec +57 -0
- data/config.log +597 -0
- data/config.status +1082 -0
- data/configure +4922 -0
- data/configure.ac +91 -0
- data/confstat5FpLBf/config.h +65 -0
- data/confstat5FpLBf/subs-1.sed +50 -0
- data/confstat5FpLBf/subs-2.sed +13 -0
- data/confstat5FpLBf/subs.frag +0 -0
- data/confstat5FpLBf/subs.sed +59 -0
- data/confstat5FpLBf/undefs.sed +24 -0
- data/doc/FAQ.txt +67 -0
- data/doc/Makefile +286 -0
- data/doc/Makefile.am +11 -0
- data/doc/Makefile.in +286 -0
- data/doc/devguide.txt +15 -0
- data/doc/example.complearnrc +14 -0
- data/doc/examples.txt +35 -0
- data/doc/man/Makefile +255 -0
- data/doc/man/Makefile.am +11 -0
- data/doc/man/Makefile.in +255 -0
- data/doc/man/complearn.5 +91 -0
- data/doc/man/labeltree.1 +35 -0
- data/doc/man/makesvm.1 +60 -0
- data/doc/man/maketree.1 +58 -0
- data/doc/man/ncd.1 +51 -0
- data/doc/man/ncdmatrix.1 +40 -0
- data/doc/man/ncdvector.1 +42 -0
- data/doc/readme.txt +101 -0
- data/doc/userguide.txt +46 -0
- data/examples/genes/blueWhale.txt +1 -0
- data/examples/genes/cat.txt +1 -0
- data/examples/genes/chimpanzee.txt +1 -0
- data/examples/genes/finWhale.txt +1 -0
- data/examples/genes/graySeal.txt +1 -0
- data/examples/genes/harborSeal.txt +1 -0
- data/examples/genes/horse.txt +1 -0
- data/examples/genes/human.txt +1 -0
- data/examples/genes/mouse.txt +1 -0
- data/examples/genes/rat.txt +1 -0
- data/ext/Makefile +167 -0
- data/ext/Quartet.c +399 -0
- data/ext/Quartet.h +62 -0
- data/ext/TreeScore.c +244 -0
- data/ext/TreeScore.h +3 -0
- data/ext/config.h +65 -0
- data/ext/config.h.in +64 -0
- data/ext/extconf.rb +3 -0
- data/ext/lib/CompLearnLib/CLConfig.rb +241 -0
- data/ext/lib/CompLearnLib/CompressionObject.rb +59 -0
- data/ext/lib/CompLearnLib/CompressionTask.rb +99 -0
- data/ext/lib/CompLearnLib/DistMatrix.rb +18 -0
- data/ext/lib/CompLearnLib/FoundComp.rb +10 -0
- data/ext/lib/CompLearnLib/FoundComp.rb.in +10 -0
- data/ext/lib/CompLearnLib/Ncd.rb +248 -0
- data/ext/lib/CompLearnLib/RunEnv.rb +150 -0
- data/ext/lib/CompLearnLib/Task.rb +39 -0
- data/ext/lib/CompLearnLib/TaskMaster.rb +13 -0
- data/ext/lib/CompLearnLib/TaskMasterMPI.rb +112 -0
- data/ext/lib/CompLearnLib/TaskMasterSingle.rb +39 -0
- data/ext/lib/CompLearnLib/Tree.rb +300 -0
- data/install-sh +294 -0
- data/missing +336 -0
- data/mkinstalldirs +111 -0
- data/o +24 -0
- data/scripts/CompLearn.iss +89 -0
- data/scripts/CompLearn.iss.in +89 -0
- data/scripts/debian/changelog +6 -0
- data/scripts/debian/control +14 -0
- data/scripts/makeSetup.sh +23 -0
- data/scripts/makeSetup.sh.in +23 -0
- data/scripts/makedeb.zsh +46 -0
- data/scripts/makedeb.zsh.in +46 -0
- data/tests/alltests.rb +2 -0
- data/tests/bz2test.rb +516 -0
- data/tests/sshagent-test.rb +48 -0
- data/tests/tests.rb +275 -0
- metadata +164 -0
data/tests/alltests.rb
ADDED
data/tests/bz2test.rb
ADDED
@@ -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
|
+
|