0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
175
255
137
125
125
86
0
33
125
35
0
0
0
0
0
14
248
0
0
0
0
0
0
0
0
0
0
0
241
253
253
253
253
252
248
249
253
198
0
0
0
0
80
248
186
0
0
0
0
0
0
0
0
0
0
0
118
253
253
253
209
230
253
253
253
201
0
0
72
192
248
241
6
0
0
0
0
0
0
0
0
0
0
0
9
73
243
253
253
253
199
253
229
119
0
91
247
253
253
240
0
0
0
0
0
0
0
0
0
0
0
0
0
0
140
241
253
253
109
59
192
126
228
245
253
253
119
91
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
108
253
253
207
45
212
253
253
253
253
183
13
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
14
38
215
253
234
253
253
253
253
242
65
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
209
253
253
253
253
253
241
152
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
26
116
244
253
253
253
253
240
87
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
26
133
253
253
253
253
253
253
207
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
25
201
253
253
253
253
253
253
253
242
63
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
108
212
253
253
253
253
253
240
104
202
253
84
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
22
244
253
253
253
253
186
180
58
0
93
253
174
0
0
0
0
0
0
0
0
0
0
0
0
0
0
20
206
253
253
253
253
220
107
17
0
0
26
213
240
61
0
0
0
0
0
0
0
0
0
0
0
0
0
125
253
253
253
241
173
14
0
0
0
0
53
253
253
91
0
0
0
0
0
0
0
0
0
0
0
0
0
125
253
253
253
142
0
0
0
8
27
124
176
253
253
91
0
0
0
0
0
0
0
0
0
0
0
0
0
51
240
253
253
43
67
150
150
179
253
253
253
253
230
37
0
0
0
0
0
0
0
0
0
0
0
0
0
0
51
240
253
253
253
253
253
253
253
253
253
253
234
47
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
51
243
253
253
253
251
252
253
221
210
247
208
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
115
123
123
190
85
99
123
95
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
