app
nil
l
l
app
cons
n
l
y
cons
n
app
l
y
reverse
nil
nil
reverse
cons
n
l
app
reverse
l
cons
n
nil
shuffle
nil
nil
shuffle
cons
n
l
cons
n
shuffle
reverse
l
fst
p
x
y
x
pshuffle
l
p
l
shuffle
l
prefixshuffle
z
nil
pcons
z
pnil
prefixshuffle
z
cons
n
l
pcons
z
prefixshuffle
apply2
x
pair
y
nat
pshuffle
app
fst
x
cons
y
nil
z
n
reverse
l
apply2
F
z
0
z
apply2
F
z
s
n
F
z
s
n
pps
l
prefixshuffle
p
nil
nil
l
n
nat
x
natlist
y
natlist
l
natlist
z
pair
F
pair
nat
pair
nil
natlist
pnil
plist
app
natlist
natlist
natlist
cons
nat
natlist
natlist
p
natlist
natlist
pair
pcons
pair
plist
plist
fst
pair
natlist
shuffle
natlist
natlist
reverse
natlist
natlist
pshuffle
natlist
pair
prefixshuffle
pair
natlist
plist
apply2
pair
nat
pair
pair
nat
pair
pps
natlist
plist
s
nat
nat
0
nat
FULL
.