0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
7
24
128
139
138
191
180
253
191
138
48
0
0
0
0
0
0
0
0
0
0
0
0
0
0
43
47
120
186
252
252
253
252
252
252
252
253
252
227
29
0
0
0
0
0
0
0
0
0
0
0
19
164
246
253
252
252
227
183
184
162
69
69
69
79
227
252
45
0
0
0
0
0
0
0
0
0
0
0
70
252
252
253
235
77
29
0
0
0
0
0
0
9
194
227
29
0
0
0
0
0
0
0
0
0
0
0
7
65
137
201
174
32
0
0
0
0
0
0
0
181
252
183
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
9
128
255
249
115
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
114
252
253
132
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
134
240
252
122
25
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
9
166
240
252
168
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
53
181
252
252
116
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
7
66
243
255
249
63
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
51
186
252
252
218
75
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
49
228
252
252
221
32
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
136
233
252
227
119
25
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
32
210
250
253
231
48
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
89
222
253
253
158
0
0
0
11
34
118
7
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
161
252
252
106
0
9
47
89
203
253
244
56
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
161
252
252
190
185
197
252
252
221
173
56
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
120
252
252
252
253
252
252
252
96
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
5
54
137
137
190
137
54
22
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
