0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
32
59
217
171
156
156
59
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
25
147
235
253
254
253
253
253
200
8
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
31
102
241
253
253
253
254
186
174
247
253
98
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
150
254
253
253
201
79
19
3
0
86
244
158
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
195
254
245
88
5
0
0
0
0
0
157
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
196
255
246
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
105
254
253
226
31
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
223
253
253
226
48
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
35
217
253
253
245
77
77
77
77
24
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
35
223
253
253
254
253
222
245
155
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
102
254
254
255
254
193
43
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
70
241
253
253
254
253
253
64
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
19
226
253
253
192
78
226
253
211
71
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
112
253
253
216
5
0
62
211
253
245
68
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
156
253
253
213
0
0
0
138
253
253
195
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
97
254
254
214
0
0
0
0
212
254
196
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
9
220
253
247
177
58
20
14
144
253
195
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
117
253
253
253
254
253
229
247
253
195
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
117
235
253
254
253
253
253
237
128
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
32
133
216
253
185
140
36
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
