0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
15
96
218
122
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
71
103
211
252
252
252
80
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
15
22
128
162
232
232
249
253
252
252
252
252
106
0
0
0
0
0
0
0
0
0
0
0
0
0
0
6
190
252
253
252
252
252
252
253
252
252
252
252
80
0
0
0
0
0
0
0
0
0
0
0
0
0
0
13
173
252
253
252
252
226
147
147
138
252
252
76
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
89
168
176
97
0
0
8
157
253
216
18
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
123
252
245
126
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
156
252
231
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
253
252
231
0
0
11
108
6
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
253
252
143
0
89
114
147
12
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
4
43
43
255
253
253
253
253
132
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
29
142
252
252
253
252
245
168
80
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
4
142
252
252
252
253
210
27
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
32
237
252
226
252
253
168
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
67
94
24
218
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
212
255
107
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
128
242
253
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
72
252
253
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
64
252
225
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
11
174
211
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
