active
from
X
mark
cons
X
from
s
X
active
length
nil
mark
0
active
length
cons
X
Y
mark
s
length1
Y
active
length1
X
mark
length
X
mark
from
X
active
from
mark
X
mark
cons
X1
X2
active
cons
mark
X1
X2
mark
s
X
active
s
mark
X
mark
length
X
active
length
X
mark
nil
active
nil
mark
0
active
0
mark
length1
X
active
length1
X
from
mark
X
from
X
from
active
X
from
X
cons
mark
X1
X2
cons
X1
X2
cons
X1
mark
X2
cons
X1
X2
cons
active
X1
X2
cons
X1
X2
cons
X1
active
X2
cons
X1
X2
s
mark
X
s
X
s
active
X
s
X
length
mark
X
length
X
length
active
X
length
X
length1
mark
X
length1
X
length1
active
X
length1
X
2.2
mark
cons
X1
X2
active
cons
mark
X1
X2
active
from
X
from
s
X
s
mark
X
s
X
mark
nil
active
nil
mark
s
X
s
mark
X
from
mark
X
from
X
length
mark
X
length
X
active
length
cons
X
Y
mark
s
length1
Y
cons
active
X1
X2
cons
X1
X2
mark
s
X
active
s
mark
X
mark
length
X
active
length
X
mark
s
X
mark
X
active
from
X
s
X
active
length
cons
X
Y
s
length1
Y
cons
X1
active
X2
cons
X1
X2
mark
length1
X
active
length1
X
cons
mark
X1
X2
cons
X1
X2
active
length1
X
mark
length
X
from
active
X
from
X
active
from
X
cons
X
from
s
X
length
active
X
length
X
active
length1
X
length
X
active
from
X
mark
cons
X
from
s
X
mark
from
X
from
mark
X
cons
X1
mark
X2
cons
X1
X2
length1
mark
X
length1
X
active
length
cons
X
Y
length1
Y
s
active
X
s
X
mark
from
X
active
from
mark
X
mark
cons
X1
X2
cons
mark
X1
X2
active
length
nil
mark
0
length1
active
X
length1
X
mark
0
active
0
mark
cons
X1
X2
mark
X1
mark
from
X
mark
X
true
mark
from
X
mark
X
mark
cons
X1
X2
mark
X1
mark
s
X
mark
X
mark
length
X
active
length
X
mark
s
X
active
s
mark
X
active
length
cons
X
Y
mark
s
length1
Y
mark
from
X
active
from
mark
X
active
from
X
mark
cons
X
from
s
X
active
length1
X
mark
length
X
mark
length1
X
active
length1
X
mark
cons
X1
X2
active
cons
mark
X1
X2
true
cons
2
0
s
1
1
length1
1
0
length1
1
2
mark
1
2
0
0
1
from
1
2
s
1
0
nil
0
1
mark
1
2
from
1
0
active
1
1
0
cons
2
1
active
1
1
0
length
1
2
length
1
0
mark
length1
X
active
length1
X
active
length1
X
mark
length
X
active
from
X
mark
cons
X
from
s
X
mark
from
X
active
from
mark
X
active
length
cons
X
Y
mark
s
length1
Y
mark
length
X
active
length
X
mark
s
X
mark
X
mark
cons
X1
X2
mark
X1
mark
from
X
mark
X
s
mark
X
s
X
active
length1
X
mark
length
X
cons
X1
mark
X2
cons
X1
X2
mark
length
X
active
length
X
active
from
X
mark
cons
X
from
s
X
active
length
cons
X
Y
mark
s
length1
Y
cons
active
X1
X2
cons
X1
X2
length
active
X
length
X
s
active
X
s
X
cons
X1
active
X2
cons
X1
X2
length1
mark
X
length1
X
mark
from
X
active
from
mark
X
mark
0
active
0
mark
s
X
active
s
mark
X
length
mark
X
length
X
cons
mark
X1
X2
cons
X1
X2
from
mark
X
from
X
length1
active
X
length1
X
mark
length1
X
active
length1
X
mark
nil
active
nil
from
active
X
from
X
mark
cons
X1
X2
active
cons
mark
X1
X2
active
length
nil
mark
0
active
length1
X
mark
length
X
mark
length
X
active
length
X
active
from
X
mark
cons
X
from
s
X
active
length
cons
X
Y
mark
s
length1
Y
mark
from
X
mark
X
mark
from
X
active
from
mark
X
mark
s
X
mark
X
mark
length1
X
active
length1
X
mark
cons
X1
X2
mark
X1
true
cons
2
0
s
1
1
0
length1
1
0
length1
1
20977
mark
1
1
2
0
0
679
from
1
1
31894
s
1
0
nil
0
40587
mark
1
1
0
from
1
0
active
1
1
0
cons
2
1
1
active
1
1
2
length
1
20977
length
1
0
mark
length1
X
active
length1
X
mark
s
X
mark
X
mark
from
X
active
from
mark
X
active
length
cons
X
Y
mark
s
length1
Y
mark
length
X
active
length
X
active
length1
X
mark
length
X
s
mark
X
s
X
active
length1
X
mark
length
X
cons
X1
mark
X2
cons
X1
X2
mark
length
X
active
length
X
active
from
X
mark
cons
X
from
s
X
active
length
cons
X
Y
mark
s
length1
Y
cons
active
X1
X2
cons
X1
X2
length
active
X
length
X
s
active
X
s
X
cons
X1
active
X2
cons
X1
X2
length1
mark
X
length1
X
mark
from
X
active
from
mark
X
mark
0
active
0
mark
s
X
active
s
mark
X
length
mark
X
length
X
cons
mark
X1
X2
cons
X1
X2
from
mark
X
from
X
length1
active
X
length1
X
mark
length1
X
active
length1
X
mark
nil
active
nil
from
active
X
from
X
mark
cons
X1
X2
active
cons
mark
X1
X2
active
length
nil
mark
0
active
length1
X
mark
length
X
mark
length
X
active
length
X
active
length
cons
X
Y
mark
s
length1
Y
mark
from
X
active
from
mark
X
mark
s
X
mark
X
mark
length1
X
active
length1
X
true
cons
2
0
s
1
1
0
length1
1
0
length1
1
1
mark
1
1
1
0
0
1
from
1
1
6880
s
1
0
nil
0
29091
mark
1
1
2
from
1
0
active
1
1
1
cons
2
1
2
29534
active
1
2
length
1
1
length
1
0
mark
length1
X
active
length1
X
mark
s
X
mark
X
active
length
cons
X
Y
mark
s
length1
Y
mark
length
X
active
length
X
active
length1
X
mark
length
X
s
mark
X
s
X
cons
X1
mark
X2
cons
X1
X2
cons
active
X1
X2
cons
X1
X2
length
active
X
length
X
s
active
X
s
X
cons
X1
active
X2
cons
X1
X2
length1
mark
X
length1
X
length
mark
X
length
X
cons
mark
X1
X2
cons
X1
X2
from
mark
X
from
X
length1
active
X
length1
X
from
active
X
from
X
active
length1
X
mark
length
X
mark
length
X
active
length
X
active
length
cons
X
Y
mark
s
length1
Y
mark
s
X
mark
X
mark
length1
X
active
length1
X
true
cons
2
0
s
1
1
2438
length1
1
0
length1
1
1
3
mark
1
1
1
0
0
0
from
1
0
s
1
0
nil
0
0
mark
1
1
0
from
1
0
active
1
1
0
cons
2
1
2442
2
2442
0
active
1
1
0
length
1
1
1
length
1
0
s
mark
X
s
X
length
active
X
length
X
s
active
X
s
X
length1
mark
X
length1
X
length
mark
X
length
X
length1
active
X
length1
X
mark
cons
X1
X2
cons
mark
X1
X2
false
mark
nil
active
nil
false
active
length
nil
mark
0
false
mark
s
X
s
mark
X
false
mark
0
active
0
false
active
length
cons
X
Y
s
length1
Y
false
active
length
cons
X
Y
length1
Y
false
length1
active
X
length1
X
length1
mark
X
length1
X
true
cons
2
0
s
1
26448
length1
1
1
0
length1
1
1
mark
1
0
0
0
43715
from
1
7177
s
1
0
nil
0
24446
mark
1
1
1
from
1
0
active
1
1
2
cons
2
1
7179
active
1
0
length
1
1
19267
length
1
0
s
mark
X
s
X
s
active
X
s
X
length1
mark
X
length1
X
length1
active
X
length1
X
mark
from
X
from
mark
X
false
active
from
X
cons
X
from
s
X
false
active
from
X
from
s
X
false
from
mark
X
from
X
from
active
X
from
X
true
cons
2
0
s
1
91980
length1
1
0
length1
1
1
mark
1
0
0
0
85653
from
1
8405
s
1
0
nil
0
29936
mark
1
1
1
from
1
1
0
active
1
1
27858
cons
2
1
36263
active
1
0
length
1
1
27859
length
1
0
s
mark
X
s
X
s
active
X
s
X
length1
mark
X
length1
X
length1
active
X
length1
X
active
from
X
s
X
false
s
active
X
s
X
s
mark
X
s
X
true
cons
2
0
s
1
92124
length1
1
0
length1
1
1
mark
1
0
0
0
85653
from
1
18005
s
1
1
0
nil
0
33088
mark
1
1
16674
from
1
0
active
1
1
41379
cons
2
1
42711
active
1
0
length
1
1
24707
length
1
0
s
mark
X
s
X
s
active
X
s
X
length1
mark
X
length1
X
length1
active
X
length1
X
active
length1
X
length
X
false
length
mark
X
length
X
length
active
X
length
X
true
cons
2
0
s
1
34772
length1
1
0
length1
1
28938
mark
1
0
0
0
32095
from
1
5828
s
1
0
nil
0
1
mark
1
1
16674
from
1
0
active
1
1
16675
cons
2
1
5830
active
1
0
length
1
1
28940
length
1
1
0
s
mark
X
s
X
s
active
X
s
X
length1
mark
X
length1
X
length1
active
X
length1
X
cons
active
X1
X2
cons
X1
X2
cons
X1
mark
X2
cons
X1
X2
cons
mark
X1
X2
cons
X1
X2
cons
X1
active
X2
cons
X1
X2
true
cons
2
1
2
0
s
1
34772
length1
1
0
length1
1
1
mark
1
0
0
0
6
from
1
1
s
1
0
nil
0
1
mark
1
1
16674
from
1
0
active
1
1
16675
cons
2
1
3
active
1
0
length
1
1
3
length
1
0
s
mark
X
s
X
s
active
X
s
X
length1
mark
X
length1
X
length1
active
X
length1
X
NaTT
certifiable-1.6