0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
168
254
125
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
29
128
28
176
253
231
51
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
48
239
252
180
158
253
252
126
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
148
252
252
119
211
253
252
126
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
192
252
235
14
211
253
252
170
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
107
254
253
214
0
212
254
253
144
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
185
253
224
40
0
131
253
252
196
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
68
249
253
159
0
0
115
253
252
180
48
39
18
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
169
252
253
63
6
64
221
253
252
252
252
252
239
113
0
0
0
0
0
0
0
0
0
0
0
0
0
18
239
252
253
186
206
252
252
253
252
252
252
164
129
28
0
0
0
0
0
0
0
0
0
0
0
0
0
0
152
253
254
253
253
253
253
255
253
21
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
16
150
218
224
168
189
252
253
189
5
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
12
14
0
64
252
253
168
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
6
155
252
253
168
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
22
252
252
253
168
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
22
253
253
255
168
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
22
252
252
253
168
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
22
252
252
253
116
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
7
154
242
253
63
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
124
191
37
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
