0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
94
109
109
171
253
232
109
63
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
125
217
247
252
252
253
252
252
252
176
10
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
125
252
252
252
252
253
252
252
252
253
138
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
169
252
252
168
108
108
128
252
253
221
41
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
37
252
253
252
71
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
37
252
253
252
71
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
32
150
252
253
241
61
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
217
252
252
253
179
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
218
253
253
255
119
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
135
247
252
252
222
25
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
105
253
252
252
252
125
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
21
206
253
252
252
168
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
37
253
255
253
217
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
63
222
252
253
231
153
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
16
181
252
252
237
71
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
84
109
252
252
252
144
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
32
212
253
253
253
253
253
192
109
109
109
63
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
52
190
252
252
252
252
252
253
252
252
252
238
217
217
217
218
30
0
0
0
0
0
0
0
0
0
0
0
0
11
154
231
252
252
252
253
252
252
252
253
252
252
252
253
119
0
0
0
0
0
0
0
0
0
0
0
0
0
0
47
108
108
190
191
108
190
108
191
108
128
252
191
15
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
