0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
110
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
11
147
180
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
44
253
52
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
188
209
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
69
192
0
0
0
0
0
0
35
51
0
65
124
124
124
77
0
0
0
0
0
0
0
0
0
0
0
0
140
190
0
0
0
26
202
202
216
223
196
216
253
253
253
233
202
0
0
0
0
0
0
0
0
0
0
26
187
34
52
22
0
184
216
217
253
253
128
131
253
253
253
253
179
0
0
0
0
0
0
0
0
0
0
189
253
187
217
52
0
172
45
46
69
69
7
36
215
248
253
182
21
0
0
0
0
0
0
0
0
0
55
242
204
51
165
34
0
0
0
0
0
0
0
0
13
162
253
156
0
0
0
0
0
0
0
0
0
0
158
253
113
0
0
0
0
0
0
0
0
0
0
0
36
253
253
156
0
0
0
0
0
0
0
0
0
126
250
193
4
0
0
0
0
0
0
0
0
0
0
128
247
142
8
5
0
0
0
0
0
0
0
0
0
254
253
191
0
0
0
0
0
0
0
0
0
0
134
203
128
57
0
0
0
0
0
0
0
0
0
0
0
255
253
204
24
0
0
0
0
0
0
0
52
156
250
225
34
0
0
0
0
0
0
0
0
0
0
0
0
254
253
253
185
18
0
0
0
0
46
131
249
175
122
59
0
0
0
0
0
0
0
0
0
0
0
0
0
219
240
253
253
186
36
175
211
211
225
115
43
18
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
158
146
202
253
253
253
253
249
138
48
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
38
4
34
212
235
235
235
106
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
