0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
105
249
255
253
135
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
58
254
254
254
254
254
182
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
66
254
254
254
239
254
247
43
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
7
207
254
254
254
212
169
254
157
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
63
254
254
254
254
237
70
254
221
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
200
254
254
254
254
237
73
156
238
42
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
213
254
254
126
112
199
229
183
254
202
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
24
237
254
194
7
0
1
15
11
199
237
45
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
142
254
254
56
0
0
0
0
0
116
254
173
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
205
254
254
24
0
0
0
0
0
36
254
204
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
206
254
194
0
0
0
0
0
0
0
203
223
12
0
0
0
0
0
0
0
0
0
0
0
0
0
0
29
240
254
115
0
0
0
1
70
15
0
124
254
91
0
0
0
0
0
0
0
0
0
0
0
0
0
0
176
254
254
115
0
0
0
9
254
229
0
63
254
175
0
0
0
0
0
0
0
0
0
0
0
0
0
0
197
254
254
151
0
0
0
2
123
229
0
42
254
196
0
0
0
0
0
0
0
0
0
0
0
0
0
0
197
254
254
224
12
0
0
0
17
249
86
42
254
196
0
0
0
0
0
0
0
0
0
0
0
0
0
0
197
254
254
254
40
0
0
0
17
254
181
42
254
196
0
0
0
0
0
0
0
0
0
0
0
0
0
0
197
254
254
254
214
9
0
0
17
254
221
42
254
196
0
0
0
0
0
0
0
0
0
0
0
0
0
0
123
254
254
254
254
157
2
0
17
254
229
123
254
196
0
0
0
0
0
0
0
0
0
0
0
0
0
0
18
224
254
254
254
254
132
0
17
254
254
254
254
123
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
46
254
254
254
254
254
191
196
254
254
254
206
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
