0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
159
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
250
67
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
102
209
41
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
146
179
106
106
107
106
106
132
211
150
27
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
36
162
253
253
212
225
253
253
174
255
63
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
6
63
63
0
21
107
63
82
253
63
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
59
249
250
58
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
41
190
252
115
0
54
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
80
223
252
252
168
211
246
211
211
107
71
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
210
253
253
253
253
212
131
53
0
0
62
141
232
156
7
0
0
0
0
0
0
0
0
0
0
0
0
0
218
252
210
141
63
0
0
0
0
0
0
0
41
224
156
0
0
0
0
0
0
0
0
0
0
0
0
0
12
21
11
0
0
0
0
0
0
0
0
0
2
176
252
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
119
252
226
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
116
249
226
42
0
0
0
0
0
0
0
0
0
0
66
253
253
36
0
0
0
0
0
0
0
0
36
210
253
223
80
0
0
0
0
0
0
0
0
0
0
0
6
133
239
243
155
43
0
0
0
64
94
190
242
253
189
40
0
0
0
0
0
0
0
0
0
0
0
0
0
0
17
83
126
223
232
232
233
247
251
231
143
65
5
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
42
84
84
145
153
77
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
