0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
77
254
236
48
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
76
253
253
103
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
12
202
253
218
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
192
253
250
94
0
0
0
0
0
0
0
23
38
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
100
253
253
123
0
0
0
0
0
0
0
197
227
37
0
0
0
0
0
0
0
0
0
0
0
0
0
0
56
253
253
200
4
0
0
0
0
0
7
241
253
62
0
0
0
0
0
0
0
0
0
0
0
0
0
0
27
211
253
253
6
0
0
0
0
0
125
253
253
191
0
0
0
0
0
0
0
0
0
0
0
0
0
0
54
251
253
253
6
0
0
0
0
0
125
253
253
191
0
0
0
0
0
0
0
0
0
0
0
0
0
0
36
224
253
253
55
0
0
66
32
0
125
253
253
117
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
134
253
253
173
69
181
241
223
206
229
253
253
191
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
10
178
253
253
253
253
253
253
253
253
253
253
191
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
151
253
253
253
253
233
229
253
253
253
253
191
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
73
250
253
253
210
29
28
253
253
253
253
113
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
67
250
209
24
0
28
253
253
253
253
54
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
13
9
0
0
2
94
253
253
253
110
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
140
253
253
191
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
125
253
253
191
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
125
253
253
191
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
114
252
253
196
7
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
253
219
34
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
