0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
26
102
103
166
240
249
166
166
60
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
28
67
218
254
254
254
254
254
254
254
251
43
0
0
0
0
0
0
0
0
0
0
0
0
0
0
27
94
190
254
254
254
254
211
205
205
174
254
254
240
32
0
0
0
0
0
0
0
0
0
0
0
0
0
183
254
254
254
230
136
40
5
0
0
1
40
235
254
80
0
0
0
0
0
0
0
0
0
0
0
0
0
228
254
245
131
17
0
0
0
0
0
0
0
143
253
164
0
0
0
0
0
0
0
0
0
0
0
0
0
228
254
145
0
0
0
0
0
0
0
0
0
27
241
244
106
0
0
0
0
0
0
0
0
0
0
0
0
198
254
247
137
0
0
0
0
0
0
0
58
163
254
254
228
0
0
0
0
0
0
0
0
0
0
0
0
69
243
254
254
251
226
161
161
161
167
251
253
253
254
254
139
0
0
0
0
0
0
0
0
0
0
0
0
0
28
203
254
254
254
254
254
254
254
254
254
254
254
254
87
0
0
0
0
0
0
0
0
0
0
0
0
0
0
14
97
181
210
210
210
247
254
222
181
250
254
254
49
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
37
44
13
0
246
254
254
49
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
6
247
254
217
11
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
115
254
254
125
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
197
254
254
65
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
5
254
254
254
36
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
56
254
254
205
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
171
254
254
186
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
25
241
254
254
71
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
72
254
254
222
13
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
12
165
193
35
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
