0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
21
116
239
255
187
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
37
223
252
223
125
57
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
164
252
222
39
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
142
251
229
36
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
37
234
250
115
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
8
172
252
203
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
23
252
252
131
5
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
90
252
252
205
197
154
154
93
33
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
132
252
252
252
252
252
252
253
206
47
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
132
252
175
33
33
33
33
205
252
240
9
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
133
253
165
0
0
0
0
78
243
253
25
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
132
252
135
0
0
0
0
0
100
252
155
23
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
132
252
98
0
0
0
0
0
41
235
252
88
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
132
252
164
0
0
0
0
0
0
143
251
198
5
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
109
252
183
5
0
0
0
0
0
0
242
252
127
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
23
252
252
108
0
0
0
0
0
0
242
252
164
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
46
221
242
212
40
2
0
0
0
141
252
241
19
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
73
229
252
252
166
140
45
135
206
252
164
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
37
189
252
252
253
252
252
252
235
66
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
6
66
142
253
252
161
85
26
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
