0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
5
174
23
134
122
11
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
7
124
187
253
253
254
253
238
123
7
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
9
156
253
253
253
253
254
253
253
253
155
9
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
33
190
253
253
253
253
253
254
249
235
253
253
60
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
49
253
253
253
253
224
224
130
65
45
164
253
164
12
0
0
0
0
0
0
0
0
0
0
0
0
0
0
84
253
253
253
144
32
32
0
0
0
49
253
253
48
0
0
0
0
0
0
0
0
0
0
0
0
0
0
169
253
253
143
7
0
0
0
0
0
49
253
253
146
0
0
0
0
0
0
0
0
0
0
0
0
0
0
169
253
225
30
0
0
0
0
0
0
49
253
253
168
0
0
0
0
0
0
0
0
0
0
0
0
0
0
118
253
71
0
0
0
0
0
0
0
158
253
253
168
0
0
0
0
0
0
0
0
0
0
0
0
0
0
26
132
32
0
0
0
0
0
0
0
169
253
253
111
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
37
255
254
254
48
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
31
213
253
253
48
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
253
208
18
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
253
100
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
253
60
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
7
185
253
253
60
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
65
253
253
253
60
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
11
238
253
253
230
37
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
174
253
253
253
83
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
59
254
253
253
149
4
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
