0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
4
111
133
82
1
0
0
0
3
100
168
214
19
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
85
253
253
253
11
0
0
4
127
253
253
253
36
0
0
0
0
0
0
0
0
0
0
0
0
0
0
56
231
253
253
238
10
0
0
37
253
253
253
253
111
0
0
0
0
0
0
0
0
0
0
0
0
0
0
182
253
253
253
144
0
0
0
37
253
253
253
253
133
0
0
0
0
0
0
0
0
0
0
0
0
0
64
233
253
253
253
58
0
0
0
37
253
253
253
253
36
0
0
0
0
0
0
0
0
0
0
0
0
11
194
253
253
253
253
24
0
4
85
202
253
253
253
253
36
0
0
0
0
0
0
0
0
0
0
0
0
37
253
253
253
253
253
101
85
209
253
253
253
253
253
184
7
0
0
0
0
0
0
0
0
0
0
0
0
141
253
253
253
253
253
253
253
254
253
253
253
253
253
65
0
0
0
0
0
0
0
0
0
0
0
0
0
106
253
253
253
253
253
253
253
254
253
253
253
253
187
5
0
0
0
0
0
0
0
0
0
0
0
0
0
37
253
253
253
253
253
253
253
254
253
253
253
253
180
0
0
0
0
0
0
0
0
0
0
0
0
0
0
35
248
242
149
220
242
242
242
244
254
254
255
254
175
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
52
0
0
0
0
0
0
6
191
253
253
253
60
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
145
253
253
253
77
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
9
218
253
253
253
180
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
42
253
253
253
253
151
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
226
253
253
253
253
60
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
99
254
253
253
253
253
60
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
122
254
253
253
253
230
37
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
12
254
253
253
253
83
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
160
11
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
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
