0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
89
222
253
23
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
15
219
252
235
18
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
108
252
252
160
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
138
252
252
160
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
138
252
252
202
11
0
0
0
0
0
0
0
0
0
0
0
74
199
188
11
0
0
0
0
0
0
0
0
76
253
253
253
23
0
0
0
0
0
0
0
0
0
0
0
162
253
253
23
0
0
0
0
0
0
0
0
9
194
252
252
117
22
0
0
0
0
0
0
0
0
0
0
161
252
252
22
0
0
0
0
0
0
0
0
0
65
234
252
252
153
25
0
0
0
0
0
0
0
0
0
161
252
252
22
0
0
0
0
0
0
0
0
0
0
65
236
252
253
202
93
17
0
0
0
0
0
0
104
236
252
252
22
0
0
0
0
0
0
0
0
0
0
0
61
242
253
252
252
234
178
116
42
85
157
230
253
252
252
252
22
0
0
0
0
0
0
0
0
0
0
0
0
53
179
234
253
253
253
255
253
253
253
253
244
253
253
253
23
0
0
0
0
0
0
0
0
0
0
0
0
0
0
17
92
92
143
207
214
218
164
92
65
252
252
252
22
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
13
19
0
0
24
252
252
252
22
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
24
252
252
252
22
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
24
252
252
252
22
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
24
253
253
253
23
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
19
236
252
252
22
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
161
252
252
22
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
161
252
252
22
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
57
252
252
22
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
