0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
51
138
244
118
17
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
66
194
252
207
236
227
50
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
34
234
252
136
0
65
234
227
17
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
140
252
176
4
0
0
90
252
117
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
161
252
160
0
0
0
38
232
242
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
43
247
98
0
0
0
0
145
253
116
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
67
17
0
0
0
0
34
238
136
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
230
230
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
230
230
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
43
240
126
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
93
253
116
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
13
174
252
95
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
38
70
70
44
0
0
0
70
252
221
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
95
233
252
252
236
155
85
17
188
252
43
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
168
253
178
137
232
252
251
182
252
210
12
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
231
255
103
0
43
231
255
253
205
21
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
209
253
214
26
47
193
253
252
69
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
116
253
252
221
252
252
253
231
37
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
21
169
252
252
252
210
109
219
162
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
22
22
22
12
0
88
162
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
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
