Runtime Complexity TRS:
The TRS R consists of the following rules:

active(U101(tt, V1, V2)) → mark(U102(isNaturalKind(V1), V1, V2))
active(U102(tt, V1, V2)) → mark(U103(isLNatKind(V2), V1, V2))
active(U103(tt, V1, V2)) → mark(U104(isLNatKind(V2), V1, V2))
active(U104(tt, V1, V2)) → mark(U105(isNatural(V1), V2))
active(U105(tt, V2)) → mark(U106(isLNat(V2)))
active(U106(tt)) → mark(tt)
active(U11(tt, N, XS)) → mark(U12(isNaturalKind(N), N, XS))
active(U111(tt, V2)) → mark(U112(isLNatKind(V2)))
active(U112(tt)) → mark(tt)
active(U12(tt, N, XS)) → mark(U13(isLNat(XS), N, XS))
active(U121(tt, V2)) → mark(U122(isLNatKind(V2)))
active(U122(tt)) → mark(tt)
active(U13(tt, N, XS)) → mark(U14(isLNatKind(XS), N, XS))
active(U131(tt)) → mark(tt)
active(U14(tt, N, XS)) → mark(snd(splitAt(N, XS)))
active(U141(tt)) → mark(tt)
active(U151(tt)) → mark(tt)
active(U161(tt)) → mark(tt)
active(U171(tt, V2)) → mark(U172(isLNatKind(V2)))
active(U172(tt)) → mark(tt)
active(U181(tt, V1)) → mark(U182(isLNatKind(V1), V1))
active(U182(tt, V1)) → mark(U183(isLNat(V1)))
active(U183(tt)) → mark(tt)
active(U191(tt, V1)) → mark(U192(isNaturalKind(V1), V1))
active(U192(tt, V1)) → mark(U193(isNatural(V1)))
active(U193(tt)) → mark(tt)
active(U201(tt, V1, V2)) → mark(U202(isNaturalKind(V1), V1, V2))
active(U202(tt, V1, V2)) → mark(U203(isLNatKind(V2), V1, V2))
active(U203(tt, V1, V2)) → mark(U204(isLNatKind(V2), V1, V2))
active(U204(tt, V1, V2)) → mark(U205(isNatural(V1), V2))
active(U205(tt, V2)) → mark(U206(isLNat(V2)))
active(U206(tt)) → mark(tt)
active(U21(tt, X, Y)) → mark(U22(isLNatKind(X), X, Y))
active(U211(tt)) → mark(tt)
active(U22(tt, X, Y)) → mark(U23(isLNat(Y), X, Y))
active(U221(tt)) → mark(tt)
active(U23(tt, X, Y)) → mark(U24(isLNatKind(Y), X))
active(U231(tt, V2)) → mark(U232(isLNatKind(V2)))
active(U232(tt)) → mark(tt)
active(U24(tt, X)) → mark(X)
active(U241(tt, V1, V2)) → mark(U242(isLNatKind(V1), V1, V2))
active(U242(tt, V1, V2)) → mark(U243(isLNatKind(V2), V1, V2))
active(U243(tt, V1, V2)) → mark(U244(isLNatKind(V2), V1, V2))
active(U244(tt, V1, V2)) → mark(U245(isLNat(V1), V2))
active(U245(tt, V2)) → mark(U246(isLNat(V2)))
active(U246(tt)) → mark(tt)
active(U251(tt, V1, V2)) → mark(U252(isNaturalKind(V1), V1, V2))
active(U252(tt, V1, V2)) → mark(U253(isLNatKind(V2), V1, V2))
active(U253(tt, V1, V2)) → mark(U254(isLNatKind(V2), V1, V2))
active(U254(tt, V1, V2)) → mark(U255(isNatural(V1), V2))
active(U255(tt, V2)) → mark(U256(isLNat(V2)))
active(U256(tt)) → mark(tt)
active(U261(tt, V2)) → mark(U262(isLNatKind(V2)))
active(U262(tt)) → mark(tt)
active(U271(tt, V2)) → mark(U272(isLNatKind(V2)))
active(U272(tt)) → mark(tt)
active(U281(tt, N)) → mark(U282(isNaturalKind(N), N))
active(U282(tt, N)) → mark(cons(N, natsFrom(s(N))))
active(U291(tt, N, XS)) → mark(U292(isNaturalKind(N), N, XS))
active(U292(tt, N, XS)) → mark(U293(isLNat(XS), N, XS))
active(U293(tt, N, XS)) → mark(U294(isLNatKind(XS), N, XS))
active(U294(tt, N, XS)) → mark(head(afterNth(N, XS)))
active(U301(tt, X, Y)) → mark(U302(isLNatKind(X), Y))
active(U302(tt, Y)) → mark(U303(isLNat(Y), Y))
active(U303(tt, Y)) → mark(U304(isLNatKind(Y), Y))
active(U304(tt, Y)) → mark(Y)
active(U31(tt, N, XS)) → mark(U32(isNaturalKind(N), N, XS))
active(U311(tt, XS)) → mark(U312(isLNatKind(XS), XS))
active(U312(tt, XS)) → mark(pair(nil, XS))
active(U32(tt, N, XS)) → mark(U33(isLNat(XS), N, XS))
active(U321(tt, N, X, XS)) → mark(U322(isNaturalKind(N), N, X, XS))
active(U322(tt, N, X, XS)) → mark(U323(isNatural(X), N, X, XS))
active(U323(tt, N, X, XS)) → mark(U324(isNaturalKind(X), N, X, XS))
active(U324(tt, N, X, XS)) → mark(U325(isLNat(XS), N, X, XS))
active(U325(tt, N, X, XS)) → mark(U326(isLNatKind(XS), N, X, XS))
active(U326(tt, N, X, XS)) → mark(U327(splitAt(N, XS), X))
active(U327(pair(YS, ZS), X)) → mark(pair(cons(X, YS), ZS))
active(U33(tt, N, XS)) → mark(U34(isLNatKind(XS), N))
active(U331(tt, N, XS)) → mark(U332(isNaturalKind(N), XS))
active(U332(tt, XS)) → mark(U333(isLNat(XS), XS))
active(U333(tt, XS)) → mark(U334(isLNatKind(XS), XS))
active(U334(tt, XS)) → mark(XS)
active(U34(tt, N)) → mark(N)
active(U341(tt, N, XS)) → mark(U342(isNaturalKind(N), N, XS))
active(U342(tt, N, XS)) → mark(U343(isLNat(XS), N, XS))
active(U343(tt, N, XS)) → mark(U344(isLNatKind(XS), N, XS))
active(U344(tt, N, XS)) → mark(fst(splitAt(N, XS)))
active(U41(tt, V1, V2)) → mark(U42(isNaturalKind(V1), V1, V2))
active(U42(tt, V1, V2)) → mark(U43(isLNatKind(V2), V1, V2))
active(U43(tt, V1, V2)) → mark(U44(isLNatKind(V2), V1, V2))
active(U44(tt, V1, V2)) → mark(U45(isNatural(V1), V2))
active(U45(tt, V2)) → mark(U46(isLNat(V2)))
active(U46(tt)) → mark(tt)
active(U51(tt, V1, V2)) → mark(U52(isNaturalKind(V1), V1, V2))
active(U52(tt, V1, V2)) → mark(U53(isLNatKind(V2), V1, V2))
active(U53(tt, V1, V2)) → mark(U54(isLNatKind(V2), V1, V2))
active(U54(tt, V1, V2)) → mark(U55(isNatural(V1), V2))
active(U55(tt, V2)) → mark(U56(isLNat(V2)))
active(U56(tt)) → mark(tt)
active(U61(tt, V1)) → mark(U62(isPLNatKind(V1), V1))
active(U62(tt, V1)) → mark(U63(isPLNat(V1)))
active(U63(tt)) → mark(tt)
active(U71(tt, V1)) → mark(U72(isNaturalKind(V1), V1))
active(U72(tt, V1)) → mark(U73(isNatural(V1)))
active(U73(tt)) → mark(tt)
active(U81(tt, V1)) → mark(U82(isPLNatKind(V1), V1))
active(U82(tt, V1)) → mark(U83(isPLNat(V1)))
active(U83(tt)) → mark(tt)
active(U91(tt, V1)) → mark(U92(isLNatKind(V1), V1))
active(U92(tt, V1)) → mark(U93(isLNat(V1)))
active(U93(tt)) → mark(tt)
active(afterNth(N, XS)) → mark(U11(isNatural(N), N, XS))
active(fst(pair(X, Y))) → mark(U21(isLNat(X), X, Y))
active(head(cons(N, XS))) → mark(U31(isNatural(N), N, XS))
active(isLNat(nil)) → mark(tt)
active(isLNat(afterNth(V1, V2))) → mark(U41(isNaturalKind(V1), V1, V2))
active(isLNat(cons(V1, V2))) → mark(U51(isNaturalKind(V1), V1, V2))
active(isLNat(fst(V1))) → mark(U61(isPLNatKind(V1), V1))
active(isLNat(natsFrom(V1))) → mark(U71(isNaturalKind(V1), V1))
active(isLNat(snd(V1))) → mark(U81(isPLNatKind(V1), V1))
active(isLNat(tail(V1))) → mark(U91(isLNatKind(V1), V1))
active(isLNat(take(V1, V2))) → mark(U101(isNaturalKind(V1), V1, V2))
active(isLNatKind(nil)) → mark(tt)
active(isLNatKind(afterNth(V1, V2))) → mark(U111(isNaturalKind(V1), V2))
active(isLNatKind(cons(V1, V2))) → mark(U121(isNaturalKind(V1), V2))
active(isLNatKind(fst(V1))) → mark(U131(isPLNatKind(V1)))
active(isLNatKind(natsFrom(V1))) → mark(U141(isNaturalKind(V1)))
active(isLNatKind(snd(V1))) → mark(U151(isPLNatKind(V1)))
active(isLNatKind(tail(V1))) → mark(U161(isLNatKind(V1)))
active(isLNatKind(take(V1, V2))) → mark(U171(isNaturalKind(V1), V2))
active(isNatural(0)) → mark(tt)
active(isNatural(head(V1))) → mark(U181(isLNatKind(V1), V1))
active(isNatural(s(V1))) → mark(U191(isNaturalKind(V1), V1))
active(isNatural(sel(V1, V2))) → mark(U201(isNaturalKind(V1), V1, V2))
active(isNaturalKind(0)) → mark(tt)
active(isNaturalKind(head(V1))) → mark(U211(isLNatKind(V1)))
active(isNaturalKind(s(V1))) → mark(U221(isNaturalKind(V1)))
active(isNaturalKind(sel(V1, V2))) → mark(U231(isNaturalKind(V1), V2))
active(isPLNat(pair(V1, V2))) → mark(U241(isLNatKind(V1), V1, V2))
active(isPLNat(splitAt(V1, V2))) → mark(U251(isNaturalKind(V1), V1, V2))
active(isPLNatKind(pair(V1, V2))) → mark(U261(isLNatKind(V1), V2))
active(isPLNatKind(splitAt(V1, V2))) → mark(U271(isNaturalKind(V1), V2))
active(natsFrom(N)) → mark(U281(isNatural(N), N))
active(sel(N, XS)) → mark(U291(isNatural(N), N, XS))
active(snd(pair(X, Y))) → mark(U301(isLNat(X), X, Y))
active(splitAt(0, XS)) → mark(U311(isLNat(XS), XS))
active(splitAt(s(N), cons(X, XS))) → mark(U321(isNatural(N), N, X, XS))
active(tail(cons(N, XS))) → mark(U331(isNatural(N), N, XS))
active(take(N, XS)) → mark(U341(isNatural(N), N, XS))
active(U101(X1, X2, X3)) → U101(active(X1), X2, X3)
active(U102(X1, X2, X3)) → U102(active(X1), X2, X3)
active(U103(X1, X2, X3)) → U103(active(X1), X2, X3)
active(U104(X1, X2, X3)) → U104(active(X1), X2, X3)
active(U105(X1, X2)) → U105(active(X1), X2)
active(U106(X)) → U106(active(X))
active(U11(X1, X2, X3)) → U11(active(X1), X2, X3)
active(U12(X1, X2, X3)) → U12(active(X1), X2, X3)
active(U111(X1, X2)) → U111(active(X1), X2)
active(U112(X)) → U112(active(X))
active(U13(X1, X2, X3)) → U13(active(X1), X2, X3)
active(U121(X1, X2)) → U121(active(X1), X2)
active(U122(X)) → U122(active(X))
active(U14(X1, X2, X3)) → U14(active(X1), X2, X3)
active(U131(X)) → U131(active(X))
active(snd(X)) → snd(active(X))
active(splitAt(X1, X2)) → splitAt(active(X1), X2)
active(splitAt(X1, X2)) → splitAt(X1, active(X2))
active(U141(X)) → U141(active(X))
active(U151(X)) → U151(active(X))
active(U161(X)) → U161(active(X))
active(U171(X1, X2)) → U171(active(X1), X2)
active(U172(X)) → U172(active(X))
active(U181(X1, X2)) → U181(active(X1), X2)
active(U182(X1, X2)) → U182(active(X1), X2)
active(U183(X)) → U183(active(X))
active(U191(X1, X2)) → U191(active(X1), X2)
active(U192(X1, X2)) → U192(active(X1), X2)
active(U193(X)) → U193(active(X))
active(U201(X1, X2, X3)) → U201(active(X1), X2, X3)
active(U202(X1, X2, X3)) → U202(active(X1), X2, X3)
active(U203(X1, X2, X3)) → U203(active(X1), X2, X3)
active(U204(X1, X2, X3)) → U204(active(X1), X2, X3)
active(U205(X1, X2)) → U205(active(X1), X2)
active(U206(X)) → U206(active(X))
active(U21(X1, X2, X3)) → U21(active(X1), X2, X3)
active(U22(X1, X2, X3)) → U22(active(X1), X2, X3)
active(U211(X)) → U211(active(X))
active(U23(X1, X2, X3)) → U23(active(X1), X2, X3)
active(U221(X)) → U221(active(X))
active(U24(X1, X2)) → U24(active(X1), X2)
active(U231(X1, X2)) → U231(active(X1), X2)
active(U232(X)) → U232(active(X))
active(U241(X1, X2, X3)) → U241(active(X1), X2, X3)
active(U242(X1, X2, X3)) → U242(active(X1), X2, X3)
active(U243(X1, X2, X3)) → U243(active(X1), X2, X3)
active(U244(X1, X2, X3)) → U244(active(X1), X2, X3)
active(U245(X1, X2)) → U245(active(X1), X2)
active(U246(X)) → U246(active(X))
active(U251(X1, X2, X3)) → U251(active(X1), X2, X3)
active(U252(X1, X2, X3)) → U252(active(X1), X2, X3)
active(U253(X1, X2, X3)) → U253(active(X1), X2, X3)
active(U254(X1, X2, X3)) → U254(active(X1), X2, X3)
active(U255(X1, X2)) → U255(active(X1), X2)
active(U256(X)) → U256(active(X))
active(U261(X1, X2)) → U261(active(X1), X2)
active(U262(X)) → U262(active(X))
active(U271(X1, X2)) → U271(active(X1), X2)
active(U272(X)) → U272(active(X))
active(U281(X1, X2)) → U281(active(X1), X2)
active(U282(X1, X2)) → U282(active(X1), X2)
active(cons(X1, X2)) → cons(active(X1), X2)
active(natsFrom(X)) → natsFrom(active(X))
active(s(X)) → s(active(X))
active(U291(X1, X2, X3)) → U291(active(X1), X2, X3)
active(U292(X1, X2, X3)) → U292(active(X1), X2, X3)
active(U293(X1, X2, X3)) → U293(active(X1), X2, X3)
active(U294(X1, X2, X3)) → U294(active(X1), X2, X3)
active(head(X)) → head(active(X))
active(afterNth(X1, X2)) → afterNth(active(X1), X2)
active(afterNth(X1, X2)) → afterNth(X1, active(X2))
active(U301(X1, X2, X3)) → U301(active(X1), X2, X3)
active(U302(X1, X2)) → U302(active(X1), X2)
active(U303(X1, X2)) → U303(active(X1), X2)
active(U304(X1, X2)) → U304(active(X1), X2)
active(U31(X1, X2, X3)) → U31(active(X1), X2, X3)
active(U32(X1, X2, X3)) → U32(active(X1), X2, X3)
active(U311(X1, X2)) → U311(active(X1), X2)
active(U312(X1, X2)) → U312(active(X1), X2)
active(pair(X1, X2)) → pair(active(X1), X2)
active(pair(X1, X2)) → pair(X1, active(X2))
active(U33(X1, X2, X3)) → U33(active(X1), X2, X3)
active(U321(X1, X2, X3, X4)) → U321(active(X1), X2, X3, X4)
active(U322(X1, X2, X3, X4)) → U322(active(X1), X2, X3, X4)
active(U323(X1, X2, X3, X4)) → U323(active(X1), X2, X3, X4)
active(U324(X1, X2, X3, X4)) → U324(active(X1), X2, X3, X4)
active(U325(X1, X2, X3, X4)) → U325(active(X1), X2, X3, X4)
active(U326(X1, X2, X3, X4)) → U326(active(X1), X2, X3, X4)
active(U327(X1, X2)) → U327(active(X1), X2)
active(U34(X1, X2)) → U34(active(X1), X2)
active(U331(X1, X2, X3)) → U331(active(X1), X2, X3)
active(U332(X1, X2)) → U332(active(X1), X2)
active(U333(X1, X2)) → U333(active(X1), X2)
active(U334(X1, X2)) → U334(active(X1), X2)
active(U341(X1, X2, X3)) → U341(active(X1), X2, X3)
active(U342(X1, X2, X3)) → U342(active(X1), X2, X3)
active(U343(X1, X2, X3)) → U343(active(X1), X2, X3)
active(U344(X1, X2, X3)) → U344(active(X1), X2, X3)
active(fst(X)) → fst(active(X))
active(U41(X1, X2, X3)) → U41(active(X1), X2, X3)
active(U42(X1, X2, X3)) → U42(active(X1), X2, X3)
active(U43(X1, X2, X3)) → U43(active(X1), X2, X3)
active(U44(X1, X2, X3)) → U44(active(X1), X2, X3)
active(U45(X1, X2)) → U45(active(X1), X2)
active(U46(X)) → U46(active(X))
active(U51(X1, X2, X3)) → U51(active(X1), X2, X3)
active(U52(X1, X2, X3)) → U52(active(X1), X2, X3)
active(U53(X1, X2, X3)) → U53(active(X1), X2, X3)
active(U54(X1, X2, X3)) → U54(active(X1), X2, X3)
active(U55(X1, X2)) → U55(active(X1), X2)
active(U56(X)) → U56(active(X))
active(U61(X1, X2)) → U61(active(X1), X2)
active(U62(X1, X2)) → U62(active(X1), X2)
active(U63(X)) → U63(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X1, X2)) → U72(active(X1), X2)
active(U73(X)) → U73(active(X))
active(U81(X1, X2)) → U81(active(X1), X2)
active(U82(X1, X2)) → U82(active(X1), X2)
active(U83(X)) → U83(active(X))
active(U91(X1, X2)) → U91(active(X1), X2)
active(U92(X1, X2)) → U92(active(X1), X2)
active(U93(X)) → U93(active(X))
active(tail(X)) → tail(active(X))
active(take(X1, X2)) → take(active(X1), X2)
active(take(X1, X2)) → take(X1, active(X2))
active(sel(X1, X2)) → sel(active(X1), X2)
active(sel(X1, X2)) → sel(X1, active(X2))
U101(mark(X1), X2, X3) → mark(U101(X1, X2, X3))
U102(mark(X1), X2, X3) → mark(U102(X1, X2, X3))
U103(mark(X1), X2, X3) → mark(U103(X1, X2, X3))
U104(mark(X1), X2, X3) → mark(U104(X1, X2, X3))
U105(mark(X1), X2) → mark(U105(X1, X2))
U106(mark(X)) → mark(U106(X))
U11(mark(X1), X2, X3) → mark(U11(X1, X2, X3))
U12(mark(X1), X2, X3) → mark(U12(X1, X2, X3))
U111(mark(X1), X2) → mark(U111(X1, X2))
U112(mark(X)) → mark(U112(X))
U13(mark(X1), X2, X3) → mark(U13(X1, X2, X3))
U121(mark(X1), X2) → mark(U121(X1, X2))
U122(mark(X)) → mark(U122(X))
U14(mark(X1), X2, X3) → mark(U14(X1, X2, X3))
U131(mark(X)) → mark(U131(X))
snd(mark(X)) → mark(snd(X))
splitAt(mark(X1), X2) → mark(splitAt(X1, X2))
splitAt(X1, mark(X2)) → mark(splitAt(X1, X2))
U141(mark(X)) → mark(U141(X))
U151(mark(X)) → mark(U151(X))
U161(mark(X)) → mark(U161(X))
U171(mark(X1), X2) → mark(U171(X1, X2))
U172(mark(X)) → mark(U172(X))
U181(mark(X1), X2) → mark(U181(X1, X2))
U182(mark(X1), X2) → mark(U182(X1, X2))
U183(mark(X)) → mark(U183(X))
U191(mark(X1), X2) → mark(U191(X1, X2))
U192(mark(X1), X2) → mark(U192(X1, X2))
U193(mark(X)) → mark(U193(X))
U201(mark(X1), X2, X3) → mark(U201(X1, X2, X3))
U202(mark(X1), X2, X3) → mark(U202(X1, X2, X3))
U203(mark(X1), X2, X3) → mark(U203(X1, X2, X3))
U204(mark(X1), X2, X3) → mark(U204(X1, X2, X3))
U205(mark(X1), X2) → mark(U205(X1, X2))
U206(mark(X)) → mark(U206(X))
U21(mark(X1), X2, X3) → mark(U21(X1, X2, X3))
U22(mark(X1), X2, X3) → mark(U22(X1, X2, X3))
U211(mark(X)) → mark(U211(X))
U23(mark(X1), X2, X3) → mark(U23(X1, X2, X3))
U221(mark(X)) → mark(U221(X))
U24(mark(X1), X2) → mark(U24(X1, X2))
U231(mark(X1), X2) → mark(U231(X1, X2))
U232(mark(X)) → mark(U232(X))
U241(mark(X1), X2, X3) → mark(U241(X1, X2, X3))
U242(mark(X1), X2, X3) → mark(U242(X1, X2, X3))
U243(mark(X1), X2, X3) → mark(U243(X1, X2, X3))
U244(mark(X1), X2, X3) → mark(U244(X1, X2, X3))
U245(mark(X1), X2) → mark(U245(X1, X2))
U246(mark(X)) → mark(U246(X))
U251(mark(X1), X2, X3) → mark(U251(X1, X2, X3))
U252(mark(X1), X2, X3) → mark(U252(X1, X2, X3))
U253(mark(X1), X2, X3) → mark(U253(X1, X2, X3))
U254(mark(X1), X2, X3) → mark(U254(X1, X2, X3))
U255(mark(X1), X2) → mark(U255(X1, X2))
U256(mark(X)) → mark(U256(X))
U261(mark(X1), X2) → mark(U261(X1, X2))
U262(mark(X)) → mark(U262(X))
U271(mark(X1), X2) → mark(U271(X1, X2))
U272(mark(X)) → mark(U272(X))
U281(mark(X1), X2) → mark(U281(X1, X2))
U282(mark(X1), X2) → mark(U282(X1, X2))
cons(mark(X1), X2) → mark(cons(X1, X2))
natsFrom(mark(X)) → mark(natsFrom(X))
s(mark(X)) → mark(s(X))
U291(mark(X1), X2, X3) → mark(U291(X1, X2, X3))
U292(mark(X1), X2, X3) → mark(U292(X1, X2, X3))
U293(mark(X1), X2, X3) → mark(U293(X1, X2, X3))
U294(mark(X1), X2, X3) → mark(U294(X1, X2, X3))
head(mark(X)) → mark(head(X))
afterNth(mark(X1), X2) → mark(afterNth(X1, X2))
afterNth(X1, mark(X2)) → mark(afterNth(X1, X2))
U301(mark(X1), X2, X3) → mark(U301(X1, X2, X3))
U302(mark(X1), X2) → mark(U302(X1, X2))
U303(mark(X1), X2) → mark(U303(X1, X2))
U304(mark(X1), X2) → mark(U304(X1, X2))
U31(mark(X1), X2, X3) → mark(U31(X1, X2, X3))
U32(mark(X1), X2, X3) → mark(U32(X1, X2, X3))
U311(mark(X1), X2) → mark(U311(X1, X2))
U312(mark(X1), X2) → mark(U312(X1, X2))
pair(mark(X1), X2) → mark(pair(X1, X2))
pair(X1, mark(X2)) → mark(pair(X1, X2))
U33(mark(X1), X2, X3) → mark(U33(X1, X2, X3))
U321(mark(X1), X2, X3, X4) → mark(U321(X1, X2, X3, X4))
U322(mark(X1), X2, X3, X4) → mark(U322(X1, X2, X3, X4))
U323(mark(X1), X2, X3, X4) → mark(U323(X1, X2, X3, X4))
U324(mark(X1), X2, X3, X4) → mark(U324(X1, X2, X3, X4))
U325(mark(X1), X2, X3, X4) → mark(U325(X1, X2, X3, X4))
U326(mark(X1), X2, X3, X4) → mark(U326(X1, X2, X3, X4))
U327(mark(X1), X2) → mark(U327(X1, X2))
U34(mark(X1), X2) → mark(U34(X1, X2))
U331(mark(X1), X2, X3) → mark(U331(X1, X2, X3))
U332(mark(X1), X2) → mark(U332(X1, X2))
U333(mark(X1), X2) → mark(U333(X1, X2))
U334(mark(X1), X2) → mark(U334(X1, X2))
U341(mark(X1), X2, X3) → mark(U341(X1, X2, X3))
U342(mark(X1), X2, X3) → mark(U342(X1, X2, X3))
U343(mark(X1), X2, X3) → mark(U343(X1, X2, X3))
U344(mark(X1), X2, X3) → mark(U344(X1, X2, X3))
fst(mark(X)) → mark(fst(X))
U41(mark(X1), X2, X3) → mark(U41(X1, X2, X3))
U42(mark(X1), X2, X3) → mark(U42(X1, X2, X3))
U43(mark(X1), X2, X3) → mark(U43(X1, X2, X3))
U44(mark(X1), X2, X3) → mark(U44(X1, X2, X3))
U45(mark(X1), X2) → mark(U45(X1, X2))
U46(mark(X)) → mark(U46(X))
U51(mark(X1), X2, X3) → mark(U51(X1, X2, X3))
U52(mark(X1), X2, X3) → mark(U52(X1, X2, X3))
U53(mark(X1), X2, X3) → mark(U53(X1, X2, X3))
U54(mark(X1), X2, X3) → mark(U54(X1, X2, X3))
U55(mark(X1), X2) → mark(U55(X1, X2))
U56(mark(X)) → mark(U56(X))
U61(mark(X1), X2) → mark(U61(X1, X2))
U62(mark(X1), X2) → mark(U62(X1, X2))
U63(mark(X)) → mark(U63(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X1), X2) → mark(U72(X1, X2))
U73(mark(X)) → mark(U73(X))
U81(mark(X1), X2) → mark(U81(X1, X2))
U82(mark(X1), X2) → mark(U82(X1, X2))
U83(mark(X)) → mark(U83(X))
U91(mark(X1), X2) → mark(U91(X1, X2))
U92(mark(X1), X2) → mark(U92(X1, X2))
U93(mark(X)) → mark(U93(X))
tail(mark(X)) → mark(tail(X))
take(mark(X1), X2) → mark(take(X1, X2))
take(X1, mark(X2)) → mark(take(X1, X2))
sel(mark(X1), X2) → mark(sel(X1, X2))
sel(X1, mark(X2)) → mark(sel(X1, X2))
proper(U101(X1, X2, X3)) → U101(proper(X1), proper(X2), proper(X3))
proper(tt) → ok(tt)
proper(U102(X1, X2, X3)) → U102(proper(X1), proper(X2), proper(X3))
proper(isNaturalKind(X)) → isNaturalKind(proper(X))
proper(U103(X1, X2, X3)) → U103(proper(X1), proper(X2), proper(X3))
proper(isLNatKind(X)) → isLNatKind(proper(X))
proper(U104(X1, X2, X3)) → U104(proper(X1), proper(X2), proper(X3))
proper(U105(X1, X2)) → U105(proper(X1), proper(X2))
proper(isNatural(X)) → isNatural(proper(X))
proper(U106(X)) → U106(proper(X))
proper(isLNat(X)) → isLNat(proper(X))
proper(U11(X1, X2, X3)) → U11(proper(X1), proper(X2), proper(X3))
proper(U12(X1, X2, X3)) → U12(proper(X1), proper(X2), proper(X3))
proper(U111(X1, X2)) → U111(proper(X1), proper(X2))
proper(U112(X)) → U112(proper(X))
proper(U13(X1, X2, X3)) → U13(proper(X1), proper(X2), proper(X3))
proper(U121(X1, X2)) → U121(proper(X1), proper(X2))
proper(U122(X)) → U122(proper(X))
proper(U14(X1, X2, X3)) → U14(proper(X1), proper(X2), proper(X3))
proper(U131(X)) → U131(proper(X))
proper(snd(X)) → snd(proper(X))
proper(splitAt(X1, X2)) → splitAt(proper(X1), proper(X2))
proper(U141(X)) → U141(proper(X))
proper(U151(X)) → U151(proper(X))
proper(U161(X)) → U161(proper(X))
proper(U171(X1, X2)) → U171(proper(X1), proper(X2))
proper(U172(X)) → U172(proper(X))
proper(U181(X1, X2)) → U181(proper(X1), proper(X2))
proper(U182(X1, X2)) → U182(proper(X1), proper(X2))
proper(U183(X)) → U183(proper(X))
proper(U191(X1, X2)) → U191(proper(X1), proper(X2))
proper(U192(X1, X2)) → U192(proper(X1), proper(X2))
proper(U193(X)) → U193(proper(X))
proper(U201(X1, X2, X3)) → U201(proper(X1), proper(X2), proper(X3))
proper(U202(X1, X2, X3)) → U202(proper(X1), proper(X2), proper(X3))
proper(U203(X1, X2, X3)) → U203(proper(X1), proper(X2), proper(X3))
proper(U204(X1, X2, X3)) → U204(proper(X1), proper(X2), proper(X3))
proper(U205(X1, X2)) → U205(proper(X1), proper(X2))
proper(U206(X)) → U206(proper(X))
proper(U21(X1, X2, X3)) → U21(proper(X1), proper(X2), proper(X3))
proper(U22(X1, X2, X3)) → U22(proper(X1), proper(X2), proper(X3))
proper(U211(X)) → U211(proper(X))
proper(U23(X1, X2, X3)) → U23(proper(X1), proper(X2), proper(X3))
proper(U221(X)) → U221(proper(X))
proper(U24(X1, X2)) → U24(proper(X1), proper(X2))
proper(U231(X1, X2)) → U231(proper(X1), proper(X2))
proper(U232(X)) → U232(proper(X))
proper(U241(X1, X2, X3)) → U241(proper(X1), proper(X2), proper(X3))
proper(U242(X1, X2, X3)) → U242(proper(X1), proper(X2), proper(X3))
proper(U243(X1, X2, X3)) → U243(proper(X1), proper(X2), proper(X3))
proper(U244(X1, X2, X3)) → U244(proper(X1), proper(X2), proper(X3))
proper(U245(X1, X2)) → U245(proper(X1), proper(X2))
proper(U246(X)) → U246(proper(X))
proper(U251(X1, X2, X3)) → U251(proper(X1), proper(X2), proper(X3))
proper(U252(X1, X2, X3)) → U252(proper(X1), proper(X2), proper(X3))
proper(U253(X1, X2, X3)) → U253(proper(X1), proper(X2), proper(X3))
proper(U254(X1, X2, X3)) → U254(proper(X1), proper(X2), proper(X3))
proper(U255(X1, X2)) → U255(proper(X1), proper(X2))
proper(U256(X)) → U256(proper(X))
proper(U261(X1, X2)) → U261(proper(X1), proper(X2))
proper(U262(X)) → U262(proper(X))
proper(U271(X1, X2)) → U271(proper(X1), proper(X2))
proper(U272(X)) → U272(proper(X))
proper(U281(X1, X2)) → U281(proper(X1), proper(X2))
proper(U282(X1, X2)) → U282(proper(X1), proper(X2))
proper(cons(X1, X2)) → cons(proper(X1), proper(X2))
proper(natsFrom(X)) → natsFrom(proper(X))
proper(s(X)) → s(proper(X))
proper(U291(X1, X2, X3)) → U291(proper(X1), proper(X2), proper(X3))
proper(U292(X1, X2, X3)) → U292(proper(X1), proper(X2), proper(X3))
proper(U293(X1, X2, X3)) → U293(proper(X1), proper(X2), proper(X3))
proper(U294(X1, X2, X3)) → U294(proper(X1), proper(X2), proper(X3))
proper(head(X)) → head(proper(X))
proper(afterNth(X1, X2)) → afterNth(proper(X1), proper(X2))
proper(U301(X1, X2, X3)) → U301(proper(X1), proper(X2), proper(X3))
proper(U302(X1, X2)) → U302(proper(X1), proper(X2))
proper(U303(X1, X2)) → U303(proper(X1), proper(X2))
proper(U304(X1, X2)) → U304(proper(X1), proper(X2))
proper(U31(X1, X2, X3)) → U31(proper(X1), proper(X2), proper(X3))
proper(U32(X1, X2, X3)) → U32(proper(X1), proper(X2), proper(X3))
proper(U311(X1, X2)) → U311(proper(X1), proper(X2))
proper(U312(X1, X2)) → U312(proper(X1), proper(X2))
proper(pair(X1, X2)) → pair(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U33(X1, X2, X3)) → U33(proper(X1), proper(X2), proper(X3))
proper(U321(X1, X2, X3, X4)) → U321(proper(X1), proper(X2), proper(X3), proper(X4))
proper(U322(X1, X2, X3, X4)) → U322(proper(X1), proper(X2), proper(X3), proper(X4))
proper(U323(X1, X2, X3, X4)) → U323(proper(X1), proper(X2), proper(X3), proper(X4))
proper(U324(X1, X2, X3, X4)) → U324(proper(X1), proper(X2), proper(X3), proper(X4))
proper(U325(X1, X2, X3, X4)) → U325(proper(X1), proper(X2), proper(X3), proper(X4))
proper(U326(X1, X2, X3, X4)) → U326(proper(X1), proper(X2), proper(X3), proper(X4))
proper(U327(X1, X2)) → U327(proper(X1), proper(X2))
proper(U34(X1, X2)) → U34(proper(X1), proper(X2))
proper(U331(X1, X2, X3)) → U331(proper(X1), proper(X2), proper(X3))
proper(U332(X1, X2)) → U332(proper(X1), proper(X2))
proper(U333(X1, X2)) → U333(proper(X1), proper(X2))
proper(U334(X1, X2)) → U334(proper(X1), proper(X2))
proper(U341(X1, X2, X3)) → U341(proper(X1), proper(X2), proper(X3))
proper(U342(X1, X2, X3)) → U342(proper(X1), proper(X2), proper(X3))
proper(U343(X1, X2, X3)) → U343(proper(X1), proper(X2), proper(X3))
proper(U344(X1, X2, X3)) → U344(proper(X1), proper(X2), proper(X3))
proper(fst(X)) → fst(proper(X))
proper(U41(X1, X2, X3)) → U41(proper(X1), proper(X2), proper(X3))
proper(U42(X1, X2, X3)) → U42(proper(X1), proper(X2), proper(X3))
proper(U43(X1, X2, X3)) → U43(proper(X1), proper(X2), proper(X3))
proper(U44(X1, X2, X3)) → U44(proper(X1), proper(X2), proper(X3))
proper(U45(X1, X2)) → U45(proper(X1), proper(X2))
proper(U46(X)) → U46(proper(X))
proper(U51(X1, X2, X3)) → U51(proper(X1), proper(X2), proper(X3))
proper(U52(X1, X2, X3)) → U52(proper(X1), proper(X2), proper(X3))
proper(U53(X1, X2, X3)) → U53(proper(X1), proper(X2), proper(X3))
proper(U54(X1, X2, X3)) → U54(proper(X1), proper(X2), proper(X3))
proper(U55(X1, X2)) → U55(proper(X1), proper(X2))
proper(U56(X)) → U56(proper(X))
proper(U61(X1, X2)) → U61(proper(X1), proper(X2))
proper(U62(X1, X2)) → U62(proper(X1), proper(X2))
proper(isPLNatKind(X)) → isPLNatKind(proper(X))
proper(U63(X)) → U63(proper(X))
proper(isPLNat(X)) → isPLNat(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X1, X2)) → U72(proper(X1), proper(X2))
proper(U73(X)) → U73(proper(X))
proper(U81(X1, X2)) → U81(proper(X1), proper(X2))
proper(U82(X1, X2)) → U82(proper(X1), proper(X2))
proper(U83(X)) → U83(proper(X))
proper(U91(X1, X2)) → U91(proper(X1), proper(X2))
proper(U92(X1, X2)) → U92(proper(X1), proper(X2))
proper(U93(X)) → U93(proper(X))
proper(tail(X)) → tail(proper(X))
proper(take(X1, X2)) → take(proper(X1), proper(X2))
proper(0) → ok(0)
proper(sel(X1, X2)) → sel(proper(X1), proper(X2))
U101(ok(X1), ok(X2), ok(X3)) → ok(U101(X1, X2, X3))
U102(ok(X1), ok(X2), ok(X3)) → ok(U102(X1, X2, X3))
isNaturalKind(ok(X)) → ok(isNaturalKind(X))
U103(ok(X1), ok(X2), ok(X3)) → ok(U103(X1, X2, X3))
isLNatKind(ok(X)) → ok(isLNatKind(X))
U104(ok(X1), ok(X2), ok(X3)) → ok(U104(X1, X2, X3))
U105(ok(X1), ok(X2)) → ok(U105(X1, X2))
isNatural(ok(X)) → ok(isNatural(X))
U106(ok(X)) → ok(U106(X))
isLNat(ok(X)) → ok(isLNat(X))
U11(ok(X1), ok(X2), ok(X3)) → ok(U11(X1, X2, X3))
U12(ok(X1), ok(X2), ok(X3)) → ok(U12(X1, X2, X3))
U111(ok(X1), ok(X2)) → ok(U111(X1, X2))
U112(ok(X)) → ok(U112(X))
U13(ok(X1), ok(X2), ok(X3)) → ok(U13(X1, X2, X3))
U121(ok(X1), ok(X2)) → ok(U121(X1, X2))
U122(ok(X)) → ok(U122(X))
U14(ok(X1), ok(X2), ok(X3)) → ok(U14(X1, X2, X3))
U131(ok(X)) → ok(U131(X))
snd(ok(X)) → ok(snd(X))
splitAt(ok(X1), ok(X2)) → ok(splitAt(X1, X2))
U141(ok(X)) → ok(U141(X))
U151(ok(X)) → ok(U151(X))
U161(ok(X)) → ok(U161(X))
U171(ok(X1), ok(X2)) → ok(U171(X1, X2))
U172(ok(X)) → ok(U172(X))
U181(ok(X1), ok(X2)) → ok(U181(X1, X2))
U182(ok(X1), ok(X2)) → ok(U182(X1, X2))
U183(ok(X)) → ok(U183(X))
U191(ok(X1), ok(X2)) → ok(U191(X1, X2))
U192(ok(X1), ok(X2)) → ok(U192(X1, X2))
U193(ok(X)) → ok(U193(X))
U201(ok(X1), ok(X2), ok(X3)) → ok(U201(X1, X2, X3))
U202(ok(X1), ok(X2), ok(X3)) → ok(U202(X1, X2, X3))
U203(ok(X1), ok(X2), ok(X3)) → ok(U203(X1, X2, X3))
U204(ok(X1), ok(X2), ok(X3)) → ok(U204(X1, X2, X3))
U205(ok(X1), ok(X2)) → ok(U205(X1, X2))
U206(ok(X)) → ok(U206(X))
U21(ok(X1), ok(X2), ok(X3)) → ok(U21(X1, X2, X3))
U22(ok(X1), ok(X2), ok(X3)) → ok(U22(X1, X2, X3))
U211(ok(X)) → ok(U211(X))
U23(ok(X1), ok(X2), ok(X3)) → ok(U23(X1, X2, X3))
U221(ok(X)) → ok(U221(X))
U24(ok(X1), ok(X2)) → ok(U24(X1, X2))
U231(ok(X1), ok(X2)) → ok(U231(X1, X2))
U232(ok(X)) → ok(U232(X))
U241(ok(X1), ok(X2), ok(X3)) → ok(U241(X1, X2, X3))
U242(ok(X1), ok(X2), ok(X3)) → ok(U242(X1, X2, X3))
U243(ok(X1), ok(X2), ok(X3)) → ok(U243(X1, X2, X3))
U244(ok(X1), ok(X2), ok(X3)) → ok(U244(X1, X2, X3))
U245(ok(X1), ok(X2)) → ok(U245(X1, X2))
U246(ok(X)) → ok(U246(X))
U251(ok(X1), ok(X2), ok(X3)) → ok(U251(X1, X2, X3))
U252(ok(X1), ok(X2), ok(X3)) → ok(U252(X1, X2, X3))
U253(ok(X1), ok(X2), ok(X3)) → ok(U253(X1, X2, X3))
U254(ok(X1), ok(X2), ok(X3)) → ok(U254(X1, X2, X3))
U255(ok(X1), ok(X2)) → ok(U255(X1, X2))
U256(ok(X)) → ok(U256(X))
U261(ok(X1), ok(X2)) → ok(U261(X1, X2))
U262(ok(X)) → ok(U262(X))
U271(ok(X1), ok(X2)) → ok(U271(X1, X2))
U272(ok(X)) → ok(U272(X))
U281(ok(X1), ok(X2)) → ok(U281(X1, X2))
U282(ok(X1), ok(X2)) → ok(U282(X1, X2))
cons(ok(X1), ok(X2)) → ok(cons(X1, X2))
natsFrom(ok(X)) → ok(natsFrom(X))
s(ok(X)) → ok(s(X))
U291(ok(X1), ok(X2), ok(X3)) → ok(U291(X1, X2, X3))
U292(ok(X1), ok(X2), ok(X3)) → ok(U292(X1, X2, X3))
U293(ok(X1), ok(X2), ok(X3)) → ok(U293(X1, X2, X3))
U294(ok(X1), ok(X2), ok(X3)) → ok(U294(X1, X2, X3))
head(ok(X)) → ok(head(X))
afterNth(ok(X1), ok(X2)) → ok(afterNth(X1, X2))
U301(ok(X1), ok(X2), ok(X3)) → ok(U301(X1, X2, X3))
U302(ok(X1), ok(X2)) → ok(U302(X1, X2))
U303(ok(X1), ok(X2)) → ok(U303(X1, X2))
U304(ok(X1), ok(X2)) → ok(U304(X1, X2))
U31(ok(X1), ok(X2), ok(X3)) → ok(U31(X1, X2, X3))
U32(ok(X1), ok(X2), ok(X3)) → ok(U32(X1, X2, X3))
U311(ok(X1), ok(X2)) → ok(U311(X1, X2))
U312(ok(X1), ok(X2)) → ok(U312(X1, X2))
pair(ok(X1), ok(X2)) → ok(pair(X1, X2))
U33(ok(X1), ok(X2), ok(X3)) → ok(U33(X1, X2, X3))
U321(ok(X1), ok(X2), ok(X3), ok(X4)) → ok(U321(X1, X2, X3, X4))
U322(ok(X1), ok(X2), ok(X3), ok(X4)) → ok(U322(X1, X2, X3, X4))
U323(ok(X1), ok(X2), ok(X3), ok(X4)) → ok(U323(X1, X2, X3, X4))
U324(ok(X1), ok(X2), ok(X3), ok(X4)) → ok(U324(X1, X2, X3, X4))
U325(ok(X1), ok(X2), ok(X3), ok(X4)) → ok(U325(X1, X2, X3, X4))
U326(ok(X1), ok(X2), ok(X3), ok(X4)) → ok(U326(X1, X2, X3, X4))
U327(ok(X1), ok(X2)) → ok(U327(X1, X2))
U34(ok(X1), ok(X2)) → ok(U34(X1, X2))
U331(ok(X1), ok(X2), ok(X3)) → ok(U331(X1, X2, X3))
U332(ok(X1), ok(X2)) → ok(U332(X1, X2))
U333(ok(X1), ok(X2)) → ok(U333(X1, X2))
U334(ok(X1), ok(X2)) → ok(U334(X1, X2))
U341(ok(X1), ok(X2), ok(X3)) → ok(U341(X1, X2, X3))
U342(ok(X1), ok(X2), ok(X3)) → ok(U342(X1, X2, X3))
U343(ok(X1), ok(X2), ok(X3)) → ok(U343(X1, X2, X3))
U344(ok(X1), ok(X2), ok(X3)) → ok(U344(X1, X2, X3))
fst(ok(X)) → ok(fst(X))
U41(ok(X1), ok(X2), ok(X3)) → ok(U41(X1, X2, X3))
U42(ok(X1), ok(X2), ok(X3)) → ok(U42(X1, X2, X3))
U43(ok(X1), ok(X2), ok(X3)) → ok(U43(X1, X2, X3))
U44(ok(X1), ok(X2), ok(X3)) → ok(U44(X1, X2, X3))
U45(ok(X1), ok(X2)) → ok(U45(X1, X2))
U46(ok(X)) → ok(U46(X))
U51(ok(X1), ok(X2), ok(X3)) → ok(U51(X1, X2, X3))
U52(ok(X1), ok(X2), ok(X3)) → ok(U52(X1, X2, X3))
U53(ok(X1), ok(X2), ok(X3)) → ok(U53(X1, X2, X3))
U54(ok(X1), ok(X2), ok(X3)) → ok(U54(X1, X2, X3))
U55(ok(X1), ok(X2)) → ok(U55(X1, X2))
U56(ok(X)) → ok(U56(X))
U61(ok(X1), ok(X2)) → ok(U61(X1, X2))
U62(ok(X1), ok(X2)) → ok(U62(X1, X2))
isPLNatKind(ok(X)) → ok(isPLNatKind(X))
U63(ok(X)) → ok(U63(X))
isPLNat(ok(X)) → ok(isPLNat(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X1), ok(X2)) → ok(U72(X1, X2))
U73(ok(X)) → ok(U73(X))
U81(ok(X1), ok(X2)) → ok(U81(X1, X2))
U82(ok(X1), ok(X2)) → ok(U82(X1, X2))
U83(ok(X)) → ok(U83(X))
U91(ok(X1), ok(X2)) → ok(U91(X1, X2))
U92(ok(X1), ok(X2)) → ok(U92(X1, X2))
U93(ok(X)) → ok(U93(X))
tail(ok(X)) → ok(tail(X))
take(ok(X1), ok(X2)) → ok(take(X1, X2))
sel(ok(X1), ok(X2)) → ok(sel(X1, X2))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))

