0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
10
163
254
254
134
63
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
42
233
253
253
253
254
243
67
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
9
156
253
239
165
96
254
253
222
30
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
142
253
253
76
0
0
85
158
253
237
83
12
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
182
253
192
10
0
0
0
7
155
253
253
146
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
38
236
253
76
0
0
0
0
7
156
253
253
88
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
10
195
253
146
0
0
0
0
124
253
253
253
60
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
182
253
241
31
0
0
116
238
253
253
253
60
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
129
253
253
187
110
110
243
243
160
253
253
60
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
138
253
253
253
253
191
62
37
253
253
60
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
41
122
122
6
0
0
158
255
223
29
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
157
253
193
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
171
253
193
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
25
253
253
112
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
25
253
253
72
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
25
253
253
72
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
25
253
253
72
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
25
253
253
119
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
25
253
253
193
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
13
132
190
43
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
