0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
87
220
219
22
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
87
218
246
183
16
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
55
218
226
64
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
31
247
248
98
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
149
254
133
0
0
0
0
0
0
0
17
120
43
0
0
0
0
0
0
0
0
0
0
0
0
0
0
38
238
252
65
0
0
0
0
0
0
0
48
254
53
0
0
0
0
0
0
0
0
0
0
0
0
0
0
147
254
77
0
0
0
0
0
0
0
88
246
224
28
0
0
0
0
0
0
0
0
0
0
0
0
0
52
234
244
10
0
0
0
0
0
0
18
208
254
207
24
0
0
0
0
0
0
0
0
0
0
0
0
0
190
254
128
0
0
0
0
0
0
0
206
254
247
59
0
0
0
0
0
0
0
0
0
0
0
0
0
13
205
234
22
0
0
0
0
0
23
113
253
248
104
0
0
0
0
0
0
0
0
0
0
0
0
0
0
54
254
165
0
0
0
0
0
0
131
254
254
133
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
54
254
199
11
0
0
16
96
187
248
254
155
17
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
54
254
254
234
119
180
236
254
254
254
204
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
128
247
254
254
249
254
255
251
99
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
38
107
105
156
254
248
102
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
107
254
247
104
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
28
247
254
182
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
254
197
20
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
226
254
113
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
170
196
60
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
