0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
36
107
254
255
169
12
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
58
180
180
180
202
236
244
242
253
148
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
21
107
240
253
218
149
154
0
67
69
253
195
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
71
253
244
220
43
2
35
0
0
36
237
195
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
213
253
108
0
0
0
0
0
0
0
131
223
52
0
0
0
0
0
0
0
0
0
0
0
0
0
7
129
247
253
24
0
0
0
0
0
0
0
131
253
230
13
0
0
0
0
0
0
0
0
0
0
0
0
33
253
253
176
11
0
0
0
0
0
0
0
131
253
253
15
0
0
0
0
0
0
0
0
0
0
0
0
182
253
208
11
0
0
0
0
0
0
0
0
131
253
253
58
0
0
0
0
0
0
0
0
0
0
0
66
231
253
203
0
0
0
0
0
0
0
0
0
131
253
253
78
0
0
0
0
0
0
0
0
0
0
0
107
253
253
44
0
0
0
0
0
0
0
0
0
131
253
205
10
0
0
0
0
0
0
0
0
0
0
12
206
253
249
39
0
0
0
0
0
0
0
0
0
131
253
106
0
0
0
0
0
0
0
0
0
0
0
17
253
253
129
0
0
0
0
0
0
0
0
0
0
131
253
106
0
0
0
0
0
0
0
0
0
0
0
124
253
253
129
0
0
0
0
0
0
0
0
0
47
222
210
27
0
0
0
0
0
0
0
0
0
0
0
17
253
253
129
0
0
0
0
0
0
0
0
53
227
253
121
0
0
0
0
0
0
0
0
0
0
0
0
17
253
253
129
0
0
0
0
0
0
0
5
137
253
146
6
0
0
0
0
0
0
0
0
0
0
0
0
17
253
253
194
21
0
0
0
0
0
52
143
253
253
122
0
0
0
0
0
0
0
0
0
0
0
0
0
13
220
253
253
194
58
58
58
58
169
234
253
253
244
95
0
0
0
0
0
0
0
0
0
0
0
0
0
0
45
220
253
253
253
253
253
253
253
253
253
186
89
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
33
215
253
253
253
253
253
253
253
182
9
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
44
89
89
131
253
199
89
89
23
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
