0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
16
166
128
4
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
26
179
252
196
9
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
29
210
253
252
168
0
10
85
57
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
85
252
253
252
118
0
16
215
243
75
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
45
229
253
239
75
0
0
0
170
253
253
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
169
252
252
88
0
0
0
0
94
252
252
26
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
23
234
252
214
0
0
0
0
0
57
252
252
113
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
128
252
252
40
0
0
0
0
0
57
252
252
163
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
255
253
168
0
0
0
0
0
0
0
198
253
226
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
253
252
168
0
0
0
0
0
0
0
197
252
200
0
0
0
0
0
0
0
0
0
0
0
0
0
0
89
253
252
168
0
0
0
0
0
0
0
147
252
113
0
0
0
0
0
0
0
0
0
0
0
0
0
0
163
253
252
68
0
0
0
0
0
0
0
197
252
113
0
0
0
0
0
0
0
0
0
0
0
0
0
10
229
255
253
56
0
0
0
0
0
0
7
204
253
51
0
0
0
0
0
0
0
0
0
0
0
0
0
85
252
253
252
56
0
0
0
0
0
7
150
252
227
0
0
0
0
0
0
0
0
0
0
0
0
0
0
85
252
253
252
56
0
0
0
0
0
154
252
224
43
0
0
0
0
0
0
0
0
0
0
0
0
0
0
10
178
253
252
106
0
0
0
0
51
253
252
118
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
101
255
253
216
141
29
54
178
253
239
138
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
253
252
252
252
253
252
252
227
175
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
69
224
252
252
253
252
186
31
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
94
139
190
91
139
43
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
