0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
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
134
217
254
254
238
81
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
5
35
214
250
253
254
253
253
253
253
132
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
59
253
253
253
253
254
186
144
93
174
254
136
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
50
247
240
161
41
19
3
0
0
0
238
251
72
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
49
40
0
0
0
0
0
0
0
81
253
78
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
120
254
78
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
239
253
78
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
254
253
78
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
68
254
250
66
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
91
135
135
135
98
38
239
254
158
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
59
156
224
254
254
255
254
254
254
254
255
39
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
83
239
253
253
250
195
136
182
253
253
253
254
175
36
0
0
0
0
0
0
0
0
0
0
0
0
0
13
183
254
253
228
73
0
0
88
253
253
253
116
78
24
0
0
0
0
0
0
0
0
0
0
0
0
0
92
253
254
227
43
0
0
100
228
253
253
185
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
31
219
253
231
46
0
0
114
254
253
253
147
14
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
79
254
254
173
0
0
123
254
255
254
175
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
79
253
207
20
28
185
250
253
254
191
57
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
24
209
223
156
253
253
253
253
183
12
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
122
253
254
253
253
231
138
8
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
24
230
254
253
185
34
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
