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
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
73
222
192
100
0
0
81
112
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
40
226
251
255
254
253
204
80
206
228
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
145
247
254
223
229
254
254
229
207
254
228
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
92
252
254
168
70
221
230
77
215
254
241
67
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
95
239
219
113
5
190
229
53
171
254
254
222
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
106
254
162
0
0
93
82
223
246
254
254
107
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
106
254
241
106
127
106
226
254
254
254
254
91
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
19
193
254
254
241
246
254
236
149
191
254
199
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
20
192
254
254
254
199
73
15
199
254
222
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
21
58
58
58
14
0
53
254
254
222
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
53
254
254
124
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
53
254
254
185
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
53
254
254
222
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
18
203
254
222
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
177
254
222
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
163
254
222
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
47
254
222
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
53
254
222
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
177
254
222
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
110
254
222
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
