0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
99
105
192
255
253
253
182
12
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
53
78
208
249
252
252
253
252
252
252
64
0
0
0
0
0
0
0
0
0
0
0
0
0
0
39
164
164
242
252
244
148
237
148
89
88
194
252
225
48
0
0
0
0
0
0
0
0
0
0
0
0
0
130
252
252
146
132
63
0
0
0
0
0
164
252
252
74
0
0
0
0
0
0
0
0
0
0
0
0
0
208
207
146
4
0
0
0
0
0
31
110
242
252
229
52
0
0
0
0
0
0
0
0
0
0
0
0
0
103
199
55
0
0
0
0
6
30
210
252
252
252
159
0
0
0
0
0
0
0
0
0
0
0
0
0
0
28
118
63
0
0
0
0
45
252
253
252
164
118
14
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
85
119
252
216
128
5
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
6
125
248
252
252
80
8
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
119
252
252
252
252
253
166
53
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
18
149
186
253
253
255
253
253
182
12
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
16
44
44
193
241
252
252
169
53
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
73
194
252
252
223
7
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
87
189
252
252
181
7
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
14
182
252
252
145
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
22
200
252
173
7
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
40
217
252
252
59
0
0
0
0
0
0
0
0
0
0
22
99
167
133
150
238
238
238
238
240
238
238
238
242
252
252
167
4
0
0
0
0
0
0
0
0
0
0
60
252
252
252
252
252
252
252
252
253
252
252
252
252
252
252
136
0
0
0
0
0
0
0
0
0
0
0
25
103
103
103
103
103
103
103
103
104
226
154
103
103
103
103
6
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
