0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
82
238
255
255
154
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
117
254
229
107
160
252
104
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
54
254
217
46
0
0
189
247
11
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
181
245
32
0
0
0
77
254
180
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
84
253
122
0
0
0
16
196
254
233
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
153
253
55
0
0
39
222
254
254
233
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
232
223
0
13
149
238
229
171
254
233
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
234
201
128
235
254
181
33
244
248
193
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
225
254
254
242
123
10
134
254
96
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
129
213
151
30
0
0
226
254
4
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
62
249
172
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
179
254
25
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
239
213
6
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
174
254
107
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
206
233
17
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
127
254
155
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
8
221
247
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
61
254
169
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
170
254
232
26
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
101
254
136
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
