0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
22
114
192
193
148
30
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
15
121
221
252
252
253
252
221
142
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
139
252
252
252
252
253
252
252
247
188
54
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
27
218
252
252
252
199
128
184
252
252
252
176
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
150
253
252
244
77
7
0
85
252
252
252
211
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
212
255
253
127
0
0
0
85
253
253
253
107
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
211
253
252
126
0
0
0
85
252
252
252
106
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
202
253
252
180
22
22
128
213
252
252
252
53
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
35
253
252
252
252
252
253
252
252
252
155
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
165
252
252
252
252
253
252
252
252
42
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
18
141
229
211
211
237
253
253
253
42
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
27
0
0
148
252
252
252
77
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
139
252
252
252
244
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
114
252
252
252
226
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
148
252
252
252
191
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
193
253
253
253
253
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
148
252
252
252
252
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
148
252
252
252
252
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
78
252
252
252
155
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
7
121
191
147
24
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
