0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
44
191
254
176
25
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
60
199
252
253
252
146
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
53
236
252
252
253
252
252
144
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
8
229
252
252
252
121
73
220
242
46
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
113
252
252
252
156
0
0
35
193
69
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
44
241
252
252
192
7
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
160
252
252
250
72
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
252
189
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
71
252
252
252
212
187
139
78
78
78
4
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
23
252
252
252
252
252
252
253
252
252
212
87
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
97
246
253
253
253
253
255
253
253
253
253
167
27
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
99
186
227
252
252
253
252
252
252
252
252
131
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
27
44
44
44
44
126
252
252
252
131
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
109
252
252
252
131
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
68
237
252
252
252
131
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
20
89
184
35
0
39
199
236
252
252
252
252
93
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
56
252
252
220
203
240
253
252
252
252
250
69
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
56
252
252
252
252
252
253
252
252
171
77
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
39
236
252
252
252
252
253
198
132
32
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
26
133
161
219
142
33
10
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
