0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
21
154
157
216
123
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
38
227
254
254
254
252
183
17
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
22
209
254
190
189
230
254
254
194
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
94
236
58
1
0
22
173
254
229
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
9
206
214
0
0
0
0
116
254
229
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
82
254
73
0
0
0
8
171
254
229
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
130
192
4
0
0
0
133
254
254
229
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
146
169
0
0
0
21
249
199
254
229
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
230
169
0
0
19
200
232
63
254
152
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
230
186
51
51
169
254
135
114
254
71
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
228
254
254
254
254
128
19
116
253
29
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
107
254
254
254
136
19
0
178
184
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
5
40
95
63
1
0
0
215
184
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
41
242
157
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
149
253
77
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
160
239
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
5
247
147
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
81
254
139
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
202
255
83
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
205
168
9
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
