0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
24
122
247
232
147
45
30
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
25
128
228
254
254
254
254
254
238
115
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
20
206
254
254
254
254
254
254
254
254
242
58
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
109
254
254
254
221
211
211
245
254
254
254
183
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
58
234
211
65
15
0
0
51
173
254
254
227
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
20
14
0
0
0
0
0
3
177
254
227
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
168
254
227
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
168
254
227
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
168
254
227
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
168
254
204
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
121
201
201
201
201
201
178
93
93
200
254
80
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
163
248
254
254
254
254
254
254
254
254
254
254
124
22
4
0
0
0
0
0
0
0
0
0
0
0
0
18
230
254
254
254
254
254
254
254
254
254
254
254
254
254
139
27
0
0
0
0
0
0
0
0
0
0
0
119
254
254
254
208
175
254
213
254
254
254
254
254
254
254
254
228
62
0
0
0
0
0
0
0
0
0
0
185
254
231
38
6
2
10
26
215
254
254
254
254
254
254
254
254
179
0
0
0
0
0
0
0
0
0
0
185
254
241
72
0
13
103
213
254
254
240
81
169
196
255
254
254
184
0
0
0
0
0
0
0
0
0
0
185
254
254
206
109
220
254
254
254
254
99
0
0
5
43
175
254
184
0
0
0
0
0
0
0
0
0
0
69
250
254
254
254
254
254
254
248
97
1
0
0
0
0
47
252
184
0
0
0
0
0
0
0
0
0
0
0
193
254
254
254
254
254
166
60
0
0
0
0
0
0
0
241
87
0
0
0
0
0
0
0
0
0
0
0
19
211
254
254
187
109
19
0
0
0
0
0
0
0
0
32
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