Rewrite Strategy: INNERMOST


Renamed function symbols to avoid clashes with predefined symbol.


Runtime Complexity TRS:
The TRS R consists of the following rules:


active'(U101'(tt', V1, V2)) → mark'(U102'(isNaturalKind'(V1), V1, V2))
active'(U102'(tt', V1, V2)) → mark'(U103'(isLNatKind'(V2), V1, V2))
active'(U103'(tt', V1, V2)) → mark'(U104'(isLNatKind'(V2), V1, V2))
active'(U104'(tt', V1, V2)) → mark'(U105'(isNatural'(V1), V2))
active'(U105'(tt', V2)) → mark'(U106'(isLNat'(V2)))
active'(U106'(tt')) → mark'(tt')
active'(U11'(tt', N, XS)) → mark'(U12'(isNaturalKind'(N), N, XS))
active'(U111'(tt', V2)) → mark'(U112'(isLNatKind'(V2)))
active'(U112'(tt')) → mark'(tt')
active'(U12'(tt', N, XS)) → mark'(U13'(isLNat'(XS), N, XS))
active'(U121'(tt', V2)) → mark'(U122'(isLNatKind'(V2)))
active'(U122'(tt')) → mark'(tt')
active'(U13'(tt', N, XS)) → mark'(U14'(isLNatKind'(XS), N, XS))
active'(U131'(tt')) → mark'(tt')
active'(U14'(tt', N, XS)) → mark'(snd'(splitAt'(N, XS)))
active'(U141'(tt')) → mark'(tt')
active'(U151'(tt')) → mark'(tt')
active'(U161'(tt')) → mark'(tt')
active'(U171'(tt', V2)) → mark'(U172'(isLNatKind'(V2)))
active'(U172'(tt')) → mark'(tt')
active'(U181'(tt', V1)) → mark'(U182'(isLNatKind'(V1), V1))
active'(U182'(tt', V1)) → mark'(U183'(isLNat'(V1)))
active'(U183'(tt')) → mark'(tt')
active'(U191'(tt', V1)) → mark'(U192'(isNaturalKind'(V1), V1))
active'(U192'(tt', V1)) → mark'(U193'(isNatural'(V1)))
active'(U193'(tt')) → mark'(tt')
active'(U201'(tt', V1, V2)) → mark'(U202'(isNaturalKind'(V1), V1, V2))
active'(U202'(tt', V1, V2)) → mark'(U203'(isLNatKind'(V2), V1, V2))
active'(U203'(tt', V1, V2)) → mark'(U204'(isLNatKind'(V2), V1, V2))
active'(U204'(tt', V1, V2)) → mark'(U205'(isNatural'(V1), V2))
active'(U205'(tt', V2)) → mark'(U206'(isLNat'(V2)))
active'(U206'(tt')) → mark'(tt')
active'(U21'(tt', X, Y)) → mark'(U22'(isLNatKind'(X), X, Y))
active'(U211'(tt')) → mark'(tt')
active'(U22'(tt', X, Y)) → mark'(U23'(isLNat'(Y), X, Y))
active'(U221'(tt')) → mark'(tt')
active'(U23'(tt', X, Y)) → mark'(U24'(isLNatKind'(Y), X))
active'(U231'(tt', V2)) → mark'(U232'(isLNatKind'(V2)))
active'(U232'(tt')) → mark'(tt')
active'(U24'(tt', X)) → mark'(X)
active'(U241'(tt', V1, V2)) → mark'(U242'(isLNatKind'(V1), V1, V2))
active'(U242'(tt', V1, V2)) → mark'(U243'(isLNatKind'(V2), V1, V2))
active'(U243'(tt', V1, V2)) → mark'(U244'(isLNatKind'(V2), V1, V2))
active'(U244'(tt', V1, V2)) → mark'(U245'(isLNat'(V1), V2))
active'(U245'(tt', V2)) → mark'(U246'(isLNat'(V2)))
active'(U246'(tt')) → mark'(tt')
active'(U251'(tt', V1, V2)) → mark'(U252'(isNaturalKind'(V1), V1, V2))
active'(U252'(tt', V1, V2)) → mark'(U253'(isLNatKind'(V2), V1, V2))
active'(U253'(tt', V1, V2)) → mark'(U254'(isLNatKind'(V2), V1, V2))
active'(U254'(tt', V1, V2)) → mark'(U255'(isNatural'(V1), V2))
active'(U255'(tt', V2)) → mark'(U256'(isLNat'(V2)))
active'(U256'(tt')) → mark'(tt')
active'(U261'(tt', V2)) → mark'(U262'(isLNatKind'(V2)))
active'(U262'(tt')) → mark'(tt')
active'(U271'(tt', V2)) → mark'(U272'(isLNatKind'(V2)))
active'(U272'(tt')) → mark'(tt')
active'(U281'(tt', N)) → mark'(U282'(isNaturalKind'(N), N))
active'(U282'(tt', N)) → mark'(cons'(N, natsFrom'(s'(N))))
active'(U291'(tt', N, XS)) → mark'(U292'(isNaturalKind'(N), N, XS))
active'(U292'(tt', N, XS)) → mark'(U293'(isLNat'(XS), N, XS))
active'(U293'(tt', N, XS)) → mark'(U294'(isLNatKind'(XS), N, XS))
active'(U294'(tt', N, XS)) → mark'(head'(afterNth'(N, XS)))
active'(U301'(tt', X, Y)) → mark'(U302'(isLNatKind'(X), Y))
active'(U302'(tt', Y)) → mark'(U303'(isLNat'(Y), Y))
active'(U303'(tt', Y)) → mark'(U304'(isLNatKind'(Y), Y))
active'(U304'(tt', Y)) → mark'(Y)
active'(U31'(tt', N, XS)) → mark'(U32'(isNaturalKind'(N), N, XS))
active'(U311'(tt', XS)) → mark'(U312'(isLNatKind'(XS), XS))
active'(U312'(tt', XS)) → mark'(pair'(nil', XS))
active'(U32'(tt', N, XS)) → mark'(U33'(isLNat'(XS), N, XS))
active'(U321'(tt', N, X, XS)) → mark'(U322'(isNaturalKind'(N), N, X, XS))
active'(U322'(tt', N, X, XS)) → mark'(U323'(isNatural'(X), N, X, XS))
active'(U323'(tt', N, X, XS)) → mark'(U324'(isNaturalKind'(X), N, X, XS))
active'(U324'(tt', N, X, XS)) → mark'(U325'(isLNat'(XS), N, X, XS))
active'(U325'(tt', N, X, XS)) → mark'(U326'(isLNatKind'(XS), N, X, XS))
active'(U326'(tt', N, X, XS)) → mark'(U327'(splitAt'(N, XS), X))
active'(U327'(pair'(YS, ZS), X)) → mark'(pair'(cons'(X, YS), ZS))
active'(U33'(tt', N, XS)) → mark'(U34'(isLNatKind'(XS), N))
active'(U331'(tt', N, XS)) → mark'(U332'(isNaturalKind'(N), XS))
active'(U332'(tt', XS)) → mark'(U333'(isLNat'(XS), XS))
active'(U333'(tt', XS)) → mark'(U334'(isLNatKind'(XS), XS))
active'(U334'(tt', XS)) → mark'(XS)
active'(U34'(tt', N)) → mark'(N)
active'(U341'(tt', N, XS)) → mark'(U342'(isNaturalKind'(N), N, XS))
active'(U342'(tt', N, XS)) → mark'(U343'(isLNat'(XS), N, XS))
active'(U343'(tt', N, XS)) → mark'(U344'(isLNatKind'(XS), N, XS))
active'(U344'(tt', N, XS)) → mark'(fst'(splitAt'(N, XS)))
active'(U41'(tt', V1, V2)) → mark'(U42'(isNaturalKind'(V1), V1, V2))
active'(U42'(tt', V1, V2)) → mark'(U43'(isLNatKind'(V2), V1, V2))
active'(U43'(tt', V1, V2)) → mark'(U44'(isLNatKind'(V2), V1, V2))
active'(U44'(tt', V1, V2)) → mark'(U45'(isNatural'(V1), V2))
active'(U45'(tt', V2)) → mark'(U46'(isLNat'(V2)))
active'(U46'(tt')) → mark'(tt')
active'(U51'(tt', V1, V2)) → mark'(U52'(isNaturalKind'(V1), V1, V2))
active'(U52'(tt', V1, V2)) → mark'(U53'(isLNatKind'(V2), V1, V2))
active'(U53'(tt', V1, V2)) → mark'(U54'(isLNatKind'(V2), V1, V2))
active'(U54'(tt', V1, V2)) → mark'(U55'(isNatural'(V1), V2))
active'(U55'(tt', V2)) → mark'(U56'(isLNat'(V2)))
active'(U56'(tt')) → mark'(tt')
active'(U61'(tt', V1)) → mark'(U62'(isPLNatKind'(V1), V1))
active'(U62'(tt', V1)) → mark'(U63'(isPLNat'(V1)))
active'(U63'(tt')) → mark'(tt')
active'(U71'(tt', V1)) → mark'(U72'(isNaturalKind'(V1), V1))
active'(U72'(tt', V1)) → mark'(U73'(isNatural'(V1)))
active'(U73'(tt')) → mark'(tt')
active'(U81'(tt', V1)) → mark'(U82'(isPLNatKind'(V1), V1))
active'(U82'(tt', V1)) → mark'(U83'(isPLNat'(V1)))
active'(U83'(tt')) → mark'(tt')
active'(U91'(tt', V1)) → mark'(U92'(isLNatKind'(V1), V1))
active'(U92'(tt', V1)) → mark'(U93'(isLNat'(V1)))
active'(U93'(tt')) → mark'(tt')
active'(afterNth'(N, XS)) → mark'(U11'(isNatural'(N), N, XS))
active'(fst'(pair'(X, Y))) → mark'(U21'(isLNat'(X), X, Y))
active'(head'(cons'(N, XS))) → mark'(U31'(isNatural'(N), N, XS))
active'(isLNat'(nil')) → mark'(tt')
active'(isLNat'(afterNth'(V1, V2))) → mark'(U41'(isNaturalKind'(V1), V1, V2))
active'(isLNat'(cons'(V1, V2))) → mark'(U51'(isNaturalKind'(V1), V1, V2))
active'(isLNat'(fst'(V1))) → mark'(U61'(isPLNatKind'(V1), V1))
active'(isLNat'(natsFrom'(V1))) → mark'(U71'(isNaturalKind'(V1), V1))
active'(isLNat'(snd'(V1))) → mark'(U81'(isPLNatKind'(V1), V1))
active'(isLNat'(tail'(V1))) → mark'(U91'(isLNatKind'(V1), V1))
active'(isLNat'(take'(V1, V2))) → mark'(U101'(isNaturalKind'(V1), V1, V2))
active'(isLNatKind'(nil')) → mark'(tt')
active'(isLNatKind'(afterNth'(V1, V2))) → mark'(U111'(isNaturalKind'(V1), V2))
active'(isLNatKind'(cons'(V1, V2))) → mark'(U121'(isNaturalKind'(V1), V2))
active'(isLNatKind'(fst'(V1))) → mark'(U131'(isPLNatKind'(V1)))
active'(isLNatKind'(natsFrom'(V1))) → mark'(U141'(isNaturalKind'(V1)))
active'(isLNatKind'(snd'(V1))) → mark'(U151'(isPLNatKind'(V1)))
active'(isLNatKind'(tail'(V1))) → mark'(U161'(isLNatKind'(V1)))
active'(isLNatKind'(take'(V1, V2))) → mark'(U171'(isNaturalKind'(V1), V2))
active'(isNatural'(0')) → mark'(tt')
active'(isNatural'(head'(V1))) → mark'(U181'(isLNatKind'(V1), V1))
active'(isNatural'(s'(V1))) → mark'(U191'(isNaturalKind'(V1), V1))
active'(isNatural'(sel'(V1, V2))) → mark'(U201'(isNaturalKind'(V1), V1, V2))
active'(isNaturalKind'(0')) → mark'(tt')
active'(isNaturalKind'(head'(V1))) → mark'(U211'(isLNatKind'(V1)))
active'(isNaturalKind'(s'(V1))) → mark'(U221'(isNaturalKind'(V1)))
active'(isNaturalKind'(sel'(V1, V2))) → mark'(U231'(isNaturalKind'(V1), V2))
active'(isPLNat'(pair'(V1, V2))) → mark'(U241'(isLNatKind'(V1), V1, V2))
active'(isPLNat'(splitAt'(V1, V2))) → mark'(U251'(isNaturalKind'(V1), V1, V2))
active'(isPLNatKind'(pair'(V1, V2))) → mark'(U261'(isLNatKind'(V1), V2))
active'(isPLNatKind'(splitAt'(V1, V2))) → mark'(U271'(isNaturalKind'(V1), V2))
active'(natsFrom'(N)) → mark'(U281'(isNatural'(N), N))
active'(sel'(N, XS)) → mark'(U291'(isNatural'(N), N, XS))
active'(snd'(pair'(X, Y))) → mark'(U301'(isLNat'(X), X, Y))
active'(splitAt'(0', XS)) → mark'(U311'(isLNat'(XS), XS))
active'(splitAt'(s'(N), cons'(X, XS))) → mark'(U321'(isNatural'(N), N, X, XS))
active'(tail'(cons'(N, XS))) → mark'(U331'(isNatural'(N), N, XS))
active'(take'(N, XS)) → mark'(U341'(isNatural'(N), N, XS))
active'(U101'(X1, X2, X3)) → U101'(active'(X1), X2, X3)
active'(U102'(X1, X2, X3)) → U102'(active'(X1), X2, X3)
active'(U103'(X1, X2, X3)) → U103'(active'(X1), X2, X3)
active'(U104'(X1, X2, X3)) → U104'(active'(X1), X2, X3)
active'(U105'(X1, X2)) → U105'(active'(X1), X2)
active'(U106'(X)) → U106'(active'(X))
active'(U11'(X1, X2, X3)) → U11'(active'(X1), X2, X3)
active'(U12'(X1, X2, X3)) → U12'(active'(X1), X2, X3)
active'(U111'(X1, X2)) → U111'(active'(X1), X2)
active'(U112'(X)) → U112'(active'(X))
active'(U13'(X1, X2, X3)) → U13'(active'(X1), X2, X3)
active'(U121'(X1, X2)) → U121'(active'(X1), X2)
active'(U122'(X)) → U122'(active'(X))
active'(U14'(X1, X2, X3)) → U14'(active'(X1), X2, X3)
active'(U131'(X)) → U131'(active'(X))
active'(snd'(X)) → snd'(active'(X))
active'(splitAt'(X1, X2)) → splitAt'(active'(X1), X2)
active'(splitAt'(X1, X2)) → splitAt'(X1, active'(X2))
active'(U141'(X)) → U141'(active'(X))
active'(U151'(X)) → U151'(active'(X))
active'(U161'(X)) → U161'(active'(X))
active'(U171'(X1, X2)) → U171'(active'(X1), X2)
active'(U172'(X)) → U172'(active'(X))
active'(U181'(X1, X2)) → U181'(active'(X1), X2)
active'(U182'(X1, X2)) → U182'(active'(X1), X2)
active'(U183'(X)) → U183'(active'(X))
active'(U191'(X1, X2)) → U191'(active'(X1), X2)
active'(U192'(X1, X2)) → U192'(active'(X1), X2)
active'(U193'(X)) → U193'(active'(X))
active'(U201'(X1, X2, X3)) → U201'(active'(X1), X2, X3)
active'(U202'(X1, X2, X3)) → U202'(active'(X1), X2, X3)
active'(U203'(X1, X2, X3)) → U203'(active'(X1), X2, X3)
active'(U204'(X1, X2, X3)) → U204'(active'(X1), X2, X3)
active'(U205'(X1, X2)) → U205'(active'(X1), X2)
active'(U206'(X)) → U206'(active'(X))
active'(U21'(X1, X2, X3)) → U21'(active'(X1), X2, X3)
active'(U22'(X1, X2, X3)) → U22'(active'(X1), X2, X3)
active'(U211'(X)) → U211'(active'(X))
active'(U23'(X1, X2, X3)) → U23'(active'(X1), X2, X3)
active'(U221'(X)) → U221'(active'(X))
active'(U24'(X1, X2)) → U24'(active'(X1), X2)
active'(U231'(X1, X2)) → U231'(active'(X1), X2)
active'(U232'(X)) → U232'(active'(X))
active'(U241'(X1, X2, X3)) → U241'(active'(X1), X2, X3)
active'(U242'(X1, X2, X3)) → U242'(active'(X1), X2, X3)
active'(U243'(X1, X2, X3)) → U243'(active'(X1), X2, X3)
active'(U244'(X1, X2, X3)) → U244'(active'(X1), X2, X3)
active'(U245'(X1, X2)) → U245'(active'(X1), X2)
active'(U246'(X)) → U246'(active'(X))
active'(U251'(X1, X2, X3)) → U251'(active'(X1), X2, X3)
active'(U252'(X1, X2, X3)) → U252'(active'(X1), X2, X3)
active'(U253'(X1, X2, X3)) → U253'(active'(X1), X2, X3)
active'(U254'(X1, X2, X3)) → U254'(active'(X1), X2, X3)
active'(U255'(X1, X2)) → U255'(active'(X1), X2)
active'(U256'(X)) → U256'(active'(X))
active'(U261'(X1, X2)) → U261'(active'(X1), X2)
active'(U262'(X)) → U262'(active'(X))
active'(U271'(X1, X2)) → U271'(active'(X1), X2)
active'(U272'(X)) → U272'(active'(X))
active'(U281'(X1, X2)) → U281'(active'(X1), X2)
active'(U282'(X1, X2)) → U282'(active'(X1), X2)
active'(cons'(X1, X2)) → cons'(active'(X1), X2)
active'(natsFrom'(X)) → natsFrom'(active'(X))
active'(s'(X)) → s'(active'(X))
active'(U291'(X1, X2, X3)) → U291'(active'(X1), X2, X3)
active'(U292'(X1, X2, X3)) → U292'(active'(X1), X2, X3)
active'(U293'(X1, X2, X3)) → U293'(active'(X1), X2, X3)
active'(U294'(X1, X2, X3)) → U294'(active'(X1), X2, X3)
active'(head'(X)) → head'(active'(X))
active'(afterNth'(X1, X2)) → afterNth'(active'(X1), X2)
active'(afterNth'(X1, X2)) → afterNth'(X1, active'(X2))
active'(U301'(X1, X2, X3)) → U301'(active'(X1), X2, X3)
active'(U302'(X1, X2)) → U302'(active'(X1), X2)
active'(U303'(X1, X2)) → U303'(active'(X1), X2)
active'(U304'(X1, X2)) → U304'(active'(X1), X2)
active'(U31'(X1, X2, X3)) → U31'(active'(X1), X2, X3)
active'(U32'(X1, X2, X3)) → U32'(active'(X1), X2, X3)
active'(U311'(X1, X2)) → U311'(active'(X1), X2)
active'(U312'(X1, X2)) → U312'(active'(X1), X2)
active'(pair'(X1, X2)) → pair'(active'(X1), X2)
active'(pair'(X1, X2)) → pair'(X1, active'(X2))
active'(U33'(X1, X2, X3)) → U33'(active'(X1), X2, X3)
active'(U321'(X1, X2, X3, X4)) → U321'(active'(X1), X2, X3, X4)
active'(U322'(X1, X2, X3, X4)) → U322'(active'(X1), X2, X3, X4)
active'(U323'(X1, X2, X3, X4)) → U323'(active'(X1), X2, X3, X4)
active'(U324'(X1, X2, X3, X4)) → U324'(active'(X1), X2, X3, X4)
active'(U325'(X1, X2, X3, X4)) → U325'(active'(X1), X2, X3, X4)
active'(U326'(X1, X2, X3, X4)) → U326'(active'(X1), X2, X3, X4)
active'(U327'(X1, X2)) → U327'(active'(X1), X2)
active'(U34'(X1, X2)) → U34'(active'(X1), X2)
active'(U331'(X1, X2, X3)) → U331'(active'(X1), X2, X3)
active'(U332'(X1, X2)) → U332'(active'(X1), X2)
active'(U333'(X1, X2)) → U333'(active'(X1), X2)
active'(U334'(X1, X2)) → U334'(active'(X1), X2)
active'(U341'(X1, X2, X3)) → U341'(active'(X1), X2, X3)
active'(U342'(X1, X2, X3)) → U342'(active'(X1), X2, X3)
active'(U343'(X1, X2, X3)) → U343'(active'(X1), X2, X3)
active'(U344'(X1, X2, X3)) → U344'(active'(X1), X2, X3)
active'(fst'(X)) → fst'(active'(X))
active'(U41'(X1, X2, X3)) → U41'(active'(X1), X2, X3)
active'(U42'(X1, X2, X3)) → U42'(active'(X1), X2, X3)
active'(U43'(X1, X2, X3)) → U43'(active'(X1), X2, X3)
active'(U44'(X1, X2, X3)) → U44'(active'(X1), X2, X3)
active'(U45'(X1, X2)) → U45'(active'(X1), X2)
active'(U46'(X)) → U46'(active'(X))
active'(U51'(X1, X2, X3)) → U51'(active'(X1), X2, X3)
active'(U52'(X1, X2, X3)) → U52'(active'(X1), X2, X3)
active'(U53'(X1, X2, X3)) → U53'(active'(X1), X2, X3)
active'(U54'(X1, X2, X3)) → U54'(active'(X1), X2, X3)
active'(U55'(X1, X2)) → U55'(active'(X1), X2)
active'(U56'(X)) → U56'(active'(X))
active'(U61'(X1, X2)) → U61'(active'(X1), X2)
active'(U62'(X1, X2)) → U62'(active'(X1), X2)
active'(U63'(X)) → U63'(active'(X))
active'(U71'(X1, X2)) → U71'(active'(X1), X2)
active'(U72'(X1, X2)) → U72'(active'(X1), X2)
active'(U73'(X)) → U73'(active'(X))
active'(U81'(X1, X2)) → U81'(active'(X1), X2)
active'(U82'(X1, X2)) → U82'(active'(X1), X2)
active'(U83'(X)) → U83'(active'(X))
active'(U91'(X1, X2)) → U91'(active'(X1), X2)
active'(U92'(X1, X2)) → U92'(active'(X1), X2)
active'(U93'(X)) → U93'(active'(X))
active'(tail'(X)) → tail'(active'(X))
active'(take'(X1, X2)) → take'(active'(X1), X2)
active'(take'(X1, X2)) → take'(X1, active'(X2))
active'(sel'(X1, X2)) → sel'(active'(X1), X2)
active'(sel'(X1, X2)) → sel'(X1, active'(X2))
U101'(mark'(X1), X2, X3) → mark'(U101'(X1, X2, X3))
U102'(mark'(X1), X2, X3) → mark'(U102'(X1, X2, X3))
U103'(mark'(X1), X2, X3) → mark'(U103'(X1, X2, X3))
U104'(mark'(X1), X2, X3) → mark'(U104'(X1, X2, X3))
U105'(mark'(X1), X2) → mark'(U105'(X1, X2))
U106'(mark'(X)) → mark'(U106'(X))
U11'(mark'(X1), X2, X3) → mark'(U11'(X1, X2, X3))
U12'(mark'(X1), X2, X3) → mark'(U12'(X1, X2, X3))
U111'(mark'(X1), X2) → mark'(U111'(X1, X2))
U112'(mark'(X)) → mark'(U112'(X))
U13'(mark'(X1), X2, X3) → mark'(U13'(X1, X2, X3))
U121'(mark'(X1), X2) → mark'(U121'(X1, X2))
U122'(mark'(X)) → mark'(U122'(X))
U14'(mark'(X1), X2, X3) → mark'(U14'(X1, X2, X3))
U131'(mark'(X)) → mark'(U131'(X))
snd'(mark'(X)) → mark'(snd'(X))
splitAt'(mark'(X1), X2) → mark'(splitAt'(X1, X2))
splitAt'(X1, mark'(X2)) → mark'(splitAt'(X1, X2))
U141'(mark'(X)) → mark'(U141'(X))
U151'(mark'(X)) → mark'(U151'(X))
U161'(mark'(X)) → mark'(U161'(X))
U171'(mark'(X1), X2) → mark'(U171'(X1, X2))
U172'(mark'(X)) → mark'(U172'(X))
U181'(mark'(X1), X2) → mark'(U181'(X1, X2))
U182'(mark'(X1), X2) → mark'(U182'(X1, X2))
U183'(mark'(X)) → mark'(U183'(X))
U191'(mark'(X1), X2) → mark'(U191'(X1, X2))
U192'(mark'(X1), X2) → mark'(U192'(X1, X2))
U193'(mark'(X)) → mark'(U193'(X))
U201'(mark'(X1), X2, X3) → mark'(U201'(X1, X2, X3))
U202'(mark'(X1), X2, X3) → mark'(U202'(X1, X2, X3))
U203'(mark'(X1), X2, X3) → mark'(U203'(X1, X2, X3))
U204'(mark'(X1), X2, X3) → mark'(U204'(X1, X2, X3))
U205'(mark'(X1), X2) → mark'(U205'(X1, X2))
U206'(mark'(X)) → mark'(U206'(X))
U21'(mark'(X1), X2, X3) → mark'(U21'(X1, X2, X3))
U22'(mark'(X1), X2, X3) → mark'(U22'(X1, X2, X3))
U211'(mark'(X)) → mark'(U211'(X))
U23'(mark'(X1), X2, X3) → mark'(U23'(X1, X2, X3))
U221'(mark'(X)) → mark'(U221'(X))
U24'(mark'(X1), X2) → mark'(U24'(X1, X2))
U231'(mark'(X1), X2) → mark'(U231'(X1, X2))
U232'(mark'(X)) → mark'(U232'(X))
U241'(mark'(X1), X2, X3) → mark'(U241'(X1, X2, X3))
U242'(mark'(X1), X2, X3) → mark'(U242'(X1, X2, X3))
U243'(mark'(X1), X2, X3) → mark'(U243'(X1, X2, X3))
U244'(mark'(X1), X2, X3) → mark'(U244'(X1, X2, X3))
U245'(mark'(X1), X2) → mark'(U245'(X1, X2))
U246'(mark'(X)) → mark'(U246'(X))
U251'(mark'(X1), X2, X3) → mark'(U251'(X1, X2, X3))
U252'(mark'(X1), X2, X3) → mark'(U252'(X1, X2, X3))
U253'(mark'(X1), X2, X3) → mark'(U253'(X1, X2, X3))
U254'(mark'(X1), X2, X3) → mark'(U254'(X1, X2, X3))
U255'(mark'(X1), X2) → mark'(U255'(X1, X2))
U256'(mark'(X)) → mark'(U256'(X))
U261'(mark'(X1), X2) → mark'(U261'(X1, X2))
U262'(mark'(X)) → mark'(U262'(X))
U271'(mark'(X1), X2) → mark'(U271'(X1, X2))
U272'(mark'(X)) → mark'(U272'(X))
U281'(mark'(X1), X2) → mark'(U281'(X1, X2))
U282'(mark'(X1), X2) → mark'(U282'(X1, X2))
cons'(mark'(X1), X2) → mark'(cons'(X1, X2))
natsFrom'(mark'(X)) → mark'(natsFrom'(X))
s'(mark'(X)) → mark'(s'(X))
U291'(mark'(X1), X2, X3) → mark'(U291'(X1, X2, X3))
U292'(mark'(X1), X2, X3) → mark'(U292'(X1, X2, X3))
U293'(mark'(X1), X2, X3) → mark'(U293'(X1, X2, X3))
U294'(mark'(X1), X2, X3) → mark'(U294'(X1, X2, X3))
head'(mark'(X)) → mark'(head'(X))
afterNth'(mark'(X1), X2) → mark'(afterNth'(X1, X2))
afterNth'(X1, mark'(X2)) → mark'(afterNth'(X1, X2))
U301'(mark'(X1), X2, X3) → mark'(U301'(X1, X2, X3))
U302'(mark'(X1), X2) → mark'(U302'(X1, X2))
U303'(mark'(X1), X2) → mark'(U303'(X1, X2))
U304'(mark'(X1), X2) → mark'(U304'(X1, X2))
U31'(mark'(X1), X2, X3) → mark'(U31'(X1, X2, X3))
U32'(mark'(X1), X2, X3) → mark'(U32'(X1, X2, X3))
U311'(mark'(X1), X2) → mark'(U311'(X1, X2))
U312'(mark'(X1), X2) → mark'(U312'(X1, X2))
pair'(mark'(X1), X2) → mark'(pair'(X1, X2))
pair'(X1, mark'(X2)) → mark'(pair'(X1, X2))
U33'(mark'(X1), X2, X3) → mark'(U33'(X1, X2, X3))
U321'(mark'(X1), X2, X3, X4) → mark'(U321'(X1, X2, X3, X4))
U322'(mark'(X1), X2, X3, X4) → mark'(U322'(X1, X2, X3, X4))
U323'(mark'(X1), X2, X3, X4) → mark'(U323'(X1, X2, X3, X4))
U324'(mark'(X1), X2, X3, X4) → mark'(U324'(X1, X2, X3, X4))
U325'(mark'(X1), X2, X3, X4) → mark'(U325'(X1, X2, X3, X4))
U326'(mark'(X1), X2, X3, X4) → mark'(U326'(X1, X2, X3, X4))
U327'(mark'(X1), X2) → mark'(U327'(X1, X2))
U34'(mark'(X1), X2) → mark'(U34'(X1, X2))
U331'(mark'(X1), X2, X3) → mark'(U331'(X1, X2, X3))
U332'(mark'(X1), X2) → mark'(U332'(X1, X2))
U333'(mark'(X1), X2) → mark'(U333'(X1, X2))
U334'(mark'(X1), X2) → mark'(U334'(X1, X2))
U341'(mark'(X1), X2, X3) → mark'(U341'(X1, X2, X3))
U342'(mark'(X1), X2, X3) → mark'(U342'(X1, X2, X3))
U343'(mark'(X1), X2, X3) → mark'(U343'(X1, X2, X3))
U344'(mark'(X1), X2, X3) → mark'(U344'(X1, X2, X3))
fst'(mark'(X)) → mark'(fst'(X))
U41'(mark'(X1), X2, X3) → mark'(U41'(X1, X2, X3))
U42'(mark'(X1), X2, X3) → mark'(U42'(X1, X2, X3))
U43'(mark'(X1), X2, X3) → mark'(U43'(X1, X2, X3))
U44'(mark'(X1), X2, X3) → mark'(U44'(X1, X2, X3))
U45'(mark'(X1), X2) → mark'(U45'(X1, X2))
U46'(mark'(X)) → mark'(U46'(X))
U51'(mark'(X1), X2, X3) → mark'(U51'(X1, X2, X3))
U52'(mark'(X1), X2, X3) → mark'(U52'(X1, X2, X3))
U53'(mark'(X1), X2, X3) → mark'(U53'(X1, X2, X3))
U54'(mark'(X1), X2, X3) → mark'(U54'(X1, X2, X3))
U55'(mark'(X1), X2) → mark'(U55'(X1, X2))
U56'(mark'(X)) → mark'(U56'(X))
U61'(mark'(X1), X2) → mark'(U61'(X1, X2))
U62'(mark'(X1), X2) → mark'(U62'(X1, X2))
U63'(mark'(X)) → mark'(U63'(X))
U71'(mark'(X1), X2) → mark'(U71'(X1, X2))
U72'(mark'(X1), X2) → mark'(U72'(X1, X2))
U73'(mark'(X)) → mark'(U73'(X))
U81'(mark'(X1), X2) → mark'(U81'(X1, X2))
U82'(mark'(X1), X2) → mark'(U82'(X1, X2))
U83'(mark'(X)) → mark'(U83'(X))
U91'(mark'(X1), X2) → mark'(U91'(X1, X2))
U92'(mark'(X1), X2) → mark'(U92'(X1, X2))
U93'(mark'(X)) → mark'(U93'(X))
tail'(mark'(X)) → mark'(tail'(X))
take'(mark'(X1), X2) → mark'(take'(X1, X2))
take'(X1, mark'(X2)) → mark'(take'(X1, X2))
sel'(mark'(X1), X2) → mark'(sel'(X1, X2))
sel'(X1, mark'(X2)) → mark'(sel'(X1, X2))
proper'(U101'(X1, X2, X3)) → U101'(proper'(X1), proper'(X2), proper'(X3))
proper'(tt') → ok'(tt')
proper'(U102'(X1, X2, X3)) → U102'(proper'(X1), proper'(X2), proper'(X3))
proper'(isNaturalKind'(X)) → isNaturalKind'(proper'(X))
proper'(U103'(X1, X2, X3)) → U103'(proper'(X1), proper'(X2), proper'(X3))
proper'(isLNatKind'(X)) → isLNatKind'(proper'(X))
proper'(U104'(X1, X2, X3)) → U104'(proper'(X1), proper'(X2), proper'(X3))
proper'(U105'(X1, X2)) → U105'(proper'(X1), proper'(X2))
proper'(isNatural'(X)) → isNatural'(proper'(X))
proper'(U106'(X)) → U106'(proper'(X))
proper'(isLNat'(X)) → isLNat'(proper'(X))
proper'(U11'(X1, X2, X3)) → U11'(proper'(X1), proper'(X2), proper'(X3))
proper'(U12'(X1, X2, X3)) → U12'(proper'(X1), proper'(X2), proper'(X3))
proper'(U111'(X1, X2)) → U111'(proper'(X1), proper'(X2))
proper'(U112'(X)) → U112'(proper'(X))
proper'(U13'(X1, X2, X3)) → U13'(proper'(X1), proper'(X2), proper'(X3))
proper'(U121'(X1, X2)) → U121'(proper'(X1), proper'(X2))
proper'(U122'(X)) → U122'(proper'(X))
proper'(U14'(X1, X2, X3)) → U14'(proper'(X1), proper'(X2), proper'(X3))
proper'(U131'(X)) → U131'(proper'(X))
proper'(snd'(X)) → snd'(proper'(X))
proper'(splitAt'(X1, X2)) → splitAt'(proper'(X1), proper'(X2))
proper'(U141'(X)) → U141'(proper'(X))
proper'(U151'(X)) → U151'(proper'(X))
proper'(U161'(X)) → U161'(proper'(X))
proper'(U171'(X1, X2)) → U171'(proper'(X1), proper'(X2))
proper'(U172'(X)) → U172'(proper'(X))
proper'(U181'(X1, X2)) → U181'(proper'(X1), proper'(X2))
proper'(U182'(X1, X2)) → U182'(proper'(X1), proper'(X2))
proper'(U183'(X)) → U183'(proper'(X))
proper'(U191'(X1, X2)) → U191'(proper'(X1), proper'(X2))
proper'(U192'(X1, X2)) → U192'(proper'(X1), proper'(X2))
proper'(U193'(X)) → U193'(proper'(X))
proper'(U201'(X1, X2, X3)) → U201'(proper'(X1), proper'(X2), proper'(X3))
proper'(U202'(X1, X2, X3)) → U202'(proper'(X1), proper'(X2), proper'(X3))
proper'(U203'(X1, X2, X3)) → U203'(proper'(X1), proper'(X2), proper'(X3))
proper'(U204'(X1, X2, X3)) → U204'(proper'(X1), proper'(X2), proper'(X3))
proper'(U205'(X1, X2)) → U205'(proper'(X1), proper'(X2))
proper'(U206'(X)) → U206'(proper'(X))
proper'(U21'(X1, X2, X3)) → U21'(proper'(X1), proper'(X2), proper'(X3))
proper'(U22'(X1, X2, X3)) → U22'(proper'(X1), proper'(X2), proper'(X3))
proper'(U211'(X)) → U211'(proper'(X))
proper'(U23'(X1, X2, X3)) → U23'(proper'(X1), proper'(X2), proper'(X3))
proper'(U221'(X)) → U221'(proper'(X))
proper'(U24'(X1, X2)) → U24'(proper'(X1), proper'(X2))
proper'(U231'(X1, X2)) → U231'(proper'(X1), proper'(X2))
proper'(U232'(X)) → U232'(proper'(X))
proper'(U241'(X1, X2, X3)) → U241'(proper'(X1), proper'(X2), proper'(X3))
proper'(U242'(X1, X2, X3)) → U242'(proper'(X1), proper'(X2), proper'(X3))
proper'(U243'(X1, X2, X3)) → U243'(proper'(X1), proper'(X2), proper'(X3))
proper'(U244'(X1, X2, X3)) → U244'(proper'(X1), proper'(X2), proper'(X3))
proper'(U245'(X1, X2)) → U245'(proper'(X1), proper'(X2))
proper'(U246'(X)) → U246'(proper'(X))
proper'(U251'(X1, X2, X3)) → U251'(proper'(X1), proper'(X2), proper'(X3))
proper'(U252'(X1, X2, X3)) → U252'(proper'(X1), proper'(X2), proper'(X3))
proper'(U253'(X1, X2, X3)) → U253'(proper'(X1), proper'(X2), proper'(X3))
proper'(U254'(X1, X2, X3)) → U254'(proper'(X1), proper'(X2), proper'(X3))
proper'(U255'(X1, X2)) → U255'(proper'(X1), proper'(X2))
proper'(U256'(X)) → U256'(proper'(X))
proper'(U261'(X1, X2)) → U261'(proper'(X1), proper'(X2))
proper'(U262'(X)) → U262'(proper'(X))
proper'(U271'(X1, X2)) → U271'(proper'(X1), proper'(X2))
proper'(U272'(X)) → U272'(proper'(X))
proper'(U281'(X1, X2)) → U281'(proper'(X1), proper'(X2))
proper'(U282'(X1, X2)) → U282'(proper'(X1), proper'(X2))
proper'(cons'(X1, X2)) → cons'(proper'(X1), proper'(X2))
proper'(natsFrom'(X)) → natsFrom'(proper'(X))
proper'(s'(X)) → s'(proper'(X))
proper'(U291'(X1, X2, X3)) → U291'(proper'(X1), proper'(X2), proper'(X3))
proper'(U292'(X1, X2, X3)) → U292'(proper'(X1), proper'(X2), proper'(X3))
proper'(U293'(X1, X2, X3)) → U293'(proper'(X1), proper'(X2), proper'(X3))
proper'(U294'(X1, X2, X3)) → U294'(proper'(X1), proper'(X2), proper'(X3))
proper'(head'(X)) → head'(proper'(X))
proper'(afterNth'(X1, X2)) → afterNth'(proper'(X1), proper'(X2))
proper'(U301'(X1, X2, X3)) → U301'(proper'(X1), proper'(X2), proper'(X3))
proper'(U302'(X1, X2)) → U302'(proper'(X1), proper'(X2))
proper'(U303'(X1, X2)) → U303'(proper'(X1), proper'(X2))
proper'(U304'(X1, X2)) → U304'(proper'(X1), proper'(X2))
proper'(U31'(X1, X2, X3)) → U31'(proper'(X1), proper'(X2), proper'(X3))
proper'(U32'(X1, X2, X3)) → U32'(proper'(X1), proper'(X2), proper'(X3))
proper'(U311'(X1, X2)) → U311'(proper'(X1), proper'(X2))
proper'(U312'(X1, X2)) → U312'(proper'(X1), proper'(X2))
proper'(pair'(X1, X2)) → pair'(proper'(X1), proper'(X2))
proper'(nil') → ok'(nil')
proper'(U33'(X1, X2, X3)) → U33'(proper'(X1), proper'(X2), proper'(X3))
proper'(U321'(X1, X2, X3, X4)) → U321'(proper'(X1), proper'(X2), proper'(X3), proper'(X4))
proper'(U322'(X1, X2, X3, X4)) → U322'(proper'(X1), proper'(X2), proper'(X3), proper'(X4))
proper'(U323'(X1, X2, X3, X4)) → U323'(proper'(X1), proper'(X2), proper'(X3), proper'(X4))
proper'(U324'(X1, X2, X3, X4)) → U324'(proper'(X1), proper'(X2), proper'(X3), proper'(X4))
proper'(U325'(X1, X2, X3, X4)) → U325'(proper'(X1), proper'(X2), proper'(X3), proper'(X4))
proper'(U326'(X1, X2, X3, X4)) → U326'(proper'(X1), proper'(X2), proper'(X3), proper'(X4))
proper'(U327'(X1, X2)) → U327'(proper'(X1), proper'(X2))
proper'(U34'(X1, X2)) → U34'(proper'(X1), proper'(X2))
proper'(U331'(X1, X2, X3)) → U331'(proper'(X1), proper'(X2), proper'(X3))
proper'(U332'(X1, X2)) → U332'(proper'(X1), proper'(X2))
proper'(U333'(X1, X2)) → U333'(proper'(X1), proper'(X2))
proper'(U334'(X1, X2)) → U334'(proper'(X1), proper'(X2))
proper'(U341'(X1, X2, X3)) → U341'(proper'(X1), proper'(X2), proper'(X3))
proper'(U342'(X1, X2, X3)) → U342'(proper'(X1), proper'(X2), proper'(X3))
proper'(U343'(X1, X2, X3)) → U343'(proper'(X1), proper'(X2), proper'(X3))
proper'(U344'(X1, X2, X3)) → U344'(proper'(X1), proper'(X2), proper'(X3))
proper'(fst'(X)) → fst'(proper'(X))
proper'(U41'(X1, X2, X3)) → U41'(proper'(X1), proper'(X2), proper'(X3))
proper'(U42'(X1, X2, X3)) → U42'(proper'(X1), proper'(X2), proper'(X3))
proper'(U43'(X1, X2, X3)) → U43'(proper'(X1), proper'(X2), proper'(X3))
proper'(U44'(X1, X2, X3)) → U44'(proper'(X1), proper'(X2), proper'(X3))
proper'(U45'(X1, X2)) → U45'(proper'(X1), proper'(X2))
proper'(U46'(X)) → U46'(proper'(X))
proper'(U51'(X1, X2, X3)) → U51'(proper'(X1), proper'(X2), proper'(X3))
proper'(U52'(X1, X2, X3)) → U52'(proper'(X1), proper'(X2), proper'(X3))
proper'(U53'(X1, X2, X3)) → U53'(proper'(X1), proper'(X2), proper'(X3))
proper'(U54'(X1, X2, X3)) → U54'(proper'(X1), proper'(X2), proper'(X3))
proper'(U55'(X1, X2)) → U55'(proper'(X1), proper'(X2))
proper'(U56'(X)) → U56'(proper'(X))
proper'(U61'(X1, X2)) → U61'(proper'(X1), proper'(X2))
proper'(U62'(X1, X2)) → U62'(proper'(X1), proper'(X2))
proper'(isPLNatKind'(X)) → isPLNatKind'(proper'(X))
proper'(U63'(X)) → U63'(proper'(X))
proper'(isPLNat'(X)) → isPLNat'(proper'(X))
proper'(U71'(X1, X2)) → U71'(proper'(X1), proper'(X2))
proper'(U72'(X1, X2)) → U72'(proper'(X1), proper'(X2))
proper'(U73'(X)) → U73'(proper'(X))
proper'(U81'(X1, X2)) → U81'(proper'(X1), proper'(X2))
proper'(U82'(X1, X2)) → U82'(proper'(X1), proper'(X2))
proper'(U83'(X)) → U83'(proper'(X))
proper'(U91'(X1, X2)) → U91'(proper'(X1), proper'(X2))
proper'(U92'(X1, X2)) → U92'(proper'(X1), proper'(X2))
proper'(U93'(X)) → U93'(proper'(X))
proper'(tail'(X)) → tail'(proper'(X))
proper'(take'(X1, X2)) → take'(proper'(X1), proper'(X2))
proper'(0') → ok'(0')
proper'(sel'(X1, X2)) → sel'(proper'(X1), proper'(X2))
U101'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U101'(X1, X2, X3))
U102'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U102'(X1, X2, X3))
isNaturalKind'(ok'(X)) → ok'(isNaturalKind'(X))
U103'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U103'(X1, X2, X3))
isLNatKind'(ok'(X)) → ok'(isLNatKind'(X))
U104'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U104'(X1, X2, X3))
U105'(ok'(X1), ok'(X2)) → ok'(U105'(X1, X2))
isNatural'(ok'(X)) → ok'(isNatural'(X))
U106'(ok'(X)) → ok'(U106'(X))
isLNat'(ok'(X)) → ok'(isLNat'(X))
U11'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U11'(X1, X2, X3))
U12'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U12'(X1, X2, X3))
U111'(ok'(X1), ok'(X2)) → ok'(U111'(X1, X2))
U112'(ok'(X)) → ok'(U112'(X))
U13'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U13'(X1, X2, X3))
U121'(ok'(X1), ok'(X2)) → ok'(U121'(X1, X2))
U122'(ok'(X)) → ok'(U122'(X))
U14'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U14'(X1, X2, X3))
U131'(ok'(X)) → ok'(U131'(X))
snd'(ok'(X)) → ok'(snd'(X))
splitAt'(ok'(X1), ok'(X2)) → ok'(splitAt'(X1, X2))
U141'(ok'(X)) → ok'(U141'(X))
U151'(ok'(X)) → ok'(U151'(X))
U161'(ok'(X)) → ok'(U161'(X))
U171'(ok'(X1), ok'(X2)) → ok'(U171'(X1, X2))
U172'(ok'(X)) → ok'(U172'(X))
U181'(ok'(X1), ok'(X2)) → ok'(U181'(X1, X2))
U182'(ok'(X1), ok'(X2)) → ok'(U182'(X1, X2))
U183'(ok'(X)) → ok'(U183'(X))
U191'(ok'(X1), ok'(X2)) → ok'(U191'(X1, X2))
U192'(ok'(X1), ok'(X2)) → ok'(U192'(X1, X2))
U193'(ok'(X)) → ok'(U193'(X))
U201'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U201'(X1, X2, X3))
U202'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U202'(X1, X2, X3))
U203'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U203'(X1, X2, X3))
U204'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U204'(X1, X2, X3))
U205'(ok'(X1), ok'(X2)) → ok'(U205'(X1, X2))
U206'(ok'(X)) → ok'(U206'(X))
U21'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U21'(X1, X2, X3))
U22'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U22'(X1, X2, X3))
U211'(ok'(X)) → ok'(U211'(X))
U23'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U23'(X1, X2, X3))
U221'(ok'(X)) → ok'(U221'(X))
U24'(ok'(X1), ok'(X2)) → ok'(U24'(X1, X2))
U231'(ok'(X1), ok'(X2)) → ok'(U231'(X1, X2))
U232'(ok'(X)) → ok'(U232'(X))
U241'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U241'(X1, X2, X3))
U242'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U242'(X1, X2, X3))
U243'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U243'(X1, X2, X3))
U244'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U244'(X1, X2, X3))
U245'(ok'(X1), ok'(X2)) → ok'(U245'(X1, X2))
U246'(ok'(X)) → ok'(U246'(X))
U251'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U251'(X1, X2, X3))
U252'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U252'(X1, X2, X3))
U253'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U253'(X1, X2, X3))
U254'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U254'(X1, X2, X3))
U255'(ok'(X1), ok'(X2)) → ok'(U255'(X1, X2))
U256'(ok'(X)) → ok'(U256'(X))
U261'(ok'(X1), ok'(X2)) → ok'(U261'(X1, X2))
U262'(ok'(X)) → ok'(U262'(X))
U271'(ok'(X1), ok'(X2)) → ok'(U271'(X1, X2))
U272'(ok'(X)) → ok'(U272'(X))
U281'(ok'(X1), ok'(X2)) → ok'(U281'(X1, X2))
U282'(ok'(X1), ok'(X2)) → ok'(U282'(X1, X2))
cons'(ok'(X1), ok'(X2)) → ok'(cons'(X1, X2))
natsFrom'(ok'(X)) → ok'(natsFrom'(X))
s'(ok'(X)) → ok'(s'(X))
U291'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U291'(X1, X2, X3))
U292'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U292'(X1, X2, X3))
U293'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U293'(X1, X2, X3))
U294'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U294'(X1, X2, X3))
head'(ok'(X)) → ok'(head'(X))
afterNth'(ok'(X1), ok'(X2)) → ok'(afterNth'(X1, X2))
U301'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U301'(X1, X2, X3))
U302'(ok'(X1), ok'(X2)) → ok'(U302'(X1, X2))
U303'(ok'(X1), ok'(X2)) → ok'(U303'(X1, X2))
U304'(ok'(X1), ok'(X2)) → ok'(U304'(X1, X2))
U31'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U31'(X1, X2, X3))
U32'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U32'(X1, X2, X3))
U311'(ok'(X1), ok'(X2)) → ok'(U311'(X1, X2))
U312'(ok'(X1), ok'(X2)) → ok'(U312'(X1, X2))
pair'(ok'(X1), ok'(X2)) → ok'(pair'(X1, X2))
U33'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U33'(X1, X2, X3))
U321'(ok'(X1), ok'(X2), ok'(X3), ok'(X4)) → ok'(U321'(X1, X2, X3, X4))
U322'(ok'(X1), ok'(X2), ok'(X3), ok'(X4)) → ok'(U322'(X1, X2, X3, X4))
U323'(ok'(X1), ok'(X2), ok'(X3), ok'(X4)) → ok'(U323'(X1, X2, X3, X4))
U324'(ok'(X1), ok'(X2), ok'(X3), ok'(X4)) → ok'(U324'(X1, X2, X3, X4))
U325'(ok'(X1), ok'(X2), ok'(X3), ok'(X4)) → ok'(U325'(X1, X2, X3, X4))
U326'(ok'(X1), ok'(X2), ok'(X3), ok'(X4)) → ok'(U326'(X1, X2, X3, X4))
U327'(ok'(X1), ok'(X2)) → ok'(U327'(X1, X2))
U34'(ok'(X1), ok'(X2)) → ok'(U34'(X1, X2))
U331'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U331'(X1, X2, X3))
U332'(ok'(X1), ok'(X2)) → ok'(U332'(X1, X2))
U333'(ok'(X1), ok'(X2)) → ok'(U333'(X1, X2))
U334'(ok'(X1), ok'(X2)) → ok'(U334'(X1, X2))
U341'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U341'(X1, X2, X3))
U342'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U342'(X1, X2, X3))
U343'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U343'(X1, X2, X3))
U344'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U344'(X1, X2, X3))
fst'(ok'(X)) → ok'(fst'(X))
U41'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U41'(X1, X2, X3))
U42'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U42'(X1, X2, X3))
U43'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U43'(X1, X2, X3))
U44'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U44'(X1, X2, X3))
U45'(ok'(X1), ok'(X2)) → ok'(U45'(X1, X2))
U46'(ok'(X)) → ok'(U46'(X))
U51'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U51'(X1, X2, X3))
U52'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U52'(X1, X2, X3))
U53'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U53'(X1, X2, X3))
U54'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U54'(X1, X2, X3))
U55'(ok'(X1), ok'(X2)) → ok'(U55'(X1, X2))
U56'(ok'(X)) → ok'(U56'(X))
U61'(ok'(X1), ok'(X2)) → ok'(U61'(X1, X2))
U62'(ok'(X1), ok'(X2)) → ok'(U62'(X1, X2))
isPLNatKind'(ok'(X)) → ok'(isPLNatKind'(X))
U63'(ok'(X)) → ok'(U63'(X))
isPLNat'(ok'(X)) → ok'(isPLNat'(X))
U71'(ok'(X1), ok'(X2)) → ok'(U71'(X1, X2))
U72'(ok'(X1), ok'(X2)) → ok'(U72'(X1, X2))
U73'(ok'(X)) → ok'(U73'(X))
U81'(ok'(X1), ok'(X2)) → ok'(U81'(X1, X2))
U82'(ok'(X1), ok'(X2)) → ok'(U82'(X1, X2))
U83'(ok'(X)) → ok'(U83'(X))
U91'(ok'(X1), ok'(X2)) → ok'(U91'(X1, X2))
U92'(ok'(X1), ok'(X2)) → ok'(U92'(X1, X2))
U93'(ok'(X)) → ok'(U93'(X))
tail'(ok'(X)) → ok'(tail'(X))
take'(ok'(X1), ok'(X2)) → ok'(take'(X1, X2))
sel'(ok'(X1), ok'(X2)) → ok'(sel'(X1, X2))
top'(mark'(X)) → top'(proper'(X))
top'(ok'(X)) → top'(active'(X))

