0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
23
108
122
163
178
171
184
11
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
25
198
253
253
253
253
255
253
181
15
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
68
253
253
245
96
39
40
200
253
39
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
50
158
124
47
0
0
0
23
233
145
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
228
173
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
228
173
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
69
244
88
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
185
248
37
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
241
159
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
58
248
97
0
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
208
15
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
50
70
94
94
94
164
254
146
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
30
194
235
243
253
253
253
253
254
237
165
81
17
0
0
0
0
0
0
0
0
0
0
0
0
0
0
86
220
253
253
253
253
253
253
253
254
253
253
253
212
158
11
25
40
68
0
0
0
0
0
0
0
0
0
135
253
253
253
253
253
253
222
199
201
199
199
199
242
239
198
211
223
128
0
0
0
0
0
0
0
0
84
249
253
140
225
253
253
213
34
0
0
0
0
0
63
80
80
80
75
0
0
0
0
0
0
0
0
0
191
253
253
253
253
247
205
34
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
51
233
240
240
204
84
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
