0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
33
125
125
216
168
45
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
40
119
223
251
254
169
158
254
151
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
44
226
247
254
254
226
46
4
47
254
253
150
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
44
230
254
254
254
133
14
0
0
4
176
254
228
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
106
254
254
177
25
6
0
0
0
0
170
254
228
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
106
254
254
102
0
0
0
0
0
17
201
254
228
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
16
189
254
198
15
0
0
0
0
47
254
254
228
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
18
228
254
218
106
146
79
106
218
254
254
228
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
93
244
254
254
254
254
254
254
254
254
124
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
94
189
189
189
189
189
235
254
229
23
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
177
254
222
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
177
254
222
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
177
254
222
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
177
254
222
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
177
254
222
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
33
225
254
222
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
53
255
254
144
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
60
254
254
91
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
180
255
254
91
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
26
147
234
44
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