Rewrite Strategy: INNERMOST


Infered types.


Rules:
active'(U101'(tt', V1, V2)) → mark'(U102'(isNaturalKind'(V1), V1, V2))
active'(U102'(tt', V1, V2)) → mark'(U103'(isLNatKind'(V2), V1, V2))
active'(U103'(tt', V1, V2)) → mark'(U104'(isLNatKind'(V2), V1, V2))
active'(U104'(tt', V1, V2)) → mark'(U105'(isNatural'(V1), V2))
active'(U105'(tt', V2)) → mark'(U106'(isLNat'(V2)))
active'(U106'(tt')) → mark'(tt')
active'(U11'(tt', N, XS)) → mark'(U12'(isNaturalKind'(N), N, XS))
active'(U111'(tt', V2)) → mark'(U112'(isLNatKind'(V2)))
active'(U112'(tt')) → mark'(tt')
active'(U12'(tt', N, XS)) → mark'(U13'(isLNat'(XS), N, XS))
active'(U121'(tt', V2)) → mark'(U122'(isLNatKind'(V2)))
active'(U122'(tt')) → mark'(tt')
active'(U13'(tt', N, XS)) → mark'(U14'(isLNatKind'(XS), N, XS))
active'(U131'(tt')) → mark'(tt')
active'(U14'(tt', N, XS)) → mark'(snd'(splitAt'(N, XS)))
active'(U141'(tt')) → mark'(tt')
active'(U151'(tt')) → mark'(tt')
active'(U161'(tt')) → mark'(tt')
active'(U171'(tt', V2)) → mark'(U172'(isLNatKind'(V2)))
active'(U172'(tt')) → mark'(tt')
active'(U181'(tt', V1)) → mark'(U182'(isLNatKind'(V1), V1))
active'(U182'(tt', V1)) → mark'(U183'(isLNat'(V1)))
active'(U183'(tt')) → mark'(tt')
active'(U191'(tt', V1)) → mark'(U192'(isNaturalKind'(V1), V1))
active'(U192'(tt', V1)) → mark'(U193'(isNatural'(V1)))
active'(U193'(tt')) → mark'(tt')
active'(U201'(tt', V1, V2)) → mark'(U202'(isNaturalKind'(V1), V1, V2))
active'(U202'(tt', V1, V2)) → mark'(U203'(isLNatKind'(V2), V1, V2))
active'(U203'(tt', V1, V2)) → mark'(U204'(isLNatKind'(V2), V1, V2))
active'(U204'(tt', V1, V2)) → mark'(U205'(isNatural'(V1), V2))
active'(U205'(tt', V2)) → mark'(U206'(isLNat'(V2)))
active'(U206'(tt')) → mark'(tt')
active'(U21'(tt', X, Y)) → mark'(U22'(isLNatKind'(X), X, Y))
active'(U211'(tt')) → mark'(tt')
active'(U22'(tt', X, Y)) → mark'(U23'(isLNat'(Y), X, Y))
active'(U221'(tt')) → mark'(tt')
active'(U23'(tt', X, Y)) → mark'(U24'(isLNatKind'(Y), X))
active'(U231'(tt', V2)) → mark'(U232'(isLNatKind'(V2)))
active'(U232'(tt')) → mark'(tt')
active'(U24'(tt', X)) → mark'(X)
active'(U241'(tt', V1, V2)) → mark'(U242'(isLNatKind'(V1), V1, V2))
active'(U242'(tt', V1, V2)) → mark'(U243'(isLNatKind'(V2), V1, V2))
active'(U243'(tt', V1, V2)) → mark'(U244'(isLNatKind'(V2), V1, V2))
active'(U244'(tt', V1, V2)) → mark'(U245'(isLNat'(V1), V2))
active'(U245'(tt', V2)) → mark'(U246'(isLNat'(V2)))
active'(U246'(tt')) → mark'(tt')
active'(U251'(tt', V1, V2)) → mark'(U252'(isNaturalKind'(V1), V1, V2))
active'(U252'(tt', V1, V2)) → mark'(U253'(isLNatKind'(V2), V1, V2))
active'(U253'(tt', V1, V2)) → mark'(U254'(isLNatKind'(V2), V1, V2))
active'(U254'(tt', V1, V2)) → mark'(U255'(isNatural'(V1), V2))
active'(U255'(tt', V2)) → mark'(U256'(isLNat'(V2)))
active'(U256'(tt')) → mark'(tt')
active'(U261'(tt', V2)) → mark'(U262'(isLNatKind'(V2)))
active'(U262'(tt')) → mark'(tt')
active'(U271'(tt', V2)) → mark'(U272'(isLNatKind'(V2)))
active'(U272'(tt')) → mark'(tt')
active'(U281'(tt', N)) → mark'(U282'(isNaturalKind'(N), N))
active'(U282'(tt', N)) → mark'(cons'(N, natsFrom'(s'(N))))
active'(U291'(tt', N, XS)) → mark'(U292'(isNaturalKind'(N), N, XS))
active'(U292'(tt', N, XS)) → mark'(U293'(isLNat'(XS), N, XS))
active'(U293'(tt', N, XS)) → mark'(U294'(isLNatKind'(XS), N, XS))
active'(U294'(tt', N, XS)) → mark'(head'(afterNth'(N, XS)))
active'(U301'(tt', X, Y)) → mark'(U302'(isLNatKind'(X), Y))
active'(U302'(tt', Y)) → mark'(U303'(isLNat'(Y), Y))
active'(U303'(tt', Y)) → mark'(U304'(isLNatKind'(Y), Y))
active'(U304'(tt', Y)) → mark'(Y)
active'(U31'(tt', N, XS)) → mark'(U32'(isNaturalKind'(N), N, XS))
active'(U311'(tt', XS)) → mark'(U312'(isLNatKind'(XS), XS))
active'(U312'(tt', XS)) → mark'(pair'(nil', XS))
active'(U32'(tt', N, XS)) → mark'(U33'(isLNat'(XS), N, XS))
active'(U321'(tt', N, X, XS)) → mark'(U322'(isNaturalKind'(N), N, X, XS))
active'(U322'(tt', N, X, XS)) → mark'(U323'(isNatural'(X), N, X, XS))
active'(U323'(tt', N, X, XS)) → mark'(U324'(isNaturalKind'(X), N, X, XS))
active'(U324'(tt', N, X, XS)) → mark'(U325'(isLNat'(XS), N, X, XS))
active'(U325'(tt', N, X, XS)) → mark'(U326'(isLNatKind'(XS), N, X, XS))
active'(U326'(tt', N, X, XS)) → mark'(U327'(splitAt'(N, XS), X))
active'(U327'(pair'(YS, ZS), X)) → mark'(pair'(cons'(X, YS), ZS))
active'(U33'(tt', N, XS)) → mark'(U34'(isLNatKind'(XS), N))
active'(U331'(tt', N, XS)) → mark'(U332'(isNaturalKind'(N), XS))
active'(U332'(tt', XS)) → mark'(U333'(isLNat'(XS), XS))
active'(U333'(tt', XS)) → mark'(U334'(isLNatKind'(XS), XS))
active'(U334'(tt', XS)) → mark'(XS)
active'(U34'(tt', N)) → mark'(N)
active'(U341'(tt', N, XS)) → mark'(U342'(isNaturalKind'(N), N, XS))
active'(U342'(tt', N, XS)) → mark'(U343'(isLNat'(XS), N, XS))
active'(U343'(tt', N, XS)) → mark'(U344'(isLNatKind'(XS), N, XS))
active'(U344'(tt', N, XS)) → mark'(fst'(splitAt'(N, XS)))
active'(U41'(tt', V1, V2)) → mark'(U42'(isNaturalKind'(V1), V1, V2))
active'(U42'(tt', V1, V2)) → mark'(U43'(isLNatKind'(V2), V1, V2))
active'(U43'(tt', V1, V2)) → mark'(U44'(isLNatKind'(V2), V1, V2))
active'(U44'(tt', V1, V2)) → mark'(U45'(isNatural'(V1), V2))
active'(U45'(tt', V2)) → mark'(U46'(isLNat'(V2)))
active'(U46'(tt')) → mark'(tt')
active'(U51'(tt', V1, V2)) → mark'(U52'(isNaturalKind'(V1), V1, V2))
active'(U52'(tt', V1, V2)) → mark'(U53'(isLNatKind'(V2), V1, V2))
active'(U53'(tt', V1, V2)) → mark'(U54'(isLNatKind'(V2), V1, V2))
active'(U54'(tt', V1, V2)) → mark'(U55'(isNatural'(V1), V2))
active'(U55'(tt', V2)) → mark'(U56'(isLNat'(V2)))
active'(U56'(tt')) → mark'(tt')
active'(U61'(tt', V1)) → mark'(U62'(isPLNatKind'(V1), V1))
active'(U62'(tt', V1)) → mark'(U63'(isPLNat'(V1)))
active'(U63'(tt')) → mark'(tt')
active'(U71'(tt', V1)) → mark'(U72'(isNaturalKind'(V1), V1))
active'(U72'(tt', V1)) → mark'(U73'(isNatural'(V1)))
active'(U73'(tt')) → mark'(tt')
active'(U81'(tt', V1)) → mark'(U82'(isPLNatKind'(V1), V1))
active'(U82'(tt', V1)) → mark'(U83'(isPLNat'(V1)))
active'(U83'(tt')) → mark'(tt')
active'(U91'(tt', V1)) → mark'(U92'(isLNatKind'(V1), V1))
active'(U92'(tt', V1)) → mark'(U93'(isLNat'(V1)))
active'(U93'(tt')) → mark'(tt')
active'(afterNth'(N, XS)) → mark'(U11'(isNatural'(N), N, XS))
active'(fst'(pair'(X, Y))) → mark'(U21'(isLNat'(X), X, Y))
active'(head'(cons'(N, XS))) → mark'(U31'(isNatural'(N), N, XS))
active'(isLNat'(nil')) → mark'(tt')
active'(isLNat'(afterNth'(V1, V2))) → mark'(U41'(isNaturalKind'(V1), V1, V2))
active'(isLNat'(cons'(V1, V2))) → mark'(U51'(isNaturalKind'(V1), V1, V2))
active'(isLNat'(fst'(V1))) → mark'(U61'(isPLNatKind'(V1), V1))
active'(isLNat'(natsFrom'(V1))) → mark'(U71'(isNaturalKind'(V1), V1))
active'(isLNat'(snd'(V1))) → mark'(U81'(isPLNatKind'(V1), V1))
active'(isLNat'(tail'(V1))) → mark'(U91'(isLNatKind'(V1), V1))
active'(isLNat'(take'(V1, V2))) → mark'(U101'(isNaturalKind'(V1), V1, V2))
active'(isLNatKind'(nil')) → mark'(tt')
active'(isLNatKind'(afterNth'(V1, V2))) → mark'(U111'(isNaturalKind'(V1), V2))
active'(isLNatKind'(cons'(V1, V2))) → mark'(U121'(isNaturalKind'(V1), V2))
active'(isLNatKind'(fst'(V1))) → mark'(U131'(isPLNatKind'(V1)))
active'(isLNatKind'(natsFrom'(V1))) → mark'(U141'(isNaturalKind'(V1)))
active'(isLNatKind'(snd'(V1))) → mark'(U151'(isPLNatKind'(V1)))
active'(isLNatKind'(tail'(V1))) → mark'(U161'(isLNatKind'(V1)))
active'(isLNatKind'(take'(V1, V2))) → mark'(U171'(isNaturalKind'(V1), V2))
active'(isNatural'(0')) → mark'(tt')
active'(isNatural'(head'(V1))) → mark'(U181'(isLNatKind'(V1), V1))
active'(isNatural'(s'(V1))) → mark'(U191'(isNaturalKind'(V1), V1))
active'(isNatural'(sel'(V1, V2))) → mark'(U201'(isNaturalKind'(V1), V1, V2))
active'(isNaturalKind'(0')) → mark'(tt')
active'(isNaturalKind'(head'(V1))) → mark'(U211'(isLNatKind'(V1)))
active'(isNaturalKind'(s'(V1))) → mark'(U221'(isNaturalKind'(V1)))
active'(isNaturalKind'(sel'(V1, V2))) → mark'(U231'(isNaturalKind'(V1), V2))
active'(isPLNat'(pair'(V1, V2))) → mark'(U241'(isLNatKind'(V1), V1, V2))
active'(isPLNat'(splitAt'(V1, V2))) → mark'(U251'(isNaturalKind'(V1), V1, V2))
active'(isPLNatKind'(pair'(V1, V2))) → mark'(U261'(isLNatKind'(V1), V2))
active'(isPLNatKind'(splitAt'(V1, V2))) → mark'(U271'(isNaturalKind'(V1), V2))
active'(natsFrom'(N)) → mark'(U281'(isNatural'(N), N))
active'(sel'(N, XS)) → mark'(U291'(isNatural'(N), N, XS))
active'(snd'(pair'(X, Y))) → mark'(U301'(isLNat'(X), X, Y))
active'(splitAt'(0', XS)) → mark'(U311'(isLNat'(XS), XS))
active'(splitAt'(s'(N), cons'(X, XS))) → mark'(U321'(isNatural'(N), N, X, XS))
active'(tail'(cons'(N, XS))) → mark'(U331'(isNatural'(N), N, XS))
active'(take'(N, XS)) → mark'(U341'(isNatural'(N), N, XS))
active'(U101'(X1, X2, X3)) → U101'(active'(X1), X2, X3)
active'(U102'(X1, X2, X3)) → U102'(active'(X1), X2, X3)
active'(U103'(X1, X2, X3)) → U103'(active'(X1), X2, X3)
active'(U104'(X1, X2, X3)) → U104'(active'(X1), X2, X3)
active'(U105'(X1, X2)) → U105'(active'(X1), X2)
active'(U106'(X)) → U106'(active'(X))
active'(U11'(X1, X2, X3)) → U11'(active'(X1), X2, X3)
active'(U12'(X1, X2, X3)) → U12'(active'(X1), X2, X3)
active'(U111'(X1, X2)) → U111'(active'(X1), X2)
active'(U112'(X)) → U112'(active'(X))
active'(U13'(X1, X2, X3)) → U13'(active'(X1), X2, X3)
active'(U121'(X1, X2)) → U121'(active'(X1), X2)
active'(U122'(X)) → U122'(active'(X))
active'(U14'(X1, X2, X3)) → U14'(active'(X1), X2, X3)
active'(U131'(X)) → U131'(active'(X))
active'(snd'(X)) → snd'(active'(X))
active'(splitAt'(X1, X2)) → splitAt'(active'(X1), X2)
active'(splitAt'(X1, X2)) → splitAt'(X1, active'(X2))
active'(U141'(X)) → U141'(active'(X))
active'(U151'(X)) → U151'(active'(X))
active'(U161'(X)) → U161'(active'(X))
active'(U171'(X1, X2)) → U171'(active'(X1), X2)
active'(U172'(X)) → U172'(active'(X))
active'(U181'(X1, X2)) → U181'(active'(X1), X2)
active'(U182'(X1, X2)) → U182'(active'(X1), X2)
active'(U183'(X)) → U183'(active'(X))
active'(U191'(X1, X2)) → U191'(active'(X1), X2)
active'(U192'(X1, X2)) → U192'(active'(X1), X2)
active'(U193'(X)) → U193'(active'(X))
active'(U201'(X1, X2, X3)) → U201'(active'(X1), X2, X3)
active'(U202'(X1, X2, X3)) → U202'(active'(X1), X2, X3)
active'(U203'(X1, X2, X3)) → U203'(active'(X1), X2, X3)
active'(U204'(X1, X2, X3)) → U204'(active'(X1), X2, X3)
active'(U205'(X1, X2)) → U205'(active'(X1), X2)
active'(U206'(X)) → U206'(active'(X))
active'(U21'(X1, X2, X3)) → U21'(active'(X1), X2, X3)
active'(U22'(X1, X2, X3)) → U22'(active'(X1), X2, X3)
active'(U211'(X)) → U211'(active'(X))
active'(U23'(X1, X2, X3)) → U23'(active'(X1), X2, X3)
active'(U221'(X)) → U221'(active'(X))
active'(U24'(X1, X2)) → U24'(active'(X1), X2)
active'(U231'(X1, X2)) → U231'(active'(X1), X2)
active'(U232'(X)) → U232'(active'(X))
active'(U241'(X1, X2, X3)) → U241'(active'(X1), X2, X3)
active'(U242'(X1, X2, X3)) → U242'(active'(X1), X2, X3)
active'(U243'(X1, X2, X3)) → U243'(active'(X1), X2, X3)
active'(U244'(X1, X2, X3)) → U244'(active'(X1), X2, X3)
active'(U245'(X1, X2)) → U245'(active'(X1), X2)
active'(U246'(X)) → U246'(active'(X))
active'(U251'(X1, X2, X3)) → U251'(active'(X1), X2, X3)
active'(U252'(X1, X2, X3)) → U252'(active'(X1), X2, X3)
active'(U253'(X1, X2, X3)) → U253'(active'(X1), X2, X3)
active'(U254'(X1, X2, X3)) → U254'(active'(X1), X2, X3)
active'(U255'(X1, X2)) → U255'(active'(X1), X2)
active'(U256'(X)) → U256'(active'(X))
active'(U261'(X1, X2)) → U261'(active'(X1), X2)
active'(U262'(X)) → U262'(active'(X))
active'(U271'(X1, X2)) → U271'(active'(X1), X2)
active'(U272'(X)) → U272'(active'(X))
active'(U281'(X1, X2)) → U281'(active'(X1), X2)
active'(U282'(X1, X2)) → U282'(active'(X1), X2)
active'(cons'(X1, X2)) → cons'(active'(X1), X2)
active'(natsFrom'(X)) → natsFrom'(active'(X))
active'(s'(X)) → s'(active'(X))
active'(U291'(X1, X2, X3)) → U291'(active'(X1), X2, X3)
active'(U292'(X1, X2, X3)) → U292'(active'(X1), X2, X3)
active'(U293'(X1, X2, X3)) → U293'(active'(X1), X2, X3)
active'(U294'(X1, X2, X3)) → U294'(active'(X1), X2, X3)
active'(head'(X)) → head'(active'(X))
active'(afterNth'(X1, X2)) → afterNth'(active'(X1), X2)
active'(afterNth'(X1, X2)) → afterNth'(X1, active'(X2))
active'(U301'(X1, X2, X3)) → U301'(active'(X1), X2, X3)
active'(U302'(X1, X2)) → U302'(active'(X1), X2)
active'(U303'(X1, X2)) → U303'(active'(X1), X2)
active'(U304'(X1, X2)) → U304'(active'(X1), X2)
active'(U31'(X1, X2, X3)) → U31'(active'(X1), X2, X3)
active'(U32'(X1, X2, X3)) → U32'(active'(X1), X2, X3)
active'(U311'(X1, X2)) → U311'(active'(X1), X2)
active'(U312'(X1, X2)) → U312'(active'(X1), X2)
active'(pair'(X1, X2)) → pair'(active'(X1), X2)
active'(pair'(X1, X2)) → pair'(X1, active'(X2))
active'(U33'(X1, X2, X3)) → U33'(active'(X1), X2, X3)
active'(U321'(X1, X2, X3, X4)) → U321'(active'(X1), X2, X3, X4)
active'(U322'(X1, X2, X3, X4)) → U322'(active'(X1), X2, X3, X4)
active'(U323'(X1, X2, X3, X4)) → U323'(active'(X1), X2, X3, X4)
active'(U324'(X1, X2, X3, X4)) → U324'(active'(X1), X2, X3, X4)
active'(U325'(X1, X2, X3, X4)) → U325'(active'(X1), X2, X3, X4)
active'(U326'(X1, X2, X3, X4)) → U326'(active'(X1), X2, X3, X4)
active'(U327'(X1, X2)) → U327'(active'(X1), X2)
active'(U34'(X1, X2)) → U34'(active'(X1), X2)
active'(U331'(X1, X2, X3)) → U331'(active'(X1), X2, X3)
active'(U332'(X1, X2)) → U332'(active'(X1), X2)
active'(U333'(X1, X2)) → U333'(active'(X1), X2)
active'(U334'(X1, X2)) → U334'(active'(X1), X2)
active'(U341'(X1, X2, X3)) → U341'(active'(X1), X2, X3)
active'(U342'(X1, X2, X3)) → U342'(active'(X1), X2, X3)
active'(U343'(X1, X2, X3)) → U343'(active'(X1), X2, X3)
active'(U344'(X1, X2, X3)) → U344'(active'(X1), X2, X3)
active'(fst'(X)) → fst'(active'(X))
active'(U41'(X1, X2, X3)) → U41'(active'(X1), X2, X3)
active'(U42'(X1, X2, X3)) → U42'(active'(X1), X2, X3)
active'(U43'(X1, X2, X3)) → U43'(active'(X1), X2, X3)
active'(U44'(X1, X2, X3)) → U44'(active'(X1), X2, X3)
active'(U45'(X1, X2)) → U45'(active'(X1), X2)
active'(U46'(X)) → U46'(active'(X))
active'(U51'(X1, X2, X3)) → U51'(active'(X1), X2, X3)
active'(U52'(X1, X2, X3)) → U52'(active'(X1), X2, X3)
active'(U53'(X1, X2, X3)) → U53'(active'(X1), X2, X3)
active'(U54'(X1, X2, X3)) → U54'(active'(X1), X2, X3)
active'(U55'(X1, X2)) → U55'(active'(X1), X2)
active'(U56'(X)) → U56'(active'(X))
active'(U61'(X1, X2)) → U61'(active'(X1), X2)
active'(U62'(X1, X2)) → U62'(active'(X1), X2)
active'(U63'(X)) → U63'(active'(X))
active'(U71'(X1, X2)) → U71'(active'(X1), X2)
active'(U72'(X1, X2)) → U72'(active'(X1), X2)
active'(U73'(X)) → U73'(active'(X))
active'(U81'(X1, X2)) → U81'(active'(X1), X2)
active'(U82'(X1, X2)) → U82'(active'(X1), X2)
active'(U83'(X)) → U83'(active'(X))
active'(U91'(X1, X2)) → U91'(active'(X1), X2)
active'(U92'(X1, X2)) → U92'(active'(X1), X2)
active'(U93'(X)) → U93'(active'(X))
active'(tail'(X)) → tail'(active'(X))
active'(take'(X1, X2)) → take'(active'(X1), X2)
active'(take'(X1, X2)) → take'(X1, active'(X2))
active'(sel'(X1, X2)) → sel'(active'(X1), X2)
active'(sel'(X1, X2)) → sel'(X1, active'(X2))
U101'(mark'(X1), X2, X3) → mark'(U101'(X1, X2, X3))
U102'(mark'(X1), X2, X3) → mark'(U102'(X1, X2, X3))
U103'(mark'(X1), X2, X3) → mark'(U103'(X1, X2, X3))
U104'(mark'(X1), X2, X3) → mark'(U104'(X1, X2, X3))
U105'(mark'(X1), X2) → mark'(U105'(X1, X2))
U106'(mark'(X)) → mark'(U106'(X))
U11'(mark'(X1), X2, X3) → mark'(U11'(X1, X2, X3))
U12'(mark'(X1), X2, X3) → mark'(U12'(X1, X2, X3))
U111'(mark'(X1), X2) → mark'(U111'(X1, X2))
U112'(mark'(X)) → mark'(U112'(X))
U13'(mark'(X1), X2, X3) → mark'(U13'(X1, X2, X3))
U121'(mark'(X1), X2) → mark'(U121'(X1, X2))
U122'(mark'(X)) → mark'(U122'(X))
U14'(mark'(X1), X2, X3) → mark'(U14'(X1, X2, X3))
U131'(mark'(X)) → mark'(U131'(X))
snd'(mark'(X)) → mark'(snd'(X))
splitAt'(mark'(X1), X2) → mark'(splitAt'(X1, X2))
splitAt'(X1, mark'(X2)) → mark'(splitAt'(X1, X2))
U141'(mark'(X)) → mark'(U141'(X))
U151'(mark'(X)) → mark'(U151'(X))
U161'(mark'(X)) → mark'(U161'(X))
U171'(mark'(X1), X2) → mark'(U171'(X1, X2))
U172'(mark'(X)) → mark'(U172'(X))
U181'(mark'(X1), X2) → mark'(U181'(X1, X2))
U182'(mark'(X1), X2) → mark'(U182'(X1, X2))
U183'(mark'(X)) → mark'(U183'(X))
U191'(mark'(X1), X2) → mark'(U191'(X1, X2))
U192'(mark'(X1), X2) → mark'(U192'(X1, X2))
U193'(mark'(X)) → mark'(U193'(X))
U201'(mark'(X1), X2, X3) → mark'(U201'(X1, X2, X3))
U202'(mark'(X1), X2, X3) → mark'(U202'(X1, X2, X3))
U203'(mark'(X1), X2, X3) → mark'(U203'(X1, X2, X3))
U204'(mark'(X1), X2, X3) → mark'(U204'(X1, X2, X3))
U205'(mark'(X1), X2) → mark'(U205'(X1, X2))
U206'(mark'(X)) → mark'(U206'(X))
U21'(mark'(X1), X2, X3) → mark'(U21'(X1, X2, X3))
U22'(mark'(X1), X2, X3) → mark'(U22'(X1, X2, X3))
U211'(mark'(X)) → mark'(U211'(X))
U23'(mark'(X1), X2, X3) → mark'(U23'(X1, X2, X3))
U221'(mark'(X)) → mark'(U221'(X))
U24'(mark'(X1), X2) → mark'(U24'(X1, X2))
U231'(mark'(X1), X2) → mark'(U231'(X1, X2))
U232'(mark'(X)) → mark'(U232'(X))
U241'(mark'(X1), X2, X3) → mark'(U241'(X1, X2, X3))
U242'(mark'(X1), X2, X3) → mark'(U242'(X1, X2, X3))
U243'(mark'(X1), X2, X3) → mark'(U243'(X1, X2, X3))
U244'(mark'(X1), X2, X3) → mark'(U244'(X1, X2, X3))
U245'(mark'(X1), X2) → mark'(U245'(X1, X2))
U246'(mark'(X)) → mark'(U246'(X))
U251'(mark'(X1), X2, X3) → mark'(U251'(X1, X2, X3))
U252'(mark'(X1), X2, X3) → mark'(U252'(X1, X2, X3))
U253'(mark'(X1), X2, X3) → mark'(U253'(X1, X2, X3))
U254'(mark'(X1), X2, X3) → mark'(U254'(X1, X2, X3))
U255'(mark'(X1), X2) → mark'(U255'(X1, X2))
U256'(mark'(X)) → mark'(U256'(X))
U261'(mark'(X1), X2) → mark'(U261'(X1, X2))
U262'(mark'(X)) → mark'(U262'(X))
U271'(mark'(X1), X2) → mark'(U271'(X1, X2))
U272'(mark'(X)) → mark'(U272'(X))
U281'(mark'(X1), X2) → mark'(U281'(X1, X2))
U282'(mark'(X1), X2) → mark'(U282'(X1, X2))
cons'(mark'(X1), X2) → mark'(cons'(X1, X2))
natsFrom'(mark'(X)) → mark'(natsFrom'(X))
s'(mark'(X)) → mark'(s'(X))
U291'(mark'(X1), X2, X3) → mark'(U291'(X1, X2, X3))
U292'(mark'(X1), X2, X3) → mark'(U292'(X1, X2, X3))
U293'(mark'(X1), X2, X3) → mark'(U293'(X1, X2, X3))
U294'(mark'(X1), X2, X3) → mark'(U294'(X1, X2, X3))
head'(mark'(X)) → mark'(head'(X))
afterNth'(mark'(X1), X2) → mark'(afterNth'(X1, X2))
afterNth'(X1, mark'(X2)) → mark'(afterNth'(X1, X2))
U301'(mark'(X1), X2, X3) → mark'(U301'(X1, X2, X3))
U302'(mark'(X1), X2) → mark'(U302'(X1, X2))
U303'(mark'(X1), X2) → mark'(U303'(X1, X2))
U304'(mark'(X1), X2) → mark'(U304'(X1, X2))
U31'(mark'(X1), X2, X3) → mark'(U31'(X1, X2, X3))
U32'(mark'(X1), X2, X3) → mark'(U32'(X1, X2, X3))
U311'(mark'(X1), X2) → mark'(U311'(X1, X2))
U312'(mark'(X1), X2) → mark'(U312'(X1, X2))
pair'(mark'(X1), X2) → mark'(pair'(X1, X2))
pair'(X1, mark'(X2)) → mark'(pair'(X1, X2))
U33'(mark'(X1), X2, X3) → mark'(U33'(X1, X2, X3))
U321'(mark'(X1), X2, X3, X4) → mark'(U321'(X1, X2, X3, X4))
U322'(mark'(X1), X2, X3, X4) → mark'(U322'(X1, X2, X3, X4))
U323'(mark'(X1), X2, X3, X4) → mark'(U323'(X1, X2, X3, X4))
U324'(mark'(X1), X2, X3, X4) → mark'(U324'(X1, X2, X3, X4))
U325'(mark'(X1), X2, X3, X4) → mark'(U325'(X1, X2, X3, X4))
U326'(mark'(X1), X2, X3, X4) → mark'(U326'(X1, X2, X3, X4))
U327'(mark'(X1), X2) → mark'(U327'(X1, X2))
U34'(mark'(X1), X2) → mark'(U34'(X1, X2))
U331'(mark'(X1), X2, X3) → mark'(U331'(X1, X2, X3))
U332'(mark'(X1), X2) → mark'(U332'(X1, X2))
U333'(mark'(X1), X2) → mark'(U333'(X1, X2))
U334'(mark'(X1), X2) → mark'(U334'(X1, X2))
U341'(mark'(X1), X2, X3) → mark'(U341'(X1, X2, X3))
U342'(mark'(X1), X2, X3) → mark'(U342'(X1, X2, X3))
U343'(mark'(X1), X2, X3) → mark'(U343'(X1, X2, X3))
U344'(mark'(X1), X2, X3) → mark'(U344'(X1, X2, X3))
fst'(mark'(X)) → mark'(fst'(X))
U41'(mark'(X1), X2, X3) → mark'(U41'(X1, X2, X3))
U42'(mark'(X1), X2, X3) → mark'(U42'(X1, X2, X3))
U43'(mark'(X1), X2, X3) → mark'(U43'(X1, X2, X3))
U44'(mark'(X1), X2, X3) → mark'(U44'(X1, X2, X3))
U45'(mark'(X1), X2) → mark'(U45'(X1, X2))
U46'(mark'(X)) → mark'(U46'(X))
U51'(mark'(X1), X2, X3) → mark'(U51'(X1, X2, X3))
U52'(mark'(X1), X2, X3) → mark'(U52'(X1, X2, X3))
U53'(mark'(X1), X2, X3) → mark'(U53'(X1, X2, X3))
U54'(mark'(X1), X2, X3) → mark'(U54'(X1, X2, X3))
U55'(mark'(X1), X2) → mark'(U55'(X1, X2))
U56'(mark'(X)) → mark'(U56'(X))
U61'(mark'(X1), X2) → mark'(U61'(X1, X2))
U62'(mark'(X1), X2) → mark'(U62'(X1, X2))
U63'(mark'(X)) → mark'(U63'(X))
U71'(mark'(X1), X2) → mark'(U71'(X1, X2))
U72'(mark'(X1), X2) → mark'(U72'(X1, X2))
U73'(mark'(X)) → mark'(U73'(X))
U81'(mark'(X1), X2) → mark'(U81'(X1, X2))
U82'(mark'(X1), X2) → mark'(U82'(X1, X2))
U83'(mark'(X)) → mark'(U83'(X))
U91'(mark'(X1), X2) → mark'(U91'(X1, X2))
U92'(mark'(X1), X2) → mark'(U92'(X1, X2))
U93'(mark'(X)) → mark'(U93'(X))
tail'(mark'(X)) → mark'(tail'(X))
take'(mark'(X1), X2) → mark'(take'(X1, X2))
take'(X1, mark'(X2)) → mark'(take'(X1, X2))
sel'(mark'(X1), X2) → mark'(sel'(X1, X2))
sel'(X1, mark'(X2)) → mark'(sel'(X1, X2))
proper'(U101'(X1, X2, X3)) → U101'(proper'(X1), proper'(X2), proper'(X3))
proper'(tt') → ok'(tt')
proper'(U102'(X1, X2, X3)) → U102'(proper'(X1), proper'(X2), proper'(X3))
proper'(isNaturalKind'(X)) → isNaturalKind'(proper'(X))
proper'(U103'(X1, X2, X3)) → U103'(proper'(X1), proper'(X2), proper'(X3))
proper'(isLNatKind'(X)) → isLNatKind'(proper'(X))
proper'(U104'(X1, X2, X3)) → U104'(proper'(X1), proper'(X2), proper'(X3))
proper'(U105'(X1, X2)) → U105'(proper'(X1), proper'(X2))
proper'(isNatural'(X)) → isNatural'(proper'(X))
proper'(U106'(X)) → U106'(proper'(X))
proper'(isLNat'(X)) → isLNat'(proper'(X))
proper'(U11'(X1, X2, X3)) → U11'(proper'(X1), proper'(X2), proper'(X3))
proper'(U12'(X1, X2, X3)) → U12'(proper'(X1), proper'(X2), proper'(X3))
proper'(U111'(X1, X2)) → U111'(proper'(X1), proper'(X2))
proper'(U112'(X)) → U112'(proper'(X))
proper'(U13'(X1, X2, X3)) → U13'(proper'(X1), proper'(X2), proper'(X3))
proper'(U121'(X1, X2)) → U121'(proper'(X1), proper'(X2))
proper'(U122'(X)) → U122'(proper'(X))
proper'(U14'(X1, X2, X3)) → U14'(proper'(X1), proper'(X2), proper'(X3))
proper'(U131'(X)) → U131'(proper'(X))
proper'(snd'(X)) → snd'(proper'(X))
proper'(splitAt'(X1, X2)) → splitAt'(proper'(X1), proper'(X2))
proper'(U141'(X)) → U141'(proper'(X))
proper'(U151'(X)) → U151'(proper'(X))
proper'(U161'(X)) → U161'(proper'(X))
proper'(U171'(X1, X2)) → U171'(proper'(X1), proper'(X2))
proper'(U172'(X)) → U172'(proper'(X))
proper'(U181'(X1, X2)) → U181'(proper'(X1), proper'(X2))
proper'(U182'(X1, X2)) → U182'(proper'(X1), proper'(X2))
proper'(U183'(X)) → U183'(proper'(X))
proper'(U191'(X1, X2)) → U191'(proper'(X1), proper'(X2))
proper'(U192'(X1, X2)) → U192'(proper'(X1), proper'(X2))
proper'(U193'(X)) → U193'(proper'(X))
proper'(U201'(X1, X2, X3)) → U201'(proper'(X1), proper'(X2), proper'(X3))
proper'(U202'(X1, X2, X3)) → U202'(proper'(X1), proper'(X2), proper'(X3))
proper'(U203'(X1, X2, X3)) → U203'(proper'(X1), proper'(X2), proper'(X3))
proper'(U204'(X1, X2, X3)) → U204'(proper'(X1), proper'(X2), proper'(X3))
proper'(U205'(X1, X2)) → U205'(proper'(X1), proper'(X2))
proper'(U206'(X)) → U206'(proper'(X))
proper'(U21'(X1, X2, X3)) → U21'(proper'(X1), proper'(X2), proper'(X3))
proper'(U22'(X1, X2, X3)) → U22'(proper'(X1), proper'(X2), proper'(X3))
proper'(U211'(X)) → U211'(proper'(X))
proper'(U23'(X1, X2, X3)) → U23'(proper'(X1), proper'(X2), proper'(X3))
proper'(U221'(X)) → U221'(proper'(X))
proper'(U24'(X1, X2)) → U24'(proper'(X1), proper'(X2))
proper'(U231'(X1, X2)) → U231'(proper'(X1), proper'(X2))
proper'(U232'(X)) → U232'(proper'(X))
proper'(U241'(X1, X2, X3)) → U241'(proper'(X1), proper'(X2), proper'(X3))
proper'(U242'(X1, X2, X3)) → U242'(proper'(X1), proper'(X2), proper'(X3))
proper'(U243'(X1, X2, X3)) → U243'(proper'(X1), proper'(X2), proper'(X3))
proper'(U244'(X1, X2, X3)) → U244'(proper'(X1), proper'(X2), proper'(X3))
proper'(U245'(X1, X2)) → U245'(proper'(X1), proper'(X2))
proper'(U246'(X)) → U246'(proper'(X))
proper'(U251'(X1, X2, X3)) → U251'(proper'(X1), proper'(X2), proper'(X3))
proper'(U252'(X1, X2, X3)) → U252'(proper'(X1), proper'(X2), proper'(X3))
proper'(U253'(X1, X2, X3)) → U253'(proper'(X1), proper'(X2), proper'(X3))
proper'(U254'(X1, X2, X3)) → U254'(proper'(X1), proper'(X2), proper'(X3))
proper'(U255'(X1, X2)) → U255'(proper'(X1), proper'(X2))
proper'(U256'(X)) → U256'(proper'(X))
proper'(U261'(X1, X2)) → U261'(proper'(X1), proper'(X2))
proper'(U262'(X)) → U262'(proper'(X))
proper'(U271'(X1, X2)) → U271'(proper'(X1), proper'(X2))
proper'(U272'(X)) → U272'(proper'(X))
proper'(U281'(X1, X2)) → U281'(proper'(X1), proper'(X2))
proper'(U282'(X1, X2)) → U282'(proper'(X1), proper'(X2))
proper'(cons'(X1, X2)) → cons'(proper'(X1), proper'(X2))
proper'(natsFrom'(X)) → natsFrom'(proper'(X))
proper'(s'(X)) → s'(proper'(X))
proper'(U291'(X1, X2, X3)) → U291'(proper'(X1), proper'(X2), proper'(X3))
proper'(U292'(X1, X2, X3)) → U292'(proper'(X1), proper'(X2), proper'(X3))
proper'(U293'(X1, X2, X3)) → U293'(proper'(X1), proper'(X2), proper'(X3))
proper'(U294'(X1, X2, X3)) → U294'(proper'(X1), proper'(X2), proper'(X3))
proper'(head'(X)) → head'(proper'(X))
proper'(afterNth'(X1, X2)) → afterNth'(proper'(X1), proper'(X2))
proper'(U301'(X1, X2, X3)) → U301'(proper'(X1), proper'(X2), proper'(X3))
proper'(U302'(X1, X2)) → U302'(proper'(X1), proper'(X2))
proper'(U303'(X1, X2)) → U303'(proper'(X1), proper'(X2))
proper'(U304'(X1, X2)) → U304'(proper'(X1), proper'(X2))
proper'(U31'(X1, X2, X3)) → U31'(proper'(X1), proper'(X2), proper'(X3))
proper'(U32'(X1, X2, X3)) → U32'(proper'(X1), proper'(X2), proper'(X3))
proper'(U311'(X1, X2)) → U311'(proper'(X1), proper'(X2))
proper'(U312'(X1, X2)) → U312'(proper'(X1), proper'(X2))
proper'(pair'(X1, X2)) → pair'(proper'(X1), proper'(X2))
proper'(nil') → ok'(nil')
proper'(U33'(X1, X2, X3)) → U33'(proper'(X1), proper'(X2), proper'(X3))
proper'(U321'(X1, X2, X3, X4)) → U321'(proper'(X1), proper'(X2), proper'(X3), proper'(X4))
proper'(U322'(X1, X2, X3, X4)) → U322'(proper'(X1), proper'(X2), proper'(X3), proper'(X4))
proper'(U323'(X1, X2, X3, X4)) → U323'(proper'(X1), proper'(X2), proper'(X3), proper'(X4))
proper'(U324'(X1, X2, X3, X4)) → U324'(proper'(X1), proper'(X2), proper'(X3), proper'(X4))
proper'(U325'(X1, X2, X3, X4)) → U325'(proper'(X1), proper'(X2), proper'(X3), proper'(X4))
proper'(U326'(X1, X2, X3, X4)) → U326'(proper'(X1), proper'(X2), proper'(X3), proper'(X4))
proper'(U327'(X1, X2)) → U327'(proper'(X1), proper'(X2))
proper'(U34'(X1, X2)) → U34'(proper'(X1), proper'(X2))
proper'(U331'(X1, X2, X3)) → U331'(proper'(X1), proper'(X2), proper'(X3))
proper'(U332'(X1, X2)) → U332'(proper'(X1), proper'(X2))
proper'(U333'(X1, X2)) → U333'(proper'(X1), proper'(X2))
proper'(U334'(X1, X2)) → U334'(proper'(X1), proper'(X2))
proper'(U341'(X1, X2, X3)) → U341'(proper'(X1), proper'(X2), proper'(X3))
proper'(U342'(X1, X2, X3)) → U342'(proper'(X1), proper'(X2), proper'(X3))
proper'(U343'(X1, X2, X3)) → U343'(proper'(X1), proper'(X2), proper'(X3))
proper'(U344'(X1, X2, X3)) → U344'(proper'(X1), proper'(X2), proper'(X3))
proper'(fst'(X)) → fst'(proper'(X))
proper'(U41'(X1, X2, X3)) → U41'(proper'(X1), proper'(X2), proper'(X3))
proper'(U42'(X1, X2, X3)) → U42'(proper'(X1), proper'(X2), proper'(X3))
proper'(U43'(X1, X2, X3)) → U43'(proper'(X1), proper'(X2), proper'(X3))
proper'(U44'(X1, X2, X3)) → U44'(proper'(X1), proper'(X2), proper'(X3))
proper'(U45'(X1, X2)) → U45'(proper'(X1), proper'(X2))
proper'(U46'(X)) → U46'(proper'(X))
proper'(U51'(X1, X2, X3)) → U51'(proper'(X1), proper'(X2), proper'(X3))
proper'(U52'(X1, X2, X3)) → U52'(proper'(X1), proper'(X2), proper'(X3))
proper'(U53'(X1, X2, X3)) → U53'(proper'(X1), proper'(X2), proper'(X3))
proper'(U54'(X1, X2, X3)) → U54'(proper'(X1), proper'(X2), proper'(X3))
proper'(U55'(X1, X2)) → U55'(proper'(X1), proper'(X2))
proper'(U56'(X)) → U56'(proper'(X))
proper'(U61'(X1, X2)) → U61'(proper'(X1), proper'(X2))
proper'(U62'(X1, X2)) → U62'(proper'(X1), proper'(X2))
proper'(isPLNatKind'(X)) → isPLNatKind'(proper'(X))
proper'(U63'(X)) → U63'(proper'(X))
proper'(isPLNat'(X)) → isPLNat'(proper'(X))
proper'(U71'(X1, X2)) → U71'(proper'(X1), proper'(X2))
proper'(U72'(X1, X2)) → U72'(proper'(X1), proper'(X2))
proper'(U73'(X)) → U73'(proper'(X))
proper'(U81'(X1, X2)) → U81'(proper'(X1), proper'(X2))
proper'(U82'(X1, X2)) → U82'(proper'(X1), proper'(X2))
proper'(U83'(X)) → U83'(proper'(X))
proper'(U91'(X1, X2)) → U91'(proper'(X1), proper'(X2))
proper'(U92'(X1, X2)) → U92'(proper'(X1), proper'(X2))
proper'(U93'(X)) → U93'(proper'(X))
proper'(tail'(X)) → tail'(proper'(X))
proper'(take'(X1, X2)) → take'(proper'(X1), proper'(X2))
proper'(0') → ok'(0')
proper'(sel'(X1, X2)) → sel'(proper'(X1), proper'(X2))
U101'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U101'(X1, X2, X3))
U102'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U102'(X1, X2, X3))
isNaturalKind'(ok'(X)) → ok'(isNaturalKind'(X))
U103'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U103'(X1, X2, X3))
isLNatKind'(ok'(X)) → ok'(isLNatKind'(X))
U104'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U104'(X1, X2, X3))
U105'(ok'(X1), ok'(X2)) → ok'(U105'(X1, X2))
isNatural'(ok'(X)) → ok'(isNatural'(X))
U106'(ok'(X)) → ok'(U106'(X))
isLNat'(ok'(X)) → ok'(isLNat'(X))
U11'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U11'(X1, X2, X3))
U12'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U12'(X1, X2, X3))
U111'(ok'(X1), ok'(X2)) → ok'(U111'(X1, X2))
U112'(ok'(X)) → ok'(U112'(X))
U13'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U13'(X1, X2, X3))
U121'(ok'(X1), ok'(X2)) → ok'(U121'(X1, X2))
U122'(ok'(X)) → ok'(U122'(X))
U14'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U14'(X1, X2, X3))
U131'(ok'(X)) → ok'(U131'(X))
snd'(ok'(X)) → ok'(snd'(X))
splitAt'(ok'(X1), ok'(X2)) → ok'(splitAt'(X1, X2))
U141'(ok'(X)) → ok'(U141'(X))
U151'(ok'(X)) → ok'(U151'(X))
U161'(ok'(X)) → ok'(U161'(X))
U171'(ok'(X1), ok'(X2)) → ok'(U171'(X1, X2))
U172'(ok'(X)) → ok'(U172'(X))
U181'(ok'(X1), ok'(X2)) → ok'(U181'(X1, X2))
U182'(ok'(X1), ok'(X2)) → ok'(U182'(X1, X2))
U183'(ok'(X)) → ok'(U183'(X))
U191'(ok'(X1), ok'(X2)) → ok'(U191'(X1, X2))
U192'(ok'(X1), ok'(X2)) → ok'(U192'(X1, X2))
U193'(ok'(X)) → ok'(U193'(X))
U201'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U201'(X1, X2, X3))
U202'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U202'(X1, X2, X3))
U203'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U203'(X1, X2, X3))
U204'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U204'(X1, X2, X3))
U205'(ok'(X1), ok'(X2)) → ok'(U205'(X1, X2))
U206'(ok'(X)) → ok'(U206'(X))
U21'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U21'(X1, X2, X3))
U22'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U22'(X1, X2, X3))
U211'(ok'(X)) → ok'(U211'(X))
U23'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U23'(X1, X2, X3))
U221'(ok'(X)) → ok'(U221'(X))
U24'(ok'(X1), ok'(X2)) → ok'(U24'(X1, X2))
U231'(ok'(X1), ok'(X2)) → ok'(U231'(X1, X2))
U232'(ok'(X)) → ok'(U232'(X))
U241'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U241'(X1, X2, X3))
U242'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U242'(X1, X2, X3))
U243'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U243'(X1, X2, X3))
U244'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U244'(X1, X2, X3))
U245'(ok'(X1), ok'(X2)) → ok'(U245'(X1, X2))
U246'(ok'(X)) → ok'(U246'(X))
U251'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U251'(X1, X2, X3))
U252'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U252'(X1, X2, X3))
U253'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U253'(X1, X2, X3))
U254'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U254'(X1, X2, X3))
U255'(ok'(X1), ok'(X2)) → ok'(U255'(X1, X2))
U256'(ok'(X)) → ok'(U256'(X))
U261'(ok'(X1), ok'(X2)) → ok'(U261'(X1, X2))
U262'(ok'(X)) → ok'(U262'(X))
U271'(ok'(X1), ok'(X2)) → ok'(U271'(X1, X2))
U272'(ok'(X)) → ok'(U272'(X))
U281'(ok'(X1), ok'(X2)) → ok'(U281'(X1, X2))
U282'(ok'(X1), ok'(X2)) → ok'(U282'(X1, X2))
cons'(ok'(X1), ok'(X2)) → ok'(cons'(X1, X2))
natsFrom'(ok'(X)) → ok'(natsFrom'(X))
s'(ok'(X)) → ok'(s'(X))
U291'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U291'(X1, X2, X3))
U292'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U292'(X1, X2, X3))
U293'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U293'(X1, X2, X3))
U294'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U294'(X1, X2, X3))
head'(ok'(X)) → ok'(head'(X))
afterNth'(ok'(X1), ok'(X2)) → ok'(afterNth'(X1, X2))
U301'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U301'(X1, X2, X3))
U302'(ok'(X1), ok'(X2)) → ok'(U302'(X1, X2))
U303'(ok'(X1), ok'(X2)) → ok'(U303'(X1, X2))
U304'(ok'(X1), ok'(X2)) → ok'(U304'(X1, X2))
U31'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U31'(X1, X2, X3))
U32'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U32'(X1, X2, X3))
U311'(ok'(X1), ok'(X2)) → ok'(U311'(X1, X2))
U312'(ok'(X1), ok'(X2)) → ok'(U312'(X1, X2))
pair'(ok'(X1), ok'(X2)) → ok'(pair'(X1, X2))
U33'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U33'(X1, X2, X3))
U321'(ok'(X1), ok'(X2), ok'(X3), ok'(X4)) → ok'(U321'(X1, X2, X3, X4))
U322'(ok'(X1), ok'(X2), ok'(X3), ok'(X4)) → ok'(U322'(X1, X2, X3, X4))
U323'(ok'(X1), ok'(X2), ok'(X3), ok'(X4)) → ok'(U323'(X1, X2, X3, X4))
U324'(ok'(X1), ok'(X2), ok'(X3), ok'(X4)) → ok'(U324'(X1, X2, X3, X4))
U325'(ok'(X1), ok'(X2), ok'(X3), ok'(X4)) → ok'(U325'(X1, X2, X3, X4))
U326'(ok'(X1), ok'(X2), ok'(X3), ok'(X4)) → ok'(U326'(X1, X2, X3, X4))
U327'(ok'(X1), ok'(X2)) → ok'(U327'(X1, X2))
U34'(ok'(X1), ok'(X2)) → ok'(U34'(X1, X2))
U331'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U331'(X1, X2, X3))
U332'(ok'(X1), ok'(X2)) → ok'(U332'(X1, X2))
U333'(ok'(X1), ok'(X2)) → ok'(U333'(X1, X2))
U334'(ok'(X1), ok'(X2)) → ok'(U334'(X1, X2))
U341'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U341'(X1, X2, X3))
U342'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U342'(X1, X2, X3))
U343'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U343'(X1, X2, X3))
U344'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U344'(X1, X2, X3))
fst'(ok'(X)) → ok'(fst'(X))
U41'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U41'(X1, X2, X3))
U42'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U42'(X1, X2, X3))
U43'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U43'(X1, X2, X3))
U44'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U44'(X1, X2, X3))
U45'(ok'(X1), ok'(X2)) → ok'(U45'(X1, X2))
U46'(ok'(X)) → ok'(U46'(X))
U51'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U51'(X1, X2, X3))
U52'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U52'(X1, X2, X3))
U53'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U53'(X1, X2, X3))
U54'(ok'(X1), ok'(X2), ok'(X3)) → ok'(U54'(X1, X2, X3))
U55'(ok'(X1), ok'(X2)) → ok'(U55'(X1, X2))
U56'(ok'(X)) → ok'(U56'(X))
U61'(ok'(X1), ok'(X2)) → ok'(U61'(X1, X2))
U62'(ok'(X1), ok'(X2)) → ok'(U62'(X1, X2))
isPLNatKind'(ok'(X)) → ok'(isPLNatKind'(X))
U63'(ok'(X)) → ok'(U63'(X))
isPLNat'(ok'(X)) → ok'(isPLNat'(X))
U71'(ok'(X1), ok'(X2)) → ok'(U71'(X1, X2))
U72'(ok'(X1), ok'(X2)) → ok'(U72'(X1, X2))
U73'(ok'(X)) → ok'(U73'(X))
U81'(ok'(X1), ok'(X2)) → ok'(U81'(X1, X2))
U82'(ok'(X1), ok'(X2)) → ok'(U82'(X1, X2))
U83'(ok'(X)) → ok'(U83'(X))
U91'(ok'(X1), ok'(X2)) → ok'(U91'(X1, X2))
U92'(ok'(X1), ok'(X2)) → ok'(U92'(X1, X2))
U93'(ok'(X)) → ok'(U93'(X))
tail'(ok'(X)) → ok'(tail'(X))
take'(ok'(X1), ok'(X2)) → ok'(take'(X1, X2))
sel'(ok'(X1), ok'(X2)) → ok'(sel'(X1, X2))
top'(mark'(X)) → top'(proper'(X))
top'(ok'(X)) → top'(active'(X))

