0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
21
157
241
254
254
255
202
49
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
209
253
253
203
108
166
249
198
31
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
46
254
253
163
8
0
0
190
253
131
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
162
254
253
36
0
0
0
210
253
150
7
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
181
254
233
23
0
0
0
61
227
196
207
130
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
182
255
173
0
0
0
0
0
0
135
254
156
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
181
254
108
0
0
0
0
0
21
230
253
91
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
181
254
153
0
0
0
0
0
95
253
253
13
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
142
254
241
77
19
51
135
199
245
253
253
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
26
221
253
253
253
253
254
233
207
253
253
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
59
190
254
222
148
66
0
128
254
254
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
4
18
10
0
0
0
179
253
233
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
28
235
253
162
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
55
253
253
162
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
55
253
253
98
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
55
254
254
72
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
55
253
253
72
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
100
253
253
72
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
107
253
245
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
35
194
150
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
