0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
64
146
229
255
205
120
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
24
198
252
253
225
216
235
252
89
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
20
205
253
223
70
15
0
29
206
174
2
87
38
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
137
253
227
6
0
0
0
0
35
28
76
253
253
9
0
0
0
0
0
0
0
0
0
0
0
0
0
88
251
235
12
0
0
0
0
0
0
42
238
253
174
1
0
0
0
0
0
0
0
0
0
0
0
0
0
134
253
192
0
0
0
0
0
0
0
14
238
253
161
0
0
0
0
0
0
0
0
0
0
0
0
0
0
169
253
74
0
0
0
0
0
0
0
85
247
253
75
0
0
0
0
0
0
0
0
0
0
0
0
0
10
250
253
47
0
0
0
0
0
0
6
219
253
241
31
0
0
0
0
0
0
0
0
0
0
0
0
0
10
253
253
47
0
0
0
0
0
5
72
253
253
143
0
0
0
0
0
0
0
0
0
0
0
0
0
0
6
221
253
117
0
0
0
0
25
118
253
253
253
47
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
28
242
254
187
104
146
159
220
244
239
254
224
18
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
78
201
253
253
248
215
156
67
247
253
157
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
5
56
56
50
0
0
38
253
253
74
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
66
253
253
18
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
253
18
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
30
238
253
191
4
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
66
253
253
112
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
87
253
244
3
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
253
198
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
254
253
149
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