Types:
active' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U101' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
tt' :: tt':mark':nil':0':ok'
mark' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U102' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
isNaturalKind' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U103' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
isLNatKind' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U104' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U105' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
isNatural' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U106' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
isLNat' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U11' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U12' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U111' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U112' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U13' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U121' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U122' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U14' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U131' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
snd' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
splitAt' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U141' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U151' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U161' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U171' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U172' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U181' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U182' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U183' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U191' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U192' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U193' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U201' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U202' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U203' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U204' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U205' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U206' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U21' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U22' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U211' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U23' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U221' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U24' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U231' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U232' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U241' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U242' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U243' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U244' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U245' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U246' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U251' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U252' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U253' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U254' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U255' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U256' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U261' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U262' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U271' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U272' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U281' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U282' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
cons' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
natsFrom' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
s' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U291' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U292' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U293' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U294' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
head' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
afterNth' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U301' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U302' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U303' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U304' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U31' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U32' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U311' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U312' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
pair' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
nil' :: tt':mark':nil':0':ok'
U33' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U321' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U322' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U323' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U324' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U325' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U326' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U327' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U34' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U331' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U332' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U333' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U334' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U341' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U342' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U343' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U344' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
fst' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U41' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U42' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U43' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U44' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U45' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U46' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U51' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U52' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U53' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U54' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U55' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U56' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U61' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U62' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
isPLNatKind' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U63' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
isPLNat' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U71' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U72' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U73' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U81' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U82' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U83' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U91' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U92' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
U93' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
tail' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
take' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
0' :: tt':mark':nil':0':ok'
sel' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
proper' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
ok' :: tt':mark':nil':0':ok' → tt':mark':nil':0':ok'
top' :: tt':mark':nil':0':ok' → top'
_hole_tt':mark':nil':0':ok'1 :: tt':mark':nil':0':ok'
_hole_top'2 :: top'
_gen_tt':mark':nil':0':ok'3 :: Nat → tt':mark':nil':0':ok'