0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
231
208
19
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
230
207
19
0
0
0
0
0
0
0
0
74
49
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
230
254
39
0
0
0
0
0
0
0
32
250
237
49
0
0
0
0
0
0
0
0
0
0
0
0
0
0
230
254
39
0
0
0
0
0
0
0
88
254
254
111
0
0
0
0
0
0
0
0
0
0
0
0
0
41
239
254
39
0
0
0
0
0
0
0
164
254
247
68
0
0
0
0
0
0
0
0
0
0
0
0
0
152
254
174
5
0
0
0
0
0
0
15
197
254
121
0
0
0
0
0
0
0
0
0
0
0
0
0
0
236
254
162
0
0
0
0
0
0
0
40
254
254
104
0
0
0
0
0
0
0
0
0
0
0
0
0
0
236
254
162
0
0
0
0
0
0
0
81
254
254
104
0
0
0
0
0
0
0
0
0
0
0
0
0
90
251
254
162
0
0
0
0
0
0
0
170
254
247
75
0
0
0
0
0
0
0
0
0
0
0
0
0
112
254
254
186
66
66
103
197
197
197
197
235
254
249
81
0
0
0
0
0
0
0
0
0
0
0
0
0
112
254
254
254
254
254
254
254
254
254
254
254
254
254
104
0
0
0
0
0
0
0
0
0
0
0
0
0
89
251
254
254
254
211
202
202
202
202
202
237
254
254
104
0
0
0
0
0
0
0
0
0
0
0
0
0
0
127
208
161
78
14
0
0
0
0
0
147
254
255
128
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
128
254
254
214
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
170
254
254
104
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
157
254
255
104
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
40
254
255
104
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
40
254
254
104
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
39
252
255
104
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
97
173
51
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
