0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
80
223
57
0
0
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
213
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
214
253
213
0
0
0
0
0
0
0
0
0
0
0
0
0
0
85
174
42
0
0
0
0
0
0
0
0
214
253
124
0
0
0
0
0
0
0
0
0
0
0
0
0
0
194
253
78
0
0
0
0
0
0
0
23
229
253
117
0
0
0
0
0
0
0
0
0
0
0
0
0
0
156
254
175
0
0
0
0
0
0
0
37
239
254
95
0
0
0
0
0
0
0
0
0
0
0
0
0
0
156
253
180
2
0
0
0
0
0
0
59
253
253
19
0
0
0
0
0
0
0
0
0
0
0
0
0
0
156
253
228
13
0
0
0
0
0
0
59
253
253
19
0
0
0
0
0
0
0
0
0
0
0
0
0
0
246
253
159
0
0
0
0
0
0
0
149
253
253
19
0
0
0
0
0
0
0
0
0
0
0
0
53
135
254
207
48
0
0
0
0
0
0
0
156
253
253
19
0
0
0
0
0
0
0
0
0
0
5
89
246
254
255
163
41
10
36
0
0
0
0
0
156
254
254
19
0
0
0
0
0
0
0
0
0
0
147
253
253
253
254
253
241
220
238
215
214
214
214
214
239
253
186
3
0
0
0
0
0
0
0
0
0
0
214
253
253
253
223
247
199
253
253
254
253
253
253
253
254
253
174
0
0
0
0
0
0
0
0
0
0
0
54
49
26
19
12
18
6
19
95
57
64
79
79
169
254
253
174
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
98
254
253
174
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
99
255
254
175
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
98
254
253
174
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
68
223
253
174
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
156
253
174
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
96
223
40
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
