0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
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
253
188
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
227
252
152
0
0
0
0
0
0
0
36
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
98
253
245
27
0
0
0
0
0
6
153
242
58
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
132
253
168
0
0
0
0
0
0
134
252
225
21
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
211
253
80
0
0
0
0
0
62
239
252
124
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
38
236
254
63
0
0
0
0
0
189
253
236
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
64
252
253
63
0
0
0
0
0
232
252
147
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
64
252
250
58
0
0
0
0
87
251
247
47
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
134
252
211
0
0
0
0
29
232
252
162
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
169
252
229
27
0
0
0
87
252
252
84
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
54
247
254
174
51
43
43
210
253
236
14
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
131
253
252
252
252
252
253
252
201
21
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
9
83
205
242
252
252
253
252
29
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
42
84
154
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
194
253
124
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
212
255
63
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
211
236
37
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
202
253
72
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
106
253
168
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
18
122
124
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
