tabula-extractor 0.7.2-java → 0.7.4-java

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 (72) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +1 -0
  3. data/README.md +4 -8
  4. data/bin/tabula +3 -3
  5. data/lib/tabula.rb +9 -5
  6. data/lib/tabula/entities.rb +1 -0
  7. data/lib/tabula/entities/cell.rb +6 -4
  8. data/lib/tabula/entities/has_cells.rb +22 -78
  9. data/lib/tabula/entities/line.rb +52 -6
  10. data/lib/tabula/entities/page.rb +43 -50
  11. data/lib/tabula/entities/ruling.rb +83 -105
  12. data/lib/tabula/entities/spreadsheet.rb +74 -11
  13. data/lib/tabula/entities/table.rb +55 -37
  14. data/lib/tabula/entities/tabular.rb +42 -0
  15. data/lib/tabula/entities/text_chunk.rb +55 -52
  16. data/lib/tabula/entities/text_element.rb +129 -62
  17. data/lib/tabula/entities/zone_entity.rb +15 -6
  18. data/lib/tabula/extraction.rb +114 -49
  19. data/lib/tabula/line_segment_detector.rb +0 -5
  20. data/lib/tabula/table_extractor.rb +32 -37
  21. data/lib/tabula/version.rb +1 -1
  22. data/tabula-extractor.gemspec +2 -5
  23. metadata +13 -95
  24. data/ext/COPYING +0 -661
  25. data/ext/Makefile.OSX +0 -18
  26. data/ext/Makefile.defaults +0 -9
  27. data/ext/Makefile.linux32 +0 -11
  28. data/ext/Makefile.linux64 +0 -12
  29. data/ext/Makefile.mingw +0 -10
  30. data/ext/Makefile.mingw64 +0 -10
  31. data/ext/liblsd-linux32.so +0 -0
  32. data/ext/liblsd-linux64.so +0 -0
  33. data/ext/liblsd.def +0 -3
  34. data/ext/liblsd.dll +0 -0
  35. data/ext/liblsd.dylib +0 -0
  36. data/ext/liblsd64.dll +0 -0
  37. data/ext/lsd.c +0 -2270
  38. data/ext/lsd.h +0 -283
  39. data/test/data/47008204D_USA.page4.pdf +0 -0
  40. data/test/data/560015757GV_China.page1.pdf +0 -0
  41. data/test/data/ClinicalResearchDisclosureReport2012Q2.pdf +0 -0
  42. data/test/data/GSK_2012_Q4.page437.pdf +0 -0
  43. data/test/data/S2MNCEbirdisland.pdf +0 -0
  44. data/test/data/argentina_diputados_voting_record.pdf +0 -0
  45. data/test/data/bo_page24.pdf +0 -0
  46. data/test/data/campaign_donors.pdf +0 -0
  47. data/test/data/frx_2012_disclosure.pdf +0 -0
  48. data/test/data/frx_2012_disclosure.tsv +0 -88
  49. data/test/data/gre.pdf +0 -0
  50. data/test/data/no_tables.pdf +0 -0
  51. data/test/data/nyc_2013fiscalreporttables.pdf +0 -0
  52. data/test/data/puertos1.pdf +0 -0
  53. data/test/data/spanning_cells.csv +0 -21
  54. data/test/data/spanning_cells.pdf +0 -0
  55. data/test/data/strongschools.pdf +0 -0
  56. data/test/data/sydney_disclosure_contract.pdf +0 -0
  57. data/test/data/tabla_subsidios.pdf +0 -0
  58. data/test/data/vertical_rulings_bug.pdf +0 -0
  59. data/test/data/vietnam3.pdf +0 -0
  60. data/test/data/wc2012.pdf +0 -0
  61. data/test/heuristic-test-set/original/560015757GV_China.page1.pdf +0 -0
  62. data/test/heuristic-test-set/original/S2MNCEbirdisland.pdf +0 -0
  63. data/test/heuristic-test-set/original/bo_page24.pdf +0 -0
  64. data/test/heuristic-test-set/original/campaign_donors.pdf +0 -0
  65. data/test/heuristic-test-set/original/cs076pct.pdf +0 -0
  66. data/test/heuristic-test-set/spreadsheet/47008204D_USA.page4.pdf +0 -0
  67. data/test/heuristic-test-set/spreadsheet/GSK_2012_Q4.page437.pdf +0 -0
  68. data/test/heuristic-test-set/spreadsheet/strongschools.pdf +0 -0
  69. data/test/heuristic-test-set/spreadsheet/tabla_subsidios.pdf +0 -0
  70. data/test/heuristic.rb +0 -50
  71. data/test/test_bin_tabula.sh +0 -7
  72. data/test/tests.rb +0 -603
