0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
74
139
138
138
233
201
191
138
191
180
201
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
230
253
252
252
252
252
253
252
252
252
252
100
17
0
0
0
0
0
0
0
0
0
0
0
0
0
0
151
246
253
252
252
252
252
253
252
252
252
252
236
25
0
0
0
0
0
0
0
0
0
0
0
0
0
0
207
252
253
252
185
160
160
56
87
77
66
45
42
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
207
252
232
22
6
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
93
253
244
50
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
93
252
253
113
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
93
252
253
240
101
70
7
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
187
252
253
252
252
252
211
85
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
103
252
253
252
252
252
252
251
209
84
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
43
220
252
230
230
135
220
233
253
253
117
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
84
0
0
0
0
9
173
252
252
22
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
171
252
54
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
70
252
232
95
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
158
0
0
0
0
0
0
0
70
252
252
116
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
231
255
180
55
5
0
0
5
138
253
253
116
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
209
253
252
252
177
161
162
178
252
252
252
95
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
32
190
252
252
252
252
253
252
252
252
221
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
15
160
227
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
0
17
65
137
253
252
252
157
12
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
