a__U11
tt
N
X
XS
a__U12
a__splitAt
mark
N
mark
XS
X
a__U12
pair
YS
ZS
X
pair
cons
mark
X
YS
mark
ZS
a__afterNth
N
XS
a__snd
a__splitAt
mark
N
mark
XS
a__and
tt
X
mark
X
a__fst
pair
X
Y
mark
X
a__head
cons
N
XS
mark
N
a__natsFrom
N
cons
mark
N
natsFrom
s
N
a__sel
N
XS
a__head
a__afterNth
mark
N
mark
XS
a__snd
pair
X
Y
mark
Y
a__splitAt
0
XS
pair
nil
mark
XS
a__splitAt
s
N
cons
X
XS
a__U11
tt
N
X
XS
a__tail
cons
N
XS
mark
XS
a__take
N
XS
a__fst
a__splitAt
mark
N
mark
XS
mark
U11
X1
X2
X3
X4
a__U11
mark
X1
X2
X3
X4
mark
U12
X1
X2
a__U12
mark
X1
X2
mark
splitAt
X1
X2
a__splitAt
mark
X1
mark
X2
mark
afterNth
X1
X2
a__afterNth
mark
X1
mark
X2
mark
snd
X
a__snd
mark
X
mark
and
X1
X2
a__and
mark
X1
X2
mark
fst
X
a__fst
mark
X
mark
head
X
a__head
mark
X
mark
natsFrom
X
a__natsFrom
mark
X
mark
sel
X1
X2
a__sel
mark
X1
mark
X2
mark
tail
X
a__tail
mark
X
mark
take
X1
X2
a__take
mark
X1
mark
X2
mark
tt
tt
mark
pair
X1
X2
pair
mark
X1
mark
X2
mark
cons
X1
X2
cons
mark
X1
X2
mark
s
X
s
mark
X
mark
0
0
mark
nil
nil
a__U11
X1
X2
X3
X4
U11
X1
X2
X3
X4
a__U12
X1
X2
U12
X1
X2
a__splitAt
X1
X2
splitAt
X1
X2
a__afterNth
X1
X2
afterNth
X1
X2
a__snd
X
snd
X
a__and
X1
X2
and
X1
X2
a__fst
X
fst
X
a__head
X
head
X
a__natsFrom
X
natsFrom
X
a__sel
X1
X2
sel
X1
X2
a__tail
X
tail
X
a__take
X1
X2
take
X1
X2
2.2
a__U12
pair
YS
ZS
X
mark
ZS
a__afterNth
N
XS
a__splitAt
mark
N
mark
XS
mark
natsFrom
X
mark
X
mark
and
X1
X2
a__and
mark
X1
X2
a__U11
tt
N
X
XS
a__U12
a__splitAt
mark
N
mark
XS
X
a__afterNth
N
XS
a__snd
a__splitAt
mark
N
mark
XS
mark
splitAt
X1
X2
mark
X2
mark
head
X
a__head
mark
X
a__U11
tt
N
X
XS
a__splitAt
mark
N
mark
XS
a__sel
N
XS
mark
XS
a__U11
tt
N
X
XS
mark
N
mark
snd
X
mark
X
mark
head
X
mark
X
a__take
N
XS
a__splitAt
mark
N
mark
XS
mark
U12
X1
X2
mark
X1
mark
splitAt
X1
X2
mark
X1
a__sel
N
XS
a__afterNth
mark
N
mark
XS
mark
sel
X1
X2
a__sel
mark
X1
mark
X2
a__snd
pair
X
Y
mark
Y
mark
tail
X
a__tail
mark
X
mark
snd
X
a__snd
mark
X
a__natsFrom
N
mark
N
mark
fst
X
mark
X
a__afterNth
N
XS
mark
XS
mark
tail
X
mark
X
mark
pair
X1
X2
mark
X2
a__and
tt
X
mark
X
mark
sel
X1
X2
mark
X1
mark
pair
X1
X2
mark
X1
a__sel
N
XS
mark
N
a__U11
tt
N
X
XS
mark
XS
a__splitAt
0
XS
mark
XS
mark
take
X1
X2
mark
X1
a__take
N
XS
mark
N
mark
splitAt
X1
X2
a__splitAt
mark
X1
mark
X2
a__splitAt
s
N
cons
X
XS
a__U11
tt
N
X
XS
mark
afterNth
X1
X2
mark
X1
a__take
N
XS
a__fst
a__splitAt
mark
N
mark
XS
a__afterNth
N
XS
mark
N
mark
natsFrom
X
a__natsFrom
mark
X
mark
fst
X
a__fst
mark
X
mark
afterNth
X1
X2
mark
X2
mark
cons
X1
X2
mark
X1
mark
U11
X1
X2
X3
X4
a__U11
mark
X1
X2
X3
X4
mark
afterNth
X1
X2
a__afterNth
mark
X1
mark
X2
mark
take
X1
X2
a__take
mark
X1
mark
X2
a__fst
pair
X
Y
mark
X
mark
and
X1
X2
mark
X1
mark
take
X1
X2
mark
X2
a__tail
cons
N
XS
mark
XS
mark
s
X
mark
X
a__U12
pair
YS
ZS
X
mark
X
mark
U12
X1
X2
a__U12
mark
X1
X2
a__take
N
XS
mark
XS
mark
sel
X1
X2
mark
X2
a__head
cons
N
XS
mark
N
a__sel
N
XS
a__head
a__afterNth
mark
N
mark
XS
mark
U11
X1
X2
X3
X4
mark
X1
true
mark
U11
X1
X2
X3
X4
mark
X1
a__sel
N
XS
a__head
a__afterNth
mark
N
mark
XS
a__splitAt
0
XS
mark
XS
a__sel
N
XS
mark
N
a__U11
tt
N
X
XS
mark
XS
a__head
cons
N
XS
mark
N
mark
pair
X1
X2
mark
X1
mark
sel
X1
X2
mark
X1
mark
sel
X1
X2
mark
X2
a__and
tt
X
mark
X
mark
pair
X1
X2
mark
X2
mark
tail
X
mark
X
a__take
N
XS
mark
XS
a__afterNth
N
XS
mark
XS
mark
U12
X1
X2
a__U12
mark
X1
X2
a__U12
pair
YS
ZS
X
mark
X
mark
fst
X
mark
X
mark
s
X
mark
X
a__natsFrom
N
mark
N
a__tail
cons
N
XS
mark
XS
mark
take
X1
X2
mark
X2
mark
and
X1
X2
mark
X1
mark
snd
X
a__snd
mark
X
a__fst
pair
X
Y
mark
X
mark
tail
X
a__tail
mark
X
a__snd
pair
X
Y
mark
Y
mark
sel
X1
X2
a__sel
mark
X1
mark
X2
a__sel
N
XS
a__afterNth
mark
N
mark
XS
mark
afterNth
X1
X2
a__afterNth
mark
X1
mark
X2
mark
take
X1
X2
a__take
mark
X1
mark
X2
mark
U11
X1
X2
X3
X4
a__U11
mark
X1
X2
X3
X4
mark
splitAt
X1
X2
mark
X1
mark
U12
X1
X2
mark
X1
a__take
N
XS
a__splitAt
mark
N
mark
XS
mark
cons
X1
X2
mark
X1
mark
head
X
mark
X
mark
snd
X
mark
X
mark
afterNth
X1
X2
mark
X2
a__U11
tt
N
X
XS
mark
N
mark
fst
X
a__fst
mark
X
a__sel
N
XS
mark
XS
mark
natsFrom
X
a__natsFrom
mark
X
a__U11
tt
N
X
XS
a__splitAt
mark
N
mark
XS
a__afterNth
N
XS
mark
N
a__take
N
XS
a__fst
a__splitAt
mark
N
mark
XS
mark
head
X
a__head
mark
X
mark
afterNth
X1
X2
mark
X1
mark
splitAt
X1
X2
mark
X2
a__afterNth
N
XS
a__snd
a__splitAt
mark
N
mark
XS
a__splitAt
s
N
cons
X
XS
a__U11
tt
N
X
XS
a__U11
tt
N
X
XS
a__U12
a__splitAt
mark
N
mark
XS
X
mark
splitAt
X1
X2
a__splitAt
mark
X1
mark
X2
a__take
N
XS
mark
N
mark
and
X1
X2
a__and
mark
X1
X2
mark
natsFrom
X
mark
X
a__afterNth
N
XS
a__splitAt
mark
N
mark
XS
a__U12
pair
YS
ZS
X
mark
ZS
mark
take
X1
X2
mark
X1
true
U11
4
1
37657
2
37656
3
37656
4
37656
0
s
1
1
0
a__head
1
1
58481
a__natsFrom
1
1
87762
a__snd
1
1
37895
a__afterNth
2
1
37657
2
37659
0
take
2
1
37658
2
37657
0
and
2
1
7631
2
7630
0
pair
2
1
20588
2
20588
0
fst
1
1
1
natsFrom
1
1
29280
a__snd
1
1
1
splitAt
2
1
37656
2
37656
0
a__U11
4
1
79071
2
96136
3
96135
4
96137
0
a__take
2
1
96138
2
96138
0
U12
2
1
0
2
37656
0
a__U12
2
1
37894
2
96135
0
a__fst
1
1
1
a__natsFrom
1
1
29280
tail
1
1
0
mark
1
1
58482
0
0
60516
a__and
2
1
41416
2
58482
0
sel
2
1
37658
2
37659
0
afterNth
2
1
37657
2
37659
0
nil
0
12280
a__splitAt
2
1
37656
2
37656
0
a__sel
2
1
96139
2
96141
0
mark
1
1
0
a__U11
4
1
37657
2
37656
3
37656
4
37656
0
a__sel
2
1
37658
2
37659
0
a__U12
2
1
0
2
37656
0
head
1
1
0
a__afterNth
2
1
96138
2
96140
0
a__splitAt
2
1
96136
2
96137
0
cons
2
1
17068
2
0
0
snd
1
1
1
a__take
2
1
37658
2
37657
0
tt
0
17067
a__fst
1
1
37895
a__and
2
1
7631
2
7630
0
a__tail
1
1
0
a__tail
1
1
58482
a__head
1
1
0
a__U12
pair
YS
ZS
X
mark
ZS
a__U11
tt
N
X
XS
a__U12
a__splitAt
mark
N
mark
XS
X
a__splitAt
s
N
cons
X
XS
a__U11
tt
N
X
XS
a__U11
tt
N
X
XS
a__splitAt
mark
N
mark
XS
mark
natsFrom
X
a__natsFrom
mark
X
mark
head
X
mark
X
mark
U12
X1
X2
mark
X1
mark
sel
X1
X2
a__sel
mark
X1
mark
X2
mark
tail
X
a__tail
mark
X
a__tail
cons
N
XS
mark
XS
mark
s
X
mark
X
mark
tail
X
mark
X
a__and
tt
X
mark
X
mark
snd
X
a__snd
mark
X
a__and
tt
X
mark
X
mark
U12
X1
X2
a__U12
mark
X1
X2
a__sel
N
XS
a__head
a__afterNth
mark
N
mark
XS
a__U11
tt
N
X
XS
a__U12
a__splitAt
mark
N
mark
XS
X
a__afterNth
N
XS
a__snd
a__splitAt
mark
N
mark
XS
mark
splitAt
X1
X2
a__splitAt
mark
X1
mark
X2
mark
head
X
a__head
mark
X
a__snd
X
snd
X
mark
tt
tt
mark
and
X1
X2
a__and
mark
X1
X2
a__U11
X1
X2
X3
X4
U11
X1
X2
X3
X4
mark
afterNth
X1
X2
a__afterNth
mark
X1
mark
X2
mark
pair
X1
X2
pair
mark
X1
mark
X2
a__splitAt
X1
X2
splitAt
X1
X2
mark
natsFrom
X
a__natsFrom
mark
X
mark
cons
X1
X2
cons
mark
X1
X2
a__fst
pair
X
Y
mark
X
a__U12
X1
X2
U12
X1
X2
a__splitAt
0
XS
pair
nil
mark
XS
a__head
X
head
X
a__natsFrom
N
cons
mark
N
natsFrom
s
N
mark
fst
X
a__fst
mark
X
mark
take
X1
X2
a__take
mark
X1
mark
X2
mark
0
0
mark
U11
X1
X2
X3
X4
a__U11
mark
X1
X2
X3
X4
mark
nil
nil
a__tail
cons
N
XS
mark
XS
mark
sel
X1
X2
a__sel
mark
X1
mark
X2
mark
tail
X
a__tail
mark
X
a__splitAt
s
N
cons
X
XS
a__U11
tt
N
X
XS
a__snd
pair
X
Y
mark
Y
a__take
N
XS
a__fst
a__splitAt
mark
N
mark
XS
a__natsFrom
X
natsFrom
X
a__head
cons
N
XS
mark
N
a__fst
X
fst
X
a__and
X1
X2
and
X1
X2
a__sel
X1
X2
sel
X1
X2
a__tail
X
tail
X
a__afterNth
X1
X2
afterNth
X1
X2
mark
s
X
s
mark
X
a__take
X1
X2
take
X1
X2
a__U12
pair
YS
ZS
X
pair
cons
mark
X
YS
mark
ZS
a__and
tt
X
mark
X
false
a__U11
tt
N
X
XS
a__splitAt
mark
N
mark
XS
a__splitAt
s
N
cons
X
XS
a__U11
tt
N
X
XS
true
a__natsFrom
1
1
and
2
2
fst
1
1
a__snd
1
1
a__fst
1
1
mark
1
1
mark
1
1
snd
1
1
a__and
2
2
a__tail
1
1
U11
4
6
s
1
6
1
a__head
1
0
a__snd
1
0
a__afterNth
2
4
take
2
4
1
pair
2
0
natsFrom
1
5
splitAt
2
6
2
a__U11
4
3
2
a__take
2
0
1
2
U12
2
1
a__U12
2
0
1
a__natsFrom
1
5
tail
1
4
0
0
5
a__and
2
0
sel
2
3
2
afterNth
2
4
nil
0
6
a__splitAt
2
6
2
a__sel
2
0
a__U11
4
6
a__sel
2
3
2
a__U12
2
1
head
1
2
a__afterNth
2
0
2
a__splitAt
2
3
1
cons
2
2
a__take
2
4
1
tt
0
6
a__fst
1
0
a__tail
1
4
a__head
1
2
U11
4
1
24567
3
24568
4
24570
0
s
1
1
0
a__head
1
1
a__snd
1
1
a__afterNth
2
2
24571
take
2
1
2
24571
pair
2
1
12284
2
24569
0
natsFrom
1
1
12284
splitAt
2
2
24570
0
a__U11
4
1
0
2
12282
3
12285
4
12284
0
a__take
2
1
2
1
U12
2
1
0
2
24568
0
a__U12
2
1
1
0
a__natsFrom
1
1
12284
tail
1
1
1
0
0
0
a__and
2
1
1
sel
2
2
38080
afterNth
2
2
24571
nil
0
0
a__splitAt
2
2
24570
0
a__sel
2
2
1
a__U11
4
1
24567
3
24568
4
24570
0
a__sel
2
2
38080
a__U12
2
1
0
2
24568
0
head
1
1
13508
a__afterNth
2
2
1
a__splitAt
2
1
12282
2
12284
0
cons
2
1
12283
2
0
0
a__take
2
1
2
24571
tt
0
12283
a__fst
1
1
a__tail
1
1
1
a__head
1
1
13508
a__U11
tt
N
X
XS
a__splitAt
mark
N
mark
XS
mark
snd
X
a__snd
mark
X
a__and
tt
X
mark
X
mark
U12
X1
X2
a__U12
mark
X1
X2
a__sel
N
XS
a__head
a__afterNth
mark
N
mark
XS
a__U11
tt
N
X
XS
a__U12
a__splitAt
mark
N
mark
XS
X
a__afterNth
N
XS
a__snd
a__splitAt
mark
N
mark
XS
mark
splitAt
X1
X2
a__splitAt
mark
X1
mark
X2
mark
head
X
a__head
mark
X
a__snd
X
snd
X
mark
tt
tt
mark
and
X1
X2
a__and
mark
X1
X2
a__U11
X1
X2
X3
X4
U11
X1
X2
X3
X4
mark
afterNth
X1
X2
a__afterNth
mark
X1
mark
X2
mark
pair
X1
X2
pair
mark
X1
mark
X2
a__splitAt
X1
X2
splitAt
X1
X2
mark
natsFrom
X
a__natsFrom
mark
X
mark
cons
X1
X2
cons
mark
X1
X2
a__fst
pair
X
Y
mark
X
a__U12
X1
X2
U12
X1
X2
a__splitAt
0
XS
pair
nil
mark
XS
a__head
X
head
X
a__natsFrom
N
cons
mark
N
natsFrom
s
N
mark
fst
X
a__fst
mark
X
mark
take
X1
X2
a__take
mark
X1
mark
X2
mark
0
0
mark
U11
X1
X2
X3
X4
a__U11
mark
X1
X2
X3
X4
mark
nil
nil
a__tail
cons
N
XS
mark
XS
mark
sel
X1
X2
a__sel
mark
X1
mark
X2
mark
tail
X
a__tail
mark
X
a__splitAt
s
N
cons
X
XS
a__U11
tt
N
X
XS
a__snd
pair
X
Y
mark
Y
a__take
N
XS
a__fst
a__splitAt
mark
N
mark
XS
a__natsFrom
X
natsFrom
X
a__head
cons
N
XS
mark
N
a__fst
X
fst
X
a__and
X1
X2
and
X1
X2
a__sel
X1
X2
sel
X1
X2
a__tail
X
tail
X
a__afterNth
X1
X2
afterNth
X1
X2
mark
s
X
s
mark
X
a__take
X1
X2
take
X1
X2
a__U12
pair
YS
ZS
X
pair
cons
mark
X
YS
mark
ZS
a__U11
tt
N
X
XS
a__splitAt
mark
N
mark
XS
false
a__U11
tt
N
X
XS
a__U12
a__splitAt
mark
N
mark
XS
X
false
a__U12
pair
YS
ZS
X
mark
ZS
false
mark
U12
X1
X2
mark
X1
mark
head
X
mark
X
a__tail
cons
N
XS
mark
XS
mark
tail
X
mark
X
mark
tail
X
a__tail
mark
X
mark
s
X
mark
X
true
U11
4
1
4
3
3
4
2
0
s
1
1
0
a__head
1
58481
a__natsFrom
1
87762
a__snd
1
37895
a__afterNth
2
1
3
2
4
0
take
2
1
3
2
4
0
and
2
2
1
0
pair
2
1
1
2
2
0
fst
1
1
1
natsFrom
1
1
9049
a__snd
1
1
1
splitAt
2
2
2
0
a__U11
4
0
a__take
2
0
U12
2
1
0
2
3
0
a__U12
2
0
a__fst
1
1
1
a__natsFrom
1
1
9049
tail
1
1
2
mark
1
1
58481
0
0
25828
a__and
2
0
sel
2
1
4
2
5
0
afterNth
2
1
3
2
4
0
nil
0
1
a__splitAt
2
2
2
0
a__sel
2
0
mark
1
1
0
a__U11
4
1
4
3
3
4
2
0
a__sel
2
1
4
2
5
0
a__U12
2
1
0
2
3
0
head
1
1
1
a__afterNth
2
0
a__splitAt
2
0
cons
2
1
2
2
0
0
snd
1
1
1
a__take
2
1
3
2
4
0
tt
0
0
a__fst
1
37895
a__and
2
2
1
0
a__tail
1
1
2
a__tail
1
1
58482
a__head
1
1
1
mark
s
X
mark
X
mark
U12
X1
X2
mark
X1
mark
snd
X
a__snd
mark
X
a__and
tt
X
mark
X
mark
U12
X1
X2
a__U12
mark
X1
X2
a__sel
N
XS
a__head
a__afterNth
mark
N
mark
XS
a__U11
tt
N
X
XS
a__U12
a__splitAt
mark
N
mark
XS
X
a__afterNth
N
XS
a__snd
a__splitAt
mark
N
mark
XS
mark
splitAt
X1
X2
a__splitAt
mark
X1
mark
X2
mark
head
X
a__head
mark
X
a__snd
X
snd
X
mark
tt
tt
mark
and
X1
X2
a__and
mark
X1
X2
a__U11
X1
X2
X3
X4
U11
X1
X2
X3
X4
mark
afterNth
X1
X2
a__afterNth
mark
X1
mark
X2
mark
pair
X1
X2
pair
mark
X1
mark
X2
a__splitAt
X1
X2
splitAt
X1
X2
mark
natsFrom
X
a__natsFrom
mark
X
mark
cons
X1
X2
cons
mark
X1
X2
a__fst
pair
X
Y
mark
X
a__U12
X1
X2
U12
X1
X2
a__splitAt
0
XS
pair
nil
mark
XS
a__head
X
head
X
a__natsFrom
N
cons
mark
N
natsFrom
s
N
mark
fst
X
a__fst
mark
X
mark
take
X1
X2
a__take
mark
X1
mark
X2
mark
0
0
mark
U11
X1
X2
X3
X4
a__U11
mark
X1
X2
X3
X4
mark
nil
nil
a__tail
cons
N
XS
mark
XS
mark
sel
X1
X2
a__sel
mark
X1
mark
X2
mark
tail
X
a__tail
mark
X
a__splitAt
s
N
cons
X
XS
a__U11
tt
N
X
XS
a__snd
pair
X
Y
mark
Y
a__take
N
XS
a__fst
a__splitAt
mark
N
mark
XS
a__natsFrom
X
natsFrom
X
a__head
cons
N
XS
mark
N
a__fst
X
fst
X
a__and
X1
X2
and
X1
X2
a__sel
X1
X2
sel
X1
X2
a__tail
X
tail
X
a__afterNth
X1
X2
afterNth
X1
X2
mark
s
X
s
mark
X
a__take
X1
X2
take
X1
X2
a__U12
pair
YS
ZS
X
pair
cons
mark
X
YS
mark
ZS
mark
U12
X1
X2
mark
X1
mark
s
X
mark
X
true
U11
4
1
6
s
1
1
1
a__head
1
0
a__natsFrom
1
0
a__snd
1
0
a__afterNth
2
2
1
take
2
2
5
and
2
1
2
5
pair
2
1
1
fst
1
2
natsFrom
1
5
a__snd
1
2
splitAt
2
1
5
a__U11
4
0
a__take
2
0
U12
2
1
2
3
a__U12
2
0
a__fst
1
1
1
a__natsFrom
1
4
tail
1
1
5
mark
1
1
1
0
0
4
a__and
2
0
sel
2
1
2
afterNth
2
1
2
nil
0
4
a__splitAt
2
4
a__sel
2
0
mark
1
3
a__U11
4
4
5
a__sel
2
2
1
a__U12
2
1
2
head
1
5
a__afterNth
2
0
a__splitAt
2
0
cons
2
5
snd
1
3
a__take
2
4
tt
0
4
a__fst
1
0
a__and
2
4
a__tail
1
4
a__tail
1
0
a__head
1
1
4
mark
sel
X1
X2
a__sel
mark
X1
mark
X2
false
mark
natsFrom
X
a__natsFrom
mark
X
false
NaTT
certifiable-1.6