csv-detective 0.10.3.dev7__py3-none-any.whl → 0.10.2549__py3-none-any.whl
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.
- csv_detective/detection/__init__.py +0 -0
- csv_detective/detection/columns.py +0 -0
- csv_detective/detection/encoding.py +0 -0
- csv_detective/detection/engine.py +0 -0
- csv_detective/detection/formats.py +38 -11
- csv_detective/detection/headers.py +14 -12
- csv_detective/detection/rows.py +1 -1
- csv_detective/detection/separator.py +0 -0
- csv_detective/detection/variables.py +0 -0
- csv_detective/explore_csv.py +6 -18
- csv_detective/format.py +5 -12
- csv_detective/formats/__init__.py +0 -0
- csv_detective/formats/adresse.py +9 -9
- csv_detective/formats/binary.py +1 -2
- csv_detective/formats/booleen.py +2 -3
- csv_detective/formats/code_commune_insee.py +10 -12
- csv_detective/formats/code_csp_insee.py +1 -1
- csv_detective/formats/code_departement.py +7 -8
- csv_detective/formats/code_fantoir.py +5 -6
- csv_detective/formats/code_import.py +1 -1
- csv_detective/formats/code_postal.py +9 -10
- csv_detective/formats/code_region.py +6 -7
- csv_detective/formats/code_rna.py +6 -7
- csv_detective/formats/code_waldec.py +1 -1
- csv_detective/formats/commune.py +5 -5
- csv_detective/formats/csp_insee.py +5 -6
- csv_detective/formats/data/insee_ape700.txt +1 -1
- csv_detective/formats/data/iso_country_code_alpha2.txt +397 -153
- csv_detective/formats/data/iso_country_code_alpha3.txt +132 -132
- csv_detective/formats/data/iso_country_code_numeric.txt +94 -94
- csv_detective/formats/date.py +18 -28
- csv_detective/formats/date_fr.py +1 -1
- csv_detective/formats/datetime_aware.py +2 -7
- csv_detective/formats/datetime_naive.py +0 -3
- csv_detective/formats/datetime_rfc822.py +0 -1
- csv_detective/formats/departement.py +15 -15
- csv_detective/formats/email.py +13 -13
- csv_detective/formats/float.py +1 -2
- csv_detective/formats/geojson.py +10 -10
- csv_detective/formats/insee_ape700.py +8 -10
- csv_detective/formats/insee_canton.py +6 -6
- csv_detective/formats/int.py +1 -2
- csv_detective/formats/iso_country_code_alpha2.py +14 -14
- csv_detective/formats/iso_country_code_alpha3.py +13 -6
- csv_detective/formats/iso_country_code_numeric.py +9 -2
- csv_detective/formats/jour_de_la_semaine.py +12 -11
- csv_detective/formats/json.py +0 -6
- csv_detective/formats/latitude_l93.py +22 -8
- csv_detective/formats/latitude_wgs.py +29 -31
- csv_detective/formats/latitude_wgs_fr_metropole.py +30 -7
- csv_detective/formats/latlon_wgs.py +28 -30
- csv_detective/formats/longitude_l93.py +13 -8
- csv_detective/formats/longitude_wgs.py +19 -34
- csv_detective/formats/longitude_wgs_fr_metropole.py +19 -6
- csv_detective/formats/lonlat_wgs.py +11 -12
- csv_detective/formats/mois_de_lannee.py +1 -1
- csv_detective/formats/money.py +1 -1
- csv_detective/formats/mongo_object_id.py +1 -1
- csv_detective/formats/pays.py +13 -11
- csv_detective/formats/percent.py +1 -1
- csv_detective/formats/region.py +13 -13
- csv_detective/formats/sexe.py +1 -1
- csv_detective/formats/siren.py +10 -9
- csv_detective/formats/siret.py +9 -9
- csv_detective/formats/tel_fr.py +13 -7
- csv_detective/formats/uai.py +18 -17
- csv_detective/formats/url.py +16 -16
- csv_detective/formats/username.py +1 -1
- csv_detective/formats/uuid.py +1 -1
- csv_detective/formats/year.py +12 -7
- csv_detective/output/__init__.py +0 -0
- csv_detective/output/dataframe.py +3 -8
- csv_detective/output/example.py +0 -0
- csv_detective/output/profile.py +2 -6
- csv_detective/output/schema.py +0 -0
- csv_detective/output/utils.py +0 -0
- csv_detective/parsing/__init__.py +0 -0
- csv_detective/parsing/columns.py +1 -1
- csv_detective/parsing/compression.py +0 -0
- csv_detective/parsing/csv.py +0 -0
- csv_detective/parsing/excel.py +1 -1
- csv_detective/parsing/load.py +12 -11
- csv_detective/parsing/text.py +12 -13
- csv_detective/validate.py +36 -71
- {csv_detective-0.10.3.dev7.dist-info → csv_detective-0.10.2549.dist-info}/METADATA +18 -15
- csv_detective-0.10.2549.dist-info/RECORD +92 -0
- csv_detective-0.10.2549.dist-info/WHEEL +4 -0
- {csv_detective-0.10.3.dev7.dist-info → csv_detective-0.10.2549.dist-info}/entry_points.txt +1 -0
- csv_detective-0.10.3.dev7.dist-info/RECORD +0 -111
- csv_detective-0.10.3.dev7.dist-info/WHEEL +0 -5
- csv_detective-0.10.3.dev7.dist-info/licenses/LICENSE +0 -21
- csv_detective-0.10.3.dev7.dist-info/top_level.txt +0 -3
- tests/__init__.py +0 -0
- tests/data/a_test_file.csv +0 -407
- tests/data/a_test_file.json +0 -394
- tests/data/b_test_file.csv +0 -7
- tests/data/c_test_file.csv +0 -2
- tests/data/csv_file +0 -7
- tests/data/file.csv.gz +0 -0
- tests/data/file.ods +0 -0
- tests/data/file.xls +0 -0
- tests/data/file.xlsx +0 -0
- tests/data/xlsx_file +0 -0
- tests/test_example.py +0 -67
- tests/test_fields.py +0 -175
- tests/test_file.py +0 -468
- tests/test_labels.py +0 -26
- tests/test_structure.py +0 -45
- tests/test_validation.py +0 -163
|
@@ -1,251 +1,251 @@
|
|
|
1
|
-
ABW
|
|
2
1
|
AFG
|
|
3
|
-
|
|
4
|
-
AIA
|
|
2
|
+
ZAF
|
|
5
3
|
ALA
|
|
6
4
|
ALB
|
|
5
|
+
DZA
|
|
6
|
+
DEU
|
|
7
7
|
AND
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
ARG
|
|
11
|
-
ARM
|
|
12
|
-
ASM
|
|
8
|
+
AGO
|
|
9
|
+
AIA
|
|
13
10
|
ATA
|
|
14
|
-
ATF
|
|
15
11
|
ATG
|
|
12
|
+
SAU
|
|
13
|
+
ARG
|
|
14
|
+
ARM
|
|
15
|
+
ABW
|
|
16
16
|
AUS
|
|
17
17
|
AUT
|
|
18
18
|
AZE
|
|
19
|
-
BDI
|
|
20
|
-
BEL
|
|
21
|
-
BEN
|
|
22
|
-
BES
|
|
23
|
-
BFA
|
|
24
|
-
BGD
|
|
25
|
-
BGR
|
|
26
|
-
BHR
|
|
27
19
|
BHS
|
|
28
|
-
|
|
29
|
-
|
|
20
|
+
BHR
|
|
21
|
+
BGD
|
|
22
|
+
BRB
|
|
30
23
|
BLR
|
|
24
|
+
BEL
|
|
31
25
|
BLZ
|
|
26
|
+
BEN
|
|
32
27
|
BMU
|
|
28
|
+
BTN
|
|
33
29
|
BOL
|
|
30
|
+
BES
|
|
31
|
+
BIH
|
|
32
|
+
BWA
|
|
33
|
+
BVT
|
|
34
34
|
BRA
|
|
35
|
-
BRB
|
|
36
35
|
BRN
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
36
|
+
BGR
|
|
37
|
+
BFA
|
|
38
|
+
BDI
|
|
39
|
+
CYM
|
|
40
|
+
KHM
|
|
41
|
+
CMR
|
|
41
42
|
CAN
|
|
42
|
-
|
|
43
|
-
|
|
43
|
+
CPV
|
|
44
|
+
CAF
|
|
44
45
|
CHL
|
|
45
46
|
CHN
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
COG
|
|
50
|
-
COK
|
|
47
|
+
CXR
|
|
48
|
+
CYP
|
|
49
|
+
CCK
|
|
51
50
|
COL
|
|
52
51
|
COM
|
|
53
|
-
|
|
52
|
+
COG
|
|
53
|
+
COD
|
|
54
|
+
COK
|
|
55
|
+
KOR
|
|
56
|
+
PRK
|
|
54
57
|
CRI
|
|
58
|
+
CIV
|
|
59
|
+
HRV
|
|
55
60
|
CUB
|
|
56
61
|
CUW
|
|
57
|
-
CXR
|
|
58
|
-
CYM
|
|
59
|
-
CYP
|
|
60
|
-
CZE
|
|
61
|
-
DEU
|
|
62
|
-
DJI
|
|
63
|
-
DMA
|
|
64
62
|
DNK
|
|
63
|
+
DJI
|
|
65
64
|
DOM
|
|
66
|
-
|
|
67
|
-
ECU
|
|
65
|
+
DMA
|
|
68
66
|
EGY
|
|
67
|
+
uri
|
|
68
|
+
ubl
|
|
69
|
+
SLV
|
|
70
|
+
ARE
|
|
71
|
+
ECU
|
|
69
72
|
ERI
|
|
70
|
-
ESH
|
|
71
73
|
ESP
|
|
72
74
|
EST
|
|
75
|
+
USA
|
|
73
76
|
ETH
|
|
74
|
-
FIN
|
|
75
|
-
FJI
|
|
76
77
|
FLK
|
|
77
|
-
FRA
|
|
78
78
|
FRO
|
|
79
|
-
|
|
79
|
+
FJI
|
|
80
|
+
FIN
|
|
81
|
+
FRA
|
|
80
82
|
GAB
|
|
81
|
-
|
|
83
|
+
GMB
|
|
82
84
|
GEO
|
|
83
|
-
|
|
85
|
+
SGS
|
|
84
86
|
GHA
|
|
85
87
|
GIB
|
|
86
|
-
GIN
|
|
87
|
-
GLP
|
|
88
|
-
GMB
|
|
89
|
-
GNB
|
|
90
|
-
GNQ
|
|
91
88
|
GRC
|
|
92
89
|
GRD
|
|
93
90
|
GRL
|
|
94
|
-
|
|
95
|
-
GUF
|
|
91
|
+
GLP
|
|
96
92
|
GUM
|
|
93
|
+
GTM
|
|
94
|
+
GGY
|
|
95
|
+
GIN
|
|
96
|
+
GNB
|
|
97
|
+
GNQ
|
|
97
98
|
GUY
|
|
98
|
-
|
|
99
|
+
GUF
|
|
100
|
+
HTI
|
|
99
101
|
HMD
|
|
100
102
|
HND
|
|
101
|
-
|
|
102
|
-
HTI
|
|
103
|
+
HKG
|
|
103
104
|
HUN
|
|
104
|
-
IDN
|
|
105
105
|
IMN
|
|
106
|
+
UMI
|
|
107
|
+
VGB
|
|
108
|
+
VIR
|
|
106
109
|
IND
|
|
107
|
-
|
|
108
|
-
IRL
|
|
110
|
+
IDN
|
|
109
111
|
IRN
|
|
110
112
|
IRQ
|
|
113
|
+
IRL
|
|
111
114
|
ISL
|
|
112
115
|
ISR
|
|
113
116
|
ITA
|
|
114
117
|
JAM
|
|
118
|
+
JPN
|
|
115
119
|
JEY
|
|
116
120
|
JOR
|
|
117
|
-
JPN
|
|
118
121
|
KAZ
|
|
119
122
|
KEN
|
|
120
123
|
KGZ
|
|
121
|
-
KHM
|
|
122
124
|
KIR
|
|
123
|
-
KNA
|
|
124
|
-
KOR
|
|
125
125
|
KWT
|
|
126
126
|
LAO
|
|
127
|
+
LSO
|
|
128
|
+
LVA
|
|
127
129
|
LBN
|
|
128
130
|
LBR
|
|
129
131
|
LBY
|
|
130
|
-
LCA
|
|
131
132
|
LIE
|
|
132
|
-
LKA
|
|
133
|
-
LSO
|
|
134
133
|
LTU
|
|
135
134
|
LUX
|
|
136
|
-
LVA
|
|
137
135
|
MAC
|
|
138
|
-
|
|
139
|
-
MAR
|
|
140
|
-
MCO
|
|
141
|
-
MDA
|
|
136
|
+
MKD
|
|
142
137
|
MDG
|
|
138
|
+
MYS
|
|
139
|
+
MWI
|
|
143
140
|
MDV
|
|
144
|
-
MEX
|
|
145
|
-
MHL
|
|
146
|
-
MKD
|
|
147
141
|
MLI
|
|
148
142
|
MLT
|
|
149
|
-
MMR
|
|
150
|
-
MNE
|
|
151
|
-
MNG
|
|
152
143
|
MNP
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
MSR
|
|
144
|
+
MAR
|
|
145
|
+
MHL
|
|
156
146
|
MTQ
|
|
157
147
|
MUS
|
|
158
|
-
|
|
159
|
-
MYS
|
|
148
|
+
MRT
|
|
160
149
|
MYT
|
|
150
|
+
MEX
|
|
151
|
+
FSM
|
|
152
|
+
MDA
|
|
153
|
+
MCO
|
|
154
|
+
MNG
|
|
155
|
+
MNE
|
|
156
|
+
MSR
|
|
157
|
+
MOZ
|
|
158
|
+
MMR
|
|
161
159
|
NAM
|
|
162
|
-
|
|
160
|
+
NRU
|
|
161
|
+
NPL
|
|
162
|
+
NIC
|
|
163
163
|
NER
|
|
164
|
-
NFK
|
|
165
164
|
NGA
|
|
166
|
-
NIC
|
|
167
165
|
NIU
|
|
168
|
-
|
|
166
|
+
NFK
|
|
169
167
|
NOR
|
|
170
|
-
|
|
171
|
-
NRU
|
|
168
|
+
NCL
|
|
172
169
|
NZL
|
|
170
|
+
IOT
|
|
173
171
|
OMN
|
|
172
|
+
UGA
|
|
173
|
+
UZB
|
|
174
174
|
PAK
|
|
175
|
+
PLW
|
|
176
|
+
PSE
|
|
175
177
|
PAN
|
|
176
|
-
|
|
178
|
+
PNG
|
|
179
|
+
PRY
|
|
180
|
+
NLD
|
|
177
181
|
PER
|
|
178
182
|
PHL
|
|
179
|
-
|
|
180
|
-
PNG
|
|
183
|
+
PCN
|
|
181
184
|
POL
|
|
185
|
+
PYF
|
|
182
186
|
PRI
|
|
183
|
-
PRK
|
|
184
187
|
PRT
|
|
185
|
-
PRY
|
|
186
|
-
PSE
|
|
187
|
-
PYF
|
|
188
188
|
QAT
|
|
189
189
|
REU
|
|
190
190
|
ROU
|
|
191
|
+
GBR
|
|
191
192
|
RUS
|
|
192
193
|
RWA
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
SGP
|
|
197
|
-
SGS
|
|
198
|
-
SHN
|
|
199
|
-
SJM
|
|
200
|
-
SLB
|
|
201
|
-
SLE
|
|
202
|
-
SLV
|
|
194
|
+
ESH
|
|
195
|
+
BLM
|
|
196
|
+
KNA
|
|
203
197
|
SMR
|
|
204
|
-
|
|
198
|
+
MAF
|
|
199
|
+
SXM
|
|
205
200
|
SPM
|
|
206
|
-
|
|
207
|
-
|
|
201
|
+
VAT
|
|
202
|
+
VCT
|
|
203
|
+
SHN
|
|
204
|
+
LCA
|
|
205
|
+
SLB
|
|
206
|
+
WSM
|
|
207
|
+
ASM
|
|
208
208
|
STP
|
|
209
|
-
|
|
209
|
+
SEN
|
|
210
|
+
SRB
|
|
211
|
+
SYC
|
|
212
|
+
SLE
|
|
213
|
+
SGP
|
|
210
214
|
SVK
|
|
211
215
|
SVN
|
|
216
|
+
SOM
|
|
217
|
+
SDN
|
|
218
|
+
SSD
|
|
219
|
+
LKA
|
|
212
220
|
SWE
|
|
221
|
+
CHE
|
|
222
|
+
SUR
|
|
223
|
+
SJM
|
|
213
224
|
SWZ
|
|
214
|
-
SXM
|
|
215
|
-
SYC
|
|
216
225
|
SYR
|
|
217
|
-
|
|
226
|
+
TJK
|
|
227
|
+
TWN
|
|
228
|
+
TZA
|
|
218
229
|
TCD
|
|
219
|
-
|
|
230
|
+
CZE
|
|
231
|
+
ATF
|
|
220
232
|
THA
|
|
221
|
-
TJK
|
|
222
|
-
TKL
|
|
223
|
-
TKM
|
|
224
233
|
TLS
|
|
234
|
+
TGO
|
|
235
|
+
TKL
|
|
225
236
|
TON
|
|
226
237
|
TTO
|
|
227
238
|
TUN
|
|
239
|
+
TKM
|
|
240
|
+
TCA
|
|
228
241
|
TUR
|
|
229
242
|
TUV
|
|
230
|
-
TWN
|
|
231
|
-
TZA
|
|
232
|
-
UGA
|
|
233
243
|
UKR
|
|
234
|
-
UMI
|
|
235
244
|
URY
|
|
236
|
-
|
|
237
|
-
UZB
|
|
238
|
-
VAT
|
|
239
|
-
VCT
|
|
245
|
+
VUT
|
|
240
246
|
VEN
|
|
241
|
-
VGB
|
|
242
|
-
VIR
|
|
243
247
|
VNM
|
|
244
|
-
VUT
|
|
245
248
|
WLF
|
|
246
|
-
WSM
|
|
247
|
-
XKX
|
|
248
249
|
YEM
|
|
249
|
-
ZAF
|
|
250
250
|
ZMB
|
|
251
251
|
ZWE
|
|
@@ -1,251 +1,251 @@
|
|
|
1
1
|
004
|
|
2
|
+
710
|
|
3
|
+
248
|
|
2
4
|
008
|
|
3
|
-
010
|
|
4
5
|
012
|
|
5
|
-
|
|
6
|
+
276
|
|
6
7
|
020
|
|
7
8
|
024
|
|
9
|
+
660
|
|
10
|
+
010
|
|
8
11
|
028
|
|
9
|
-
|
|
12
|
+
682
|
|
10
13
|
032
|
|
14
|
+
051
|
|
15
|
+
533
|
|
11
16
|
036
|
|
12
17
|
040
|
|
18
|
+
031
|
|
13
19
|
044
|
|
14
20
|
048
|
|
15
21
|
050
|
|
16
|
-
051
|
|
17
22
|
052
|
|
23
|
+
112
|
|
18
24
|
056
|
|
25
|
+
084
|
|
26
|
+
204
|
|
19
27
|
060
|
|
20
28
|
064
|
|
21
29
|
068
|
|
30
|
+
535
|
|
22
31
|
070
|
|
23
32
|
072
|
|
24
33
|
074
|
|
25
34
|
076
|
|
26
|
-
084
|
|
27
|
-
086
|
|
28
|
-
090
|
|
29
|
-
092
|
|
30
|
-
095
|
|
31
35
|
096
|
|
32
36
|
100
|
|
33
|
-
|
|
37
|
+
854
|
|
34
38
|
108
|
|
35
|
-
|
|
39
|
+
136
|
|
36
40
|
116
|
|
37
41
|
120
|
|
38
42
|
124
|
|
39
43
|
132
|
|
40
|
-
136
|
|
41
44
|
140
|
|
42
|
-
144
|
|
43
|
-
148
|
|
44
45
|
152
|
|
45
46
|
156
|
|
46
|
-
158
|
|
47
47
|
162
|
|
48
|
+
196
|
|
48
49
|
166
|
|
49
50
|
170
|
|
50
51
|
174
|
|
51
|
-
175
|
|
52
52
|
178
|
|
53
53
|
180
|
|
54
54
|
184
|
|
55
|
+
410
|
|
56
|
+
408
|
|
55
57
|
188
|
|
58
|
+
384
|
|
56
59
|
191
|
|
57
60
|
192
|
|
58
|
-
|
|
59
|
-
203
|
|
60
|
-
204
|
|
61
|
+
531
|
|
61
62
|
208
|
|
62
|
-
|
|
63
|
+
262
|
|
63
64
|
214
|
|
64
|
-
|
|
65
|
+
212
|
|
66
|
+
818
|
|
67
|
+
Gum
|
|
68
|
+
(Ré
|
|
65
69
|
222
|
|
66
|
-
|
|
67
|
-
|
|
70
|
+
784
|
|
71
|
+
218
|
|
68
72
|
232
|
|
73
|
+
724
|
|
69
74
|
233
|
|
70
|
-
|
|
75
|
+
840
|
|
76
|
+
231
|
|
71
77
|
238
|
|
72
|
-
|
|
78
|
+
234
|
|
73
79
|
242
|
|
74
80
|
246
|
|
75
|
-
248
|
|
76
81
|
250
|
|
77
|
-
254
|
|
78
|
-
258
|
|
79
|
-
260
|
|
80
|
-
262
|
|
81
82
|
266
|
|
82
|
-
268
|
|
83
83
|
270
|
|
84
|
-
|
|
85
|
-
|
|
84
|
+
268
|
|
85
|
+
239
|
|
86
86
|
288
|
|
87
87
|
292
|
|
88
|
-
296
|
|
89
88
|
300
|
|
90
|
-
304
|
|
91
89
|
308
|
|
90
|
+
304
|
|
92
91
|
312
|
|
93
92
|
316
|
|
94
93
|
320
|
|
94
|
+
831
|
|
95
95
|
324
|
|
96
|
+
624
|
|
97
|
+
226
|
|
96
98
|
328
|
|
99
|
+
254
|
|
97
100
|
332
|
|
98
101
|
334
|
|
99
|
-
336
|
|
100
102
|
340
|
|
101
103
|
344
|
|
102
104
|
348
|
|
103
|
-
|
|
105
|
+
833
|
|
106
|
+
581
|
|
107
|
+
092
|
|
108
|
+
850
|
|
104
109
|
356
|
|
105
110
|
360
|
|
106
111
|
364
|
|
107
112
|
368
|
|
108
113
|
372
|
|
114
|
+
352
|
|
109
115
|
376
|
|
110
116
|
380
|
|
111
|
-
384
|
|
112
117
|
388
|
|
113
118
|
392
|
|
114
|
-
|
|
119
|
+
832
|
|
115
120
|
400
|
|
121
|
+
398
|
|
116
122
|
404
|
|
117
|
-
408
|
|
118
|
-
410
|
|
119
|
-
414
|
|
120
123
|
417
|
|
124
|
+
296
|
|
125
|
+
414
|
|
121
126
|
418
|
|
122
|
-
422
|
|
123
127
|
426
|
|
124
128
|
428
|
|
129
|
+
422
|
|
125
130
|
430
|
|
126
131
|
434
|
|
127
132
|
438
|
|
128
133
|
440
|
|
129
134
|
442
|
|
130
135
|
446
|
|
136
|
+
807
|
|
131
137
|
450
|
|
132
|
-
454
|
|
133
138
|
458
|
|
139
|
+
454
|
|
134
140
|
462
|
|
135
141
|
466
|
|
136
142
|
470
|
|
143
|
+
580
|
|
144
|
+
504
|
|
145
|
+
584
|
|
137
146
|
474
|
|
138
|
-
478
|
|
139
147
|
480
|
|
148
|
+
478
|
|
149
|
+
175
|
|
140
150
|
484
|
|
151
|
+
583
|
|
152
|
+
498
|
|
141
153
|
492
|
|
142
154
|
496
|
|
143
|
-
498
|
|
144
155
|
499
|
|
145
156
|
500
|
|
146
|
-
504
|
|
147
157
|
508
|
|
148
|
-
|
|
158
|
+
104
|
|
149
159
|
516
|
|
150
160
|
520
|
|
151
161
|
524
|
|
152
|
-
528
|
|
153
|
-
530
|
|
154
|
-
531
|
|
155
|
-
533
|
|
156
|
-
534
|
|
157
|
-
535
|
|
158
|
-
540
|
|
159
|
-
548
|
|
160
|
-
554
|
|
161
162
|
558
|
|
162
163
|
562
|
|
163
164
|
566
|
|
164
165
|
570
|
|
165
166
|
574
|
|
166
167
|
578
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
168
|
+
540
|
|
169
|
+
554
|
|
170
|
+
086
|
|
171
|
+
512
|
|
172
|
+
800
|
|
173
|
+
860
|
|
172
174
|
586
|
|
175
|
+
585
|
|
176
|
+
275
|
|
173
177
|
591
|
|
174
178
|
598
|
|
175
179
|
600
|
|
180
|
+
528
|
|
176
181
|
604
|
|
177
182
|
608
|
|
178
183
|
612
|
|
179
184
|
616
|
|
180
|
-
|
|
181
|
-
624
|
|
182
|
-
626
|
|
185
|
+
258
|
|
183
186
|
630
|
|
187
|
+
620
|
|
184
188
|
634
|
|
185
189
|
638
|
|
186
190
|
642
|
|
191
|
+
826
|
|
187
192
|
643
|
|
188
193
|
646
|
|
194
|
+
732
|
|
189
195
|
652
|
|
190
|
-
654
|
|
191
196
|
659
|
|
192
|
-
|
|
193
|
-
662
|
|
197
|
+
674
|
|
194
198
|
663
|
|
199
|
+
534
|
|
195
200
|
666
|
|
201
|
+
336
|
|
196
202
|
670
|
|
197
|
-
|
|
203
|
+
654
|
|
204
|
+
662
|
|
205
|
+
090
|
|
206
|
+
882
|
|
207
|
+
016
|
|
198
208
|
678
|
|
199
|
-
682
|
|
200
209
|
686
|
|
201
210
|
688
|
|
202
211
|
690
|
|
203
212
|
694
|
|
204
213
|
702
|
|
205
214
|
703
|
|
206
|
-
704
|
|
207
215
|
705
|
|
208
216
|
706
|
|
209
|
-
|
|
210
|
-
716
|
|
211
|
-
724
|
|
217
|
+
729
|
|
212
218
|
728
|
|
213
|
-
|
|
214
|
-
|
|
219
|
+
144
|
|
220
|
+
752
|
|
221
|
+
756
|
|
215
222
|
740
|
|
216
223
|
744
|
|
217
224
|
748
|
|
218
|
-
752
|
|
219
|
-
756
|
|
220
225
|
760
|
|
221
226
|
762
|
|
227
|
+
158
|
|
228
|
+
834
|
|
229
|
+
148
|
|
230
|
+
203
|
|
231
|
+
260
|
|
222
232
|
764
|
|
233
|
+
626
|
|
223
234
|
768
|
|
224
235
|
772
|
|
225
236
|
776
|
|
226
237
|
780
|
|
227
|
-
784
|
|
228
238
|
788
|
|
229
|
-
792
|
|
230
239
|
795
|
|
231
240
|
796
|
|
241
|
+
792
|
|
232
242
|
798
|
|
233
|
-
800
|
|
234
243
|
804
|
|
235
|
-
807
|
|
236
|
-
818
|
|
237
|
-
826
|
|
238
|
-
831
|
|
239
|
-
832
|
|
240
|
-
833
|
|
241
|
-
834
|
|
242
|
-
840
|
|
243
|
-
850
|
|
244
|
-
854
|
|
245
244
|
858
|
|
246
|
-
|
|
245
|
+
548
|
|
247
246
|
862
|
|
247
|
+
704
|
|
248
248
|
876
|
|
249
|
-
882
|
|
250
249
|
887
|
|
251
|
-
894
|
|
250
|
+
894
|
|
251
|
+
716
|