0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
197
60
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
50
243
42
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
186
236
21
0
0
0
134
83
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
88
213
26
0
0
0
0
129
170
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
128
120
0
0
0
0
0
91
209
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
32
234
112
0
0
0
0
0
91
242
30
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
116
222
21
0
0
0
0
0
170
244
58
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
30
240
124
0
0
0
0
0
40
249
138
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
127
241
18
0
0
0
0
0
15
230
134
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
16
254
179
0
0
0
0
0
0
0
165
134
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
9
191
233
136
101
20
0
0
0
0
113
215
31
31
31
2
0
0
0
0
0
0
0
0
0
0
0
0
0
8
89
128
194
218
210
210
211
210
226
254
254
204
120
7
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
10
15
37
90
90
196
241
34
5
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
165
233
16
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
165
143
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
91
188
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
91
233
34
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
20
254
61
0
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
209
219
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
107
166
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
