0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
31
34
116
143
206
253
253
186
12
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
138
246
252
252
252
253
252
252
252
164
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
46
243
252
252
252
252
240
153
153
162
197
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
161
252
252
239
148
24
9
0
0
1
8
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
165
252
245
34
0
0
0
0
0
0
13
12
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
165
252
250
116
0
0
0
0
0
56
210
140
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
111
245
252
249
117
2
0
8
146
242
250
61
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
35
201
252
252
119
59
223
252
252
178
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
8
189
252
252
253
252
252
154
23
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
25
224
252
253
252
209
20
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
84
210
253
253
255
253
210
21
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
62
246
252
252
252
139
232
252
149
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
89
252
252
252
161
0
31
217
239
35
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
146
252
252
212
20
0
0
96
251
198
5
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
198
252
252
104
0
0
0
0
218
252
55
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
198
252
237
43
0
0
0
0
171
252
140
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
98
252
229
37
10
12
12
146
251
252
159
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
35
239
252
222
240
253
252
252
252
219
22
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
149
252
252
252
253
252
252
212
89
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
64
52
176
252
253
223
142
20
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
