0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
96
143
255
254
187
70
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
154
234
250
253
253
253
253
245
189
73
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
11
158
213
252
253
253
253
245
177
214
253
253
210
23
0
0
0
0
0
0
0
0
0
0
0
0
0
42
157
253
253
253
253
208
98
55
0
30
191
246
253
75
0
0
0
0
0
0
0
0
0
0
0
0
52
234
253
253
253
219
96
16
0
0
0
0
0
220
253
94
0
0
0
0
0
0
0
0
0
0
0
6
160
253
253
237
103
3
0
0
0
0
0
0
0
138
253
212
0
0
0
0
0
0
0
0
0
0
0
97
253
253
164
50
0
0
0
0
0
0
0
0
0
83
253
212
0
0
0
0
0
0
0
0
0
0
0
97
253
253
82
0
0
0
0
0
0
0
0
0
0
83
253
212
0
0
0
0
0
0
0
0
0
0
0
10
142
164
53
0
0
0
0
0
0
0
0
0
0
83
253
212
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
121
253
212
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
220
253
186
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
23
128
165
165
165
165
242
253
75
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
7
130
233
253
253
253
253
253
253
253
75
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
65
250
253
253
253
253
253
253
253
253
223
39
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
70
247
253
253
169
50
13
76
253
253
253
61
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
12
184
253
253
224
32
0
9
180
253
253
181
8
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
27
228
253
253
56
17
89
205
253
253
138
37
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
129
253
253
186
199
253
253
252
212
11
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
13
232
253
253
253
253
251
151
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
173
253
253
227
104
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
