0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
38
122
246
255
255
245
121
8
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
57
176
253
253
253
253
253
253
253
155
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
191
253
253
253
253
250
248
253
253
253
105
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
126
253
253
245
210
111
37
0
155
253
253
187
14
0
0
0
0
0
0
0
0
0
0
0
0
0
0
6
253
253
250
139
0
0
0
0
15
226
253
253
116
0
0
0
0
0
0
0
0
0
0
0
0
0
0
6
253
253
141
0
0
0
0
0
0
76
253
253
219
25
0
0
0
0
0
0
0
0
0
0
0
0
0
73
253
238
22
0
0
0
0
0
14
221
253
253
253
150
0
0
0
0
0
0
0
0
0
0
0
0
0
114
253
235
21
0
0
0
0
32
193
253
253
253
253
230
4
0
0
0
0
0
0
0
0
0
0
0
0
61
253
253
126
0
0
2
40
171
253
253
253
253
253
159
1
0
0
0
0
0
0
0
0
0
0
0
0
6
253
253
211
96
55
159
253
253
253
253
253
253
240
73
0
0
0
0
0
0
0
0
0
0
0
0
0
2
133
253
253
253
253
253
253
253
253
214
253
253
188
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
97
174
245
253
252
232
192
22
65
253
253
87
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
54
86
81
0
0
0
21
222
235
28
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
224
226
0
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
253
123
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
168
253
192
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
168
253
237
33
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
168
253
253
81
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
168
253
253
81
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
97
233
242
46
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
