0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
166
253
21
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
174
252
56
0
0
0
0
0
0
159
159
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
245
252
126
0
0
0
0
0
59
249
211
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
253
252
126
0
0
0
0
0
91
252
185
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
253
252
82
0
0
0
0
9
204
252
106
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
254
253
21
0
0
0
0
0
169
253
107
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
253
252
21
0
0
0
0
0
169
252
106
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
253
252
21
0
0
0
0
0
169
252
106
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
253
252
21
0
0
0
0
15
225
252
106
48
32
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
253
252
21
0
0
0
0
153
252
252
229
242
232
211
124
89
0
0
0
0
0
0
0
0
0
0
0
0
254
253
83
0
18
148
227
253
253
253
255
222
211
239
253
255
253
156
67
0
0
0
0
0
0
0
0
0
253
252
126
84
216
253
252
252
252
252
107
16
0
42
63
168
231
252
237
67
0
0
0
0
0
0
0
0
200
252
242
246
252
253
201
180
252
252
0
0
0
0
0
0
16
74
170
29
0
0
0
0
0
0
0
0
174
252
252
252
252
128
21
48
252
252
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
253
252
252
226
59
0
0
127
252
252
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
87
253
170
0
0
0
0
110
253
253
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
11
63
32
0
0
0
0
57
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
0
0
74
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
0
0
22
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
0
0
4
182
252
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
