0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
8
122
146
216
255
152
121
8
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
41
197
253
253
253
253
253
253
197
40
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
122
237
253
253
248
248
209
241
252
253
213
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
62
253
253
253
183
9
0
0
0
68
206
253
145
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
184
253
253
217
15
0
0
0
0
0
98
253
188
0
0
0
0
0
0
0
0
0
0
0
0
0
0
6
253
253
253
108
0
0
0
0
0
0
103
253
188
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
190
253
253
97
0
0
0
0
0
0
206
253
188
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
115
253
253
180
0
0
0
0
0
21
222
253
188
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
23
222
253
249
149
25
0
6
26
201
253
253
188
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
103
248
253
253
248
162
195
253
253
253
253
230
28
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
103
253
253
253
253
253
253
192
236
253
253
43
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
16
99
124
124
124
69
6
206
253
253
43
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
206
253
253
115
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
206
253
253
150
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
206
253
253
150
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
206
253
253
177
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
162
253
253
253
5
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
98
253
253
253
5
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
71
251
253
253
5
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
197
253
209
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