data/ext/lsd.h DELETED
@@ -1,283 +0,0 @@
1
- /*----------------------------------------------------------------------------
2
-
3
- LSD - Line Segment Detector on digital images
4
-
5
- This code is part of the following publication and was subject
6
- to peer review:
7
-
8
- "LSD: a Line Segment Detector" by Rafael Grompone von Gioi,
9
- Jeremie Jakubowicz, Jean-Michel Morel, and Gregory Randall,
10
- Image Processing On Line, 2012. DOI:10.5201/ipol.2012.gjmr-lsd
11
- http://dx.doi.org/10.5201/ipol.2012.gjmr-lsd
12
-
13
- Copyright (c) 2007-2011 rafael grompone von gioi <grompone@gmail.com>
14
-
15
- This program is free software: you can redistribute it and/or modify
16
- it under the terms of the GNU Affero General Public License as
17
- published by the Free Software Foundation, either version 3 of the
18
- License, or (at your option) any later version.
19
-
20
- This program is distributed in the hope that it will be useful,
21
- but WITHOUT ANY WARRANTY; without even the implied warranty of
22
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
23
- GNU Affero General Public License for more details.
24
-
25
- You should have received a copy of the GNU Affero General Public License
26
- along with this program. If not, see <http://www.gnu.org/licenses/>.
27
-
28
- ----------------------------------------------------------------------------*/
29
-
30
- /*----------------------------------------------------------------------------*/
31
- /** @file lsd.h
32
- LSD module header
33
- @author rafael grompone von gioi <grompone@gmail.com>
34
- */
35
- /*----------------------------------------------------------------------------*/
36
- #ifndef LSD_HEADER
37
- #define LSD_HEADER
38
-
39
- /*----------------------------------------------------------------------------*/
40
- /** LSD Full Interface
41
-
42
- @param n_out Pointer to an int where LSD will store the number of
43
- line segments detected.
44
-
45
- @param img Pointer to input image data. It must be an array of
46
- doubles of size X x Y, and the pixel at coordinates
47
- (x,y) is obtained by img[x+y*X].
48
-
49
- @param X X size of the image: the number of columns.
50
-
51
- @param Y Y size of the image: the number of rows.
52
-
53
- @param scale When different from 1.0, LSD will scale the input image
54
- by 'scale' factor by Gaussian filtering, before detecting
55
- line segments.
56
- Example: if scale=0.8, the input image will be subsampled
57
- to 80% of its size, before the line segment detector
58
- is applied.
59
- Suggested value: 0.8
60
-
61
- @param sigma_scale When scale!=1.0, the sigma of the Gaussian filter is:
62
- sigma = sigma_scale / scale, if scale < 1.0
63
- sigma = sigma_scale, if scale >= 1.0
64
- Suggested value: 0.6
65
-
66
- @param quant Bound to the quantization error on the gradient norm.
67
- Example: if gray levels are quantized to integer steps,
68
- the gradient (computed by finite differences) error
69
- due to quantization will be bounded by 2.0, as the
70
- worst case is when the error are 1 and -1, that
71
- gives an error of 2.0.
72
- Suggested value: 2.0
73
-
74
- @param ang_th Gradient angle tolerance in the region growing
75
- algorithm, in degrees.
76
- Suggested value: 22.5
77
-
78
- @param log_eps Detection threshold, accept if -log10(NFA) > log_eps.
79
- The larger the value, the more strict the detector is,
80
- and will result in less detections.
81
- (Note that the 'minus sign' makes that this
82
- behavior is opposite to the one of NFA.)
83
- The value -log10(NFA) is equivalent but more
84
- intuitive than NFA:
85
- - -1.0 gives an average of 10 false detections on noise
86
- - 0.0 gives an average of 1 false detections on noise
87
- - 1.0 gives an average of 0.1 false detections on nose
88
- - 2.0 gives an average of 0.01 false detections on noise
89
- .
90
- Suggested value: 0.0
91
-
92
- @param density_th Minimal proportion of 'supporting' points in a rectangle.
93
- Suggested value: 0.7
94
-
95
- @param n_bins Number of bins used in the pseudo-ordering of gradient
96
- modulus.
97
- Suggested value: 1024
98
-
99
- @param reg_img Optional output: if desired, LSD will return an
100
- int image where each pixel indicates the line segment
101
- to which it belongs. Unused pixels have the value '0',
102
- while the used ones have the number of the line segment,
103
- numbered 1,2,3,..., in the same order as in the
104
- output list. If desired, a non NULL int** pointer must
105
- be assigned, and LSD will make that the pointer point
106
- to an int array of size reg_x x reg_y, where the pixel
107
- value at (x,y) is obtained with (*reg_img)[x+y*reg_x].
108
- Note that the resulting image has the size of the image
109
- used for the processing, that is, the size of the input
110
- image scaled by the given factor 'scale'. If scale!=1
111
- this size differs from XxY and that is the reason why
112
- its value is given by reg_x and reg_y.
113
- Suggested value: NULL
114
-
115
- @param reg_x Pointer to an int where LSD will put the X size
116
- 'reg_img' image, when asked for.
117
- Suggested value: NULL
118
-
119
- @param reg_y Pointer to an int where LSD will put the Y size
120
- 'reg_img' image, when asked for.
121
- Suggested value: NULL
122
-
123
- @return A double array of size 7 x n_out, containing the list
124
- of line segments detected. The array contains first
125
- 7 values of line segment number 1, then the 7 values
126
- of line segment number 2, and so on, and it finish
127
- by the 7 values of line segment number n_out.
128
- The seven values are:
129
- - x1,y1,x2,y2,width,p,-log10(NFA)
130
- .
131
- for a line segment from coordinates (x1,y1) to (x2,y2),
132
- a width 'width', an angle precision of p in (0,1) given
133
- by angle_tolerance/180 degree, and NFA value 'NFA'.
134
- If 'out' is the returned pointer, the 7 values of
135
- line segment number 'n+1' are obtained with
136
- 'out[7*n+0]' to 'out[7*n+6]'.
137
- */
138
- float * LineSegmentDetection( int * n_out,
139
- float * img, int X, int Y,
140
- float scale, float sigma_scale, float quant,
141
- float ang_th, float log_eps, float density_th,
142
- int n_bins,
143
- int ** reg_img, int * reg_x, int * reg_y );
144
-
145
- /*----------------------------------------------------------------------------*/
146
- /** LSD Simple Interface with Scale and Region output.
147
-
148
- @param n_out Pointer to an int where LSD will store the number of
149
- line segments detected.
150
-
151
- @param img Pointer to input image data. It must be an array of
152
- doubles of size X x Y, and the pixel at coordinates
153
- (x,y) is obtained by img[x+y*X].
154
-
155
- @param X X size of the image: the number of columns.
156
-
157
- @param Y Y size of the image: the number of rows.
158
-
159
- @param scale When different from 1.0, LSD will scale the input image
160
- by 'scale' factor by Gaussian filtering, before detecting
161
- line segments.
162
- Example: if scale=0.8, the input image will be subsampled
163
- to 80% of its size, before the line segment detector
164
- is applied.
165
- Suggested value: 0.8
166
-
167
- @param reg_img Optional output: if desired, LSD will return an
168
- int image where each pixel indicates the line segment
169
- to which it belongs. Unused pixels have the value '0',
170
- while the used ones have the number of the line segment,
171
- numbered 1,2,3,..., in the same order as in the
172
- output list. If desired, a non NULL int** pointer must
173
- be assigned, and LSD will make that the pointer point
174
- to an int array of size reg_x x reg_y, where the pixel
175
- value at (x,y) is obtained with (*reg_img)[x+y*reg_x].
176
- Note that the resulting image has the size of the image
177
- used for the processing, that is, the size of the input
178
- image scaled by the given factor 'scale'. If scale!=1
179
- this size differs from XxY and that is the reason why
180
- its value is given by reg_x and reg_y.
181
- Suggested value: NULL
182
-
183
- @param reg_x Pointer to an int where LSD will put the X size
184
- 'reg_img' image, when asked for.
185
- Suggested value: NULL
186
-
187
- @param reg_y Pointer to an int where LSD will put the Y size
188
- 'reg_img' image, when asked for.
189
- Suggested value: NULL
190
-
191
- @return A double array of size 7 x n_out, containing the list
192
- of line segments detected. The array contains first
193
- 7 values of line segment number 1, then the 7 values
194
- of line segment number 2, and so on, and it finish
195
- by the 7 values of line segment number n_out.
196
- The seven values are:
197
- - x1,y1,x2,y2,width,p,-log10(NFA)
198
- .
199
- for a line segment from coordinates (x1,y1) to (x2,y2),
200
- a width 'width', an angle precision of p in (0,1) given
201
- by angle_tolerance/180 degree, and NFA value 'NFA'.
202
- If 'out' is the returned pointer, the 7 values of
203
- line segment number 'n+1' are obtained with
204
- 'out[7*n+0]' to 'out[7*n+6]'.
205
- */
206
- float * lsd_scale_region( int * n_out,
207
- float * img, int X, int Y, float scale,
208
- int ** reg_img, int * reg_x, int * reg_y );
209
-
210
- /*----------------------------------------------------------------------------*/
211
- /** LSD Simple Interface with Scale
212
-
213
- @param n_out Pointer to an int where LSD will store the number of
214
- line segments detected.
215
-
216
- @param img Pointer to input image data. It must be an array of
217
- doubles of size X x Y, and the pixel at coordinates
218
- (x,y) is obtained by img[x+y*X].
219
-
220
- @param X X size of the image: the number of columns.
221
-
222
- @param Y Y size of the image: the number of rows.
223
-
224
- @param scale When different from 1.0, LSD will scale the input image
225
- by 'scale' factor by Gaussian filtering, before detecting
226
- line segments.
227
- Example: if scale=0.8, the input image will be subsampled
228
- to 80% of its size, before the line segment detector
229
- is applied.
230
- Suggested value: 0.8
231
-
232
- @return A double array of size 7 x n_out, containing the list
233
- of line segments detected. The array contains first
234
- 7 values of line segment number 1, then the 7 values
235
- of line segment number 2, and so on, and it finish
236
- by the 7 values of line segment number n_out.
237
- The seven values are:
238
- - x1,y1,x2,y2,width,p,-log10(NFA)
239
- .
240
- for a line segment from coordinates (x1,y1) to (x2,y2),
241
- a width 'width', an angle precision of p in (0,1) given
242
- by angle_tolerance/180 degree, and NFA value 'NFA'.
243
- If 'out' is the returned pointer, the 7 values of
244
- line segment number 'n+1' are obtained with
245
- 'out[7*n+0]' to 'out[7*n+6]'.
246
- */
247
- float * lsd_scale(int * n_out, float * img, int X, int Y, float scale);
248
-
249
- /*----------------------------------------------------------------------------*/
250
- /** LSD Simple Interface
251
-
252
- @param n_out Pointer to an int where LSD will store the number of
253
- line segments detected.
254
-
255
- @param img Pointer to input image data. It must be an array of
256
- doubles of size X x Y, and the pixel at coordinates
257
- (x,y) is obtained by img[x+y*X].
258
-
259
- @param X X size of the image: the number of columns.
260
-
261
- @param Y Y size of the image: the number of rows.
262
-
263
- @return A double array of size 7 x n_out, containing the list
264
- of line segments detected. The array contains first
265
- 7 values of line segment number 1, then the 7 values
266
- of line segment number 2, and so on, and it finish
267
- by the 7 values of line segment number n_out.
268
- The seven values are:
269
- - x1,y1,x2,y2,width,p,-log10(NFA)
270
- .
271
- for a line segment from coordinates (x1,y1) to (x2,y2),
272
- a width 'width', an angle precision of p in (0,1) given
273
- by angle_tolerance/180 degree, and NFA value 'NFA'.
274
- If 'out' is the returned pointer, the 7 values of
275
- line segment number 'n+1' are obtained with
276
- 'out[7*n+0]' to 'out[7*n+6]'.
277
- */
278
- float * lsd(int * n_out, float * img, int X, int Y);
279
-
280
- void free_values(float * p);
281
-
282
- #endif /* !LSD_HEADER */
283
- /*----------------------------------------------------------------------------*/
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
@@ -1,88 +0,0 @@
1
- FOREST LABORATORIES, INC. DISCLOSURE REPORT "" "" "" ""
2
- Calendar Year - 2012 "" "" "" ""
3
- Physician Related Entity (if applicable) City / State Purpose of Payment Amount ($USD) * **
4
- AALAEI, BEHZAD "" HIGHLAND, IN MEALS $51.24
5
- TOTAL "" "" "" $51.24
6
- AAMODT, DENISE, E "" ALBUQUERQUE, NM MEALS $66.12
7
- TOTAL "" "" "" $66.12
8
- AANONSEN, DEBORAH, A "" STATEN ISLAND, NY MEALS $85.00
9
- TOTAL "" "" "" $85.00
10
- AARON, CAREN, T "" RICHMOND, VA EDUCATIONAL ITEMS $78.80
11
- AARON, CAREN, T "" RICHMOND, VA MEALS $392.45
12
- TOTAL "" "" "" $471.25
13
- AARON, JOHN "" CLARKSVILLE, TN MEALS $20.39
14
- TOTAL "" "" "" $20.39
15
- AARON, JOSHUA, N "" WEST GROVE, PA MEALS $310.33
16
- AARON, JOSHUA, N REGIONAL PULMONARY & SLEEP MEDICINE WEST GROVE, PA SPEAKING FEES $4,700.00
17
- TOTAL "" "" "" $5,010.33
18
- AARON, MAUREEN, M "" MARTINSVILLE, VA MEALS $193.67
19
- TOTAL "" "" "" $193.67
20
- AARON, MICHAEL, L "" WEST ISLIP, NY MEALS $19.50
21
- TOTAL "" "" "" $19.50
22
- AARON, MICHAEL, R "" BROOKLYN, NY MEALS $65.92
23
- TOTAL "" "" "" $65.92
24
- AARONS, MARK, G "" PINEHURST, NC MEALS $154.19
25
- TOTAL "" "" "" $154.19
26
- AARONSON, GARY, A "" PHILADELPHIA, PA MEALS $205.17
27
- TOTAL "" "" "" $205.17
28
- AARONSON, ROBERT, M "" TUCSON, AZ MEALS $24.38
29
- TOTAL "" "" "" $24.38
30
- AASHEIM, RICHARD, J "" GREENEVILLE, TN EDUCATIONAL ITEMS $2.27
31
- AASHEIM, RICHARD, J "" GREENEVILLE, TN MEALS $100.76
32
- TOTAL "" "" "" $103.03
33
- AASMAA, SIRIKE, T "" MONTVILLE, NJ MEALS $53.33
34
- TOTAL "" "" "" $53.33
35
- AAZAMI, HESSAM "" GRANADA HILLS, CA MEALS $402.90
36
- TOTAL "" "" "" $402.90
37
- ABAABA, ABIEDU, C "" JACKSONVILLE, FL MEALS $13.49
38
- TOTAL "" "" "" $13.49
39
- ABABNEH, ALAELDIN, A "" KANSAS CITY, KS MEALS $10.31
40
- TOTAL "" "" "" $10.31
41
- ABAD, ANTONIO, A "" CORAL SPRINGS, FL MEALS $516.29
42
- TOTAL "" "" "" $516.29
43
- ABADEER, PETER, S "" NORMAL, IL MEALS $200.38
44
- TOTAL "" "" "" $200.38
45
- ABAD, ENZO, L "" MIAMI, FL MEALS $67.61
46
- TOTAL "" "" "" $67.61
47
- ABADIAN SHARIFABAD, MANOOCHEHR "" GRANADA HILLS, CA MEALS $12.37
48
- TOTAL "" "" "" $12.37
49
- ABADI, CHRISTOPHER, A "" WARWICK, RI MEALS $157.42
50
- TOTAL "" "" "" $157.42
51
- ABADIE, MARCUS, G "" ATHENS, TX MEALS $361.89
52
- TOTAL "" "" "" $361.89
53
- ABADI, JAMSHEED, S "" BROOKLYN, NY MEALS $363.40
54
- TOTAL "" "" "" $363.40
55
- ABADILLA, JUNE, E "" JACKSON, KY MEALS $105.33
56
- TOTAL "" "" "" $105.33
57
- ABAD, JOHN, P "" NEWARK, OH MEALS $347.64
58
- TOTAL "" "" "" $347.64
59
- ABAD, JOSE, F "" FOLSOM, CA MEALS $30.28
60
- TOTAL "" "" "" $30.28
61
- ABAD, REMEDIOS, D "" WILNINGTON, DE MEALS $26.85
62
- TOTAL "" "" "" $26.85
63
- ABAD, SO KIM, F "" WICHITA FALLS, TX MEALS $136.52
64
- TOTAL "" "" "" $136.52
65
- ABAD, ZOILO, R "" MIAMI, FL MEALS $93.83
66
- TOTAL "" "" "" $93.83
67
- ABALIHI, CAROL, N "" EL PASO, TX MEALS $88.48
68
- TOTAL "" "" "" $88.48
69
- ABALOS, ANNA, T "" ROSEVILLE, CA MEALS $178.60
70
- TOTAL "" "" "" $178.60
71
- ABALOS, ARTURO, Z "" DELANO, CA MEALS $48.06
72
- TOTAL "" "" "" $48.06
73
- ABALOS, JOSEPH, M "" SENECA, PA MEALS $39.03
74
- TOTAL "" "" "" $39.03
75
- ABANDO, JOSE, R "" DAYTONA BEACH, FL MEALS $83.44
76
- TOTAL "" "" "" $83.44
77
- ABANG, ANTHONY, E "" ELIZABETHTOWN, KY MEALS $12.62
78
- TOTAL "" "" "" $12.62
79
- ABAN, KENRIC, T "" SAN DIEGO, CA MEALS $11.91
80
- TOTAL "" "" "" $11.91
81
- ABAQUETA, ALVIN, Y "" CHARLOTTE, NC MEALS $233.71
82
- TOTAL "" "" "" $233.71
83
- ABARCA, SERGIO, O "" TOOELE, UT MEALS $159.58
84
- TOTAL "" "" "" $159.58
85
- ABARIKWU, CONSTANTIA, A "" PHOENIX, AZ MEALS $153.57
86
- TOTAL "" "" "" $153.57
87
- ABASHIDZE, TEAH, A "" CLEVELAND, OH MEALS $153.59
88
- TOTAL "" "" "" $153.59
data/test/data/gre.pdf DELETED
Binary file
Binary file
Binary file
@@ -1,21 +0,0 @@
1
- Improved operation scenario,"","","","",""
2
- Volume servers in:,2007,2008,2009,2010,2011
3
- Server closets,"1,505","1,580","1,643","1,673","1,689"
4
- Server rooms,"1,512","1,586","1,646","1,677","1,693"
5
- Localized data centers,"1,512","1,586","1,646","1,677","1,693"
6
- Mid-tier data centers,"1,512","1,586","1,646","1,677","1,693"
7
- Enterprise-class data centers,"1,512","1,586","1,646","1,677","1,693"
8
- Best practice scenario,"","","","",""
9
- Volume servers in:,2007,2008,2009,2010,2011
10
- Server closets,"1,456","1,439","1,386","1,296","1,326"
11
- Server rooms,"1,465","1,472","1,427","1,334","1,371"
12
- Localized data centers,"1,465","1,471","1,426","1,334","1,371"
13
- Mid-tier data centers,"1,465","1,471","1,426","1,334","1,371"
14
- Enterprise-class data centers,"1,465","1,471","1,426","1,334","1,371"
15
- State-of-the-art scenario,"","","","",""
16
- Volume servers in:,2007,2008,2009,2010,2011
17
- Server closets,"1,485","1,471","1,424","1,315","1,349"
18
- Server rooms,"1,495","1,573","1,586","1,424","1,485"
19
- Localized data centers,"1,495","1,572","1,585","1,424","1,485"
20
- Mid-tier data centers,"1,495","1,572","1,585","1,424","1,485"
21
- Enterprise-class data centers,"1,495","1,572","1,585","1,424","1,485"
Binary file
Binary file
Binary file
Binary file
Binary file
data/test/data/wc2012.pdf DELETED
Binary file