0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
45
235
255
52
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
156
250
253
217
28
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
228
253
216
32
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
150
251
215
32
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
235
253
45
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
98
251
167
4
0
0
26
92
92
26
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
112
253
112
0
73
192
226
253
253
226
215
195
85
33
0
0
0
0
0
0
0
0
0
0
0
0
0
0
219
253
25
76
247
253
253
253
253
253
253
253
253
212
32
0
0
0
0
0
0
0
0
0
0
0
0
95
251
253
140
221
253
194
78
51
51
51
51
138
228
253
140
0
0
0
0
0
0
0
0
0
0
0
0
118
253
253
253
253
231
34
0
0
0
0
0
0
63
253
249
85
0
0
0
0
0
0
0
0
0
0
0
118
253
253
253
232
63
0
0
0
0
0
0
0
26
231
253
140
0
0
0
0
0
0
0
0
0
0
0
118
253
253
233
128
0
0
0
0
0
0
0
0
0
63
253
240
0
0
0
0
0
0
0
0
0
0
0
118
253
253
65
0
0
0
0
0
0
0
0
0
0
27
253
240
0
0
0
0
0
0
0
0
0
0
0
118
253
253
25
0
0
0
0
0
0
0
0
0
0
47
253
240
0
0
0
0
0
0
0
0
0
0
0
118
253
253
25
0
0
0
0
0
0
0
0
0
5
169
253
156
0
0
0
0
0
0
0
0
0
0
0
45
246
253
116
17
0
0
0
0
0
0
0
0
47
253
241
42
0
0
0
0
0
0
0
0
0
0
0
0
164
253
253
216
107
4
0
0
0
0
4
40
216
253
156
0
0
0
0
0
0
0
0
0
0
0
0
0
49
163
245
253
253
163
143
143
143
77
163
253
235
110
45
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
45
163
249
253
253
253
253
253
253
229
102
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
42
163
253
253
253
226
123
41
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
